Added mapping projects.

Change-Id: If0a30fc46e1fdc57501f2bc1e8a12c142b14660d
diff --git a/mapping/features/org.eclipse.intent.mapping.feature/.project b/mapping/features/org.eclipse.intent.mapping.feature/.project
new file mode 100644
index 0000000..d1afa42
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.feature/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/features/org.eclipse.intent.mapping.feature/build.properties b/mapping/features/org.eclipse.intent.mapping.feature/build.properties
new file mode 100644
index 0000000..e427639
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.feature/build.properties
@@ -0,0 +1,3 @@
+bin.includes = feature.xml,\
+               license.html,\
+               license.txt
diff --git a/mapping/features/org.eclipse.intent.mapping.feature/feature.xml b/mapping/features/org.eclipse.intent.mapping.feature/feature.xml
new file mode 100644
index 0000000..98f2b1e
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.feature/feature.xml
@@ -0,0 +1,153 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.intent.mapping"
+      label="Mapping feature"
+      version="0.10.0.qualifier">
+
+   <description url="http://www.example.com/description">
+      [Enter Feature Description here.]
+   </description>
+
+   <copyright url="http://www.example.com/copyright">
+      [Enter Copyright Description here.]
+   </copyright>
+
+   <license url="license.html">
+      Eclipse Public License - v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT&apos;S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+&quot;Contribution&quot; means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution &apos;originates&apos; from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor&apos;s behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.
+
+&quot;Contributor&quot; means any person or entity that distributes the Program.
+
+&quot;Licensed Patents &quot; mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.
+
+&quot;Program&quot; means the Contributions distributed in accordance with this Agreement.
+
+&quot;Recipient&quot; means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient&apos;s responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor (&quot;Commercial Contributor&quot;) hereby agrees to defend and indemnify every other Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor&apos;s responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), 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 OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient&apos;s patent(s), then such Recipient&apos;s rights granted under Section 2(b) shall terminate as of the date such litigation is filed.
+
+All Recipient&apos;s rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient&apos;s rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient&apos;s obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.
+   </license>
+
+   <plugin
+         id="org.eclipse.intent.mapping"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.intent.mapping.ide"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.intent.mapping.ide.ui"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.intent.mapping.emf"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.intent.mapping.emf.edit"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.intent.mapping.emf.ide"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.intent.mapping.emf.ide.ui"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+</feature>
diff --git a/mapping/features/org.eclipse.intent.mapping.feature/license.html b/mapping/features/org.eclipse.intent.mapping.feature/license.html
new file mode 100644
index 0000000..f19c483
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.feature/license.html
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>February 1, 2011</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+   (COLLECTIVELY &quot;CONTENT&quot;).  USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
+   CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU AGREE THAT YOUR USE
+   OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
+   NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
+   CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0
+   (&quot;EPL&quot;).  A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+   For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
+   repository (&quot;Repository&quot;) in software modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
+
+<ul>
+       <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content.  Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
+       <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
+       <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.  Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;.  Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
+      and/or Fragments associated with that Feature.</li>
+       <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
+Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;).  Abouts and Feature Licenses may be located in any directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+       <li>The top-level (root) directory</li>
+       <li>Plug-in and Fragment directories</li>
+       <li>Inside Plug-ins and Fragments packaged as JARs</li>
+       <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
+       <li>Feature directories</li>
+</ul>
+
+<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license (&quot;Feature Update License&quot;) during the
+installation process.  If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
+inform you where you can locate them.  Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
+that directory.</p>
+
+<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
+OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
+
+<ul>
+       <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+       <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+       <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+       <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+       <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
+       <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT.  If no About, Feature License, or Feature Update License is provided, please
+contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
+   Update Manager (&quot;Provisioning Technology&quot;) for the purpose of allowing users to install software, documentation, information and/or
+   other materials (collectively &quot;Installable Software&quot;). This capability is provided with the intent of allowing such users to
+   install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a
+       href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+   (&quot;Specification&quot;).</p>
+
+<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the
+   applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
+   in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the
+   Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p>
+
+<ol>
+       <li>A series of actions may occur (&quot;Provisioning Process&quot;) in which a user may execute the Provisioning Technology
+       on a machine (&quot;Target Machine&quot;) with the intent of installing, extending or updating the functionality of an Eclipse-based
+       product.</li>
+       <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be
+       accessed and copied to the Target Machine.</li>
+       <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
+       Software (&quot;Installable Software Agreement&quot;) and such Installable Software Agreement shall be accessed from the Target
+       Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern
+       the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such
+       indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
+   another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
+   possession, or use, and re-export of encryption software, to see if this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+</body>
+</html>
diff --git a/mapping/features/org.eclipse.intent.mapping.feature/license.txt b/mapping/features/org.eclipse.intent.mapping.feature/license.txt
new file mode 100644
index 0000000..24937b6
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.feature/license.txt
@@ -0,0 +1,87 @@
+Eclipse Public License - v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), 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 OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.
+
diff --git a/mapping/features/org.eclipse.intent.mapping.feature/pom.xml b/mapping/features/org.eclipse.intent.mapping.feature/pom.xml
new file mode 100644
index 0000000..1360b60
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.feature/pom.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <groupId>org.eclipse.intent.features</groupId>
+  <artifactId>org.eclipse.intent.mapping</artifactId>
+  <packaging>eclipse-feature</packaging>
+
+  <name>Mapping Feature</name>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho.extras</groupId>
+        <artifactId>tycho-source-feature-plugin</artifactId>
+        <executions>
+          <execution>
+            <phase>package</phase>
+            <id>source-feature</id>
+            <goals>
+              <goal>source-feature</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>
diff --git a/mapping/features/org.eclipse.intent.mapping.sirius.feature/.project b/mapping/features/org.eclipse.intent.mapping.sirius.feature/.project
new file mode 100644
index 0000000..b854a2b
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.sirius.feature/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.sirius.feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/features/org.eclipse.intent.mapping.sirius.feature/build.properties b/mapping/features/org.eclipse.intent.mapping.sirius.feature/build.properties
new file mode 100644
index 0000000..e427639
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.sirius.feature/build.properties
@@ -0,0 +1,3 @@
+bin.includes = feature.xml,\
+               license.html,\
+               license.txt
diff --git a/mapping/features/org.eclipse.intent.mapping.sirius.feature/feature.xml b/mapping/features/org.eclipse.intent.mapping.sirius.feature/feature.xml
new file mode 100644
index 0000000..99505f4
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.sirius.feature/feature.xml
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.intent.mapping.sirius"
+      label="Mapping Sirius feature"
+      version="0.10.0.qualifier">
+
+   <description url="http://www.example.com/description">
+      [Enter Feature Description here.]
+   </description>
+
+   <copyright url="http://www.example.com/copyright">
+      [Enter Copyright Description here.]
+   </copyright>
+
+   <license url="license.html">
+      Eclipse Public License - v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT&apos;S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+&quot;Contribution&quot; means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution &apos;originates&apos; from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor&apos;s behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.
+
+&quot;Contributor&quot; means any person or entity that distributes the Program.
+
+&quot;Licensed Patents &quot; mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.
+
+&quot;Program&quot; means the Contributions distributed in accordance with this Agreement.
+
+&quot;Recipient&quot; means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient&apos;s responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor (&quot;Commercial Contributor&quot;) hereby agrees to defend and indemnify every other Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor&apos;s responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), 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 OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient&apos;s patent(s), then such Recipient&apos;s rights granted under Section 2(b) shall terminate as of the date such litigation is filed.
+
+All Recipient&apos;s rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient&apos;s rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient&apos;s obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.
+   </license>
+
+   <plugin
+         id="org.eclipse.intent.mapping.sirius.ide.ui"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+</feature>
diff --git a/mapping/features/org.eclipse.intent.mapping.sirius.feature/license.html b/mapping/features/org.eclipse.intent.mapping.sirius.feature/license.html
new file mode 100644
index 0000000..f19c483
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.sirius.feature/license.html
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>February 1, 2011</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+   (COLLECTIVELY &quot;CONTENT&quot;).  USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
+   CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU AGREE THAT YOUR USE
+   OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
+   NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
+   CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0
+   (&quot;EPL&quot;).  A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+   For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
+   repository (&quot;Repository&quot;) in software modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
+
+<ul>
+       <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content.  Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
+       <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
+       <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.  Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;.  Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
+      and/or Fragments associated with that Feature.</li>
+       <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
+Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;).  Abouts and Feature Licenses may be located in any directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+       <li>The top-level (root) directory</li>
+       <li>Plug-in and Fragment directories</li>
+       <li>Inside Plug-ins and Fragments packaged as JARs</li>
+       <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
+       <li>Feature directories</li>
+</ul>
+
+<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license (&quot;Feature Update License&quot;) during the
+installation process.  If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
+inform you where you can locate them.  Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
+that directory.</p>
+
+<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
+OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
+
+<ul>
+       <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+       <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+       <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+       <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+       <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
+       <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT.  If no About, Feature License, or Feature Update License is provided, please
+contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
+   Update Manager (&quot;Provisioning Technology&quot;) for the purpose of allowing users to install software, documentation, information and/or
+   other materials (collectively &quot;Installable Software&quot;). This capability is provided with the intent of allowing such users to
+   install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a
+       href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+   (&quot;Specification&quot;).</p>
+
+<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the
+   applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
+   in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the
+   Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p>
+
+<ol>
+       <li>A series of actions may occur (&quot;Provisioning Process&quot;) in which a user may execute the Provisioning Technology
+       on a machine (&quot;Target Machine&quot;) with the intent of installing, extending or updating the functionality of an Eclipse-based
+       product.</li>
+       <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be
+       accessed and copied to the Target Machine.</li>
+       <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
+       Software (&quot;Installable Software Agreement&quot;) and such Installable Software Agreement shall be accessed from the Target
+       Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern
+       the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such
+       indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
+   another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
+   possession, or use, and re-export of encryption software, to see if this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+</body>
+</html>
diff --git a/mapping/features/org.eclipse.intent.mapping.sirius.feature/license.txt b/mapping/features/org.eclipse.intent.mapping.sirius.feature/license.txt
new file mode 100644
index 0000000..24937b6
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.sirius.feature/license.txt
@@ -0,0 +1,87 @@
+Eclipse Public License - v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), 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 OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.
+
diff --git a/mapping/features/org.eclipse.intent.mapping.sirius.feature/pom.xml b/mapping/features/org.eclipse.intent.mapping.sirius.feature/pom.xml
new file mode 100644
index 0000000..38ca018
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.mapping.sirius.feature/pom.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <groupId>org.eclipse.intent.features</groupId>
+  <artifactId>org.eclipse.intent.mapping.sirius</artifactId>
+  <packaging>eclipse-feature</packaging>
+
+  <name>Mapping Sirius Feature</name>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho.extras</groupId>
+        <artifactId>tycho-source-feature-plugin</artifactId>
+        <executions>
+          <execution>
+            <phase>package</phase>
+            <id>source-feature</id>
+            <goals>
+              <goal>source-feature</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>
diff --git a/mapping/features/org.eclipse.intent.product.feature/.project b/mapping/features/org.eclipse.intent.product.feature/.project
new file mode 100644
index 0000000..6dca771
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.product.feature/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.product.feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/features/org.eclipse.intent.product.feature/.settings/org.eclipse.core.resources.prefs b/mapping/features/org.eclipse.intent.product.feature/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.product.feature/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/mapping/features/org.eclipse.intent.product.feature/.settings/org.eclipse.core.runtime.prefs b/mapping/features/org.eclipse.intent.product.feature/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 0000000..5a0ad22
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.product.feature/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/mapping/features/org.eclipse.intent.product.feature/build.properties b/mapping/features/org.eclipse.intent.product.feature/build.properties
new file mode 100644
index 0000000..c4f078c
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.product.feature/build.properties
@@ -0,0 +1,10 @@
+bin.includes = feature.xml,\
+               license.html,\
+               license.txt
+root.win32.win32.x86_64 = win32-64
+root.linux.gtk.x86 = linux-64
+root.linux.gtk.x86_64 = linux-64
+root.macosx.cocoa.x86_64 = macosx
+root.linux.gtk.x86.permissions.755 = jre/bin/java
+root.linux.gtk.x86_64.permissions.755 = jre/bin/java
+root.macosx.cocoa.x86_64.permissions.755 = jre/bin/java
diff --git a/mapping/features/org.eclipse.intent.product.feature/feature.xml b/mapping/features/org.eclipse.intent.product.feature/feature.xml
new file mode 100644
index 0000000..955123b
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.product.feature/feature.xml
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.intent.product.feature"
+      label="Intent with Product Specific Branding"
+      version="0.10.0.qualifier"
+      provider-name="Obeo"
+      plugin="org.eclipse.intent.branding">
+
+   <description url="http://www.example.com/description">
+      [Enter Feature Description here.]
+   </description>
+
+   <copyright url="http://www.example.com/copyright">
+      [Enter Copyright Description here.]
+   </copyright>
+
+   <license url="license.html">
+      Eclipse Public License - v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT&apos;S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+&quot;Contribution&quot; means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution &apos;originates&apos; from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor&apos;s behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.
+
+&quot;Contributor&quot; means any person or entity that distributes the Program.
+
+&quot;Licensed Patents &quot; mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.
+
+&quot;Program&quot; means the Contributions distributed in accordance with this Agreement.
+
+&quot;Recipient&quot; means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient&apos;s responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor (&quot;Commercial Contributor&quot;) hereby agrees to defend and indemnify every other Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor&apos;s responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), 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 OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient&apos;s patent(s), then such Recipient&apos;s rights granted under Section 2(b) shall terminate as of the date such litigation is filed.
+
+All Recipient&apos;s rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient&apos;s rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient&apos;s obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.
+   </license>
+
+   <requires>
+      <import feature="org.eclipse.intent.mapping" version="0.0.0" match="greaterOrEqual"/>
+      <import feature="org.eclipse.intent.mapping.sirius" version="0.0.0" match="greaterOrEqual"/>
+   </requires>
+
+</feature>
diff --git a/mapping/features/org.eclipse.intent.product.feature/license.html b/mapping/features/org.eclipse.intent.product.feature/license.html
new file mode 100644
index 0000000..834ab27
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.product.feature/license.html
@@ -0,0 +1,319 @@
+<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"><head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
+<meta name="ProgId" content="Word.Document">
+<meta name="Generator" content="Microsoft Word 9">
+<meta name="Originator" content="Microsoft Word 9">
+<link rel="File-List" href="http://www.eclipse.org/legal/Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml"><title>Eclipse Public License - Version 1.0</title><!--[if gte mso 9]><xml>
+ <o:DocumentProperties>
+  <o:Revision>2</o:Revision>
+  <o:TotalTime>3</o:TotalTime>
+  <o:Created>2004-03-05T23:03:00Z</o:Created>
+  <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved>
+  <o:Pages>4</o:Pages>
+  <o:Words>1626</o:Words>
+  <o:Characters>9270</o:Characters>
+   <o:Lines>77</o:Lines>
+  <o:Paragraphs>18</o:Paragraphs>
+  <o:CharactersWithSpaces>11384</o:CharactersWithSpaces>
+  <o:Version>9.4402</o:Version>
+ </o:DocumentProperties>
+</xml><![endif]--><!--[if gte mso 9]><xml>
+ <w:WordDocument>
+  <w:TrackRevisions/>
+ </w:WordDocument>
+</xml><![endif]-->
+
+
+<style>
+<!--
+ /* Font Definitions */
+@font-face
+	{font-family:Tahoma;
+	panose-1:2 11 6 4 3 5 4 4 2 4;
+	mso-font-charset:0;
+	mso-generic-font-family:swiss;
+	mso-font-pitch:variable;
+	mso-font-signature:553679495 -2147483648 8 0 66047 0;}
+ /* Style Definitions */
+p.MsoNormal, li.MsoNormal, div.MsoNormal
+	{mso-style-parent:"";
+	margin:0in;
+	margin-bottom:.0001pt;
+	mso-pagination:widow-orphan;
+	font-size:12.0pt;
+	font-family:"Times New Roman";
+	mso-fareast-font-family:"Times New Roman";}
+p
+	{margin-right:0in;
+	mso-margin-top-alt:auto;
+	mso-margin-bottom-alt:auto;
+	margin-left:0in;
+	mso-pagination:widow-orphan;
+	font-size:12.0pt;
+	font-family:"Times New Roman";
+	mso-fareast-font-family:"Times New Roman";}
+p.BalloonText, li.BalloonText, div.BalloonText
+	{mso-style-name:"Balloon Text";
+	margin:0in;
+	margin-bottom:.0001pt;
+	mso-pagination:widow-orphan;
+	font-size:8.0pt;
+	font-family:Tahoma;
+	mso-fareast-font-family:"Times New Roman";}
+@page Section1
+	{size:8.5in 11.0in;
+	margin:1.0in 1.25in 1.0in 1.25in;
+	mso-header-margin:.5in;
+	mso-footer-margin:.5in;
+	mso-paper-source:0;}
+div.Section1
+	{page:Section1;}
+-->
+</style></head><body style="" lang="EN-US">
+
+<div class="Section1">
+
+<p style="text-align: center;" align="center"><b>Eclipse Public License - v 1.0</b>
+</p>
+
+<p><span style="font-size: 10pt;">THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
+THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE,
+REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
+OF THIS AGREEMENT.</span> </p>
+
+<p><b><span style="font-size: 10pt;">1. DEFINITIONS</span></b> </p>
+
+<p><span style="font-size: 10pt;">"Contribution" means:</span> </p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a)
+in the case of the initial Contributor, the initial code and documentation
+distributed under this Agreement, and<br clear="left">
+b) in the case of each subsequent Contributor:</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">i)
+changes to the Program, and</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">ii)
+additions to the Program;</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">where
+such changes and/or additions to the Program originate from and are distributed
+by that particular Contributor. A Contribution 'originates' from a Contributor
+if it was added to the Program by such Contributor itself or anyone acting on
+such Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in conjunction
+with the Program under their own license agreement, and (ii) are not derivative
+works of the Program. </span></p>
+
+<p><span style="font-size: 10pt;">"Contributor" means any person or
+entity that distributes the Program.</span> </p>
+
+<p><span style="font-size: 10pt;">"Licensed Patents " mean patent
+claims licensable by a Contributor which are necessarily infringed by the use
+or sale of its Contribution alone or when combined with the Program. </span></p>
+
+<p><span style="font-size: 10pt;">"Program" means the Contributions
+distributed in accordance with this Agreement.</span> </p>
+
+<p><span style="font-size: 10pt;">"Recipient" means anyone who
+receives the Program under this Agreement, including all Contributors.</span> </p>
+
+<p><b><span style="font-size: 10pt;">2. GRANT OF RIGHTS</span></b> </p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a)
+Subject to the terms of this Agreement, each Contributor hereby grants Recipient
+a non-exclusive, worldwide, royalty-free copyright license to<span style="color: red;"> </span>reproduce, prepare derivative works of, publicly
+display, publicly perform, distribute and sublicense the Contribution of such
+Contributor, if any, and such derivative works, in source code and object code
+form.</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b)
+Subject to the terms of this Agreement, each Contributor hereby grants
+Recipient a non-exclusive, worldwide,<span style="color: green;"> </span>royalty-free
+patent license under Licensed Patents to make, use, sell, offer to sell, import
+and otherwise transfer the Contribution of such Contributor, if any, in source
+code and object code form. This patent license shall apply to the combination
+of the Contribution and the Program if, at the time the Contribution is added
+by the Contributor, such addition of the Contribution causes such combination
+to be covered by the Licensed Patents. The patent license shall not apply to
+any other combinations which include the Contribution. No hardware per se is
+licensed hereunder. </span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">c)
+Recipient understands that although each Contributor grants the licenses to its
+Contributions set forth herein, no assurances are provided by any Contributor
+that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient
+for claims brought by any other entity based on infringement of intellectual
+property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility
+to secure any other intellectual property rights needed, if any. For example,
+if a third party patent license is required to allow Recipient to distribute
+the Program, it is Recipient's responsibility to acquire that license before
+distributing the Program.</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">d)
+Each Contributor represents that to its knowledge it has sufficient copyright
+rights in its Contribution, if any, to grant the copyright license set forth in
+this Agreement. </span></p>
+
+<p><b><span style="font-size: 10pt;">3. REQUIREMENTS</span></b> </p>
+
+<p><span style="font-size: 10pt;">A Contributor may choose to distribute the
+Program in object code form under its own license agreement, provided that:</span>
+</p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a)
+it complies with the terms and conditions of this Agreement; and</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b)
+its license agreement:</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">i)
+effectively disclaims on behalf of all Contributors all warranties and
+conditions, express and implied, including warranties or conditions of title
+and non-infringement, and implied warranties or conditions of merchantability
+and fitness for a particular purpose; </span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">ii)
+effectively excludes on behalf of all Contributors all liability for damages,
+including direct, indirect, special, incidental and consequential damages, such
+as lost profits; </span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">iii)
+states that any provisions which differ from this Agreement are offered by that
+Contributor alone and not by any other party; and</span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">iv)
+states that source code for the Program is available from such Contributor, and
+informs licensees how to obtain it in a reasonable manner on or through a
+medium customarily used for software exchange.<span style="color: blue;"> </span></span></p>
+
+<p><span style="font-size: 10pt;">When the Program is made available in source
+code form:</span> </p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a)
+it must be made available under this Agreement; and </span></p>
+
+<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b) a
+copy of this Agreement must be included with each copy of the Program. </span></p>
+
+<p><span style="font-size: 10pt;">Contributors may not remove or alter any
+copyright notices contained within the Program. </span></p>
+
+<p><span style="font-size: 10pt;">Each Contributor must identify itself as the
+originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution. </span></p>
+
+<p><b><span style="font-size: 10pt;">4. COMMERCIAL DISTRIBUTION</span></b> </p>
+
+<p><span style="font-size: 10pt;">Commercial distributors of software may
+accept certain responsibilities with respect to end users, business partners
+and the like. While this license is intended to facilitate the commercial use
+of the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create potential
+liability for other Contributors. Therefore, if a Contributor includes the
+Program in a commercial product offering, such Contributor ("Commercial
+Contributor") hereby agrees to defend and indemnify every other
+Contributor ("Indemnified Contributor") against any losses, damages and
+costs (collectively "Losses") arising from claims, lawsuits and other
+legal actions brought by a third party against the Indemnified Contributor to
+the extent caused by the acts or omissions of such Commercial Contributor in
+connection with its distribution of the Program in a commercial product
+offering. The obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In order
+to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor
+to control, and cooperate with the Commercial Contributor in, the defense and
+any related settlement negotiations. The Indemnified Contributor may participate
+in any such claim at its own expense.</span> </p>
+
+<p><span style="font-size: 10pt;">For example, a Contributor might include the
+Program in a commercial product offering, Product X. That Contributor is then a
+Commercial Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance claims and
+warranties are such Commercial Contributor's responsibility alone. Under this
+section, the Commercial Contributor would have to defend claims against the
+other Contributors related to those performance claims and warranties, and if a
+court requires any other Contributor to pay any damages as a result, the
+Commercial Contributor must pay those damages.</span> </p>
+
+<p><b><span style="font-size: 10pt;">5. NO WARRANTY</span></b> </p>
+
+<p><span style="font-size: 10pt;">EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT
+WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
+WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and distributing the
+Program and assumes all risks associated with its exercise of rights under this
+Agreement , including but not limited to the risks and costs of program errors,
+compliance with applicable laws, damage to or loss of data, programs or
+equipment, and unavailability or interruption of operations. </span></p>
+
+<p><b><span style="font-size: 10pt;">6. DISCLAIMER OF LIABILITY</span></b> </p>
+
+<p><span style="font-size: 10pt;">EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING WITHOUT LIMITATION LOST PROFITS), 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 OR DISTRIBUTION OF
+THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
+
+<p><b><span style="font-size: 10pt;">7. GENERAL</span></b> </p>
+
+<p><span style="font-size: 10pt;">If any provision of this Agreement is invalid
+or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without
+further action by the parties hereto, such provision shall be reformed to the
+minimum extent necessary to make such provision valid and enforceable.</span> </p>
+
+<p><span style="font-size: 10pt;">If Recipient institutes patent litigation
+against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with
+other software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the date
+such litigation is filed. </span></p>
+
+<p><span style="font-size: 10pt;">All Recipient's rights under this Agreement
+shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable
+period of time after becoming aware of such noncompliance. If all Recipient's
+rights under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive. </span></p>
+
+<p><span style="font-size: 10pt;">Everyone is permitted to copy and distribute
+copies of this Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The Agreement
+Steward reserves the right to publish new versions (including revisions) of
+this Agreement from time to time. No one other than the Agreement Steward has
+the right to modify this Agreement. The Eclipse Foundation is the initial
+Agreement Steward. The Eclipse Foundation may assign the responsibility to
+serve as the Agreement Steward to a suitable separate entity. Each new version
+of the Agreement will be given a distinguishing version number. The Program
+(including Contributions) may always be distributed subject to the version of
+the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program
+(including its Contributions) under the new version. Except as expressly stated
+in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether
+expressly, by implication, estoppel or otherwise. All rights in the Program not
+expressly granted under this Agreement are reserved.</span> </p>
+
+<p><span style="font-size: 10pt;">This Agreement is governed by the laws of the
+State of New York and the intellectual property laws of the United States of
+America. No party to this Agreement will bring a legal action under this
+Agreement more than one year after the cause of action arose. Each party waives
+its rights to a jury trial in any resulting litigation.</span> </p>
+
+<p class="MsoNormal"><o:p></o:p></p>
+
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/mapping/features/org.eclipse.intent.product.feature/license.txt b/mapping/features/org.eclipse.intent.product.feature/license.txt
new file mode 100644
index 0000000..24937b6
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.product.feature/license.txt
@@ -0,0 +1,87 @@
+Eclipse Public License - v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), 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 OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.
+
diff --git a/mapping/features/org.eclipse.intent.product.feature/linux-64/jre/.gitkeep b/mapping/features/org.eclipse.intent.product.feature/linux-64/jre/.gitkeep
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.product.feature/linux-64/jre/.gitkeep
diff --git a/mapping/features/org.eclipse.intent.product.feature/macosx/jre/.gitkeep b/mapping/features/org.eclipse.intent.product.feature/macosx/jre/.gitkeep
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.product.feature/macosx/jre/.gitkeep
diff --git a/mapping/features/org.eclipse.intent.product.feature/pom.xml b/mapping/features/org.eclipse.intent.product.feature/pom.xml
new file mode 100644
index 0000000..c8bb17d
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.product.feature/pom.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2016 Obeo.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+    Obeo - initial API and implementation
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.product.feature</artifactId>
+  <packaging>eclipse-feature</packaging>
+
+  <name>Intent with Product Specific Feature</name>
+
+</project>
diff --git a/mapping/features/org.eclipse.intent.product.feature/win32-64/jre/.gitkeep b/mapping/features/org.eclipse.intent.product.feature/win32-64/jre/.gitkeep
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/mapping/features/org.eclipse.intent.product.feature/win32-64/jre/.gitkeep
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.checkstyle b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.checkstyle
new file mode 100644
index 0000000..46c61e2
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.checkstyle
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6Configuration.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+  <filter name="FilesFromPackage" enabled="true">
+    <filter-data value="src-gen"/>
+  </filter>
+</fileset-config>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.classpath b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.classpath
new file mode 100644
index 0000000..1bdc2a0
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src-gen"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.project b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.project
new file mode 100644
index 0000000..a80218e
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.emf.edit</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.settings/org.eclipse.jdt.core.prefs b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..2c14df6
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,311 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.settings/org.eclipse.jdt.ui.prefs b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..f7e57f8
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=com;eu;fr;java;javax;org;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/META-INF/MANIFEST.MF b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..3f7321c
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/META-INF/MANIFEST.MF
@@ -0,0 +1,19 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.intent.mapping.emf.edit;singleton:=true
+Bundle-Version: 0.10.0.qualifier
+Bundle-ClassPath: .
+Bundle-Activator: org.eclipse.intent.mapping.provider.MappingEditPlugin$Implementation
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.intent.mapping.provider
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.intent.mapping.emf;visibility:=reexport,
+ org.eclipse.emf.edit;visibility:=reexport,
+ org.eclipse.intent.mapping,
+ org.eclipse.jface,
+ org.eclipse.emf.edit.ui,
+ org.eclipse.emf.cdo.edit
+Bundle-ActivationPolicy: lazy
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/build.properties b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/build.properties
new file mode 100644
index 0000000..f53e329
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/build.properties
@@ -0,0 +1,19 @@
+#  Copyright (c) 2015 Obeo.
+#  All rights reserved. This program and the accompanying materials
+#  are made available under the terms of the Eclipse Public License v1.0
+#  which accompanies this distribution, and is available at
+#  http://www.eclipse.org/legal/epl-v10.html
+# 
+#  Contributors:
+#     Obeo - initial API and implementation and/or initial documentation
+#     ...
+# 
+
+bin.includes = .,\
+               icons/,\
+               META-INF/,\
+               plugin.xml,\
+               plugin.properties
+jars.compile.order = .
+source.. = src-gen/
+output.. = bin/
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/ctool16/CreateBase_reports_Report.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/ctool16/CreateBase_reports_Report.gif
new file mode 100644
index 0000000..3b01cc9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/ctool16/CreateBase_reports_Report.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/ctool16/CreateLocation_targetLinks_Link.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/ctool16/CreateLocation_targetLinks_Link.gif
new file mode 100644
index 0000000..dea9e2d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/ctool16/CreateLocation_targetLinks_Link.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/Base.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/Base.gif
new file mode 100644
index 0000000..c673a52
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/Base.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOBinaryResourceLocation.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOBinaryResourceLocation.gif
new file mode 100644
index 0000000..10d2229
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOBinaryResourceLocation.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOFolderLocation.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOFolderLocation.gif
new file mode 100644
index 0000000..83afb9b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOFolderLocation.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDORepositoryLocation.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDORepositoryLocation.gif
new file mode 100644
index 0000000..9041598
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDORepositoryLocation.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOResourceLocation.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOResourceLocation.gif
new file mode 100644
index 0000000..134551b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOResourceLocation.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOTextResourceLocation.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOTextResourceLocation.gif
new file mode 100644
index 0000000..7c2aaac
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/CDOTextResourceLocation.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/Couple.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/Couple.gif
new file mode 100644
index 0000000..05dc74a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/Couple.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/EObjectLocation.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/EObjectLocation.gif
new file mode 100644
index 0000000..a26660e
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/EObjectLocation.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/Link.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/Link.gif
new file mode 100644
index 0000000..89ad5da
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/Link.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/TextLocation.gif b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/TextLocation.gif
new file mode 100644
index 0000000..d92f34c
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/icons/full/obj16/TextLocation.gif
Binary files differ
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/plugin.properties b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/plugin.properties
new file mode 100644
index 0000000..d2a2058
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/plugin.properties
@@ -0,0 +1,90 @@
+#  Copyright (c) 2015 Obeo.
+#  All rights reserved. This program and the accompanying materials
+#  are made available under the terms of the Eclipse Public License v1.0
+#  which accompanies this distribution, and is available at
+#  http://www.eclipse.org/legal/epl-v10.html
+# 
+#  Contributors:
+#     Obeo - initial API and implementation and/or initial documentation
+#     ...
+# 
+
+pluginName = Mapping Edit Support
+providerName = www.example.org
+
+_UI_CreateChild_text = {0}
+_UI_CreateChild_text2 = {1} {0}
+_UI_CreateChild_text3 = {1}
+_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
+_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
+_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
+
+_UI_PropertyDescriptor_description = The {0} of the {1}
+
+_UI_Location_type = Location
+_UI_Scope_type = Scope
+_UI_Link_type = Link
+_UI_Base_type = Base
+_UI_IEMFBaseElement_type = IEMF Base Element
+_UI_TextLocation_type = Text Location
+_UI_EObjectLocation_type = EObject Location
+_UI_LocationContainer_type = Location Container
+_UI_Unknown_type = Object
+
+_UI_Unknown_datatype= Value
+
+_UI_Location_scope_feature = Scope
+_UI_Location_sourceLinks_feature = Source Links
+_UI_Location_targetLinks_feature = Target Links
+_UI_Location_container_feature = Container
+_UI_Location_referencingScopes_feature = Referencing Scopes
+_UI_Location_type_feature = Type
+_UI_Scope_locations_feature = Locations
+_UI_Scope_holder_feature = Holder
+_UI_Link_status_feature = Status
+_UI_Link_description_feature = Description
+_UI_Link_source_feature = Source
+_UI_Link_target_feature = Target
+_UI_Link_type_feature = Type
+_UI_Base_name_feature = Name
+_UI_TextLocation_startOffset_feature = Start Offset
+_UI_TextLocation_endOffset_feature = End Offset
+_UI_LocationContainer_contents_feature = Contents
+_UI_Unknown_feature = Unspecified
+
+_UI_Status_VALID_literal = VALID
+_UI_Status_CHANGED_SOURCE_literal = CHANGED_SOURCE
+_UI_Status_CHANGED_TARGET_literal = CHANGED_TARGET
+_UI_Status_DELETED_SOURCE_literal = DELETED_SOURCE
+_UI_Status_DELETED_TARGET_literal = DELETED_TARGET
+_UI_Report_type = Report
+_UI_Link_reports_feature = Reports
+_UI_Report_description_feature = Description
+_UI_Report_link_feature = Link
+_UI_Base_reports_feature = Reports
+_UI_EObjectLocation_featureName_feature = Feature Name
+_UI_Location_markedAsDeleted_feature = Marked As Deleted
+_UI_EObjectLocation_URIFragment_feature = URI Fragment
+_UI_EObjectLocation_index_feature = Index
+_UI_Couple_type = Couple
+_UI_EObjectContainer_type = EObject Container
+_UI_CDOResourceNodeLocation_type = CDO Resource Node Location
+_UI_CDOFileLocation_type = CDO File Location
+_UI_CDOFolderLocation_type = CDO Folder Location
+_UI_CDORepositoryLocation_type = CDO Repository Location
+_UI_CDOBinaryResourceLocation_type = CDO Binary Resource Location
+_UI_CDOTextResourceLocation_type = CDO Text Resource Location
+_UI_CDOResourceLocation_type = CDO Resource Location
+_UI_EObjectLocation_savedURIFragment_feature = Saved URI Fragment
+_UI_Couple_key_feature = Key
+_UI_Couple_value_feature = Value
+_UI_EObjectContainer_XMIContent_feature = XMI Content
+_UI_EObjectContainer_savedURIFragments_feature = Saved URI Fragments
+_UI_CDOResourceNodeLocation_path_feature = Path
+_UI_CDORepositoryLocation_URL_feature = URL
+_UI_CDORepositoryLocation_UUID_feature = UUID
+_UI_CDORepositoryLocation_name_feature = Name
+_UI_CDORepositoryLocation_branchID_feature = Branch ID
+_UI_TextContainer_type = Text Container
+_UI_TextContainer_text_feature = Text
+_UI_Base_containerProviders_feature = Container Providers
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/plugin.xml b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/plugin.xml
new file mode 100644
index 0000000..6da5f8a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/plugin.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+  Copyright (c) 2015 Obeo.
+  All rights reserved. This program and the accompanying materials
+  are made available under the terms of the Eclipse Public License v1.0
+  which accompanies this distribution, and is available at
+  http://www.eclipse.org/legal/epl-v10.html
+ 
+  Contributors:
+     Obeo - initial API and implementation and/or initial documentation
+     ...
+ 
+-->
+
+<plugin>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated mapping -->
+      <factory
+            uri="http://www.eclipse.org/intent/mapping"
+            class="org.eclipse.intent.mapping.provider.MappingItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
+
+</plugin>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/pom.xml b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/pom.xml
new file mode 100644
index 0000000..43d7e50
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/pom.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2016, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping.emf.edit</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-plugin</packaging>
+
+  <name>Mapping EMF Edit</name>
+
+  <build>
+   <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-source-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+  
+</project>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/BaseItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/BaseItemProvider.java
new file mode 100644
index 0000000..eb92cb3
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/BaseItemProvider.java
@@ -0,0 +1,223 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.cdo.edit.CDOItemProviderAdapter;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.MappingFactory;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.Base} object. <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class BaseItemProvider extends CDOItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public BaseItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addNamePropertyDescriptor(object);
+			addContainerProvidersPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_Base_name_feature"), getString(
+						"_UI_PropertyDescriptor_description", "_UI_Base_name_feature", "_UI_Base_type"),
+				MappingPackage.Literals.BASE__NAME, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Container Providers feature. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addContainerProvidersPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_Base_containerProviders_feature"), getString(
+								"_UI_PropertyDescriptor_description", "_UI_Base_containerProviders_feature",
+								"_UI_Base_type"), MappingPackage.Literals.BASE__CONTAINER_PROVIDERS, true,
+				false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for
+	 * an {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand}
+	 * or {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS);
+			childrenFeatures.add(MappingPackage.Literals.BASE__REPORTS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Base.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Base"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Base)object).getName();
+		return label == null || label.length() == 0 ? getString("_UI_Base_type")
+				: getString("_UI_Base_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(Base.class)) {
+			case MappingPackage.BASE__NAME:
+			case MappingPackage.BASE__CONTAINER_PROVIDERS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+			case MappingPackage.BASE__CONTENTS:
+			case MappingPackage.BASE__REPORTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true,
+						false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createTextLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createEObjectLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createCDOFolderLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createCDORepositoryLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createCDOBinaryResourceLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createCDOTextResourceLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createCDOResourceLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.BASE__REPORTS,
+				MappingFactory.eINSTANCE.createReport()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return MappingEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOBinaryResourceLocationItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOBinaryResourceLocationItemProvider.java
new file mode 100644
index 0000000..a636fd9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOBinaryResourceLocationItemProvider.java
@@ -0,0 +1,131 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.intent.mapping.CDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.CDOBinaryResourceLocation}
+ * object. <!-- begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class CDOBinaryResourceLocationItemProvider extends LocationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public CDOBinaryResourceLocationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addPathPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Path feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_CDOResourceNodeLocation_path_feature"), getString(
+								"_UI_PropertyDescriptor_description",
+								"_UI_CDOResourceNodeLocation_path_feature",
+								"_UI_CDOResourceNodeLocation_type"),
+				MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns CDOBinaryResourceLocation.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CDOBinaryResourceLocation"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Serializable labelValue = ((CDOBinaryResourceLocation)object).getType();
+		String label = labelValue == null ? null : labelValue.toString();
+		return label == null || label.length() == 0 ? getString("_UI_CDOBinaryResourceLocation_type")
+				: getString("_UI_CDOBinaryResourceLocation_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CDOBinaryResourceLocation.class)) {
+			case MappingPackage.CDO_BINARY_RESOURCE_LOCATION__PATH:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOFolderLocationItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOFolderLocationItemProvider.java
new file mode 100644
index 0000000..396d736
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOFolderLocationItemProvider.java
@@ -0,0 +1,131 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.intent.mapping.CDOFolderLocation;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.CDOFolderLocation} object. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class CDOFolderLocationItemProvider extends LocationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public CDOFolderLocationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addPathPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Path feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_CDOResourceNodeLocation_path_feature"), getString(
+								"_UI_PropertyDescriptor_description",
+								"_UI_CDOResourceNodeLocation_path_feature",
+								"_UI_CDOResourceNodeLocation_type"),
+				MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns CDOFolderLocation.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CDOFolderLocation"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Serializable labelValue = ((CDOFolderLocation)object).getType();
+		String label = labelValue == null ? null : labelValue.toString();
+		return label == null || label.length() == 0 ? getString("_UI_CDOFolderLocation_type")
+				: getString("_UI_CDOFolderLocation_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CDOFolderLocation.class)) {
+			case MappingPackage.CDO_FOLDER_LOCATION__PATH:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDORepositoryLocationItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDORepositoryLocationItemProvider.java
new file mode 100644
index 0000000..0d0ee06
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDORepositoryLocationItemProvider.java
@@ -0,0 +1,181 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.intent.mapping.CDORepositoryLocation;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.CDORepositoryLocation} object.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class CDORepositoryLocationItemProvider extends LocationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public CDORepositoryLocationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addURLPropertyDescriptor(object);
+			addUUIDPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addBranchIDPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the URL feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addURLPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_CDORepositoryLocation_URL_feature"), getString(
+								"_UI_PropertyDescriptor_description", "_UI_CDORepositoryLocation_URL_feature",
+								"_UI_CDORepositoryLocation_type"),
+				MappingPackage.Literals.CDO_REPOSITORY_LOCATION__URL, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the UUID feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addUUIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_CDORepositoryLocation_UUID_feature"), getString(
+								"_UI_PropertyDescriptor_description",
+								"_UI_CDORepositoryLocation_UUID_feature", "_UI_CDORepositoryLocation_type"),
+				MappingPackage.Literals.CDO_REPOSITORY_LOCATION__UUID, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_CDORepositoryLocation_name_feature"), getString(
+								"_UI_PropertyDescriptor_description",
+								"_UI_CDORepositoryLocation_name_feature", "_UI_CDORepositoryLocation_type"),
+				MappingPackage.Literals.CDO_REPOSITORY_LOCATION__NAME, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Branch ID feature. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	protected void addBranchIDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_CDORepositoryLocation_branchID_feature"), getString(
+								"_UI_PropertyDescriptor_description",
+								"_UI_CDORepositoryLocation_branchID_feature",
+								"_UI_CDORepositoryLocation_type"),
+				MappingPackage.Literals.CDO_REPOSITORY_LOCATION__BRANCH_ID, true, false, false,
+				ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns CDORepositoryLocation.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CDORepositoryLocation"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((CDORepositoryLocation)object).getName();
+		return label == null || label.length() == 0 ? getString("_UI_CDORepositoryLocation_type")
+				: getString("_UI_CDORepositoryLocation_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CDORepositoryLocation.class)) {
+			case MappingPackage.CDO_REPOSITORY_LOCATION__URL:
+			case MappingPackage.CDO_REPOSITORY_LOCATION__UUID:
+			case MappingPackage.CDO_REPOSITORY_LOCATION__NAME:
+			case MappingPackage.CDO_REPOSITORY_LOCATION__BRANCH_ID:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOResourceLocationItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOResourceLocationItemProvider.java
new file mode 100644
index 0000000..653ecdb
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOResourceLocationItemProvider.java
@@ -0,0 +1,189 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.intent.mapping.CDOResourceLocation;
+import org.eclipse.intent.mapping.MappingFactory;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.CDOResourceLocation} object. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class CDOResourceLocationItemProvider extends LocationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public CDOResourceLocationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addPathPropertyDescriptor(object);
+			addXMIContentPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Path feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_CDOResourceNodeLocation_path_feature"), getString(
+								"_UI_PropertyDescriptor_description",
+								"_UI_CDOResourceNodeLocation_path_feature",
+								"_UI_CDOResourceNodeLocation_type"),
+				MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the XMI Content feature. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	protected void addXMIContentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_EObjectContainer_XMIContent_feature"), getString(
+								"_UI_PropertyDescriptor_description",
+								"_UI_EObjectContainer_XMIContent_feature", "_UI_EObjectContainer_type"),
+				MappingPackage.Literals.EOBJECT_CONTAINER__XMI_CONTENT, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for
+	 * an {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand}
+	 * or {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(MappingPackage.Literals.EOBJECT_CONTAINER__SAVED_URI_FRAGMENTS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CDOResourceLocation.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CDOResourceLocation"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Serializable labelValue = ((CDOResourceLocation)object).getType();
+		String label = labelValue == null ? null : labelValue.toString();
+		return label == null || label.length() == 0 ? getString("_UI_CDOResourceLocation_type")
+				: getString("_UI_CDOResourceLocation_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CDOResourceLocation.class)) {
+			case MappingPackage.CDO_RESOURCE_LOCATION__PATH:
+			case MappingPackage.CDO_RESOURCE_LOCATION__XMI_CONTENT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+			case MappingPackage.CDO_RESOURCE_LOCATION__SAVED_URI_FRAGMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true,
+						false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add(createChildParameter(
+				MappingPackage.Literals.EOBJECT_CONTAINER__SAVED_URI_FRAGMENTS, MappingFactory.eINSTANCE
+						.createCouple()));
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOTextResourceLocationItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOTextResourceLocationItemProvider.java
new file mode 100644
index 0000000..05d4b815
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CDOTextResourceLocationItemProvider.java
@@ -0,0 +1,146 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.intent.mapping.CDOTextResourceLocation;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.CDOTextResourceLocation} object.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class CDOTextResourceLocationItemProvider extends LocationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public CDOTextResourceLocationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addPathPropertyDescriptor(object);
+			addTextPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Path feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_CDOResourceNodeLocation_path_feature"), getString(
+								"_UI_PropertyDescriptor_description",
+								"_UI_CDOResourceNodeLocation_path_feature",
+								"_UI_CDOResourceNodeLocation_type"),
+				MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Text feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addTextPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_TextContainer_text_feature"),
+				getString("_UI_PropertyDescriptor_description", "_UI_TextContainer_text_feature",
+						"_UI_TextContainer_type"), MappingPackage.Literals.TEXT_CONTAINER__TEXT, true, false,
+				false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns CDOTextResourceLocation.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CDOTextResourceLocation"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Serializable labelValue = ((CDOTextResourceLocation)object).getType();
+		String label = labelValue == null ? null : labelValue.toString();
+		return label == null || label.length() == 0 ? getString("_UI_CDOTextResourceLocation_type")
+				: getString("_UI_CDOTextResourceLocation_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(CDOTextResourceLocation.class)) {
+			case MappingPackage.CDO_TEXT_RESOURCE_LOCATION__PATH:
+			case MappingPackage.CDO_TEXT_RESOURCE_LOCATION__TEXT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CoupleItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CoupleItemProvider.java
new file mode 100644
index 0000000..799fe6a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/CoupleItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.cdo.edit.CDOItemProviderAdapter;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.intent.mapping.Couple;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.Couple} object. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class CoupleItemProvider extends CDOItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public CoupleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addKeyPropertyDescriptor(object);
+			addValuePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Key feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addKeyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_Couple_key_feature"),
+				getString("_UI_PropertyDescriptor_description", "_UI_Couple_key_feature", "_UI_Couple_type"),
+				MappingPackage.Literals.COUPLE__KEY, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Value feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_Couple_value_feature"),
+				getString("_UI_PropertyDescriptor_description", "_UI_Couple_value_feature",
+						"_UI_Couple_type"), MappingPackage.Literals.COUPLE__VALUE, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns Couple.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Couple"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Couple)object).getKey();
+		return label == null || label.length() == 0 ? getString("_UI_Couple_type")
+				: getString("_UI_Couple_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(Couple.class)) {
+			case MappingPackage.COUPLE__KEY:
+			case MappingPackage.COUPLE__VALUE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return MappingEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/EObjectLocationItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/EObjectLocationItemProvider.java
new file mode 100644
index 0000000..940a11a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/EObjectLocationItemProvider.java
@@ -0,0 +1,212 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
+import org.eclipse.intent.mapping.EObjectLocation;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.jface.viewers.ILabelProvider;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.EObjectLocation} object. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class EObjectLocationItemProvider extends LocationItemProvider {
+
+	/**
+	 * The EMF {@link ILabelProvider}.
+	 * 
+	 * @generated NOT
+	 */
+	private final ILabelProvider eLabelProvider;
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated NOT
+	 */
+	public EObjectLocationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+		final ComposedAdapterFactory factory = new ComposedAdapterFactory(
+				ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+		eLabelProvider = new AdapterFactoryLabelProvider(factory);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.emf.edit.provider.ItemProviderAdapter#dispose()
+	 * @generated NOT
+	 */
+	@Override
+	public void dispose() {
+		super.dispose();
+		eLabelProvider.dispose();
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addURIFragmentPropertyDescriptor(object);
+			addSavedURIFragmentPropertyDescriptor(object);
+			addFeatureNamePropertyDescriptor(object);
+			addIndexPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the URI Fragment feature. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	protected void addURIFragmentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_EObjectLocation_URIFragment_feature"), getString(
+								"_UI_PropertyDescriptor_description",
+								"_UI_EObjectLocation_URIFragment_feature", "_UI_EObjectLocation_type"),
+				MappingPackage.Literals.EOBJECT_LOCATION__URI_FRAGMENT, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Saved URI Fragment feature. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addSavedURIFragmentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_EObjectLocation_savedURIFragment_feature"), getString(
+								"_UI_PropertyDescriptor_description",
+								"_UI_EObjectLocation_savedURIFragment_feature", "_UI_EObjectLocation_type"),
+				MappingPackage.Literals.EOBJECT_LOCATION__SAVED_URI_FRAGMENT, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Feature Name feature. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	protected void addFeatureNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_EObjectLocation_featureName_feature"), getString(
+								"_UI_PropertyDescriptor_description",
+								"_UI_EObjectLocation_featureName_feature", "_UI_EObjectLocation_type"),
+				MappingPackage.Literals.EOBJECT_LOCATION__FEATURE_NAME, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Index feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addIndexPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_EObjectLocation_index_feature"), getString("_UI_PropertyDescriptor_description",
+								"_UI_EObjectLocation_index_feature", "_UI_EObjectLocation_type"),
+				MappingPackage.Literals.EOBJECT_LOCATION__INDEX, true, false, false,
+				ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns EObjectLocation.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/EObjectLocation"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@Override
+	public String getText(Object object) {
+		final String label;
+
+		label = MappingUtils.getConnectorRegistry().getName((ILocation)object);
+
+		return label == null || label.length() == 0 ? getString("_UI_EObjectLocation_type")
+				: getString("_UI_EObjectLocation_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(EObjectLocation.class)) {
+			case MappingPackage.EOBJECT_LOCATION__URI_FRAGMENT:
+			case MappingPackage.EOBJECT_LOCATION__SAVED_URI_FRAGMENT:
+			case MappingPackage.EOBJECT_LOCATION__FEATURE_NAME:
+			case MappingPackage.EOBJECT_LOCATION__INDEX:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/LinkItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/LinkItemProvider.java
new file mode 100644
index 0000000..4db442b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/LinkItemProvider.java
@@ -0,0 +1,212 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.cdo.edit.CDOItemProviderAdapter;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
+import org.eclipse.intent.mapping.Link;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.jface.viewers.ILabelProvider;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.Link} object. <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class LinkItemProvider extends CDOItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+
+	/**
+	 * The EMF {@link ILabelProvider}.
+	 * 
+	 * @generated NOT
+	 */
+	private final ILabelProvider eLabelProvider;
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated NOT
+	 */
+	public LinkItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+		final ComposedAdapterFactory factory = new ComposedAdapterFactory(
+				ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+		eLabelProvider = new AdapterFactoryLabelProvider(factory);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.emf.edit.provider.ItemProviderAdapter#dispose()
+	 * @generated NOT
+	 */
+	@Override
+	public void dispose() {
+		super.dispose();
+		eLabelProvider.dispose();
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addDescriptionPropertyDescriptor(object);
+			addTargetPropertyDescriptor(object);
+			addTypePropertyDescriptor(object);
+			addReportsPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Description feature. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	protected void addDescriptionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_Link_description_feature"),
+				getString("_UI_PropertyDescriptor_description", "_UI_Link_description_feature",
+						"_UI_Link_type"), MappingPackage.Literals.LINK__DESCRIPTION, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Target feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addTargetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_Link_target_feature"),
+				getString("_UI_PropertyDescriptor_description", "_UI_Link_target_feature", "_UI_Link_type"),
+				MappingPackage.Literals.LINK__TARGET, true, false, true, null, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Type feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_Link_type_feature"), getString(
+						"_UI_PropertyDescriptor_description", "_UI_Link_type_feature", "_UI_Link_type"),
+				MappingPackage.Literals.LINK__TYPE, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Reports feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addReportsPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_Link_reports_feature"),
+				getString("_UI_PropertyDescriptor_description", "_UI_Link_reports_feature", "_UI_Link_type"),
+				MappingPackage.Literals.LINK__REPORTS, true, false, true, null, null, null));
+	}
+
+	/**
+	 * This returns Link.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Link"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = eLabelProvider.getText(((Link)object).getTarget());
+		return label == null || label.length() == 0 ? getString("_UI_Link_type")
+				: getString("_UI_Link_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(Link.class)) {
+			case MappingPackage.LINK__SOURCE:
+			case MappingPackage.LINK__TARGET:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return MappingEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/LocationItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/LocationItemProvider.java
new file mode 100644
index 0000000..bbc4630
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/LocationItemProvider.java
@@ -0,0 +1,230 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.cdo.edit.CDOItemProviderAdapter;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.intent.mapping.Location;
+import org.eclipse.intent.mapping.MappingFactory;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.Location} object. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class LocationItemProvider extends CDOItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public LocationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addSourceLinksPropertyDescriptor(object);
+			addTypePropertyDescriptor(object);
+			addMarkedAsDeletedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Source Links feature. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	protected void addSourceLinksPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_Location_sourceLinks_feature"),
+				getString("_UI_PropertyDescriptor_description", "_UI_Location_sourceLinks_feature",
+						"_UI_Location_type"), MappingPackage.Literals.LOCATION__SOURCE_LINKS, true, false,
+				true, null, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Type feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_Location_type_feature"),
+				getString("_UI_PropertyDescriptor_description", "_UI_Location_type_feature",
+						"_UI_Location_type"), MappingPackage.Literals.LOCATION__TYPE, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Marked As Deleted feature. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addMarkedAsDeletedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_Location_markedAsDeleted_feature"), getString(
+								"_UI_PropertyDescriptor_description", "_UI_Location_markedAsDeleted_feature",
+								"_UI_Location_type"), MappingPackage.Literals.LOCATION__MARKED_AS_DELETED,
+				true, false, false, ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for
+	 * an {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand}
+	 * or {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS);
+			childrenFeatures.add(MappingPackage.Literals.LOCATION__TARGET_LINKS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Serializable labelValue = ((Location)object).getType();
+		String label = labelValue == null ? null : labelValue.toString();
+		return label == null || label.length() == 0 ? getString("_UI_Location_type")
+				: getString("_UI_Location_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(Location.class)) {
+			case MappingPackage.LOCATION__TYPE:
+			case MappingPackage.LOCATION__MARKED_AS_DELETED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+			case MappingPackage.LOCATION__CONTENTS:
+			case MappingPackage.LOCATION__TARGET_LINKS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true,
+						false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createTextLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createEObjectLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createCDOFolderLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createCDORepositoryLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createCDOBinaryResourceLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createCDOTextResourceLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS,
+				MappingFactory.eINSTANCE.createCDOResourceLocation()));
+
+		newChildDescriptors.add(createChildParameter(MappingPackage.Literals.LOCATION__TARGET_LINKS,
+				MappingFactory.eINSTANCE.createLink()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return MappingEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/MappingEditPlugin.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/MappingEditPlugin.java
new file mode 100644
index 0000000..b091a3b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/MappingEditPlugin.java
@@ -0,0 +1,88 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import org.eclipse.emf.common.EMFPlugin;
+import org.eclipse.emf.common.util.ResourceLocator;
+
+/**
+ * This is the central singleton for the Mapping edit plugin. <!-- begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public final class MappingEditPlugin extends EMFPlugin {
+	/**
+	 * Keep track of the singleton. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final MappingEditPlugin INSTANCE = new MappingEditPlugin();
+
+	/**
+	 * Keep track of the singleton. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static Implementation plugin;
+
+	/**
+	 * Create the instance. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MappingEditPlugin() {
+		super(new ResourceLocator[] {});
+	}
+
+	/**
+	 * Returns the singleton instance of the Eclipse plugin. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the singleton instance.
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getPluginResourceLocator() {
+		return plugin;
+	}
+
+	/**
+	 * Returns the singleton instance of the Eclipse plugin. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the singleton instance.
+	 * @generated
+	 */
+	public static Implementation getPlugin() {
+		return plugin;
+	}
+
+	/**
+	 * The actual implementation of the Eclipse <b>Plugin</b>. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static class Implementation extends EclipsePlugin {
+		/**
+		 * Creates an instance. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		public Implementation() {
+			super();
+
+			// Remember the static instance.
+			//
+			plugin = this;
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/MappingItemProviderAdapterFactory.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/MappingItemProviderAdapterFactory.java
new file mode 100644
index 0000000..57973f7
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/MappingItemProviderAdapterFactory.java
@@ -0,0 +1,457 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.intent.mapping.util.MappingAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers. The adapters
+ * generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged
+ * fireNotifyChanged}. The adapters also support Eclipse property sheets. Note that most of the adapters are
+ * shared among multiple instances. <!-- begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class MappingItemProviderAdapterFactory extends MappingAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MappingItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.intent.mapping.Link} instances.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected LinkItemProvider linkItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.intent.mapping.Link}. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createLinkAdapter() {
+		if (linkItemProvider == null) {
+			linkItemProvider = new LinkItemProvider(this);
+		}
+
+		return linkItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.intent.mapping.Base} instances.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected BaseItemProvider baseItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.intent.mapping.Base}. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createBaseAdapter() {
+		if (baseItemProvider == null) {
+			baseItemProvider = new BaseItemProvider(this);
+		}
+
+		return baseItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.intent.mapping.TextLocation}
+	 * instances. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected TextLocationItemProvider textLocationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.intent.mapping.TextLocation}. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createTextLocationAdapter() {
+		if (textLocationItemProvider == null) {
+			textLocationItemProvider = new TextLocationItemProvider(this);
+		}
+
+		return textLocationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.intent.mapping.EObjectLocation}
+	 * instances. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected EObjectLocationItemProvider eObjectLocationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.intent.mapping.EObjectLocation}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createEObjectLocationAdapter() {
+		if (eObjectLocationItemProvider == null) {
+			eObjectLocationItemProvider = new EObjectLocationItemProvider(this);
+		}
+
+		return eObjectLocationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.intent.mapping.Report} instances.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ReportItemProvider reportItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.intent.mapping.Report}. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createReportAdapter() {
+		if (reportItemProvider == null) {
+			reportItemProvider = new ReportItemProvider(this);
+		}
+
+		return reportItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.intent.mapping.Couple} instances.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected CoupleItemProvider coupleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.intent.mapping.Couple}. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createCoupleAdapter() {
+		if (coupleItemProvider == null) {
+			coupleItemProvider = new CoupleItemProvider(this);
+		}
+
+		return coupleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.intent.mapping.CDOFolderLocation}
+	 * instances. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected CDOFolderLocationItemProvider cdoFolderLocationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.intent.mapping.CDOFolderLocation}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createCDOFolderLocationAdapter() {
+		if (cdoFolderLocationItemProvider == null) {
+			cdoFolderLocationItemProvider = new CDOFolderLocationItemProvider(this);
+		}
+
+		return cdoFolderLocationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all
+	 * {@link org.eclipse.intent.mapping.CDORepositoryLocation} instances. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected CDORepositoryLocationItemProvider cdoRepositoryLocationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.intent.mapping.CDORepositoryLocation}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createCDORepositoryLocationAdapter() {
+		if (cdoRepositoryLocationItemProvider == null) {
+			cdoRepositoryLocationItemProvider = new CDORepositoryLocationItemProvider(this);
+		}
+
+		return cdoRepositoryLocationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all
+	 * {@link org.eclipse.intent.mapping.CDOBinaryResourceLocation} instances. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected CDOBinaryResourceLocationItemProvider cdoBinaryResourceLocationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.intent.mapping.CDOBinaryResourceLocation}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createCDOBinaryResourceLocationAdapter() {
+		if (cdoBinaryResourceLocationItemProvider == null) {
+			cdoBinaryResourceLocationItemProvider = new CDOBinaryResourceLocationItemProvider(this);
+		}
+
+		return cdoBinaryResourceLocationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all
+	 * {@link org.eclipse.intent.mapping.CDOTextResourceLocation} instances. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected CDOTextResourceLocationItemProvider cdoTextResourceLocationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.intent.mapping.CDOTextResourceLocation}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createCDOTextResourceLocationAdapter() {
+		if (cdoTextResourceLocationItemProvider == null) {
+			cdoTextResourceLocationItemProvider = new CDOTextResourceLocationItemProvider(this);
+		}
+
+		return cdoTextResourceLocationItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.intent.mapping.CDOResourceLocation}
+	 * instances. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected CDOResourceLocationItemProvider cdoResourceLocationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.intent.mapping.CDOResourceLocation}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createCDOResourceLocationAdapter() {
+		if (cdoResourceLocationItemProvider == null) {
+			cdoResourceLocationItemProvider = new CDOResourceLocationItemProvider(this);
+		}
+
+		return cdoResourceLocationItemProvider;
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if (isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * This adds a listener. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+
+		if (parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void dispose() {
+		if (linkItemProvider != null)
+			linkItemProvider.dispose();
+		if (baseItemProvider != null)
+			baseItemProvider.dispose();
+		if (textLocationItemProvider != null)
+			textLocationItemProvider.dispose();
+		if (eObjectLocationItemProvider != null)
+			eObjectLocationItemProvider.dispose();
+		if (reportItemProvider != null)
+			reportItemProvider.dispose();
+		if (coupleItemProvider != null)
+			coupleItemProvider.dispose();
+		if (cdoFolderLocationItemProvider != null)
+			cdoFolderLocationItemProvider.dispose();
+		if (cdoRepositoryLocationItemProvider != null)
+			cdoRepositoryLocationItemProvider.dispose();
+		if (cdoBinaryResourceLocationItemProvider != null)
+			cdoBinaryResourceLocationItemProvider.dispose();
+		if (cdoTextResourceLocationItemProvider != null)
+			cdoTextResourceLocationItemProvider.dispose();
+		if (cdoResourceLocationItemProvider != null)
+			cdoResourceLocationItemProvider.dispose();
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/ReportItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/ReportItemProvider.java
new file mode 100644
index 0000000..953407b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/ReportItemProvider.java
@@ -0,0 +1,148 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.cdo.edit.CDOItemProviderAdapter;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.Report;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.Report} object. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class ReportItemProvider extends CDOItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public ReportItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addDescriptionPropertyDescriptor(object);
+			addLinkPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Description feature. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	protected void addDescriptionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_Report_description_feature"),
+				getString("_UI_PropertyDescriptor_description", "_UI_Report_description_feature",
+						"_UI_Report_type"), MappingPackage.Literals.REPORT__DESCRIPTION, true, false, false,
+				ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Link feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addLinkPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString("_UI_Report_link_feature"),
+				getString("_UI_PropertyDescriptor_description", "_UI_Report_link_feature", "_UI_Report_type"),
+				MappingPackage.Literals.REPORT__LINK, true, false, true, null, null, null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Report)object).getDescription();
+		return label == null || label.length() == 0 ? getString("_UI_Report_type")
+				: getString("_UI_Report_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(Report.class)) {
+			case MappingPackage.REPORT__DESCRIPTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return MappingEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/TextLocationItemProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/TextLocationItemProvider.java
new file mode 100644
index 0000000..2823aaf
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.edit/src-gen/org/eclipse/intent/mapping/provider/TextLocationItemProvider.java
@@ -0,0 +1,147 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.provider;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.TextLocation;
+import org.eclipse.intent.mapping.base.ILocation;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.intent.mapping.TextLocation} object. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class TextLocationItemProvider extends LocationItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public TextLocationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addStartOffsetPropertyDescriptor(object);
+			addEndOffsetPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Start Offset feature. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	protected void addStartOffsetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_TextLocation_startOffset_feature"), getString(
+								"_UI_PropertyDescriptor_description", "_UI_TextLocation_startOffset_feature",
+								"_UI_TextLocation_type"), MappingPackage.Literals.TEXT_LOCATION__START_OFFSET,
+				true, false, false, ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the End Offset feature. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	protected void addEndOffsetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory)
+				.getRootAdapterFactory(), getResourceLocator(), getString(
+						"_UI_TextLocation_endOffset_feature"), getString("_UI_PropertyDescriptor_description",
+								"_UI_TextLocation_endOffset_feature", "_UI_TextLocation_type"),
+				MappingPackage.Literals.TEXT_LOCATION__END_OFFSET, true, false, false,
+				ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns TextLocation.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/TextLocation"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@Override
+	public String getText(Object object) {
+		final String label = MappingUtils.getConnectorRegistry().getName((ILocation)object);
+		return label == null || label.length() == 0 ? getString("_UI_TextLocation_type")
+				: getString("_UI_TextLocation_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached children and
+	 * by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(TextLocation.class)) {
+			case MappingPackage.TEXT_LOCATION__START_OFFSET:
+			case MappingPackage.TEXT_LOCATION__END_OFFSET:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false,
+						true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be
+	 * created under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.checkstyle b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.checkstyle
new file mode 100644
index 0000000..b3e8ea9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.checkstyle
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6Configuration.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+  <filter name="FilesFromPackage" enabled="true">
+    <filter-data value="google-diff-match-patch"/>
+  </filter>
+</fileset-config>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.classpath b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.classpath
new file mode 100644
index 0000000..304e861
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.project b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.project
new file mode 100644
index 0000000..63c65d2
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.emf.ide.ui</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.settings/org.eclipse.jdt.core.prefs b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3433b02
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,315 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.settings/org.eclipse.jdt.ui.prefs b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..f7e57f8
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=com;eu;fr;java;javax;org;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/META-INF/MANIFEST.MF b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..5a04ff9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,20 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Ui
+Bundle-SymbolicName: org.eclipse.intent.mapping.emf.ide.ui;singleton:=true
+Bundle-Version: 0.10.0.qualifier
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.core.resources,
+ org.eclipse.core.runtime,
+ org.eclipse.intent.mapping,
+ org.eclipse.intent.mapping.emf,
+ org.eclipse.intent.mapping.emf.ide,
+ org.eclipse.jface,
+ org.eclipse.ui.ide,
+ org.eclipse.intent.mapping.ide.ui,
+ org.eclipse.intent.mapping.ide,
+ org.eclipse.ui
+Export-Package: org.eclipse.intent.mapping.emf.ide.ui,
+ org.eclipse.intent.mapping.emf.ide.ui.wizard
+Bundle-ActivationPolicy: lazy
+Bundle-Activator: org.eclipse.intent.mapping.emf.ide.ui.Activator
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/build.properties b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/build.properties
new file mode 100644
index 0000000..cc91072
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/build.properties
@@ -0,0 +1,4 @@
+source.. = src/
+bin.includes = META-INF/,\
+               .,\
+               plugin.xml
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/plugin.xml b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/plugin.xml
new file mode 100644
index 0000000..df8ca96
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/plugin.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+   <extension
+         point="org.eclipse.ui.newWizards">
+      <wizard
+            category="org.eclipse.intent.mapping.ide.ui.mapping"
+            class="org.eclipse.intent.mapping.emf.ide.ui.wizard.NewEMFBase"
+            id="org.eclipse.intent.mapping.emf.ide.ui.newEMFBase"
+            name="EMF Base">
+      </wizard>
+   </extension>
+
+</plugin>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/pom.xml b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/pom.xml
new file mode 100644
index 0000000..90f98a1
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/pom.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping.emf.ide.ui</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-plugin</packaging>
+
+  <name>Mapping EMF IDE UI</name>
+
+  <build>
+   <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-source-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+  
+</project>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/src/org/eclipse/intent/mapping/emf/ide/ui/Activator.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/src/org/eclipse/intent/mapping/emf/ide/ui/Activator.java
new file mode 100644
index 0000000..631c7bb
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/src/org/eclipse/intent/mapping/emf/ide/ui/Activator.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.ui;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class Activator extends Plugin {
+
+	/** The plug-in ID. */
+	public static final String PLUGIN_ID = "org.eclipse.intent.mapping.emf.ide.ui";
+
+	/** This plug-in's shared instance. */
+	private static Activator plugin;
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext)
+	 */
+	public void start(BundleContext context) throws Exception {
+		super.start(context);
+		plugin = this;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
+	 */
+	public void stop(BundleContext context) throws Exception {
+		super.stop(context);
+		plugin = null;
+	}
+
+	/**
+	 * Returns the shared instance.
+	 * 
+	 * @return the shared instance
+	 */
+	public static Activator getDefault() {
+		return plugin;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/src/org/eclipse/intent/mapping/emf/ide/ui/wizard/NewEMFBase.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/src/org/eclipse/intent/mapping/emf/ide/ui/wizard/NewEMFBase.java
new file mode 100644
index 0000000..29cbe1c
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/src/org/eclipse/intent/mapping/emf/ide/ui/wizard/NewEMFBase.java
@@ -0,0 +1,103 @@
+/*******************************************************************************
+ * Copyright (c) 2016 0beo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.ui.wizard;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.emf.ide.ui.Activator;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchWizard;
+
+/**
+ * Creates a {@link Base}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class NewEMFBase extends Wizard implements IWorkbenchWizard {
+
+	/**
+	 * The {@link NewEMFBasePage}.
+	 */
+	protected NewEMFBasePage page;
+
+	/**
+	 * The default file name.
+	 */
+	private String defaultFileName;
+
+	/**
+	 * Constructor.
+	 */
+	public NewEMFBase() {
+		setWindowTitle("New Wizard");
+	}
+
+	@Override
+	public void addPages() {
+		page = new NewEMFBasePage(defaultFileName);
+		addPage(page);
+	}
+
+	@Override
+	public boolean performFinish() {
+		boolean res = false;
+
+		final Base base = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+		base.setName(page.getMappingBaseName());
+		final ResourceSet rs = new ResourceSetImpl();
+		final Resource r = rs.createResource(URI.createPlatformResourceURI(page.getFileName(), true));
+		r.getContents().add(base);
+		try {
+			r.save(null);
+			res = true;
+		} catch (IOException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+					"unable to save base " + page.getFileName()));
+
+		}
+
+		dispose();
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.ui.IWorkbenchWizard#init(org.eclipse.ui.IWorkbench,
+	 *      org.eclipse.jface.viewers.IStructuredSelection)
+	 */
+	public void init(IWorkbench workbench, IStructuredSelection selection) {
+		final IContainer container;
+
+		if (selection.getFirstElement() instanceof IFile) {
+			container = ((IFile)selection.getFirstElement()).getParent();
+			defaultFileName = container.getFullPath().toString() + "/";
+		} else if (selection.getFirstElement() instanceof IContainer) {
+			container = (IContainer)selection.getFirstElement();
+			defaultFileName = container.getFullPath().toString() + "/";
+		}
+
+	}
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/src/org/eclipse/intent/mapping/emf/ide/ui/wizard/NewEMFBasePage.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/src/org/eclipse/intent/mapping/emf/ide/ui/wizard/NewEMFBasePage.java
new file mode 100644
index 0000000..d7e12ed
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide.ui/src/org/eclipse/intent/mapping/emf/ide/ui/wizard/NewEMFBasePage.java
@@ -0,0 +1,155 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.ui.wizard;
+
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.KeyListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Text;
+
+/**
+ * EMF {@link org.eclipse.intent.mapping.Base Base} creation page.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class NewEMFBasePage extends WizardPage {
+
+	/**
+	 * The default file name.
+	 */
+	private final String defaultFileName;
+
+	/**
+	 * The base name {@link Text}.
+	 */
+	private Text baseNameText;
+
+	/**
+	 * The file name {@link Text}.
+	 */
+	private Text fileNameText;
+
+	/**
+	 * Create the wizard.
+	 * 
+	 * @param defaultFileName
+	 *            the default file name
+	 */
+	public NewEMFBasePage(String defaultFileName) {
+		super("Create EMF Mapping Base");
+		this.defaultFileName = defaultFileName;
+		setTitle("Create EMF Mapping Base");
+		setDescription("Enter information to create a new EMF mapping base");
+	}
+
+	/**
+	 * Create contents of the wizard.
+	 * 
+	 * @param parent
+	 *            the parent {@link Composite}
+	 */
+	public void createControl(Composite parent) {
+		KeyListener listener = new KeyListener() {
+
+			public void keyPressed(org.eclipse.swt.events.KeyEvent e) {
+				// nothing to do here
+			}
+
+			public void keyReleased(org.eclipse.swt.events.KeyEvent e) {
+				check();
+			}
+
+		};
+
+		final Composite container = new Composite(parent, SWT.NULL);
+
+		setControl(container);
+		container.setLayout(new GridLayout(2, false));
+
+		final Label baseNameLabel = new Label(container, SWT.NONE);
+		baseNameLabel.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1));
+		baseNameLabel.setText("Mapping base name:");
+
+		baseNameText = new Text(container, SWT.BORDER);
+		baseNameText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
+		baseNameText.addKeyListener(listener);
+
+		final Label fileNameLabel = new Label(container, SWT.NONE);
+		fileNameLabel.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1));
+		fileNameLabel.setText("File name:");
+
+		fileNameText = new Text(container, SWT.BORDER);
+		fileNameText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
+		fileNameText.addKeyListener(listener);
+		if (defaultFileName != null) {
+			fileNameText.setText(defaultFileName);
+		}
+
+		check();
+	}
+
+	/**
+	 * Gets the {@link org.eclipse.intent.mapping.Base#getName() name}.
+	 * 
+	 * @return the {@link org.eclipse.intent.mapping.Base#getName() name}
+	 */
+	public String getMappingBaseName() {
+		return baseNameText.getText();
+	}
+
+	/**
+	 * Gets the file name.
+	 * 
+	 * @return the file name
+	 */
+	public String getFileName() {
+		return fileNameText.getText();
+	}
+
+	/**
+	 * Sets the file name.
+	 * 
+	 * @param name
+	 *            the file name
+	 */
+	public void setFileName(String name) {
+		fileNameText.setText(name);
+	}
+
+	/**
+	 * Checks the page.
+	 */
+	private void check() {
+		final StringBuilder builder = new StringBuilder();
+		if (baseNameText.getText().isEmpty()) {
+			builder.append("The mapping base name can't be empty.");
+			if (fileNameText.getText().isEmpty()) {
+				builder.append("\n");
+			}
+		}
+		if (fileNameText.getText().isEmpty() || !fileNameText.getText().endsWith(".mapping")) {
+			builder.append("The file name can't be empty and must finish with \".mapping\"");
+		}
+		if (builder.length() == 0) {
+			setErrorMessage(null);
+			setPageComplete(true);
+		} else {
+			setErrorMessage(builder.toString());
+			setPageComplete(false);
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.checkstyle b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.checkstyle
new file mode 100644
index 0000000..46c61e2
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.checkstyle
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6Configuration.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+  <filter name="FilesFromPackage" enabled="true">
+    <filter-data value="src-gen"/>
+  </filter>
+</fileset-config>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.classpath b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.classpath
new file mode 100644
index 0000000..756f428
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src-gen"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.project b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.project
new file mode 100644
index 0000000..95de13e
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.emf.ide</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.settings/org.eclipse.jdt.core.prefs b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3433b02
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,315 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.settings/org.eclipse.jdt.ui.prefs b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..99aaf4f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=com;eu;fr;java;javax;org;\#org.junit;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/META-INF/MANIFEST.MF b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..16a3508
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/META-INF/MANIFEST.MF
@@ -0,0 +1,27 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.intent.mapping.emf.ide;singleton:=true
+Bundle-Version: 0.10.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.intent.mapping.emf.ide,
+ org.eclipse.intent.mapping.emf.ide.adapter,
+ org.eclipse.intent.mapping.emf.ide.connector,
+ org.eclipse.intent.mapping.emf.ide.marker,
+ org.eclipse.intent.mapping.emf.ide.resource,
+ org.eclipse.intent.mapping.ide,
+ org.eclipse.intent.mapping.ide.impl,
+ org.eclipse.intent.mapping.ide.util
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.emf.cdo;visibility:=reexport,
+ org.eclipse.intent.mapping.emf;visibility:=reexport,
+ org.eclipse.intent.mapping.ide,
+ org.eclipse.intent.mapping,
+ org.eclipse.core.resources,
+ org.eclipse.emf.ecore.xmi
+Bundle-ActivationPolicy: lazy
+Bundle-Activator: org.eclipse.intent.mapping.emf.ide.Activator
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/build.properties b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/build.properties
new file mode 100644
index 0000000..599c44b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/build.properties
@@ -0,0 +1,20 @@
+#  Copyright (c) 2015 Obeo.
+#  All rights reserved. This program and the accompanying materials
+#  are made available under the terms of the Eclipse Public License v1.0
+#  which accompanies this distribution, and is available at
+#  http://www.eclipse.org/legal/epl-v10.html
+# 
+#  Contributors:
+#     Obeo - initial API and implementation and/or initial documentation
+#     ...
+# 
+
+bin.includes = .,\
+               model/,\
+               META-INF/,\
+               plugin.xml,\
+               plugin.properties
+jars.compile.order = .
+source.. = src-gen/,\
+           src/
+output.. = bin/
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/model/ide.ecore b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/model/ide.ecore
new file mode 100644
index 0000000..7f1282c
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/model/ide.ecore
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="ide" nsURI="http://www.eclipse.org/intent/mapping/ide" nsPrefix="ide">
+  <eClassifiers xsi:type="ecore:EClass" name="ResourceLocation" eSuperTypes="../../org.eclipse.intent.mapping.emf/model/mapping.ecore#//Location">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="fullPath" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="FileLocation" eSuperTypes="#//ResourceLocation"/>
+  <eClassifiers xsi:type="ecore:EClass" name="TextFileLocation" eSuperTypes="#//FileLocation ../../org.eclipse.intent.mapping.emf/model/mapping.ecore#//TextContainer"/>
+  <eClassifiers xsi:type="ecore:EClass" name="EObjectFileLocation" eSuperTypes="#//FileLocation ../../org.eclipse.intent.mapping.emf/model/mapping.ecore#//EObjectContainer"/>
+</ecore:EPackage>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/model/ide.genmodel b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/model/ide.genmodel
new file mode 100644
index 0000000..7b18a6a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/model/ide.genmodel
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2015 Obeo.&#xA; All rights reserved. This program and the accompanying materials&#xA; are made available under the terms of the Eclipse Public License v1.0&#xA; which accompanies this distribution, and is available at&#xA; http://www.eclipse.org/legal/epl-v10.html&#xA;&#xA; Contributors:&#xA;    Obeo - initial API and implementation and/or initial documentation&#xA;    ...&#xA;"
+    modelDirectory="/org.eclipse.intent.mapping.emf.ide/src-gen" editDirectory="/org.eclipse.intent.mapping.emf.ide.edit/src-gen"
+    editorDirectory="/org.eclipse.intent.mapping.emf.ide.editor/src-gen"
+    modelPluginID="org.eclipse.intent.mapping.emf.ide" modelName="Ide"
+    rootExtendsInterface="org.eclipse.emf.cdo.CDOObject" rootExtendsClass="org.eclipse.emf.internal.cdo.CDOObjectImpl"
+    reflectiveDelegation="true" codeFormatting="true" testsDirectory="/org.eclipse.intent.mapping.emf.ide.tests/src-gen"
+    importerID="org.eclipse.emf.importer.cdo" featureDelegation="Reflective" complianceLevel="5.0"
+    copyrightFields="false" publicConstructors="true" providerRootExtendsClass="org.eclipse.emf.cdo.edit.CDOItemProviderAdapter"
+    operationReflection="true" importOrganizing="true">
+  <foreignModel>ide.ecore</foreignModel>
+  <modelPluginVariables>CDO=org.eclipse.emf.cdo</modelPluginVariables>
+  <genPackages prefix="Ide" basePackage="org.eclipse.intent.mapping" disposableProviderFactory="true"
+      ecorePackage="ide.ecore#/">
+    <genClasses ecoreClass="ide.ecore#//ResourceLocation">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute ide.ecore#//ResourceLocation/fullPath"/>
+    </genClasses>
+    <genClasses ecoreClass="ide.ecore#//FileLocation"/>
+    <genClasses ecoreClass="ide.ecore#//TextFileLocation"/>
+    <genClasses ecoreClass="ide.ecore#//EObjectFileLocation"/>
+  </genPackages>
+</genmodel:GenModel>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/plugin.properties b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/plugin.properties
new file mode 100644
index 0000000..2f7173b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/plugin.properties
@@ -0,0 +1,13 @@
+#  Copyright (c) 2015 Obeo.
+#  All rights reserved. This program and the accompanying materials
+#  are made available under the terms of the Eclipse Public License v1.0
+#  which accompanies this distribution, and is available at
+#  http://www.eclipse.org/legal/epl-v10.html
+# 
+#  Contributors:
+#     Obeo - initial API and implementation and/or initial documentation
+#     ...
+# 
+
+pluginName = Ide Model
+providerName = www.example.org
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/plugin.xml b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/plugin.xml
new file mode 100644
index 0000000..92a7c87
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/plugin.xml
@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+  Copyright (c) 2015 Obeo.
+  All rights reserved. This program and the accompanying materials
+  are made available under the terms of the Eclipse Public License v1.0
+  which accompanies this distribution, and is available at
+  http://www.eclipse.org/legal/epl-v10.html
+ 
+  Contributors:
+     Obeo - initial API and implementation and/or initial documentation
+     ...
+ 
+-->
+
+<plugin>
+
+   <extension point="org.eclipse.emf.ecore.generated_package">
+      <!-- @generated ide -->
+      <package
+            uri="http://www.eclipse.org/intent/mapping/ide"
+            class="org.eclipse.intent.mapping.ide.IdePackage"
+            genModel="model/ide.genmodel"/>
+   </extension>
+   <extension
+         point="org.eclipse.intent.mapping.ide.location">
+      <base
+            class="org.eclipse.intent.mapping.Base">
+         <location
+               implementation="org.eclipse.intent.mapping.ide.impl.ResourceLocationImpl"
+               interface="org.eclipse.intent.mapping.ide.resource.IResourceLocation">
+         </location>
+         <location
+               implementation="org.eclipse.intent.mapping.ide.impl.TextFileLocationImpl"
+               interface="org.eclipse.intent.mapping.ide.resource.ITextFileLocation">
+         </location>
+         <location
+               implementation="org.eclipse.intent.mapping.ide.impl.EObjectFileLocationImpl"
+               interface="org.eclipse.intent.mapping.emf.ide.resource.IEObjectFileLocation">
+         </location>
+      </base>
+   </extension>
+   <extension
+         point="org.eclipse.intent.mapping.ide.fileConnectorDelegate">
+      <fileConnectorDelegate
+            class="org.eclipse.intent.mapping.emf.ide.connector.EObjectFileConnectorDelegate">
+      </fileConnectorDelegate>
+   </extension>
+   <extension
+         point="org.eclipse.intent.mapping.ide.baseProvider">
+   </extension>
+   <extension
+         point="org.eclipse.intent.mapping.ide.connector">
+      <connector
+            class="org.eclipse.intent.mapping.emf.ide.connector.IdeEObjectConnector">
+      </connector>
+      <connector
+            class="org.eclipse.intent.mapping.emf.ide.connector.IdeCDOResourceNodeConnector">
+      </connector>
+      <connector
+            class="org.eclipse.intent.mapping.emf.ide.connector.IdeCDOViewConnector">
+      </connector>
+   </extension>
+   <extension
+         id="org.eclipse.intent.mapping.emf.ide.eobjectLocationMarker"
+         name="EObject Location"
+         point="org.eclipse.core.resources.markers">
+      <persistent
+            value="false">
+      </persistent>
+      <super
+            type="org.eclipse.intent.mapping.ide.locationMarker">
+      </super>
+      <super
+            type="org.eclipse.emf.ecore.diagnostic">
+      </super>
+   </extension>
+   <extension
+         point="org.eclipse.core.runtime.adapters">
+      <factory
+            adaptableType="org.eclipse.intent.mapping.emf.IEObjectLocation"
+            class="org.eclipse.intent.mapping.emf.ide.adapter.EObjectLocationToMarkerAdapterFactory">
+         <adapter
+               type="org.eclipse.core.resources.IMarker">
+         </adapter>
+      </factory>
+      <factory
+            adaptableType="org.eclipse.emf.ecore.EObject"
+            class="org.eclipse.intent.mapping.emf.ide.adapter.EObjectToFileAdapterFactory">
+         <adapter
+               type="org.eclipse.core.resources.IFile">
+         </adapter>
+      </factory>
+   </extension>
+   <extension
+         point="org.eclipse.core.contenttype.contentTypes">
+      <content-type
+            base-type="org.eclipse.emf.ecore.xmi"
+            file-extensions="mapping"
+            id="org.eclipse.intent.mapping.emf.ide.mapping"
+            name="Mapping base"
+            priority="normal">
+      </content-type>
+   </extension>
+   <extension
+         point="org.eclipse.intent.mapping.ide.markerToLocation">
+      <markerToLocation
+            class="org.eclipse.intent.mapping.emf.ide.adapter.MarkerToEObjectLocationDescriptor"
+            markerType="org.eclipse.emf.ecore.diagnostic">
+      </markerToLocation>
+   </extension>
+   <extension
+         point="org.eclipse.intent.mapping.ide.containerProvider">
+      <provider
+            class="org.eclipse.intent.mapping.emf.connector.CDOContainerProvider">
+      </provider>
+      <provider
+            class="org.eclipse.intent.mapping.emf.ide.connector.EObjectContainerProvider">
+      </provider>
+   </extension>
+
+</plugin>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/pom.xml b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/pom.xml
new file mode 100644
index 0000000..7658de0
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/pom.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping.emf.ide</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-plugin</packaging>
+
+  <name>Mapping EMF IDE</name>
+
+  <build>
+   <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-source-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+  
+</project>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/EObjectFileLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/EObjectFileLocation.java
new file mode 100644
index 0000000..256cd8d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/EObjectFileLocation.java
@@ -0,0 +1,46 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide;
+
+import java.util.List;
+
+import org.eclipse.intent.mapping.EObjectContainer;
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.eclipse.intent.mapping.emf.ide.resource.IEObjectFileLocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>EObject File Location</b></em>'. <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.intent.mapping.ide.IdePackage#getEObjectFileLocation()
+ * @model
+ * @generated NOT
+ */
+public interface EObjectFileLocation extends FileLocation, EObjectContainer, IEObjectFileLocation {
+
+	/**
+	 * Returns the value of the '<em><b>Saved URI Fragments</b></em>' containment reference list. The list
+	 * contents are of type {@link org.eclipse.intent.mapping.Couple}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Saved URI Fragments</em>' containment reference list isn't clear, there
+	 * really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Saved URI Fragments</em>' containment reference list.
+	 * @see org.eclipse.intent.mapping.ide.IdePackage#getEObjectFileLocation_SavedURIFragments()
+	 * @model containment="true"
+	 * @generated NOT
+	 */
+	List<ICouple> getSavedURIFragments();
+} // EObjectFileLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/FileLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/FileLocation.java
new file mode 100644
index 0000000..4b1dd25
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/FileLocation.java
@@ -0,0 +1,26 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide;
+
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>File Location</b></em>'. <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.intent.mapping.ide.IdePackage#getFileLocation()
+ * @model
+ * @generated NOT
+ */
+public interface FileLocation extends ResourceLocation, IFileLocation {
+} // FileLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/IdeFactory.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/IdeFactory.java
new file mode 100644
index 0000000..0f7feb1
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/IdeFactory.java
@@ -0,0 +1,75 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc --> The <b>Factory</b> for the model. It provides a create method for each non-abstract
+ * class of the model. <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.intent.mapping.ide.IdePackage
+ * @generated
+ */
+public interface IdeFactory extends EFactory {
+	/**
+	 * The singleton instance of the factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	IdeFactory eINSTANCE = org.eclipse.intent.mapping.ide.impl.IdeFactoryImpl.init();
+
+	/**
+	 * Returns a new object of class '<em>Resource Location</em>'. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @return a new object of class '<em>Resource Location</em>'.
+	 * @generated
+	 */
+	ResourceLocation createResourceLocation();
+
+	/**
+	 * Returns a new object of class '<em>File Location</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>File Location</em>'.
+	 * @generated
+	 */
+	FileLocation createFileLocation();
+
+	/**
+	 * Returns a new object of class '<em>Text File Location</em>'. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @return a new object of class '<em>Text File Location</em>'.
+	 * @generated
+	 */
+	TextFileLocation createTextFileLocation();
+
+	/**
+	 * Returns a new object of class '<em>EObject File Location</em>'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>EObject File Location</em>'.
+	 * @generated
+	 */
+	EObjectFileLocation createEObjectFileLocation();
+
+	/**
+	 * Returns the package supported by this factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the package supported by this factory.
+	 * @generated
+	 */
+	IdePackage getIdePackage();
+
+} // IdeFactory
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/IdePackage.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/IdePackage.java
new file mode 100644
index 0000000..023245d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/IdePackage.java
@@ -0,0 +1,576 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * <!-- begin-user-doc --> The <b>Package</b> for the model. It contains accessors for the meta objects to
+ * represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.intent.mapping.ide.IdeFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface IdePackage extends EPackage {
+	/**
+	 * The package name. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNAME = "ide";
+
+	/**
+	 * The package namespace URI. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNS_URI = "http://www.eclipse.org/intent/mapping/ide";
+
+	/**
+	 * The package namespace name. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNS_PREFIX = "ide";
+
+	/**
+	 * The singleton instance of the package. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	IdePackage eINSTANCE = org.eclipse.intent.mapping.ide.impl.IdePackageImpl.init();
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.ide.impl.ResourceLocationImpl
+	 * <em>Resource Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.ide.impl.ResourceLocationImpl
+	 * @see org.eclipse.intent.mapping.ide.impl.IdePackageImpl#getResourceLocation()
+	 * @generated
+	 */
+	int RESOURCE_LOCATION = 0;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESOURCE_LOCATION__CONTENTS = MappingPackage.LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESOURCE_LOCATION__SOURCE_LINKS = MappingPackage.LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESOURCE_LOCATION__TARGET_LINKS = MappingPackage.LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESOURCE_LOCATION__CONTAINER = MappingPackage.LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESOURCE_LOCATION__TYPE = MappingPackage.LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESOURCE_LOCATION__MARKED_AS_DELETED = MappingPackage.LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESOURCE_LOCATION__FULL_PATH = MappingPackage.LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Resource Location</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESOURCE_LOCATION_FEATURE_COUNT = MappingPackage.LOCATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Resource Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESOURCE_LOCATION_OPERATION_COUNT = MappingPackage.LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.ide.impl.FileLocationImpl <em>File
+	 * Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.ide.impl.FileLocationImpl
+	 * @see org.eclipse.intent.mapping.ide.impl.IdePackageImpl#getFileLocation()
+	 * @generated
+	 */
+	int FILE_LOCATION = 1;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_LOCATION__CONTENTS = RESOURCE_LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_LOCATION__SOURCE_LINKS = RESOURCE_LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_LOCATION__TARGET_LINKS = RESOURCE_LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_LOCATION__CONTAINER = RESOURCE_LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_LOCATION__TYPE = RESOURCE_LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_LOCATION__MARKED_AS_DELETED = RESOURCE_LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_LOCATION__FULL_PATH = RESOURCE_LOCATION__FULL_PATH;
+
+	/**
+	 * The number of structural features of the '<em>File Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_LOCATION_FEATURE_COUNT = RESOURCE_LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>File Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_LOCATION_OPERATION_COUNT = RESOURCE_LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.ide.impl.TextFileLocationImpl <em>Text
+	 * File Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.ide.impl.TextFileLocationImpl
+	 * @see org.eclipse.intent.mapping.ide.impl.IdePackageImpl#getTextFileLocation()
+	 * @generated
+	 */
+	int TEXT_FILE_LOCATION = 2;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_FILE_LOCATION__CONTENTS = FILE_LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_FILE_LOCATION__SOURCE_LINKS = FILE_LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_FILE_LOCATION__TARGET_LINKS = FILE_LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_FILE_LOCATION__CONTAINER = FILE_LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_FILE_LOCATION__TYPE = FILE_LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_FILE_LOCATION__MARKED_AS_DELETED = FILE_LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_FILE_LOCATION__FULL_PATH = FILE_LOCATION__FULL_PATH;
+
+	/**
+	 * The feature id for the '<em><b>Text</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_FILE_LOCATION__TEXT = FILE_LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Text File Location</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_FILE_LOCATION_FEATURE_COUNT = FILE_LOCATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Text File Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_FILE_LOCATION_OPERATION_COUNT = FILE_LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.ide.impl.EObjectFileLocationImpl
+	 * <em>EObject File Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.ide.impl.EObjectFileLocationImpl
+	 * @see org.eclipse.intent.mapping.ide.impl.IdePackageImpl#getEObjectFileLocation()
+	 * @generated
+	 */
+	int EOBJECT_FILE_LOCATION = 3;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_FILE_LOCATION__CONTENTS = FILE_LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_FILE_LOCATION__SOURCE_LINKS = FILE_LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_FILE_LOCATION__TARGET_LINKS = FILE_LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_FILE_LOCATION__CONTAINER = FILE_LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_FILE_LOCATION__TYPE = FILE_LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_FILE_LOCATION__MARKED_AS_DELETED = FILE_LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_FILE_LOCATION__FULL_PATH = FILE_LOCATION__FULL_PATH;
+
+	/**
+	 * The feature id for the '<em><b>XMI Content</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_FILE_LOCATION__XMI_CONTENT = FILE_LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Saved URI Fragments</b></em>' containment reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_FILE_LOCATION__SAVED_URI_FRAGMENTS = FILE_LOCATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>EObject File Location</em>' class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_FILE_LOCATION_FEATURE_COUNT = FILE_LOCATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>EObject File Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_FILE_LOCATION_OPERATION_COUNT = FILE_LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.ide.ResourceLocation <em>Resource
+	 * Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Resource Location</em>'.
+	 * @see org.eclipse.intent.mapping.ide.ResourceLocation
+	 * @generated
+	 */
+	EClass getResourceLocation();
+
+	/**
+	 * Returns the meta object for the attribute
+	 * '{@link org.eclipse.intent.mapping.ide.ResourceLocation#getFullPath <em>Full Path</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Full Path</em>'.
+	 * @see org.eclipse.intent.mapping.ide.ResourceLocation#getFullPath()
+	 * @see #getResourceLocation()
+	 * @generated
+	 */
+	EAttribute getResourceLocation_FullPath();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.ide.FileLocation <em>File
+	 * Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>File Location</em>'.
+	 * @see org.eclipse.intent.mapping.ide.FileLocation
+	 * @generated
+	 */
+	EClass getFileLocation();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.ide.TextFileLocation <em>Text File
+	 * Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Text File Location</em>'.
+	 * @see org.eclipse.intent.mapping.ide.TextFileLocation
+	 * @generated
+	 */
+	EClass getTextFileLocation();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.ide.EObjectFileLocation
+	 * <em>EObject File Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>EObject File Location</em>'.
+	 * @see org.eclipse.intent.mapping.ide.EObjectFileLocation
+	 * @generated
+	 */
+	EClass getEObjectFileLocation();
+
+	/**
+	 * Returns the factory that creates the instances of the model. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @return the factory that creates the instances of the model.
+	 * @generated
+	 */
+	IdeFactory getIdeFactory();
+
+	/**
+	 * <!-- begin-user-doc --> Defines literals for the meta objects that represent
+	 * <ul>
+	 * <li>each class,</li>
+	 * <li>each feature of each class,</li>
+	 * <li>each operation of each class,</li>
+	 * <li>each enum,</li>
+	 * <li>and each data type</li>
+	 * </ul>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	interface Literals {
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.ide.impl.ResourceLocationImpl
+		 * <em>Resource Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.ide.impl.ResourceLocationImpl
+		 * @see org.eclipse.intent.mapping.ide.impl.IdePackageImpl#getResourceLocation()
+		 * @generated
+		 */
+		EClass RESOURCE_LOCATION = eINSTANCE.getResourceLocation();
+
+		/**
+		 * The meta object literal for the '<em><b>Full Path</b></em>' attribute feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute RESOURCE_LOCATION__FULL_PATH = eINSTANCE.getResourceLocation_FullPath();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.ide.impl.FileLocationImpl
+		 * <em>File Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.ide.impl.FileLocationImpl
+		 * @see org.eclipse.intent.mapping.ide.impl.IdePackageImpl#getFileLocation()
+		 * @generated
+		 */
+		EClass FILE_LOCATION = eINSTANCE.getFileLocation();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.ide.impl.TextFileLocationImpl
+		 * <em>Text File Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.ide.impl.TextFileLocationImpl
+		 * @see org.eclipse.intent.mapping.ide.impl.IdePackageImpl#getTextFileLocation()
+		 * @generated
+		 */
+		EClass TEXT_FILE_LOCATION = eINSTANCE.getTextFileLocation();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.ide.impl.EObjectFileLocationImpl
+		 * <em>EObject File Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.ide.impl.EObjectFileLocationImpl
+		 * @see org.eclipse.intent.mapping.ide.impl.IdePackageImpl#getEObjectFileLocation()
+		 * @generated
+		 */
+		EClass EOBJECT_FILE_LOCATION = eINSTANCE.getEObjectFileLocation();
+
+	}
+
+} // IdePackage
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/ResourceLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/ResourceLocation.java
new file mode 100644
index 0000000..3f23dcb
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/ResourceLocation.java
@@ -0,0 +1,60 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide;
+
+import org.eclipse.intent.mapping.Location;
+import org.eclipse.intent.mapping.ide.resource.IResourceLocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Resource Location</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.ide.ResourceLocation#getFullPath <em>Full Path</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.intent.mapping.ide.IdePackage#getResourceLocation()
+ * @model
+ * @generated NOT
+ */
+public interface ResourceLocation extends Location, IResourceLocation {
+	/**
+	 * Returns the value of the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Full Path</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Full Path</em>' attribute.
+	 * @see #setFullPath(String)
+	 * @see org.eclipse.intent.mapping.ide.IdePackage#getResourceLocation_FullPath()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getFullPath();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.ide.ResourceLocation#getFullPath <em>Full
+	 * Path</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Full Path</em>' attribute.
+	 * @see #getFullPath()
+	 * @generated
+	 */
+	void setFullPath(String value);
+
+} // ResourceLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/TextFileLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/TextFileLocation.java
new file mode 100644
index 0000000..11c5e5a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/TextFileLocation.java
@@ -0,0 +1,28 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide;
+
+import org.eclipse.intent.mapping.TextContainer;
+import org.eclipse.intent.mapping.ide.resource.ITextFileLocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Text File Location</b></em>'. <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.intent.mapping.ide.IdePackage#getTextFileLocation()
+ * @model
+ * @generated NOT
+ */
+public interface TextFileLocation extends FileLocation, TextContainer, ITextFileLocation {
+
+} // TextFileLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/EObjectFileLocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/EObjectFileLocationImpl.java
new file mode 100644
index 0000000..eb3cff8
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/EObjectFileLocationImpl.java
@@ -0,0 +1,128 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide.impl;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.intent.mapping.EObjectContainer;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.eclipse.intent.mapping.ide.EObjectFileLocation;
+import org.eclipse.intent.mapping.ide.IdePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>EObject File Location</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.ide.impl.EObjectFileLocationImpl#getXMIContent <em>XMI
+ * Content</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.ide.impl.EObjectFileLocationImpl#getSavedURIFragments <em>Saved URI
+ * Fragments</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class EObjectFileLocationImpl extends FileLocationImpl implements EObjectFileLocation {
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EObjectFileLocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return IdePackage.Literals.EOBJECT_FILE_LOCATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getXMIContent() {
+		return (String)eGet(MappingPackage.Literals.EOBJECT_CONTAINER__XMI_CONTENT, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setXMIContent(String newXMIContent) {
+		eSet(MappingPackage.Literals.EOBJECT_CONTAINER__XMI_CONTENT, newXMIContent);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@SuppressWarnings("unchecked")
+	public List<ICouple> getSavedURIFragments() {
+		return (List<ICouple>)eGet(MappingPackage.Literals.EOBJECT_CONTAINER__SAVED_URI_FRAGMENTS, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == EObjectContainer.class) {
+			switch (derivedFeatureID) {
+				case IdePackage.EOBJECT_FILE_LOCATION__XMI_CONTENT:
+					return MappingPackage.EOBJECT_CONTAINER__XMI_CONTENT;
+				case IdePackage.EOBJECT_FILE_LOCATION__SAVED_URI_FRAGMENTS:
+					return MappingPackage.EOBJECT_CONTAINER__SAVED_URI_FRAGMENTS;
+				default:
+					return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == EObjectContainer.class) {
+			switch (baseFeatureID) {
+				case MappingPackage.EOBJECT_CONTAINER__XMI_CONTENT:
+					return IdePackage.EOBJECT_FILE_LOCATION__XMI_CONTENT;
+				case MappingPackage.EOBJECT_CONTAINER__SAVED_URI_FRAGMENTS:
+					return IdePackage.EOBJECT_FILE_LOCATION__SAVED_URI_FRAGMENTS;
+				default:
+					return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+} // EObjectFileLocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/FileLocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/FileLocationImpl.java
new file mode 100644
index 0000000..2da15cf
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/FileLocationImpl.java
@@ -0,0 +1,45 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.intent.mapping.ide.FileLocation;
+import org.eclipse.intent.mapping.ide.IdePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>File Location</b></em>'. <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+public class FileLocationImpl extends ResourceLocationImpl implements FileLocation {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public FileLocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return IdePackage.Literals.FILE_LOCATION;
+	}
+
+} // FileLocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/IdeFactoryImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/IdeFactoryImpl.java
new file mode 100644
index 0000000..7ad01df
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/IdeFactoryImpl.java
@@ -0,0 +1,141 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.intent.mapping.ide.EObjectFileLocation;
+import org.eclipse.intent.mapping.ide.FileLocation;
+import org.eclipse.intent.mapping.ide.IdeFactory;
+import org.eclipse.intent.mapping.ide.IdePackage;
+import org.eclipse.intent.mapping.ide.ResourceLocation;
+import org.eclipse.intent.mapping.ide.TextFileLocation;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Factory</b>. <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class IdeFactoryImpl extends EFactoryImpl implements IdeFactory {
+	/**
+	 * Creates the default factory implementation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static IdeFactory init() {
+		try {
+			IdeFactory theIdeFactory = (IdeFactory)EPackage.Registry.INSTANCE.getEFactory(IdePackage.eNS_URI);
+			if (theIdeFactory != null) {
+				return theIdeFactory;
+			}
+		} catch (Exception exception) {
+			EcorePlugin.INSTANCE.log(exception);
+		}
+		return new IdeFactoryImpl();
+	}
+
+	/**
+	 * Creates an instance of the factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public IdeFactoryImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public EObject create(EClass eClass) {
+		switch (eClass.getClassifierID()) {
+			case IdePackage.RESOURCE_LOCATION:
+				return (EObject)createResourceLocation();
+			case IdePackage.FILE_LOCATION:
+				return (EObject)createFileLocation();
+			case IdePackage.TEXT_FILE_LOCATION:
+				return (EObject)createTextFileLocation();
+			case IdePackage.EOBJECT_FILE_LOCATION:
+				return (EObject)createEObjectFileLocation();
+			default:
+				throw new IllegalArgumentException("The class '" + eClass.getName()
+						+ "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ResourceLocation createResourceLocation() {
+		ResourceLocationImpl resourceLocation = new ResourceLocationImpl();
+		return resourceLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public FileLocation createFileLocation() {
+		FileLocationImpl fileLocation = new FileLocationImpl();
+		return fileLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public TextFileLocation createTextFileLocation() {
+		TextFileLocationImpl textFileLocation = new TextFileLocationImpl();
+		return textFileLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EObjectFileLocation createEObjectFileLocation() {
+		EObjectFileLocationImpl eObjectFileLocation = new EObjectFileLocationImpl();
+		return eObjectFileLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public IdePackage getIdePackage() {
+		return (IdePackage)getEPackage();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @deprecated
+	 * @generated
+	 */
+	@Deprecated
+	public static IdePackage getPackage() {
+		return IdePackage.eINSTANCE;
+	}
+
+} // IdeFactoryImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/IdePackageImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/IdePackageImpl.java
new file mode 100644
index 0000000..fc102fa
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/IdePackageImpl.java
@@ -0,0 +1,268 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.ide.EObjectFileLocation;
+import org.eclipse.intent.mapping.ide.FileLocation;
+import org.eclipse.intent.mapping.ide.IdeFactory;
+import org.eclipse.intent.mapping.ide.IdePackage;
+import org.eclipse.intent.mapping.ide.ResourceLocation;
+import org.eclipse.intent.mapping.ide.TextFileLocation;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Package</b>. <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class IdePackageImpl extends EPackageImpl implements IdePackage {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass resourceLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass fileLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass textFileLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass eObjectFileLocationEClass = null;
+
+	/**
+	 * Creates an instance of the model <b>Package</b>, registered with
+	 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package package URI value.
+	 * <p>
+	 * Note: the correct way to create the package is via the static factory method {@link #init init()},
+	 * which also performs initialization of the package, or returns the registered package, if one already
+	 * exists. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.emf.ecore.EPackage.Registry
+	 * @see org.eclipse.intent.mapping.ide.IdePackage#eNS_URI
+	 * @see #init()
+	 * @generated
+	 */
+	private IdePackageImpl() {
+		super(eNS_URI, IdeFactory.eINSTANCE);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static boolean isInited = false;
+
+	/**
+	 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it
+	 * depends.
+	 * <p>
+	 * This method is used to initialize {@link IdePackage#eINSTANCE} when that field is accessed. Clients
+	 * should not invoke it directly. Instead, they should simply access that field to obtain the package.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #eNS_URI
+	 * @see #createPackageContents()
+	 * @see #initializePackageContents()
+	 * @generated
+	 */
+	public static IdePackage init() {
+		if (isInited)
+			return (IdePackage)EPackage.Registry.INSTANCE.getEPackage(IdePackage.eNS_URI);
+
+		// Obtain or create and register package
+		IdePackageImpl theIdePackage = (IdePackageImpl)(EPackage.Registry.INSTANCE.get(
+				eNS_URI) instanceof IdePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI)
+						: new IdePackageImpl());
+
+		isInited = true;
+
+		// Initialize simple dependencies
+		MappingPackage.eINSTANCE.eClass();
+
+		// Create package meta-data objects
+		theIdePackage.createPackageContents();
+
+		// Initialize created meta-data
+		theIdePackage.initializePackageContents();
+
+		// Mark meta-data to indicate it can't be changed
+		theIdePackage.freeze();
+
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(IdePackage.eNS_URI, theIdePackage);
+		return theIdePackage;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getResourceLocation() {
+		return resourceLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getResourceLocation_FullPath() {
+		return (EAttribute)resourceLocationEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getFileLocation() {
+		return fileLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getTextFileLocation() {
+		return textFileLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getEObjectFileLocation() {
+		return eObjectFileLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public IdeFactory getIdeFactory() {
+		return (IdeFactory)getEFactoryInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private boolean isCreated = false;
+
+	/**
+	 * Creates the meta-model objects for the package. This method is guarded to have no affect on any
+	 * invocation but its first. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void createPackageContents() {
+		if (isCreated)
+			return;
+		isCreated = true;
+
+		// Create classes and their features
+		resourceLocationEClass = createEClass(RESOURCE_LOCATION);
+		createEAttribute(resourceLocationEClass, RESOURCE_LOCATION__FULL_PATH);
+
+		fileLocationEClass = createEClass(FILE_LOCATION);
+
+		textFileLocationEClass = createEClass(TEXT_FILE_LOCATION);
+
+		eObjectFileLocationEClass = createEClass(EOBJECT_FILE_LOCATION);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private boolean isInitialized = false;
+
+	/**
+	 * Complete the initialization of the package and its meta-model. This method is guarded to have no affect
+	 * on any invocation but its first. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void initializePackageContents() {
+		if (isInitialized)
+			return;
+		isInitialized = true;
+
+		// Initialize package
+		setName(eNAME);
+		setNsPrefix(eNS_PREFIX);
+		setNsURI(eNS_URI);
+
+		// Obtain other dependent packages
+		MappingPackage theMappingPackage = (MappingPackage)EPackage.Registry.INSTANCE.getEPackage(
+				MappingPackage.eNS_URI);
+
+		// Create type parameters
+
+		// Set bounds for type parameters
+
+		// Add supertypes to classes
+		resourceLocationEClass.getESuperTypes().add(theMappingPackage.getLocation());
+		fileLocationEClass.getESuperTypes().add(this.getResourceLocation());
+		textFileLocationEClass.getESuperTypes().add(this.getFileLocation());
+		textFileLocationEClass.getESuperTypes().add(theMappingPackage.getTextContainer());
+		eObjectFileLocationEClass.getESuperTypes().add(this.getFileLocation());
+		eObjectFileLocationEClass.getESuperTypes().add(theMappingPackage.getEObjectContainer());
+
+		// Initialize classes, features, and operations; add parameters
+		initEClass(resourceLocationEClass, ResourceLocation.class, "ResourceLocation", !IS_ABSTRACT,
+				!IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getResourceLocation_FullPath(), ecorePackage.getEString(), "fullPath", null, 1, 1,
+				ResourceLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(fileLocationEClass, FileLocation.class, "FileLocation", !IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(textFileLocationEClass, TextFileLocation.class, "TextFileLocation", !IS_ABSTRACT,
+				!IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(eObjectFileLocationEClass, EObjectFileLocation.class, "EObjectFileLocation", !IS_ABSTRACT,
+				!IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		// Create resource
+		createResource(eNS_URI);
+	}
+
+} // IdePackageImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/ResourceLocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/ResourceLocationImpl.java
new file mode 100644
index 0000000..a1bf098
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/ResourceLocationImpl.java
@@ -0,0 +1,70 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.intent.mapping.ide.IdePackage;
+import org.eclipse.intent.mapping.ide.ResourceLocation;
+import org.eclipse.intent.mapping.impl.LocationImpl;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Resource Location</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.ide.impl.ResourceLocationImpl#getFullPath <em>Full Path</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ResourceLocationImpl extends LocationImpl implements ResourceLocation {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ResourceLocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return IdePackage.Literals.RESOURCE_LOCATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getFullPath() {
+		return (String)eGet(IdePackage.Literals.RESOURCE_LOCATION__FULL_PATH, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setFullPath(String newFullPath) {
+		eSet(IdePackage.Literals.RESOURCE_LOCATION__FULL_PATH, newFullPath);
+	}
+
+} // ResourceLocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/TextFileLocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/TextFileLocationImpl.java
new file mode 100644
index 0000000..25c57ab
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/impl/TextFileLocationImpl.java
@@ -0,0 +1,107 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.TextContainer;
+import org.eclipse.intent.mapping.ide.IdePackage;
+import org.eclipse.intent.mapping.ide.TextFileLocation;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Text File Location</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.ide.impl.TextFileLocationImpl#getText <em>Text</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class TextFileLocationImpl extends FileLocationImpl implements TextFileLocation {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public TextFileLocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return IdePackage.Literals.TEXT_FILE_LOCATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getText() {
+		return (String)eGet(MappingPackage.Literals.TEXT_CONTAINER__TEXT, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setText(String newText) {
+		eSet(MappingPackage.Literals.TEXT_CONTAINER__TEXT, newText);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == TextContainer.class) {
+			switch (derivedFeatureID) {
+				case IdePackage.TEXT_FILE_LOCATION__TEXT:
+					return MappingPackage.TEXT_CONTAINER__TEXT;
+				default:
+					return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == TextContainer.class) {
+			switch (baseFeatureID) {
+				case MappingPackage.TEXT_CONTAINER__TEXT:
+					return IdePackage.TEXT_FILE_LOCATION__TEXT;
+				default:
+					return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+} // TextFileLocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/util/IdeAdapterFactory.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/util/IdeAdapterFactory.java
new file mode 100644
index 0000000..3bb94d7
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/util/IdeAdapterFactory.java
@@ -0,0 +1,283 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.intent.mapping.EObjectContainer;
+import org.eclipse.intent.mapping.IEMFBaseElement;
+import org.eclipse.intent.mapping.Location;
+import org.eclipse.intent.mapping.LocationContainer;
+import org.eclipse.intent.mapping.TextContainer;
+import org.eclipse.intent.mapping.ide.EObjectFileLocation;
+import org.eclipse.intent.mapping.ide.FileLocation;
+import org.eclipse.intent.mapping.ide.IdePackage;
+import org.eclipse.intent.mapping.ide.ResourceLocation;
+import org.eclipse.intent.mapping.ide.TextFileLocation;
+
+/**
+ * <!-- begin-user-doc --> The <b>Adapter Factory</b> for the model. It provides an adapter
+ * <code>createXXX</code> method for each class of the model. <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.intent.mapping.ide.IdePackage
+ * @generated
+ */
+public class IdeAdapterFactory extends AdapterFactoryImpl {
+	/**
+	 * The cached model package. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected static IdePackage modelPackage;
+
+	/**
+	 * Creates an instance of the adapter factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public IdeAdapterFactory() {
+		if (modelPackage == null) {
+			modelPackage = IdePackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Returns whether this factory is applicable for the type of the object. <!-- begin-user-doc --> This
+	 * implementation returns <code>true</code> if the object is either the model's package or is an instance
+	 * object of the model. <!-- end-user-doc -->
+	 * 
+	 * @return whether this factory is applicable for the type of the object.
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object object) {
+		if (object == modelPackage) {
+			return true;
+		}
+		if (object instanceof EObject) {
+			return ((EObject)object).eClass().getEPackage() == modelPackage;
+		}
+		return false;
+	}
+
+	/**
+	 * The switch that delegates to the <code>createXXX</code> methods. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected IdeSwitch<Adapter> modelSwitch = new IdeSwitch<Adapter>() {
+		@Override
+		public Adapter caseResourceLocation(ResourceLocation object) {
+			return createResourceLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseFileLocation(FileLocation object) {
+			return createFileLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseTextFileLocation(TextFileLocation object) {
+			return createTextFileLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseEObjectFileLocation(EObjectFileLocation object) {
+			return createEObjectFileLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseIEMFBaseElement(IEMFBaseElement object) {
+			return createIEMFBaseElementAdapter();
+		}
+
+		@Override
+		public Adapter caseLocationContainer(LocationContainer object) {
+			return createLocationContainerAdapter();
+		}
+
+		@Override
+		public Adapter caseLocation(Location object) {
+			return createLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseTextContainer(TextContainer object) {
+			return createTextContainerAdapter();
+		}
+
+		@Override
+		public Adapter caseEObjectContainer(EObjectContainer object) {
+			return createEObjectContainerAdapter();
+		}
+
+		@Override
+		public Adapter defaultCase(EObject object) {
+			return createEObjectAdapter();
+		}
+	};
+
+	/**
+	 * Creates an adapter for the <code>target</code>. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param target
+	 *            the object to adapt.
+	 * @return the adapter for the <code>target</code>.
+	 * @generated
+	 */
+	@Override
+	public Adapter createAdapter(Notifier target) {
+		return modelSwitch.doSwitch((EObject)target);
+	}
+
+	/**
+	 * Creates a new adapter for an object of class ' {@link org.eclipse.intent.mapping.ide.ResourceLocation
+	 * <em>Resource Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so that
+	 * we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.ide.ResourceLocation
+	 * @generated
+	 */
+	public Adapter createResourceLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class ' {@link org.eclipse.intent.mapping.ide.FileLocation
+	 * <em>File Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we
+	 * can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.ide.FileLocation
+	 * @generated
+	 */
+	public Adapter createFileLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class ' {@link org.eclipse.intent.mapping.ide.TextFileLocation
+	 * <em>Text File Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so that
+	 * we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.ide.TextFileLocation
+	 * @generated
+	 */
+	public Adapter createTextFileLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.ide.EObjectFileLocation
+	 * <em>EObject File Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so
+	 * that we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.ide.EObjectFileLocation
+	 * @generated
+	 */
+	public Adapter createEObjectFileLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class ' {@link org.eclipse.intent.mapping.IEMFBaseElement
+	 * <em>IEMF Base Element</em>}'. <!-- begin-user-doc --> This default implementation returns null so that
+	 * we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.IEMFBaseElement
+	 * @generated
+	 */
+	public Adapter createIEMFBaseElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class ' {@link org.eclipse.intent.mapping.LocationContainer
+	 * <em>Location Container</em>}'. <!-- begin-user-doc --> This default implementation returns null so that
+	 * we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.LocationContainer
+	 * @generated
+	 */
+	public Adapter createLocationContainerAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.Location
+	 * <em>Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can
+	 * easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.Location
+	 * @generated
+	 */
+	public Adapter createLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.TextContainer <em>Text
+	 * Container</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can
+	 * easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.TextContainer
+	 * @generated
+	 */
+	public Adapter createTextContainerAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.EObjectContainer
+	 * <em>EObject Container</em>}'. <!-- begin-user-doc --> This default implementation returns null so that
+	 * we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.EObjectContainer
+	 * @generated
+	 */
+	public Adapter createEObjectContainerAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for the default case. <!-- begin-user-doc --> This default implementation returns
+	 * null. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @generated
+	 */
+	public Adapter createEObjectAdapter() {
+		return null;
+	}
+
+} // IdeAdapterFactory
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/util/IdeSwitch.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/util/IdeSwitch.java
new file mode 100644
index 0000000..4bd6f75
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src-gen/org/eclipse/intent/mapping/ide/util/IdeSwitch.java
@@ -0,0 +1,302 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.ide.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.intent.mapping.EObjectContainer;
+import org.eclipse.intent.mapping.IEMFBaseElement;
+import org.eclipse.intent.mapping.Location;
+import org.eclipse.intent.mapping.LocationContainer;
+import org.eclipse.intent.mapping.TextContainer;
+import org.eclipse.intent.mapping.ide.EObjectFileLocation;
+import org.eclipse.intent.mapping.ide.FileLocation;
+import org.eclipse.intent.mapping.ide.IdePackage;
+import org.eclipse.intent.mapping.ide.ResourceLocation;
+import org.eclipse.intent.mapping.ide.TextFileLocation;
+
+/**
+ * <!-- begin-user-doc --> The <b>Switch</b> for the model's inheritance hierarchy. It supports the call
+ * {@link #doSwitch(EObject) doSwitch(object)} to invoke the <code>caseXXX</code> method for each class of the
+ * model, starting with the actual class of the object and proceeding up the inheritance hierarchy until a
+ * non-null result is returned, which is the result of the switch. <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.intent.mapping.ide.IdePackage
+ * @generated
+ */
+public class IdeSwitch<T> extends Switch<T> {
+	/**
+	 * The cached model package <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected static IdePackage modelPackage;
+
+	/**
+	 * Creates an instance of the switch. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public IdeSwitch() {
+		if (modelPackage == null) {
+			modelPackage = IdePackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Checks whether this is a switch for the given package. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param ePackage
+	 *            the package in question.
+	 * @return whether this is a switch for the given package.
+	 * @generated
+	 */
+	@Override
+	protected boolean isSwitchFor(EPackage ePackage) {
+		return ePackage == modelPackage;
+	}
+
+	/**
+	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields
+	 * that result. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @generated
+	 */
+	@Override
+	protected T doSwitch(int classifierID, EObject theEObject) {
+		switch (classifierID) {
+			case IdePackage.RESOURCE_LOCATION: {
+				ResourceLocation resourceLocation = (ResourceLocation)theEObject;
+				T result = caseResourceLocation(resourceLocation);
+				if (result == null)
+					result = caseLocation(resourceLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(resourceLocation);
+				if (result == null)
+					result = caseLocationContainer(resourceLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case IdePackage.FILE_LOCATION: {
+				FileLocation fileLocation = (FileLocation)theEObject;
+				T result = caseFileLocation(fileLocation);
+				if (result == null)
+					result = caseResourceLocation(fileLocation);
+				if (result == null)
+					result = caseLocation(fileLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(fileLocation);
+				if (result == null)
+					result = caseLocationContainer(fileLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case IdePackage.TEXT_FILE_LOCATION: {
+				TextFileLocation textFileLocation = (TextFileLocation)theEObject;
+				T result = caseTextFileLocation(textFileLocation);
+				if (result == null)
+					result = caseFileLocation(textFileLocation);
+				if (result == null)
+					result = caseTextContainer(textFileLocation);
+				if (result == null)
+					result = caseResourceLocation(textFileLocation);
+				if (result == null)
+					result = caseLocation(textFileLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(textFileLocation);
+				if (result == null)
+					result = caseLocationContainer(textFileLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case IdePackage.EOBJECT_FILE_LOCATION: {
+				EObjectFileLocation eObjectFileLocation = (EObjectFileLocation)theEObject;
+				T result = caseEObjectFileLocation(eObjectFileLocation);
+				if (result == null)
+					result = caseFileLocation(eObjectFileLocation);
+				if (result == null)
+					result = caseEObjectContainer(eObjectFileLocation);
+				if (result == null)
+					result = caseResourceLocation(eObjectFileLocation);
+				if (result == null)
+					result = caseLocation(eObjectFileLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(eObjectFileLocation);
+				if (result == null)
+					result = caseLocationContainer(eObjectFileLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			default:
+				return defaultCase(theEObject);
+		}
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Resource Location</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Resource Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseResourceLocation(ResourceLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>File Location</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>File Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseFileLocation(FileLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Text File Location</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Text File Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTextFileLocation(TextFileLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject File Location</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject File Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEObjectFileLocation(EObjectFileLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IEMF Base Element</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IEMF Base Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIEMFBaseElement(IEMFBaseElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Location Container</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Location Container</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseLocationContainer(LocationContainer object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Location</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseLocation(Location object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Text Container</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Text Container</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTextContainer(TextContainer object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject Container</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject Container</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEObjectContainer(EObjectContainer object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch, but this
+	 * is the last case anyway. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+	 * @generated
+	 */
+	@Override
+	public T defaultCase(EObject object) {
+		return null;
+	}
+
+} // IdeSwitch
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/Activator.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/Activator.java
new file mode 100644
index 0000000..fd88eb1
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/Activator.java
@@ -0,0 +1,73 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide;
+
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class Activator extends Plugin {
+
+	/** The plug-in ID. */
+	public static final String PLUGIN_ID = "org.eclipse.intent.mapping.emf.ide";
+
+	/** This plug-in's shared instance. */
+	private static Activator plugin;
+
+	/**
+	 * The {@link WorkspaceMappingBaseListener}.
+	 */
+	private WorkspaceMappingBaseListener mappingBaseListener;
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext)
+	 */
+	public void start(BundleContext context) throws Exception {
+		super.start(context);
+		plugin = this;
+
+		// make sure org.eclipse.intent.mapping.ide is activated
+		org.eclipse.intent.mapping.ide.Activator.getDefault();
+
+		mappingBaseListener = new WorkspaceMappingBaseListener(true);
+		ResourcesPlugin.getWorkspace().addResourceChangeListener(mappingBaseListener);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
+	 */
+	public void stop(BundleContext context) throws Exception {
+		super.stop(context);
+		plugin = null;
+		ResourcesPlugin.getWorkspace().removeResourceChangeListener(mappingBaseListener);
+		mappingBaseListener = null;
+	}
+
+	/**
+	 * Returns the shared instance.
+	 * 
+	 * @return the shared instance
+	 */
+	public static Activator getDefault() {
+		return plugin;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/WorkspaceMappingBaseListener.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/WorkspaceMappingBaseListener.java
new file mode 100644
index 0000000..d7bb957
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/WorkspaceMappingBaseListener.java
@@ -0,0 +1,321 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IResourceChangeEvent;
+import org.eclipse.core.resources.IResourceChangeListener;
+import org.eclipse.core.resources.IResourceDelta;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.MappingUtils;
+
+/**
+ * An {@link IResourceChangeListener} that
+ * {@link org.eclipse.intent.mapping.base.IBaseRegistry#register(org.eclipse.intent.mapping.base.IBase)
+ * register}/
+ * {@link org.eclipse.intent.mapping.base.IBaseRegistry#unregister(org.eclipse.intent.mapping.base.IBase)
+ * unregister} {@link Base} of the {@link org.eclipse.intent.mapping.base.IBaseRegistry}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class WorkspaceMappingBaseListener implements IResourceChangeListener {
+
+	/**
+	 * The "Unable to load mapping base from " message.
+	 */
+	private static final String UNABLE_TO_LOAD_MAPPING_BASE_FROM = "Unable to load mapping base from ";
+
+	/**
+	 * Mapping of {@link IFile} to
+	 * {@link org.eclipse.intent.mapping.base.IBaseRegistry#register(org.eclipse.intent.mapping.base.IBase)
+	 * registered} {@link Base}.
+	 */
+	private final Map<IFile, Base> resourceToBase = new HashMap<IFile, Base>();
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param scan
+	 *            tells if we should scan the workspace
+	 */
+	public WorkspaceMappingBaseListener(boolean scan) {
+		if (scan) {
+			scan(ResourcesPlugin.getWorkspace().getRoot());
+		}
+	}
+
+	/**
+	 * Scans the given {@link IContainer} for bases.
+	 * 
+	 * @param container
+	 *            the {@link IContainer}
+	 */
+	private void scan(IContainer container) {
+		IResource[] members;
+		if (container.isAccessible()) {
+			try {
+				members = container.members();
+				for (IResource member : members) {
+					if (member instanceof IContainer) {
+						scan((IContainer)member);
+					} else if (member instanceof IFile) {
+						register((IFile)member);
+					}
+				}
+			} catch (CoreException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID,
+						UNABLE_TO_LOAD_MAPPING_BASE_FROM + e.getMessage(), e));
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.resources.IResourceChangeListener#resourceChanged(org.eclipse.core.resources.IResourceChangeEvent)
+	 */
+	public void resourceChanged(IResourceChangeEvent event) {
+		if (event.getDelta() != null) {
+			walkDelta(event.getDelta(), new HashMap<IPath, IResource>());
+		}
+	}
+
+	/**
+	 * Walks the {@link IResourceDelta} tree.
+	 * 
+	 * @param delta
+	 *            the root {@link IResourceDelta}
+	 * @param movedResources
+	 *            mapping of moved {@link IResource}
+	 */
+	private void walkDelta(IResourceDelta delta, HashMap<IPath, IResource> movedResources) {
+		processDelta(delta, movedResources);
+		for (IResourceDelta child : delta.getAffectedChildren()) {
+			walkDelta(child, movedResources);
+		}
+	}
+
+	/**
+	 * Processes the given {@link IResourceDelta} by
+	 * {@link WorkspaceListener#fireChange(fr.obeo.dsl.workspace.listener.change.IChange) firing}
+	 * {@link fr.obeo.dsl.workspace.listener.change.IChange IChange}.
+	 * 
+	 * @param delta
+	 *            the {@link IResourceDelta} to process
+	 * @param movedResources
+	 *            mapping of moved {@link IResource}
+	 */
+	private void processDelta(IResourceDelta delta, HashMap<IPath, IResource> movedResources) {
+		if (delta.getResource() instanceof IFile) {
+			switch (delta.getKind()) {
+				case IResourceDelta.ADDED:
+					processAddedDelta(delta, movedResources);
+					break;
+
+				case IResourceDelta.REMOVED:
+					processRemovedDelta(delta, movedResources);
+					break;
+
+				case IResourceDelta.CHANGED:
+					processChangedDelta(delta);
+					break;
+
+				default:
+					break;
+			}
+		}
+	}
+
+	/**
+	 * Process {@link IResourceDelta} with {@link IResourceDelta#CHANGED changed}
+	 * {@link IResourceDelta#getKind() kind}.
+	 * 
+	 * @param delta
+	 *            the {@link IResourceDelta} with {@link IResourceDelta#CHANGED changed}
+	 *            {@link IResourceDelta#getKind() kind}
+	 */
+	private void processChangedDelta(IResourceDelta delta) {
+		if ((delta.getFlags() & IResourceDelta.OPEN) != 0) {
+			if (delta.getResource().isAccessible()) {
+				register((IFile)delta.getResource());
+			} else {
+				unregister((IFile)delta.getResource());
+			}
+		} else if ((delta.getFlags() & IResourceDelta.DESCRIPTION) != 0) {
+			// nothing to do here
+		} else if ((delta.getFlags() & IResourceDelta.CONTENT) != 0) {
+			if (resourceToBase.get(delta.getResource()) == null) {
+				register((IFile)delta.getResource());
+			}
+		}
+	}
+
+	/**
+	 * Process {@link IResourceDelta} with {@link IResourceDelta#REMOVED removed}
+	 * {@link IResourceDelta#getKind() kind}.
+	 * 
+	 * @param delta
+	 *            the {@link IResourceDelta} with {@link IResourceDelta#REMOVED removed}
+	 *            {@link IResourceDelta#getKind() kind}
+	 * @param movedResources
+	 *            mapping of moved {@link IResource}
+	 */
+	private void processRemovedDelta(IResourceDelta delta, HashMap<IPath, IResource> movedResources) {
+		if ((delta.getFlags() & IResourceDelta.MOVED_TO) != 0) {
+			final IResource target = movedResources.get(delta.getMovedToPath());
+			if (target != null) {
+				resourceMoved((IFile)delta.getResource(), (IFile)target);
+			} else {
+				movedResources.put(delta.getResource().getFullPath(), delta.getResource());
+			}
+		} else {
+			unregister((IFile)delta.getResource());
+		}
+	}
+
+	/**
+	 * Process {@link IResourceDelta} with {@link IResourceDelta#ADDED added} {@link IResourceDelta#getKind()
+	 * kind}.
+	 * 
+	 * @param delta
+	 *            the {@link IResourceDelta} with {@link IResourceDelta#ADDED added}
+	 *            {@link IResourceDelta#getKind() kind}
+	 * @param movedResources
+	 *            mapping of moved {@link IResource}
+	 */
+	private void processAddedDelta(IResourceDelta delta, HashMap<IPath, IResource> movedResources) {
+		if ((delta.getFlags() & IResourceDelta.MOVED_FROM) != 0) {
+			final IResource source = movedResources.get(delta.getMovedFromPath());
+			if (source != null) {
+				resourceMoved((IFile)source, (IFile)delta.getResource());
+			} else {
+				movedResources.put(delta.getResource().getFullPath(), delta.getResource());
+			}
+		} else {
+			register((IFile)delta.getResource());
+		}
+	}
+
+	/**
+	 * Handles a {@link IFile} move.
+	 * 
+	 * @param source
+	 *            the source {@link IFile}
+	 * @param target
+	 *            the target {@link IFile}
+	 */
+	private void resourceMoved(IFile source, IFile target) {
+		if (MappingPackage.eNAME.equals(source.getFileExtension())) {
+			if (MappingPackage.eNAME.equals(target.getFileExtension())) {
+				final Base base = resourceToBase.remove(source);
+				resourceToBase.put(target, base);
+			} else {
+				unregister(source);
+			}
+		} else {
+			if (MappingPackage.eNAME.equals(target.getFileExtension())) {
+				register(target);
+			} else {
+				// nothing to do here
+			}
+		}
+
+	}
+
+	/**
+	 * {@link org.eclipse.intent.mapping.base.IBaseRegistry#register(org.eclipse.intent.mapping.base.IBase)
+	 * Unregisters} the {@link Base} stored in the given {@link IFile} if any, does nothing otherwise.
+	 * 
+	 * @param file
+	 *            the {@link IFile}
+	 */
+	private void register(IFile file) {
+		final Base base = getBaseFromFile(file);
+		if (base != null) {
+			resourceToBase.put(file, base);
+			MappingUtils.getMappingRegistry().register(base);
+		}
+	}
+
+	/**
+	 * Gets the {@link Base} from the given {@link IFile}.
+	 * 
+	 * @param file
+	 *            the {@link IFile}
+	 * @return the {@link Base} from the given {@link IFile} if nay, <code>null</code> otherwise
+	 */
+	private Base getBaseFromFile(IFile file) {
+		Base res = null;
+
+		if (MappingPackage.eNAME.equals(file.getFileExtension())) {
+			try {
+				final ResourceSet resourceSet = new ResourceSetImpl();
+				resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put(MappingPackage.eNAME,
+						new XMIResourceFactoryImpl());
+
+				final Resource resource = resourceSet.getResource(URI.createPlatformResourceURI(file
+						.getFullPath().toString(), true), true);
+				if (!resource.getContents().isEmpty()) {
+					if (resource.getContents().get(0) instanceof Base) {
+						res = (Base)resource.getContents().get(0);
+					} else {
+						Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID,
+								UNABLE_TO_LOAD_MAPPING_BASE_FROM + file.getFullPath().toString()
+										+ " doesn't contain a Base."));
+					}
+				} else {
+					Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID,
+							UNABLE_TO_LOAD_MAPPING_BASE_FROM + file.getFullPath().toString()
+									+ " resource is empty"));
+				}
+				// CHECKSTYLE:OFF
+			} catch (Exception e) {
+				// CHECKSTYLE:ON
+				Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID,
+						UNABLE_TO_LOAD_MAPPING_BASE_FROM + file.getFullPath().toString(), e));
+			}
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@link org.eclipse.intent.mapping.base.IBaseRegistry#unregister(org.eclipse.intent.mapping.base.IBase)
+	 * Unregisters} the {@link Base} corresponding to the given {@link IFile}.
+	 * 
+	 * @param file
+	 *            the {@link IFile}
+	 */
+	private void unregister(IFile file) {
+		final Base base = resourceToBase.remove(file);
+		if (base != null) {
+			MappingUtils.getMappingRegistry().unregister(base);
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/adapter/EObjectLocationToMarkerAdapterFactory.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/adapter/EObjectLocationToMarkerAdapterFactory.java
new file mode 100644
index 0000000..b3d3b7d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/adapter/EObjectLocationToMarkerAdapterFactory.java
@@ -0,0 +1,84 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.adapter;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IAdapterFactory;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.emf.IEObjectLocation;
+import org.eclipse.intent.mapping.emf.ide.marker.IEObjectLocationMaker;
+import org.eclipse.intent.mapping.ide.Activator;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+
+/**
+ * {@link IEObjectLocation} to Marker {@link IAdapterFactory}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EObjectLocationToMarkerAdapterFactory implements IAdapterFactory {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
+	 */
+	@SuppressWarnings("unchecked")
+	public IMarker getAdapter(Object adaptableObject, @SuppressWarnings("rawtypes") Class adapterType) {
+		IMarker res;
+
+		if (adaptableObject instanceof IEObjectLocation) {
+			final IEObjectLocation eObjLocation = (IEObjectLocation)adaptableObject;
+			final IMarker existingMarker = IdeMappingUtils.getMarker(eObjLocation);
+			if (existingMarker != null) {
+				res = existingMarker;
+			} else {
+				final IFileLocation fileLocation = IdeMappingUtils.getContainingFileLocation(eObjLocation);
+				final IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(Path.fromPortableString(
+						fileLocation.getFullPath()));
+				try {
+					res = file.createMarker(IEObjectLocationMaker.EOBJECT_LOCATION_ID);
+					final EObject eObject = (EObject)MappingUtils.getConnectorRegistry().getElement(
+							eObjLocation);
+					res.setAttribute(IEObjectLocationMaker.URI_ATTRIBUTE, EcoreUtil.getURI(eObject)
+							.toString());
+				} catch (CoreException e) {
+					res = null;
+					Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+							.getMessage(), e));
+				}
+			}
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
+	 */
+	public Class<?>[] getAdapterList() {
+		return new Class[] {IMarker.class };
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/adapter/EObjectToFileAdapterFactory.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/adapter/EObjectToFileAdapterFactory.java
new file mode 100644
index 0000000..72712a0
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/adapter/EObjectToFileAdapterFactory.java
@@ -0,0 +1,63 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.adapter;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.IAdapterFactory;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * Adapts {@link EObject} to {@link IFile}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EObjectToFileAdapterFactory implements IAdapterFactory {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
+	 */
+	@SuppressWarnings("unchecked")
+	public Object getAdapter(Object adaptableObject, @SuppressWarnings("rawtypes") Class adapterType) {
+		final IFile res;
+
+		if (adaptableObject instanceof EObject && ((EObject)adaptableObject).eResource() != null
+				&& ((EObject)adaptableObject).eResource().getURI() != null) {
+			final URI uri = ((EObject)adaptableObject).eResource().getURI();
+			if (uri.isPlatformResource()) {
+				final String path = ((EObject)adaptableObject).eResource().getURI().toString().substring(
+						"platform:/resource".length());
+				res = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(path));
+			} else {
+				res = null;
+			}
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
+	 */
+	public Class<?>[] getAdapterList() {
+		return new Class[] {IFile.class };
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/adapter/MarkerToEObjectLocationDescriptor.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/adapter/MarkerToEObjectLocationDescriptor.java
new file mode 100644
index 0000000..31faeda
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/adapter/MarkerToEObjectLocationDescriptor.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.adapter;
+
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EValidator;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.emf.ide.marker.IEObjectLocationMaker;
+import org.eclipse.intent.mapping.ide.Activator;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.adapter.IMarkerToLocationDescriptor;
+
+/**
+ * Marker to {@link ILocationDescriptor} descriptor.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class MarkerToEObjectLocationDescriptor implements IMarkerToLocationDescriptor {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.adapter.IMarkerToLocationDescriptor#getAdapter(org.eclipse.core.resources.IMarker)
+	 */
+	public ILocationDescriptor getAdapter(IMarker marker) {
+		ILocationDescriptor res = null;
+
+		try {
+			if (marker.isSubtypeOf(EValidator.MARKER)) {
+				final String uri = (String)marker.getAttribute(IEObjectLocationMaker.URI_ATTRIBUTE);
+				// TODO we should change this to use a global ResourceSet...
+				final ResourceSet rs = new ResourceSetImpl();
+				final EObject eObject = rs.getEObject(URI.createURI(uri), true);
+				res = IdeMappingUtils.adapt(eObject, ILocationDescriptor.class);
+			}
+		} catch (CoreException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
+					e));
+		}
+
+		return res;
+	}
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/EObjectContainerProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/EObjectContainerProvider.java
new file mode 100644
index 0000000..ae67d37
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/EObjectContainerProvider.java
@@ -0,0 +1,53 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.connector;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+
+/**
+ * {@link EObject} -> {@link IFile}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EObjectContainerProvider implements IContainerProvider {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IContainerProvider#getContainer(java.lang.Object)
+	 */
+	public Object getContainer(Object element) {
+		final Object res;
+
+		if (element instanceof EObject && ((EObject)element).eResource() != null && ((EObject)element)
+				.eResource().getURI() != null) {
+			final URI uri = ((EObject)element).eResource().getURI();
+			if (uri.isPlatformResource()) {
+				final String path = ((EObject)element).eResource().getURI().toString().substring(
+						"platform:/resource".length());
+				res = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(path));
+			} else {
+				res = null;
+			}
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/EObjectFileConnectorDelegate.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/EObjectFileConnectorDelegate.java
new file mode 100644
index 0000000..6890aa9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/EObjectFileConnectorDelegate.java
@@ -0,0 +1,109 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.connector;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.content.IFileType;
+import org.eclipse.intent.mapping.emf.IEObjectContainer;
+import org.eclipse.intent.mapping.emf.connector.EObjectConnector.EObjectContainerHelper;
+import org.eclipse.intent.mapping.emf.ide.resource.IEObjectFileLocation;
+import org.eclipse.intent.mapping.ide.Activator;
+import org.eclipse.intent.mapping.ide.connector.AbstractFileConnectorDelegate;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+
+/**
+ * {@link IEObjectFileLocation} delegate.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EObjectFileConnectorDelegate extends AbstractFileConnectorDelegate {
+
+	/**
+	 * The {@link IFileType}.
+	 */
+	private static final IFileType FILE_TYPE = MappingUtils.getFileTypeRegistry().getFileType(
+			"org.eclipse.emf.ecore.xmi");
+
+	/**
+	 * The {@link EObjectContainerHelper}.
+	 */
+	private final EObjectContainerHelper eObjectContainerHelper = new EObjectContainerHelper();
+
+	/**
+	 * Mapping of {@link IEObjectFileLocation#getFullPath() full path} to {@link Resource}.
+	 */
+	private final Map<String, Resource> knownResources = new HashMap<String, Resource>();
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate#getFileType()
+	 */
+	public IFileType getFileType() {
+		return FILE_TYPE;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate#getFileLocationType()
+	 */
+	public Class<? extends IFileLocation> getFileLocationType() {
+		return IEObjectFileLocation.class;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate#initLocation(org.eclipse.intent.mapping.base.ILocationContainer,
+	 *      org.eclipse.intent.mapping.ide.resource.IFileLocation, org.eclipse.core.resources.IFile)
+	 */
+	public void initLocation(ILocationContainer container, IFileLocation location, IFile element) {
+		final ResourceSet rs = new ResourceSetImpl();
+		final Resource resource = rs.getResource(URI.createPlatformResourceURI(element.getFullPath()
+				.toPortableString(), true), true);
+		knownResources.put(location.getFullPath(), resource);
+		try {
+			eObjectContainerHelper.updateEObjectContainer(container, (IEObjectContainer)location, resource);
+			// CHECKSTYLE:OFF
+		} catch (Exception e) {
+			// CHECKSTYLE:ON
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
+					e));
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate#getElement(org.eclipse.intent.mapping.ide.resource.IFileLocation)
+	 */
+	public Object getElement(IFileLocation location) {
+		if (!knownResources.containsKey(location.getFullPath())) {
+			initLocation(location.getContainer(), location, (IFile)super.getElement(location));
+		}
+
+		return knownResources.get(location.getFullPath());
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/IdeCDOResourceNodeConnector.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/IdeCDOResourceNodeConnector.java
new file mode 100644
index 0000000..84c61a3
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/IdeCDOResourceNodeConnector.java
@@ -0,0 +1,39 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.connector;
+
+import org.eclipse.emf.cdo.eresource.CDOResourceNode;
+import org.eclipse.intent.mapping.emf.connector.CDOResourceNodeConnector;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+
+/**
+ * Ide {@link CDOResourceNodeConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeCDOResourceNodeConnector extends CDOResourceNodeConnector {
+
+	@Override
+	protected Object adapt(Object element) {
+		final Object res;
+
+		final CDOResourceNode adaptedElement = IdeMappingUtils.adapt(element, CDOResourceNode.class);
+		if (adaptedElement != null) {
+			res = adaptedElement;
+		} else {
+			res = super.adapt(element);
+		}
+
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/IdeCDOViewConnector.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/IdeCDOViewConnector.java
new file mode 100644
index 0000000..227a2bf
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/IdeCDOViewConnector.java
@@ -0,0 +1,39 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.connector;
+
+import org.eclipse.emf.cdo.eresource.CDOResourceNode;
+import org.eclipse.intent.mapping.emf.connector.CDOViewConnector;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+
+/**
+ * Ide {@link CDOViewConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeCDOViewConnector extends CDOViewConnector {
+
+	@Override
+	protected Object adapt(Object element) {
+		final Object res;
+
+		final CDOResourceNode adaptedElement = IdeMappingUtils.adapt(element, CDOResourceNode.class);
+		if (adaptedElement != null) {
+			res = adaptedElement;
+		} else {
+			res = super.adapt(element);
+		}
+
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/IdeEObjectConnector.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/IdeEObjectConnector.java
new file mode 100644
index 0000000..fd51017
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/connector/IdeEObjectConnector.java
@@ -0,0 +1,45 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.connector;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature.Setting;
+import org.eclipse.intent.mapping.emf.connector.EObjectConnector;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+
+/**
+ * Ide implementation of {@link EObjectConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeEObjectConnector extends EObjectConnector {
+
+	@Override
+	protected Object adapt(Object element) {
+		final Object res;
+
+		final EObject eObject = IdeMappingUtils.adapt(element, EObject.class);
+		if (eObject != null) {
+			res = eObject;
+		} else {
+			final Setting setting = IdeMappingUtils.adapt(element, Setting.class);
+			if (setting != null) {
+				res = setting;
+			} else {
+				res = super.adapt(element);
+			}
+		}
+
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/marker/IEObjectLocationMaker.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/marker/IEObjectLocationMaker.java
new file mode 100644
index 0000000..6a33520
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/marker/IEObjectLocationMaker.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.marker;
+
+import org.eclipse.emf.ecore.EValidator;
+import org.eclipse.intent.mapping.emf.ide.Activator;
+
+/**
+ * Place holder for location marker constants.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IEObjectLocationMaker {
+
+	/**
+	 * The EObject location marker ID.
+	 */
+	String EOBJECT_LOCATION_ID = Activator.PLUGIN_ID + ".eobjectLocationMarker";
+
+	/**
+	 * The URI attribute.
+	 */
+	String URI_ATTRIBUTE = EValidator.URI_ATTRIBUTE;
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/resource/IEObjectFileLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/resource/IEObjectFileLocation.java
new file mode 100644
index 0000000..6a3886d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf.ide/src/org/eclipse/intent/mapping/emf/ide/resource/IEObjectFileLocation.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.resource;
+
+import org.eclipse.intent.mapping.emf.IEObjectContainer;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+
+/**
+ * {@link org.eclipse.emf.ecore.EObject EObject} {@link IFileLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IEObjectFileLocation extends IFileLocation, IEObjectContainer {
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/.checkstyle b/mapping/plugins/org.eclipse.intent.mapping.emf/.checkstyle
new file mode 100644
index 0000000..46c61e2
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/.checkstyle
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6Configuration.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+  <filter name="FilesFromPackage" enabled="true">
+    <filter-data value="src-gen"/>
+  </filter>
+</fileset-config>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/.classpath b/mapping/plugins/org.eclipse.intent.mapping.emf/.classpath
new file mode 100644
index 0000000..756f428
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src-gen"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/.project b/mapping/plugins/org.eclipse.intent.mapping.emf/.project
new file mode 100644
index 0000000..f32a0e2
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/.project
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.emf</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.sirius.nature.modelingproject</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/.settings/org.eclipse.jdt.core.prefs b/mapping/plugins/org.eclipse.intent.mapping.emf/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3433b02
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,315 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/.settings/org.eclipse.jdt.ui.prefs b/mapping/plugins/org.eclipse.intent.mapping.emf/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..99aaf4f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=com;eu;fr;java;javax;org;\#org.junit;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/META-INF/MANIFEST.MF b/mapping/plugins/org.eclipse.intent.mapping.emf/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..eaed321
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/META-INF/MANIFEST.MF
@@ -0,0 +1,25 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.intent.mapping.emf;singleton:=true
+Bundle-Version: 0.10.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.intent.mapping,
+ org.eclipse.intent.mapping.emf,
+ org.eclipse.intent.mapping.emf.connector,
+ org.eclipse.intent.mapping.impl,
+ org.eclipse.intent.mapping.util
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.emf.cdo;visibility:=reexport,
+ org.eclipse.intent.mapping;bundle-version="0.10.0",
+ org.eclipse.emf.edit,
+ org.eclipse.emf.compare,
+ org.eclipse.emf.ecore.xmi,
+ com.google.guava;bundle-version="[15.0.0,16.0.0)",
+ org.apache.log4j;bundle-version="1.2.15",
+ org.eclipse.emf.cdo.net4j
+Bundle-ActivationPolicy: lazy
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/build.properties b/mapping/plugins/org.eclipse.intent.mapping.emf/build.properties
new file mode 100644
index 0000000..7f0c2ff
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/build.properties
@@ -0,0 +1,11 @@
+#
+
+bin.includes = .,\
+               model/,\
+               META-INF/,\
+               plugin.xml,\
+               plugin.properties
+jars.compile.order = .
+source.. = src-gen/,\
+           src/
+output.. = bin/
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/model/mapping.ecore b/mapping/plugins/org.eclipse.intent.mapping.emf/model/mapping.ecore
new file mode 100644
index 0000000..4809168
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/model/mapping.ecore
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="mapping" nsURI="http://www.eclipse.org/intent/mapping" nsPrefix="mapping">
+  <eClassifiers xsi:type="ecore:EClass" name="Location" abstract="true" eSuperTypes="#//IEMFBaseElement #//LocationContainer">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="sourceLinks" upperBound="-1"
+        eType="#//Link" eOpposite="#//Link/target"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="targetLinks" upperBound="-1"
+        eType="#//Link" containment="true" eOpposite="#//Link/source"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="container" eType="#//LocationContainer"
+        eOpposite="#//LocationContainer/contents"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//Type"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="markedAsDeleted" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Link" eSuperTypes="#//IEMFBaseElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="source" lowerBound="1"
+        eType="#//Location" eOpposite="#//Location/targetLinks"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="target" lowerBound="1"
+        eType="#//Location" eOpposite="#//Location/sourceLinks"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//Type"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="reports" upperBound="-1"
+        eType="#//Report" eOpposite="#//Report/link"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Base" eSuperTypes="#//IEMFBaseElement #//LocationContainer">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="reports" upperBound="-1"
+        eType="#//Report" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="containerProviders" upperBound="-1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEMFBaseElement" abstract="true" interface="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="TextLocation" eSuperTypes="#//Location">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="startOffset" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="-1"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="endOffset" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="-1"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="TextContainer" abstract="true" interface="true"
+      eSuperTypes="#//Location">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="text" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="EObjectLocation" eSuperTypes="#//Location">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="URIFragment" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="savedURIFragment" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="featureName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="index" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"
+        defaultValueLiteral="0"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EDataType" name="Type" instanceClassName="java.io.Serializable"/>
+  <eClassifiers xsi:type="ecore:EClass" name="LocationContainer" abstract="true" interface="true">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="contents" upperBound="-1"
+        eType="#//Location" containment="true" eOpposite="#//Location/container"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Report" eSuperTypes="#//IEMFBaseElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="link" lowerBound="1" eType="#//Link"
+        eOpposite="#//Link/reports"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Couple">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="key" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="EObjectContainer" abstract="true" interface="true"
+      eSuperTypes="#//Location">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="XMIContent" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="savedURIFragments" upperBound="-1"
+        eType="#//Couple" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CDOResourceNodeLocation" abstract="true"
+      interface="true" eSuperTypes="#//Location">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="path" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CDOFileLocation" abstract="true" interface="true"
+      eSuperTypes="#//CDOResourceNodeLocation"/>
+  <eClassifiers xsi:type="ecore:EClass" name="CDOFolderLocation" eSuperTypes="#//CDOResourceNodeLocation"/>
+  <eClassifiers xsi:type="ecore:EClass" name="CDORepositoryLocation" eSuperTypes="#//Location">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="URL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="UUID" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="branchID" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="-1"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CDOBinaryResourceLocation" eSuperTypes="#//CDOFileLocation"/>
+  <eClassifiers xsi:type="ecore:EClass" name="CDOTextResourceLocation" eSuperTypes="#//CDOFileLocation #//TextContainer"/>
+  <eClassifiers xsi:type="ecore:EClass" name="CDOResourceLocation" eSuperTypes="#//CDOFileLocation #//EObjectContainer"/>
+</ecore:EPackage>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/model/mapping.genmodel b/mapping/plugins/org.eclipse.intent.mapping.emf/model/mapping.genmodel
new file mode 100644
index 0000000..51b180a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/model/mapping.genmodel
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2015 Obeo.&#xA; All rights reserved. This program and the accompanying materials&#xA; are made available under the terms of the Eclipse Public License v1.0&#xA; which accompanies this distribution, and is available at&#xA; http://www.eclipse.org/legal/epl-v10.html&#xA;&#xA; Contributors:&#xA;    Obeo - initial API and implementation and/or initial documentation&#xA;    ...&#xA;"
+    modelDirectory="/org.eclipse.intent.mapping.emf/src-gen" editDirectory="/org.eclipse.intent.mapping.emf.edit/src-gen"
+    editorDirectory="/org.eclipse.intent.mapping.emf.editor/src-gen" modelPluginID="org.eclipse.intent.mapping.emf"
+    modelName="Mapping" rootExtendsInterface="org.eclipse.emf.cdo.CDOObject" rootExtendsClass="org.eclipse.emf.internal.cdo.CDOObjectImpl"
+    reflectiveDelegation="true" codeFormatting="true" testsDirectory="/org.eclipse.intent.mapping.emf.tests/src-gen"
+    importerID="org.eclipse.emf.importer.cdo" featureDelegation="Reflective" complianceLevel="5.0"
+    copyrightFields="false" publicConstructors="true" providerRootExtendsClass="org.eclipse.emf.cdo.edit.CDOItemProviderAdapter"
+    operationReflection="true" importOrganizing="true">
+  <foreignModel>mapping.ecore</foreignModel>
+  <modelPluginVariables>CDO=org.eclipse.emf.cdo</modelPluginVariables>
+  <genPackages prefix="Mapping" basePackage="org.eclipse.intent" disposableProviderFactory="true"
+      ecorePackage="mapping.ecore#/">
+    <genDataTypes ecoreDataType="mapping.ecore#//Type"/>
+    <genClasses image="false" ecoreClass="mapping.ecore#//Location">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference mapping.ecore#//Location/sourceLinks"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference mapping.ecore#//Location/targetLinks"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference mapping.ecore#//Location/container"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//Location/type"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//Location/markedAsDeleted"/>
+    </genClasses>
+    <genClasses ecoreClass="mapping.ecore#//Link">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//Link/description"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference mapping.ecore#//Link/source"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference mapping.ecore#//Link/target"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//Link/type"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference mapping.ecore#//Link/reports"/>
+    </genClasses>
+    <genClasses ecoreClass="mapping.ecore#//Base">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//Base/name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference mapping.ecore#//Base/reports"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//Base/containerProviders"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="mapping.ecore#//IEMFBaseElement"/>
+    <genClasses ecoreClass="mapping.ecore#//TextLocation">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//TextLocation/startOffset"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//TextLocation/endOffset"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="mapping.ecore#//TextContainer">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//TextContainer/text"/>
+    </genClasses>
+    <genClasses ecoreClass="mapping.ecore#//EObjectLocation">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//EObjectLocation/URIFragment"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//EObjectLocation/savedURIFragment"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//EObjectLocation/featureName"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//EObjectLocation/index"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="mapping.ecore#//LocationContainer">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference mapping.ecore#//LocationContainer/contents"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="mapping.ecore#//Report">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//Report/description"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference mapping.ecore#//Report/link"/>
+    </genClasses>
+    <genClasses ecoreClass="mapping.ecore#//Couple">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//Couple/key"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//Couple/value"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="mapping.ecore#//EObjectContainer">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//EObjectContainer/XMIContent"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference mapping.ecore#//EObjectContainer/savedURIFragments"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="mapping.ecore#//CDOResourceNodeLocation">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//CDOResourceNodeLocation/path"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="mapping.ecore#//CDOFileLocation"/>
+    <genClasses ecoreClass="mapping.ecore#//CDOFolderLocation"/>
+    <genClasses ecoreClass="mapping.ecore#//CDORepositoryLocation">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//CDORepositoryLocation/URL"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//CDORepositoryLocation/UUID"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//CDORepositoryLocation/name"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute mapping.ecore#//CDORepositoryLocation/branchID"/>
+    </genClasses>
+    <genClasses ecoreClass="mapping.ecore#//CDOBinaryResourceLocation"/>
+    <genClasses ecoreClass="mapping.ecore#//CDOTextResourceLocation"/>
+    <genClasses ecoreClass="mapping.ecore#//CDOResourceLocation"/>
+  </genPackages>
+</genmodel:GenModel>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/model/representations.aird b/mapping/plugins/org.eclipse.intent.mapping.emf/model/representations.aird
new file mode 100644
index 0000000..3dff784
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/model/representations.aird
@@ -0,0 +1,578 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<viewpoint:DAnalysis xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:diagram="http://www.eclipse.org/sirius/diagram/1.1.0" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:viewpoint="http://www.eclipse.org/sirius/1.1.0" xsi:schemaLocation="http://www.eclipse.org/sirius/description/1.1.0 http://www.eclipse.org/sirius/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/style/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description/style" xmi:id="_WIYxUN0nEeSrTZVsNOV2JQ" selectedViews="_Wsb5kN0nEeSrTZVsNOV2JQ _WsgLAN0nEeSrTZVsNOV2JQ _W4nUYN0nEeSrTZVsNOV2JQ" version="8.1.1">
+  <models xmi:type="ecore:EPackage" href="http://www.eclipse.org/emf/2002/Ecore#/"/>
+  <models xmi:type="ecore:EPackage" href="mapping.ecore#/"/>
+  <models xmi:type="genmodel:GenModel" href="mapping.genmodel#/"/>
+  <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_Wsb5kN0nEeSrTZVsNOV2JQ" initialized="true">
+    <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Review']"/>
+  </ownedViews>
+  <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_WsgLAN0nEeSrTZVsNOV2JQ" initialized="true">
+    <ownedRepresentations xmi:type="diagram:DSemanticDiagram" xmi:id="_yuNMIAkiEeWFVOi_8hW2kQ" name="mapping class diagram">
+      <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_yuNMJgkiEeWFVOi_8hW2kQ" source="GMF_DIAGRAMS">
+        <data xmi:type="notation:Diagram" xmi:id="_yuNMJwkiEeWFVOi_8hW2kQ" type="Sirius" element="_yuNMIAkiEeWFVOi_8hW2kQ" measurementUnit="Pixel">
+          <children xmi:type="notation:Node" xmi:id="_G7VMwAkjEeWFVOi_8hW2kQ" type="2003" element="_G61dgAkjEeWFVOi_8hW2kQ">
+            <children xmi:type="notation:Node" xmi:id="_G7VMwwkjEeWFVOi_8hW2kQ" type="5007"/>
+            <children xmi:type="notation:Node" xmi:id="_G7VMxAkjEeWFVOi_8hW2kQ" type="7004">
+              <children xmi:type="notation:Node" xmi:id="_a-RHID6kEeaW46TWXHz9iw" type="3010" element="_a8u2ED6kEeaW46TWXHz9iw">
+                <layoutConstraint xmi:type="notation:Location" xmi:id="_a-RHIT6kEeaW46TWXHz9iw"/>
+              </children>
+              <children xmi:type="notation:Node" xmi:id="_Hy_XkMHWEeangZPFpBYoMg" type="3010" element="_Hyav0MHWEeangZPFpBYoMg">
+                <layoutConstraint xmi:type="notation:Location" xmi:id="_Hy_XkcHWEeangZPFpBYoMg"/>
+              </children>
+              <styles xmi:type="notation:SortingStyle" xmi:id="_G7VMxQkjEeWFVOi_8hW2kQ"/>
+              <styles xmi:type="notation:FilteringStyle" xmi:id="_G7VMxgkjEeWFVOi_8hW2kQ"/>
+            </children>
+            <styles xmi:type="notation:ShapeStyle" xmi:id="_G7VMwQkjEeWFVOi_8hW2kQ" fontName="Segoe UI" fontHeight="8" italic="true"/>
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_G7VMwgkjEeWFVOi_8hW2kQ" x="100" y="211" width="177" height="87"/>
+          </children>
+          <children xmi:type="notation:Node" xmi:id="_KiL-sAkjEeWFVOi_8hW2kQ" type="2003" element="_Kh_xcAkjEeWFVOi_8hW2kQ">
+            <children xmi:type="notation:Node" xmi:id="_KiL-swkjEeWFVOi_8hW2kQ" type="5007"/>
+            <children xmi:type="notation:Node" xmi:id="_KiL-tAkjEeWFVOi_8hW2kQ" type="7004">
+              <children xmi:type="notation:Node" xmi:id="_8I_2IAkjEeWFVOi_8hW2kQ" type="3010" element="_8IbOYAkjEeWFVOi_8hW2kQ">
+                <layoutConstraint xmi:type="notation:Location" xmi:id="_8I_2IQkjEeWFVOi_8hW2kQ"/>
+              </children>
+              <children xmi:type="notation:Node" xmi:id="_a-WmsD6kEeaW46TWXHz9iw" type="3010" element="_a82x4D6kEeaW46TWXHz9iw">
+                <layoutConstraint xmi:type="notation:Location" xmi:id="_a-XNwD6kEeaW46TWXHz9iw"/>
+              </children>
+              <styles xmi:type="notation:SortingStyle" xmi:id="_KiL-tQkjEeWFVOi_8hW2kQ"/>
+              <styles xmi:type="notation:FilteringStyle" xmi:id="_KiL-tgkjEeWFVOi_8hW2kQ"/>
+            </children>
+            <styles xmi:type="notation:ShapeStyle" xmi:id="_KiL-sQkjEeWFVOi_8hW2kQ" fontName="Segoe UI" fontHeight="8"/>
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KiL-sgkjEeWFVOi_8hW2kQ" x="100" y="426" width="177" height="87"/>
+          </children>
+          <children xmi:type="notation:Node" xmi:id="_reRv0AkkEeWFVOi_8hW2kQ" type="2003" element="_rdzOsAkkEeWFVOi_8hW2kQ">
+            <children xmi:type="notation:Node" xmi:id="_reRv0wkkEeWFVOi_8hW2kQ" type="5007"/>
+            <children xmi:type="notation:Node" xmi:id="_reRv1AkkEeWFVOi_8hW2kQ" type="7004">
+              <children xmi:type="notation:Node" xmi:id="_LsCnsAtdEeWH1PvRpPAbiQ" type="3010" element="_Lq_e0AtdEeWH1PvRpPAbiQ">
+                <layoutConstraint xmi:type="notation:Location" xmi:id="_LsCnsQtdEeWH1PvRpPAbiQ"/>
+              </children>
+              <styles xmi:type="notation:SortingStyle" xmi:id="_reRv1QkkEeWFVOi_8hW2kQ"/>
+              <styles xmi:type="notation:FilteringStyle" xmi:id="_reRv1gkkEeWFVOi_8hW2kQ"/>
+            </children>
+            <styles xmi:type="notation:ShapeStyle" xmi:id="_reRv0QkkEeWFVOi_8hW2kQ" fontName="Segoe UI" fontHeight="8"/>
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_reRv0gkkEeWFVOi_8hW2kQ" x="529" y="205" width="144" height="100"/>
+          </children>
+          <children xmi:type="notation:Shape" xmi:id="_Z-_WwB_TEeWosIVuL4CkTA" type="Note" fontName="Ubuntu" description="Possible Location implementations:&#xA;- TextLocation&#xA;- ModelLocation&#xA;- JavaLocation&#xA;- ..." fillColor="13369343" transparency="0" lineColor="6737151" lineWidth="1">
+            <children xmi:type="notation:BasicDecorationNode" xmi:id="_Z_DoMB_TEeWosIVuL4CkTA" type="DiagramName">
+              <element xsi:nil="true"/>
+            </children>
+            <children xmi:type="notation:BasicDecorationNode" xmi:id="_Z_DoMR_TEeWosIVuL4CkTA" type="Description">
+              <element xsi:nil="true"/>
+            </children>
+            <styles xmi:type="notation:TextStyle" xmi:id="_Z-_WwR_TEeWosIVuL4CkTA"/>
+            <styles xmi:type="notation:LineTypeStyle" xmi:id="_Z-_Wwh_TEeWosIVuL4CkTA"/>
+            <element xsi:nil="true"/>
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Z-_Wwx_TEeWosIVuL4CkTA" x="5" y="110"/>
+          </children>
+          <children xmi:type="notation:Node" xmi:id="_dYa1YD6kEeaW46TWXHz9iw" type="2003" element="_dXUCID6kEeaW46TWXHz9iw">
+            <children xmi:type="notation:Node" xmi:id="_dYhjED6kEeaW46TWXHz9iw" type="5007"/>
+            <children xmi:type="notation:Node" xmi:id="_dYixMD6kEeaW46TWXHz9iw" type="7004">
+              <styles xmi:type="notation:SortingStyle" xmi:id="_dYixMT6kEeaW46TWXHz9iw"/>
+              <styles xmi:type="notation:FilteringStyle" xmi:id="_dYixMj6kEeaW46TWXHz9iw"/>
+            </children>
+            <styles xmi:type="notation:ShapeStyle" xmi:id="_dYa1YT6kEeaW46TWXHz9iw" fontName="Ubuntu" fontHeight="8" italic="true"/>
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dYa1Yj6kEeaW46TWXHz9iw" x="350" y="10"/>
+          </children>
+          <children xmi:type="notation:Node" xmi:id="_hbHAID-TEeatdPECk4x2fg" type="2003" element="_hZcMMD-TEeatdPECk4x2fg">
+            <children xmi:type="notation:Node" xmi:id="_hbT0cD-TEeatdPECk4x2fg" type="5007"/>
+            <children xmi:type="notation:Node" xmi:id="_hbVCkD-TEeatdPECk4x2fg" type="7004">
+              <children xmi:type="notation:Node" xmi:id="_hbYF4D-TEeatdPECk4x2fg" type="3010" element="_hamCwD-TEeatdPECk4x2fg">
+                <layoutConstraint xmi:type="notation:Location" xmi:id="_hbYF4T-TEeatdPECk4x2fg"/>
+              </children>
+              <styles xmi:type="notation:SortingStyle" xmi:id="_hbVCkT-TEeatdPECk4x2fg"/>
+              <styles xmi:type="notation:FilteringStyle" xmi:id="_hbVCkj-TEeatdPECk4x2fg"/>
+            </children>
+            <styles xmi:type="notation:ShapeStyle" xmi:id="_hbHAIT-TEeatdPECk4x2fg" fontName="Ubuntu" fontHeight="8"/>
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hbHAIj-TEeatdPECk4x2fg" x="530" y="420"/>
+          </children>
+          <styles xmi:type="notation:DiagramStyle" xmi:id="_yuNMKAkiEeWFVOi_8hW2kQ"/>
+          <edges xmi:type="notation:Edge" xmi:id="_rhdxQAklEeWFVOi_8hW2kQ" type="4001" element="_rhFWwAklEeWFVOi_8hW2kQ" source="_G7VMwAkjEeWFVOi_8hW2kQ" target="_KiL-sAkjEeWFVOi_8hW2kQ">
+            <children xmi:type="notation:Node" xmi:id="_rhdxRAklEeWFVOi_8hW2kQ" type="6001">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rhdxRQklEeWFVOi_8hW2kQ" y="-10"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_rhdxRgklEeWFVOi_8hW2kQ" type="6002">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rhdxRwklEeWFVOi_8hW2kQ" x="13" y="-45"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_rhj34AklEeWFVOi_8hW2kQ" type="6003">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rhj34QklEeWFVOi_8hW2kQ" x="-21" y="-56"/>
+            </children>
+            <styles xmi:type="notation:ConnectorStyle" xmi:id="_rhdxQQklEeWFVOi_8hW2kQ" routing="Rectilinear"/>
+            <styles xmi:type="notation:FontStyle" xmi:id="_rhdxQgklEeWFVOi_8hW2kQ" fontName="Segoe UI" fontHeight="8"/>
+            <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rhdxQwklEeWFVOi_8hW2kQ" points="[8, 43, 37, -132]$[8, 163, 37, -12]"/>
+            <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rhj34gklEeWFVOi_8hW2kQ" id="(0.6685393258426966,0.5)"/>
+            <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rhj34wklEeWFVOi_8hW2kQ" id="(0.4971751412429379,0.1412565026010404)"/>
+          </edges>
+          <edges xmi:type="notation:Edge" xmi:id="_sqDJ8AklEeWFVOi_8hW2kQ" type="4001" element="_spw2EAklEeWFVOi_8hW2kQ" source="_G7VMwAkjEeWFVOi_8hW2kQ" target="_KiL-sAkjEeWFVOi_8hW2kQ">
+            <children xmi:type="notation:Node" xmi:id="_sqDJ9AklEeWFVOi_8hW2kQ" type="6001">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sqDJ9QklEeWFVOi_8hW2kQ" y="-10"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_sqDJ9gklEeWFVOi_8hW2kQ" type="6002">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sqDJ9wklEeWFVOi_8hW2kQ" x="3" y="48"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_sqDJ-AklEeWFVOi_8hW2kQ" type="6003">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sqDJ-QklEeWFVOi_8hW2kQ" x="-11" y="61"/>
+            </children>
+            <styles xmi:type="notation:ConnectorStyle" xmi:id="_sqDJ8QklEeWFVOi_8hW2kQ" routing="Rectilinear"/>
+            <styles xmi:type="notation:FontStyle" xmi:id="_sqDJ8gklEeWFVOi_8hW2kQ" fontName="Segoe UI" fontHeight="8"/>
+            <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sqDJ8wklEeWFVOi_8hW2kQ" points="[-92, 43, -63, -132]$[-92, 163, -63, -12]"/>
+            <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_sqDJ-gklEeWFVOi_8hW2kQ" id="(0.6685393258426966,0.5)"/>
+            <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_sqDJ-wklEeWFVOi_8hW2kQ" id="(0.4971751412429379,0.1412565026010404)"/>
+          </edges>
+          <edges xmi:type="notation:Edge" xmi:id="_dYoQwD6kEeaW46TWXHz9iw" type="4001" element="_dYJIkD6kEeaW46TWXHz9iw" source="_G7VMwAkjEeWFVOi_8hW2kQ" target="_dYa1YD6kEeaW46TWXHz9iw">
+            <children xmi:type="notation:Node" xmi:id="_dYqtAD6kEeaW46TWXHz9iw" type="6001">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dYqtAT6kEeaW46TWXHz9iw" y="-10"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_dYr7ID6kEeaW46TWXHz9iw" type="6002">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dYr7IT6kEeaW46TWXHz9iw" y="10"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_dYsiMD6kEeaW46TWXHz9iw" type="6003">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dYsiMT6kEeaW46TWXHz9iw" y="10"/>
+            </children>
+            <styles xmi:type="notation:ConnectorStyle" xmi:id="_dYoQwT6kEeaW46TWXHz9iw" routing="Tree"/>
+            <styles xmi:type="notation:FontStyle" xmi:id="_dYoQwj6kEeaW46TWXHz9iw" fontName="Ubuntu" fontHeight="8"/>
+            <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dYoQwz6kEeaW46TWXHz9iw" points="[-1, -1, -191, 145]$[-1, -72, -191, 74]$[214, -72, 24, 74]$[214, -98, 24, 48]"/>
+            <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dYwzoD6kEeaW46TWXHz9iw" id="(0.8587570621468926,0.022988505747126436)"/>
+            <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dYwzoT6kEeaW46TWXHz9iw" id="(0.008333333333333333,0.52)"/>
+          </edges>
+          <edges xmi:type="notation:Edge" xmi:id="_dYxasD6kEeaW46TWXHz9iw" type="4001" element="_dYLk0D6kEeaW46TWXHz9iw" source="_reRv0AkkEeWFVOi_8hW2kQ" target="_dYa1YD6kEeaW46TWXHz9iw">
+            <children xmi:type="notation:Node" xmi:id="_dYyBwD6kEeaW46TWXHz9iw" type="6001">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dYyBwT6kEeaW46TWXHz9iw" y="-10"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_dYyo0D6kEeaW46TWXHz9iw" type="6002">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dYyo0T6kEeaW46TWXHz9iw" y="10"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_dYyo0j6kEeaW46TWXHz9iw" type="6003">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dYyo0z6kEeaW46TWXHz9iw" y="10"/>
+            </children>
+            <styles xmi:type="notation:ConnectorStyle" xmi:id="_dYxasT6kEeaW46TWXHz9iw" routing="Tree"/>
+            <styles xmi:type="notation:FontStyle" xmi:id="_dYxasj6kEeaW46TWXHz9iw" fontName="Ubuntu" fontHeight="8"/>
+            <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dYxasz6kEeaW46TWXHz9iw" points="[-1, -13, 72, 103]$[-1, -84, 72, 32]$[-99, -84, -26, 32]$[-99, -110, -26, 6]"/>
+            <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dYzP4D6kEeaW46TWXHz9iw" id="(0.16666666666666666,0.14)"/>
+            <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dYzP4T6kEeaW46TWXHz9iw" id="(0.9333333333333333,0.94)"/>
+          </edges>
+          <edges xmi:type="notation:Edge" xmi:id="_dYz28D6kEeaW46TWXHz9iw" type="4001" element="_dYREYD6kEeaW46TWXHz9iw" source="_G7VMwAkjEeWFVOi_8hW2kQ" target="_dYa1YD6kEeaW46TWXHz9iw">
+            <children xmi:type="notation:Node" xmi:id="_dY0eAD6kEeaW46TWXHz9iw" type="6001">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dY0eAT6kEeaW46TWXHz9iw" y="-10"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_dY1FED6kEeaW46TWXHz9iw" type="6002">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dY1FET6kEeaW46TWXHz9iw" x="-1" y="-20"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_dY1FEj6kEeaW46TWXHz9iw" type="6003">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dY1FEz6kEeaW46TWXHz9iw" x="-6" y="-46"/>
+            </children>
+            <styles xmi:type="notation:ConnectorStyle" xmi:id="_dYz28T6kEeaW46TWXHz9iw" routing="Rectilinear" jumpLinkStatus="Above"/>
+            <styles xmi:type="notation:FontStyle" xmi:id="_dYz28j6kEeaW46TWXHz9iw" fontName="Ubuntu" fontHeight="8"/>
+            <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dYz28z6kEeaW46TWXHz9iw" points="[88, 33, -134, 227]$[222, 33, 0, 227]$[222, -145, 0, 49]"/>
+            <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dY1sID6kEeaW46TWXHz9iw" id="(0.4971751412429379,0.4942528735632184)"/>
+            <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dY1sIT6kEeaW46TWXHz9iw" id="(0.5,0.5)"/>
+          </edges>
+          <edges xmi:type="notation:Edge" xmi:id="_hbcXUD-TEeatdPECk4x2fg" type="4001" element="_hat-kD-TEeatdPECk4x2fg" source="_reRv0AkkEeWFVOi_8hW2kQ" target="_hbHAID-TEeatdPECk4x2fg">
+            <children xmi:type="notation:Node" xmi:id="_hbezkD-TEeatdPECk4x2fg" type="6001">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hbezkT-TEeatdPECk4x2fg" x="14" y="-52"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_hbgBsD-TEeatdPECk4x2fg" type="6002">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hbgBsT-TEeatdPECk4x2fg" y="10"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_hbgowD-TEeatdPECk4x2fg" type="6003">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hbgowT-TEeatdPECk4x2fg" y="10"/>
+            </children>
+            <styles xmi:type="notation:ConnectorStyle" xmi:id="_hbcXUT-TEeatdPECk4x2fg" routing="Rectilinear" jumpLinkStatus="Above"/>
+            <styles xmi:type="notation:FontStyle" xmi:id="_hbcXUj-TEeatdPECk4x2fg" fontColor="7490599" fontName="Ubuntu" fontHeight="8"/>
+            <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_hbcXUz-TEeatdPECk4x2fg" points="[3, 49, -16, -166]$[3, 166, -16, -49]"/>
+            <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_hblhQD-TEeatdPECk4x2fg" id="(0.5,0.5)"/>
+            <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_hblhQT-TEeatdPECk4x2fg" id="(0.5,0.5)"/>
+          </edges>
+          <edges xmi:type="notation:Edge" xmi:id="_hbmIUD-TEeatdPECk4x2fg" type="4001" element="_ha6y4D-TEeatdPECk4x2fg" source="_KiL-sAkjEeWFVOi_8hW2kQ" target="_hbHAID-TEeatdPECk4x2fg">
+            <children xmi:type="notation:Node" xmi:id="_hbnWcD-TEeatdPECk4x2fg" type="6001">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hbnWcT-TEeatdPECk4x2fg" y="-10"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_hbnWcj-TEeatdPECk4x2fg" type="6002">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hbnWcz-TEeatdPECk4x2fg" y="10"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_hbn9gD-TEeatdPECk4x2fg" type="6003">
+              <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hbn9gT-TEeatdPECk4x2fg" y="10"/>
+            </children>
+            <styles xmi:type="notation:ConnectorStyle" xmi:id="_hbmIUT-TEeatdPECk4x2fg" routing="Rectilinear" jumpLinkStatus="Above"/>
+            <styles xmi:type="notation:FontStyle" xmi:id="_hbmIUj-TEeatdPECk4x2fg" fontName="Ubuntu" fontHeight="8"/>
+            <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_hbmIUz-TEeatdPECk4x2fg" points="[325, 85, 325, 85]$[913, 564, 913, 564]"/>
+            <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_hbokkD-TEeatdPECk4x2fg" id="(0.4971751412429379,0.4942528735632184)"/>
+            <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_hbokkT-TEeatdPECk4x2fg" id="(0.5,0.5)"/>
+          </edges>
+        </data>
+      </ownedAnnotationEntries>
+      <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_5tFNUQkjEeWFVOi_8hW2kQ" source="DANNOTATION_CUSTOMIZATION_KEY">
+        <data xmi:type="diagram:ComputedStyleDescriptionRegistry" xmi:id="_5tFNUgkjEeWFVOi_8hW2kQ">
+          <computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="_QQUsYgnKEeWATYXIsIrDKQ" labelFormat="bold" labelExpression="service:render" labelAlignment="LEFT" tooltipExpression="service:renderTooltip" sizeComputationExpression="1">
+            <borderColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            <color xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+          </computedStyleDescriptions>
+          <computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="_OWQyQgtdEeWH1PvRpPAbiQ" labelFormat="bold" labelExpression="service:render" labelAlignment="LEFT" tooltipExpression="service:renderTooltip" sizeComputationExpression="1">
+            <borderColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            <color xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+          </computedStyleDescriptions>
+          <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_VqPkEB_TEeWosIVuL4CkTA" sourceArrow="FillDiamond" sizeComputationExpression="1" routingStyle="manhattan">
+            <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            <beginLabelStyleDescription xmi:type="style:BeginLabelStyleDescription" xmi:id="_VqPkER_TEeWosIVuL4CkTA" showIcon="false" labelExpression="service:renderEOpposite">
+              <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            </beginLabelStyleDescription>
+            <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_VqPkEh_TEeWosIVuL4CkTA" showIcon="false" labelExpression="service:render">
+              <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            </endLabelStyleDescription>
+          </computedStyleDescriptions>
+          <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_dYSSgj6kEeaW46TWXHz9iw" sourceArrow="InputArrow" targetArrow="FillDiamond" sizeComputationExpression="1" routingStyle="manhattan">
+            <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            <beginLabelStyleDescription xmi:type="style:BeginLabelStyleDescription" xmi:id="_dYSSgz6kEeaW46TWXHz9iw" showIcon="false" labelExpression="service:renderEOpposite">
+              <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            </beginLabelStyleDescription>
+            <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_dYSShD6kEeaW46TWXHz9iw" showIcon="false" labelExpression="service:render">
+              <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            </endLabelStyleDescription>
+          </computedStyleDescriptions>
+          <computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="_hanQ4j-TEeatdPECk4x2fg" labelFormat="bold" labelExpression="service:render" labelAlignment="LEFT" tooltipExpression="service:renderTooltip" sizeComputationExpression="1">
+            <borderColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            <color xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+          </computedStyleDescriptions>
+          <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_havMsz-TEeatdPECk4x2fg" sourceArrow="FillDiamond" sizeComputationExpression="1" routingStyle="manhattan">
+            <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            <centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_havMtD-TEeatdPECk4x2fg" showIcon="false" labelExpression="service:render">
+              <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            </centerLabelStyleDescription>
+            <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_havzwD-TEeatdPECk4x2fg" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel">
+              <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/>
+            </endLabelStyleDescription>
+          </computedStyleDescriptions>
+          <computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="_HydMEMHWEeangZPFpBYoMg" labelFormat="bold" labelExpression="service:render" labelAlignment="LEFT" tooltipExpression="service:renderTooltip" sizeComputationExpression="1">
+            <borderColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+            <color xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+          </computedStyleDescriptions>
+          <cache xmi:type="diagram:DiagramElementMapping2ModelElement" xmi:id="_JZKEoAkkEeWFVOi_8hW2kQ">
+            <key xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
+            <value xmi:type="diagram:ModelElement2ViewVariable" xmi:id="_QQUsYAnKEeWATYXIsIrDKQ">
+              <key xmi:type="ecore:EAttribute" href="mapping.ecore#//Link/description"/>
+              <value xmi:type="diagram:ViewVariable2ContainerVariable" xmi:id="_QQUsYQnKEeWATYXIsIrDKQ" key="_8IbOYAkjEeWFVOi_8hW2kQ">
+                <value xmi:type="diagram:ContainerVariable2StyleDescription" xmi:id="_QQUsYwnKEeWATYXIsIrDKQ" value="_QQUsYgnKEeWATYXIsIrDKQ">
+                  <key xmi:type="ecore:EClass" href="mapping.ecore#//Link"/>
+                </value>
+              </value>
+            </value>
+            <value xmi:type="diagram:ModelElement2ViewVariable" xmi:id="_OWQyQAtdEeWH1PvRpPAbiQ">
+              <key xmi:type="ecore:EAttribute" href="mapping.ecore#//Base/name"/>
+              <value xmi:type="diagram:ViewVariable2ContainerVariable" xmi:id="_OWQyQQtdEeWH1PvRpPAbiQ" key="_Lq_e0AtdEeWH1PvRpPAbiQ">
+                <value xmi:type="diagram:ContainerVariable2StyleDescription" xmi:id="_OWW44AtdEeWH1PvRpPAbiQ" value="_OWQyQgtdEeWH1PvRpPAbiQ">
+                  <key xmi:type="ecore:EClass" href="mapping.ecore#//Base"/>
+                </value>
+              </value>
+            </value>
+            <value xmi:type="diagram:ModelElement2ViewVariable" xmi:id="_hanQ4D-TEeatdPECk4x2fg">
+              <key xmi:type="ecore:EAttribute" href="mapping.ecore#//Report/description"/>
+              <value xmi:type="diagram:ViewVariable2ContainerVariable" xmi:id="_hanQ4T-TEeatdPECk4x2fg" key="_hamCwD-TEeatdPECk4x2fg">
+                <value xmi:type="diagram:ContainerVariable2StyleDescription" xmi:id="_han38D-TEeatdPECk4x2fg" value="_hanQ4j-TEeatdPECk4x2fg">
+                  <key xmi:type="ecore:EClass" href="mapping.ecore#//Report"/>
+                </value>
+              </value>
+            </value>
+            <value xmi:type="diagram:ModelElement2ViewVariable" xmi:id="_HyclAMHWEeangZPFpBYoMg">
+              <key xmi:type="ecore:EAttribute" href="mapping.ecore#//Location/markedAsDeleted"/>
+              <value xmi:type="diagram:ViewVariable2ContainerVariable" xmi:id="_HyclAcHWEeangZPFpBYoMg" key="_Hyav0MHWEeangZPFpBYoMg">
+                <value xmi:type="diagram:ContainerVariable2StyleDescription" xmi:id="_HydMEcHWEeangZPFpBYoMg" value="_HydMEMHWEeangZPFpBYoMg">
+                  <key xmi:type="ecore:EClass" href="mapping.ecore#//Location"/>
+                </value>
+              </value>
+            </value>
+          </cache>
+          <cache xmi:type="diagram:DiagramElementMapping2ModelElement" xmi:id="_O1hX8AkqEeWFVOi_8hW2kQ">
+            <key xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
+            <value xmi:type="diagram:ModelElement2ViewVariable" xmi:id="_6Bfp0AtiEeWH1PvRpPAbiQ">
+              <key xmi:type="ecore:EReference" href="mapping.ecore#//Location/targetLinks"/>
+              <value xmi:type="diagram:ViewVariable2ContainerVariable" xmi:id="_6Bfp0QtiEeWH1PvRpPAbiQ" key="_spw2EAklEeWFVOi_8hW2kQ">
+                <value xmi:type="diagram:ContainerVariable2StyleDescription" xmi:id="_6Bfp1QtiEeWH1PvRpPAbiQ" value="_VqPkEB_TEeWosIVuL4CkTA">
+                  <key xmi:type="ecore:EPackage" href="mapping.ecore#/"/>
+                </value>
+              </value>
+            </value>
+            <value xmi:type="diagram:ModelElement2ViewVariable" xmi:id="_dYSSgD6kEeaW46TWXHz9iw">
+              <key xmi:type="ecore:EReference" href="mapping.ecore#//Location/container"/>
+              <value xmi:type="diagram:ViewVariable2ContainerVariable" xmi:id="_dYSSgT6kEeaW46TWXHz9iw" key="_dYREYD6kEeaW46TWXHz9iw">
+                <value xmi:type="diagram:ContainerVariable2StyleDescription" xmi:id="_dYSShT6kEeaW46TWXHz9iw" value="_dYSSgj6kEeaW46TWXHz9iw">
+                  <key xmi:type="ecore:EPackage" href="mapping.ecore#/"/>
+                </value>
+              </value>
+            </value>
+          </cache>
+          <cache xmi:type="diagram:DiagramElementMapping2ModelElement" xmi:id="_havMsD-TEeatdPECk4x2fg">
+            <key xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
+            <value xmi:type="diagram:ModelElement2ViewVariable" xmi:id="_havMsT-TEeatdPECk4x2fg">
+              <key xmi:type="ecore:EReference" href="mapping.ecore#//Base/reports"/>
+              <value xmi:type="diagram:ViewVariable2ContainerVariable" xmi:id="_havMsj-TEeatdPECk4x2fg" key="_hat-kD-TEeatdPECk4x2fg">
+                <value xmi:type="diagram:ContainerVariable2StyleDescription" xmi:id="_havzwT-TEeatdPECk4x2fg" value="_havMsz-TEeatdPECk4x2fg">
+                  <key xmi:type="ecore:EPackage" href="mapping.ecore#/"/>
+                </value>
+              </value>
+            </value>
+          </cache>
+        </data>
+      </ownedAnnotationEntries>
+      <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_G61dgAkjEeWFVOi_8hW2kQ" name="Location" tooltipText="" outgoingEdges="_rhFWwAklEeWFVOi_8hW2kQ _spw2EAklEeWFVOi_8hW2kQ _dYJIkD6kEeaW46TWXHz9iw _dYREYD6kEeaW46TWXHz9iw" width="12" height="10">
+        <target xmi:type="ecore:EClass" href="mapping.ecore#//Location"/>
+        <semanticElements xmi:type="ecore:EClass" href="mapping.ecore#//Location"/>
+        <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
+        <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
+        <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
+        <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_TiU2QCCMEeWW2MIM32qjYw" labelFormat="italic" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" backgroundStyle="Liquid">
+          <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_TiU2QSCMEeWW2MIM32qjYw"/>
+          <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
+          <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_TiU2QiCMEeWW2MIM32qjYw" red="125" green="125" blue="125"/>
+          <backgroundColor xmi:type="viewpoint:RGBValues" xmi:id="_TiU2QyCMEeWW2MIM32qjYw" red="255" green="255" blue="255"/>
+          <foregroundColor xmi:type="viewpoint:RGBValues" xmi:id="_TiU2RCCMEeWW2MIM32qjYw" red="228" green="228" blue="228"/>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
+        <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_a8u2ED6kEeaW46TWXHz9iw" name="type : Type" tooltipText="">
+          <target xmi:type="ecore:EAttribute" href="mapping.ecore#//Location/type"/>
+          <semanticElements xmi:type="ecore:EAttribute" href="mapping.ecore#//Location/type"/>
+          <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_a8xSUD6kEeaW46TWXHz9iw" labelAlignment="LEFT">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_a8xSUT6kEeaW46TWXHz9iw"/>
+            <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/>
+            <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_a8xSUj6kEeaW46TWXHz9iw"/>
+            <color xmi:type="viewpoint:RGBValues" xmi:id="_a8x5YD6kEeaW46TWXHz9iw"/>
+          </ownedStyle>
+          <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
+        </ownedElements>
+        <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_Hyav0MHWEeangZPFpBYoMg" name="markedAsDeleted : EBoolean = false" tooltipText="">
+          <target xmi:type="ecore:EAttribute" href="mapping.ecore#//Location/markedAsDeleted"/>
+          <semanticElements xmi:type="ecore:EAttribute" href="mapping.ecore#//Location/markedAsDeleted"/>
+          <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_HydzIMHWEeangZPFpBYoMg" labelFormat="bold" labelAlignment="LEFT" description="_HydMEMHWEeangZPFpBYoMg">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_HydzIcHWEeangZPFpBYoMg"/>
+            <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_HydzIsHWEeangZPFpBYoMg"/>
+            <color xmi:type="viewpoint:RGBValues" xmi:id="_HydzI8HWEeangZPFpBYoMg"/>
+          </ownedStyle>
+          <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
+        </ownedElements>
+      </ownedDiagramElements>
+      <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_Kh_xcAkjEeWFVOi_8hW2kQ" name="Link" tooltipText="" outgoingEdges="_ha6y4D-TEeatdPECk4x2fg" incomingEdges="_rhFWwAklEeWFVOi_8hW2kQ _spw2EAklEeWFVOi_8hW2kQ" width="12" height="10">
+        <target xmi:type="ecore:EClass" href="mapping.ecore#//Link"/>
+        <semanticElements xmi:type="ecore:EClass" href="mapping.ecore#//Link"/>
+        <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
+        <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
+        <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
+        <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_Vp6z8B_TEeWosIVuL4CkTA" backgroundStyle="Liquid">
+          <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_Vp6z8R_TEeWosIVuL4CkTA"/>
+          <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
+          <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_Vp6z8h_TEeWosIVuL4CkTA"/>
+          <backgroundColor xmi:type="viewpoint:RGBValues" xmi:id="_Vp6z8x_TEeWosIVuL4CkTA" red="255" green="255" blue="255"/>
+          <foregroundColor xmi:type="viewpoint:RGBValues" xmi:id="_Vp6z9B_TEeWosIVuL4CkTA" red="255" green="252" blue="216"/>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
+        <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_8IbOYAkjEeWFVOi_8hW2kQ" name="description : EString" tooltipText="">
+          <target xmi:type="ecore:EAttribute" href="mapping.ecore#//Link/description"/>
+          <semanticElements xmi:type="ecore:EAttribute" href="mapping.ecore#//Link/description"/>
+          <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_QQUsZAnKEeWATYXIsIrDKQ" labelFormat="bold" labelAlignment="LEFT" description="_QQUsYgnKEeWATYXIsIrDKQ">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_QQUsZQnKEeWATYXIsIrDKQ"/>
+            <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_QQUsZgnKEeWATYXIsIrDKQ"/>
+            <color xmi:type="viewpoint:RGBValues" xmi:id="_QQUsZwnKEeWATYXIsIrDKQ"/>
+          </ownedStyle>
+          <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
+        </ownedElements>
+        <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_a82x4D6kEeaW46TWXHz9iw" name="type : Type" tooltipText="">
+          <target xmi:type="ecore:EAttribute" href="mapping.ecore#//Link/type"/>
+          <semanticElements xmi:type="ecore:EAttribute" href="mapping.ecore#//Link/type"/>
+          <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_a84AAD6kEeaW46TWXHz9iw" labelAlignment="LEFT">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_a84AAT6kEeaW46TWXHz9iw"/>
+            <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/>
+            <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_a84AAj6kEeaW46TWXHz9iw"/>
+            <color xmi:type="viewpoint:RGBValues" xmi:id="_a84AAz6kEeaW46TWXHz9iw"/>
+          </ownedStyle>
+          <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
+        </ownedElements>
+      </ownedDiagramElements>
+      <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_rdzOsAkkEeWFVOi_8hW2kQ" name="Base" tooltipText="" outgoingEdges="_dYLk0D6kEeaW46TWXHz9iw _hat-kD-TEeatdPECk4x2fg" width="12" height="10">
+        <target xmi:type="ecore:EClass" href="mapping.ecore#//Base"/>
+        <semanticElements xmi:type="ecore:EClass" href="mapping.ecore#//Base"/>
+        <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
+        <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
+        <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
+        <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_Vp8CEB_TEeWosIVuL4CkTA" backgroundStyle="Liquid">
+          <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_Vp8CER_TEeWosIVuL4CkTA"/>
+          <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
+          <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_Vp8CEh_TEeWosIVuL4CkTA"/>
+          <backgroundColor xmi:type="viewpoint:RGBValues" xmi:id="_Vp8CEx_TEeWosIVuL4CkTA" red="255" green="255" blue="255"/>
+          <foregroundColor xmi:type="viewpoint:RGBValues" xmi:id="_Vp8CFB_TEeWosIVuL4CkTA" red="255" green="252" blue="216"/>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
+        <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_Lq_e0AtdEeWH1PvRpPAbiQ" name="name : EString" tooltipText="">
+          <target xmi:type="ecore:EAttribute" href="mapping.ecore#//Base/name"/>
+          <semanticElements xmi:type="ecore:EAttribute" href="mapping.ecore#//Base/name"/>
+          <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_OWW44QtdEeWH1PvRpPAbiQ" labelFormat="bold" labelAlignment="LEFT" description="_OWQyQgtdEeWH1PvRpPAbiQ">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_OWW44gtdEeWH1PvRpPAbiQ"/>
+            <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_OWW44wtdEeWH1PvRpPAbiQ"/>
+            <color xmi:type="viewpoint:RGBValues" xmi:id="_OWW45AtdEeWH1PvRpPAbiQ"/>
+          </ownedStyle>
+          <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
+        </ownedElements>
+      </ownedDiagramElements>
+      <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_rhFWwAklEeWFVOi_8hW2kQ" sourceNode="_G61dgAkjEeWFVOi_8hW2kQ" targetNode="_Kh_xcAkjEeWFVOi_8hW2kQ" beginLabel="[1..1] target" endLabel="[0..*] sourceLinks">
+        <target xmi:type="ecore:EReference" href="mapping.ecore#//Location/sourceLinks"/>
+        <semanticElements xmi:type="ecore:EReference" href="mapping.ecore#//Location/sourceLinks"/>
+        <semanticElements xmi:type="ecore:EReference" href="mapping.ecore#//Link/target"/>
+        <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_VqQyMB_TEeWosIVuL4CkTA" sourceArrow="InputArrow" routingStyle="manhattan">
+          <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']/@style"/>
+          <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_VqQyMR_TEeWosIVuL4CkTA"/>
+          <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_VqQyMh_TEeWosIVuL4CkTA" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_VqQyMx_TEeWosIVuL4CkTA"/>
+          </beginLabelStyle>
+          <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_VqQyNB_TEeWosIVuL4CkTA" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_VqQyNR_TEeWosIVuL4CkTA"/>
+          </endLabelStyle>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
+      </ownedDiagramElements>
+      <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_spw2EAklEeWFVOi_8hW2kQ" sourceNode="_G61dgAkjEeWFVOi_8hW2kQ" targetNode="_Kh_xcAkjEeWFVOi_8hW2kQ" beginLabel="[1..1] source" endLabel="[0..*] targetLinks">
+        <target xmi:type="ecore:EReference" href="mapping.ecore#//Location/targetLinks"/>
+        <semanticElements xmi:type="ecore:EReference" href="mapping.ecore#//Link/source"/>
+        <semanticElements xmi:type="ecore:EReference" href="mapping.ecore#//Location/targetLinks"/>
+        <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_VqQLIB_TEeWosIVuL4CkTA" description="_VqPkEB_TEeWosIVuL4CkTA" sourceArrow="FillDiamond" routingStyle="manhattan">
+          <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_VqQLIR_TEeWosIVuL4CkTA"/>
+          <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_VqQLIh_TEeWosIVuL4CkTA" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_VqQLIx_TEeWosIVuL4CkTA"/>
+          </beginLabelStyle>
+          <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_VqQLJB_TEeWosIVuL4CkTA" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_VqQLJR_TEeWosIVuL4CkTA"/>
+          </endLabelStyle>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
+      </ownedDiagramElements>
+      <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_dXUCID6kEeaW46TWXHz9iw" name="LocationContainer" tooltipText="" incomingEdges="_dYJIkD6kEeaW46TWXHz9iw _dYLk0D6kEeaW46TWXHz9iw _dYREYD6kEeaW46TWXHz9iw" width="12" height="10">
+        <target xmi:type="ecore:EClass" href="mapping.ecore#//LocationContainer"/>
+        <semanticElements xmi:type="ecore:EClass" href="mapping.ecore#//LocationContainer"/>
+        <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
+        <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
+        <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
+        <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_dXVQQD6kEeaW46TWXHz9iw" labelFormat="italic" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_interface.gif" backgroundStyle="Liquid">
+          <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_dXVQQT6kEeaW46TWXHz9iw"/>
+          <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.0/@style"/>
+          <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_dXVQQj6kEeaW46TWXHz9iw" red="125" green="125" blue="125"/>
+          <backgroundColor xmi:type="viewpoint:RGBValues" xmi:id="_dXVQQz6kEeaW46TWXHz9iw" red="255" green="255" blue="255"/>
+          <foregroundColor xmi:type="viewpoint:RGBValues" xmi:id="_dXVQRD6kEeaW46TWXHz9iw" red="228" green="228" blue="228"/>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
+      </ownedDiagramElements>
+      <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_dYJIkD6kEeaW46TWXHz9iw" sourceNode="_G61dgAkjEeWFVOi_8hW2kQ" targetNode="_dXUCID6kEeaW46TWXHz9iw">
+        <target xmi:type="ecore:EClass" href="mapping.ecore#//Location"/>
+        <semanticElements xmi:type="ecore:EGenericType" href="mapping.ecore#//Location/@eGenericSuperTypes.0"/>
+        <semanticElements xmi:type="ecore:EGenericType" href="mapping.ecore#//Location/@eGenericSuperTypes.1"/>
+        <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_dYK9wD6kEeaW46TWXHz9iw" lineStyle="dash" targetArrow="InputClosedArrow" routingStyle="tree">
+          <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@conditionnalStyles.0/@style"/>
+          <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_dYK9wT6kEeaW46TWXHz9iw" red="136" green="136" blue="136"/>
+          <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_dYK9wj6kEeaW46TWXHz9iw" labelFormat="italic" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_dYK9wz6kEeaW46TWXHz9iw"/>
+          </beginLabelStyle>
+          <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_dYK9xD6kEeaW46TWXHz9iw" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_dYK9xT6kEeaW46TWXHz9iw"/>
+          </centerLabelStyle>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
+      </ownedDiagramElements>
+      <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_dYLk0D6kEeaW46TWXHz9iw" sourceNode="_rdzOsAkkEeWFVOi_8hW2kQ" targetNode="_dXUCID6kEeaW46TWXHz9iw">
+        <target xmi:type="ecore:EClass" href="mapping.ecore#//Base"/>
+        <semanticElements xmi:type="ecore:EGenericType" href="mapping.ecore#//Base/@eGenericSuperTypes.0"/>
+        <semanticElements xmi:type="ecore:EGenericType" href="mapping.ecore#//Base/@eGenericSuperTypes.1"/>
+        <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_dYMy8D6kEeaW46TWXHz9iw" lineStyle="dash" targetArrow="InputClosedArrow" routingStyle="tree">
+          <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@conditionnalStyles.0/@style"/>
+          <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_dYMy8T6kEeaW46TWXHz9iw" red="136" green="136" blue="136"/>
+          <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_dYMy8j6kEeaW46TWXHz9iw" labelFormat="italic" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_dYMy8z6kEeaW46TWXHz9iw"/>
+          </beginLabelStyle>
+          <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_dYMy9D6kEeaW46TWXHz9iw" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_dYMy9T6kEeaW46TWXHz9iw"/>
+          </centerLabelStyle>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
+      </ownedDiagramElements>
+      <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_dYREYD6kEeaW46TWXHz9iw" sourceNode="_G61dgAkjEeWFVOi_8hW2kQ" targetNode="_dXUCID6kEeaW46TWXHz9iw" beginLabel="[0..*] contents" endLabel="[0..1] container">
+        <target xmi:type="ecore:EReference" href="mapping.ecore#//Location/container"/>
+        <semanticElements xmi:type="ecore:EReference" href="mapping.ecore#//Location/container"/>
+        <semanticElements xmi:type="ecore:EReference" href="mapping.ecore#//LocationContainer/contents"/>
+        <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_dYS5kD6kEeaW46TWXHz9iw" description="_dYSSgj6kEeaW46TWXHz9iw" sourceArrow="InputArrow" targetArrow="FillDiamond" routingStyle="manhattan">
+          <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_dYS5kT6kEeaW46TWXHz9iw"/>
+          <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_dYS5kj6kEeaW46TWXHz9iw" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_dYS5kz6kEeaW46TWXHz9iw"/>
+          </beginLabelStyle>
+          <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_dYS5lD6kEeaW46TWXHz9iw" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_dYS5lT6kEeaW46TWXHz9iw"/>
+          </endLabelStyle>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
+      </ownedDiagramElements>
+      <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_hZcMMD-TEeatdPECk4x2fg" name="Report" tooltipText="" incomingEdges="_hat-kD-TEeatdPECk4x2fg _ha6y4D-TEeatdPECk4x2fg" width="12" height="10">
+        <target xmi:type="ecore:EClass" href="mapping.ecore#//Report"/>
+        <semanticElements xmi:type="ecore:EClass" href="mapping.ecore#//Report"/>
+        <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
+        <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
+        <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
+        <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_hZeBYD-TEeatdPECk4x2fg" backgroundStyle="Liquid">
+          <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_hZeBYT-TEeatdPECk4x2fg"/>
+          <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
+          <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_hZeBYj-TEeatdPECk4x2fg"/>
+          <backgroundColor xmi:type="viewpoint:RGBValues" xmi:id="_hZeBYz-TEeatdPECk4x2fg" red="255" green="255" blue="255"/>
+          <foregroundColor xmi:type="viewpoint:RGBValues" xmi:id="_hZeBZD-TEeatdPECk4x2fg" red="255" green="252" blue="216"/>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
+        <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_hamCwD-TEeatdPECk4x2fg" name="description : EString" tooltipText="">
+          <target xmi:type="ecore:EAttribute" href="mapping.ecore#//Report/description"/>
+          <semanticElements xmi:type="ecore:EAttribute" href="mapping.ecore#//Report/description"/>
+          <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_haofAD-TEeatdPECk4x2fg" labelFormat="bold" labelAlignment="LEFT" description="_hanQ4j-TEeatdPECk4x2fg">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_haofAT-TEeatdPECk4x2fg"/>
+            <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_haofAj-TEeatdPECk4x2fg"/>
+            <color xmi:type="viewpoint:RGBValues" xmi:id="_haofAz-TEeatdPECk4x2fg"/>
+          </ownedStyle>
+          <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
+        </ownedElements>
+      </ownedDiagramElements>
+      <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_hat-kD-TEeatdPECk4x2fg" name="[0..*] reports" sourceNode="_rdzOsAkkEeWFVOi_8hW2kQ" targetNode="_hZcMMD-TEeatdPECk4x2fg">
+        <target xmi:type="ecore:EReference" href="mapping.ecore#//Base/reports"/>
+        <semanticElements xmi:type="ecore:EReference" href="mapping.ecore#//Base/reports"/>
+        <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_havzwj-TEeatdPECk4x2fg" description="_havMsz-TEeatdPECk4x2fg" sourceArrow="FillDiamond" routingStyle="manhattan">
+          <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_havzwz-TEeatdPECk4x2fg"/>
+          <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_havzxD-TEeatdPECk4x2fg" showIcon="false">
+            <customFeatures>labelSize</customFeatures>
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_havzxT-TEeatdPECk4x2fg"/>
+          </centerLabelStyle>
+          <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_havzxj-TEeatdPECk4x2fg" showIcon="false">
+            <customFeatures>labelSize</customFeatures>
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_havzxz-TEeatdPECk4x2fg" red="39" green="76" blue="114"/>
+          </endLabelStyle>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
+      </ownedDiagramElements>
+      <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_ha6y4D-TEeatdPECk4x2fg" sourceNode="_Kh_xcAkjEeWFVOi_8hW2kQ" targetNode="_hZcMMD-TEeatdPECk4x2fg" beginLabel="[1..1] link" endLabel="[0..*] reports">
+        <target xmi:type="ecore:EReference" href="mapping.ecore#//Link/reports"/>
+        <semanticElements xmi:type="ecore:EReference" href="mapping.ecore#//Report/link"/>
+        <semanticElements xmi:type="ecore:EReference" href="mapping.ecore#//Link/reports"/>
+        <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_ha7Z8D-TEeatdPECk4x2fg" sourceArrow="InputArrow" routingStyle="manhattan">
+          <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']/@style"/>
+          <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_ha7Z8T-TEeatdPECk4x2fg"/>
+          <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_ha7Z8j-TEeatdPECk4x2fg" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_ha7Z8z-TEeatdPECk4x2fg"/>
+          </beginLabelStyle>
+          <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_ha7Z9D-TEeatdPECk4x2fg" showIcon="false">
+            <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_ha7Z9T-TEeatdPECk4x2fg"/>
+          </endLabelStyle>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
+      </ownedDiagramElements>
+      <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/>
+      <filterVariableHistory xmi:type="diagram:FilterVariableHistory" xmi:id="_yuNMJQkiEeWFVOi_8hW2kQ"/>
+      <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/>
+      <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/>
+      <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/>
+      <target xmi:type="ecore:EPackage" href="mapping.ecore#/"/>
+    </ownedRepresentations>
+    <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']"/>
+  </ownedViews>
+  <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_W4nUYN0nEeSrTZVsNOV2JQ" initialized="true">
+    <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Archetype']"/>
+  </ownedViews>
+</viewpoint:DAnalysis>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/plugin.properties b/mapping/plugins/org.eclipse.intent.mapping.emf/plugin.properties
new file mode 100644
index 0000000..d357604
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/plugin.properties
@@ -0,0 +1,4 @@
+#
+
+pluginName = Mapping Model
+providerName = www.example.org
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/plugin.xml b/mapping/plugins/org.eclipse.intent.mapping.emf/plugin.xml
new file mode 100644
index 0000000..97e86f2
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/plugin.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+-->
+
+<plugin>
+
+   <extension point="org.eclipse.emf.ecore.generated_package">
+      <!-- @generated mapping -->
+      <package
+            uri="http://www.eclipse.org/intent/mapping"
+            class="org.eclipse.intent.mapping.MappingPackage"
+            genModel="model/mapping.genmodel"/>
+   </extension>
+
+</plugin>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/pom.xml b/mapping/plugins/org.eclipse.intent.mapping.emf/pom.xml
new file mode 100644
index 0000000..c0ffe14
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/pom.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping.emf</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-plugin</packaging>
+
+  <name>Mapping EMF</name>
+
+  <build>
+   <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-source-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+  
+</project>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Base.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Base.java
new file mode 100644
index 0000000..f1deced
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Base.java
@@ -0,0 +1,77 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Base</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.Base#getRootLocations <em>Root Locations</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Base#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getBase()
+ * @model
+ * @generated NOT
+ */
+public interface Base extends IEMFBaseElement, LocationContainer, IBase {
+	/**
+	 * Returns the value of the '<em><b>Root Locations</b></em>' containment reference list. The list contents
+	 * are of type {@link org.eclipse.intent.mapping.Location}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Root Locations</em>' containment reference list isn't clear, there really
+	 * should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Root Locations</em>' containment reference list.
+	 * @see org.eclipse.intent.mapping.MappingPackage#getBase_RootLocations()
+	 * @model containment="true"
+	 * @generated NOT
+	 */
+	EList<ILocation> getContents();
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getBase_Name()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.Base#getName <em>Name</em>}' attribute. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+} // Base
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOBinaryResourceLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOBinaryResourceLocation.java
new file mode 100644
index 0000000..d8eea6f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOBinaryResourceLocation.java
@@ -0,0 +1,26 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.intent.mapping.emf.ICDOBinaryResourceLocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>CDO Binary Resource
+ * Location</b></em>'. <!-- end-user-doc -->
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getCDOBinaryResourceLocation()
+ * @model
+ * @generated NOT
+ */
+public interface CDOBinaryResourceLocation extends CDOFileLocation, ICDOBinaryResourceLocation {
+} // CDOBinaryResourceLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOFileLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOFileLocation.java
new file mode 100644
index 0000000..9903c56
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOFileLocation.java
@@ -0,0 +1,24 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>CDO File Location</b></em>'. <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getCDOFileLocation()
+ * @model interface="true" abstract="true"
+ * @generated
+ */
+public interface CDOFileLocation extends CDOResourceNodeLocation {
+} // CDOFileLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOFolderLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOFolderLocation.java
new file mode 100644
index 0000000..b7276c8
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOFolderLocation.java
@@ -0,0 +1,26 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.intent.mapping.emf.ICDOFolderLocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>CDO Folder Location</b></em>'. <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getCDOFolderLocation()
+ * @model
+ * @generated NOT
+ */
+public interface CDOFolderLocation extends CDOResourceNodeLocation, ICDOFolderLocation {
+} // CDOFolderLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDORepositoryLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDORepositoryLocation.java
new file mode 100644
index 0000000..f1acf1a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDORepositoryLocation.java
@@ -0,0 +1,143 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.intent.mapping.emf.ICDORepositoryLocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>CDO Repository Location</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.CDORepositoryLocation#getURL <em>URL</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.CDORepositoryLocation#getUUID <em>UUID</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.CDORepositoryLocation#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.CDORepositoryLocation#getBranchID <em>Branch ID</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getCDORepositoryLocation()
+ * @model
+ * @generated NOT
+ */
+public interface CDORepositoryLocation extends Location, ICDORepositoryLocation {
+	/**
+	 * Returns the value of the '<em><b>URL</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>URL</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>URL</em>' attribute.
+	 * @see #setURL(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getCDORepositoryLocation_URL()
+	 * @model
+	 * @generated
+	 */
+	String getURL();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.CDORepositoryLocation#getURL <em>URL</em>}'
+	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>URL</em>' attribute.
+	 * @see #getURL()
+	 * @generated
+	 */
+	void setURL(String value);
+
+	/**
+	 * Returns the value of the '<em><b>UUID</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>UUID</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>UUID</em>' attribute.
+	 * @see #setUUID(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getCDORepositoryLocation_UUID()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getUUID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.CDORepositoryLocation#getUUID <em>UUID</em>}'
+	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>UUID</em>' attribute.
+	 * @see #getUUID()
+	 * @generated
+	 */
+	void setUUID(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getCDORepositoryLocation_Name()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.CDORepositoryLocation#getName <em>Name</em>}'
+	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Branch ID</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Branch ID</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Branch ID</em>' attribute.
+	 * @see #setBranchID(int)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getCDORepositoryLocation_BranchID()
+	 * @model required="true"
+	 * @generated
+	 */
+	int getBranchID();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.CDORepositoryLocation#getBranchID <em>Branch
+	 * ID</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Branch ID</em>' attribute.
+	 * @see #getBranchID()
+	 * @generated
+	 */
+	void setBranchID(int value);
+
+} // CDORepositoryLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOResourceLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOResourceLocation.java
new file mode 100644
index 0000000..d05f562
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOResourceLocation.java
@@ -0,0 +1,26 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.intent.mapping.emf.ICDOResourceLocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>CDO Resource Location</b></em>'. <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getCDOResourceLocation()
+ * @model
+ * @generated NOT
+ */
+public interface CDOResourceLocation extends CDOFileLocation, EObjectContainer, ICDOResourceLocation {
+} // CDOResourceLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOResourceNodeLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOResourceNodeLocation.java
new file mode 100644
index 0000000..dea24f1
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOResourceNodeLocation.java
@@ -0,0 +1,57 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>CDO Resource Node Location</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.CDOResourceNodeLocation#getPath <em>Path</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getCDOResourceNodeLocation()
+ * @model interface="true" abstract="true"
+ * @generated
+ */
+public interface CDOResourceNodeLocation extends Location {
+	/**
+	 * Returns the value of the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Path</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Path</em>' attribute.
+	 * @see #setPath(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getCDOResourceNodeLocation_Path()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getPath();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.CDOResourceNodeLocation#getPath
+	 * <em>Path</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Path</em>' attribute.
+	 * @see #getPath()
+	 * @generated
+	 */
+	void setPath(String value);
+
+} // CDOResourceNodeLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOTextResourceLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOTextResourceLocation.java
new file mode 100644
index 0000000..f7cbe37
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/CDOTextResourceLocation.java
@@ -0,0 +1,26 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.intent.mapping.emf.ICDOTextResourceLocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>CDO Text Resource Location</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getCDOTextResourceLocation()
+ * @model
+ * @generated NOT
+ */
+public interface CDOTextResourceLocation extends CDOFileLocation, TextContainer, ICDOTextResourceLocation {
+} // CDOTextResourceLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Couple.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Couple.java
new file mode 100644
index 0000000..2f748bd
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Couple.java
@@ -0,0 +1,89 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.emf.cdo.CDOObject;
+import org.eclipse.intent.mapping.emf.ICouple;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Couple</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.Couple#getKey <em>Key</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Couple#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getCouple()
+ * @model
+ * @extends CDOObject
+ * @generated NOT
+ */
+public interface Couple extends CDOObject, ICouple {
+	/**
+	 * Returns the value of the '<em><b>Key</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Key</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Key</em>' attribute.
+	 * @see #setKey(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getCouple_Key()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getKey();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.Couple#getKey <em>Key</em>}' attribute. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Key</em>' attribute.
+	 * @see #getKey()
+	 * @generated
+	 */
+	void setKey(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getCouple_Value()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.Couple#getValue <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Value</em>' attribute.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(String value);
+
+} // Couple
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/EObjectContainer.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/EObjectContainer.java
new file mode 100644
index 0000000..e40d38c
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/EObjectContainer.java
@@ -0,0 +1,80 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import java.util.List;
+
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.eclipse.intent.mapping.emf.IEObjectContainer;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>EObject Container</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.EObjectContainer#getXMIContent <em>XMI Content</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.EObjectContainer#getSavedURIFragments <em>Saved URI
+ * Fragments</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getEObjectContainer()
+ * @model interface="true" abstract="true"
+ * @generated NOT
+ */
+public interface EObjectContainer extends Location, IEObjectContainer {
+	/**
+	 * Returns the value of the '<em><b>XMI Content</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>XMI Content</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>XMI Content</em>' attribute.
+	 * @see #setXMIContent(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getEObjectContainer_XMIContent()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getXMIContent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.EObjectContainer#getXMIContent <em>XMI
+	 * Content</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>XMI Content</em>' attribute.
+	 * @see #getXMIContent()
+	 * @generated
+	 */
+	void setXMIContent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Saved URI Fragments</b></em>' containment reference list. The list
+	 * contents are of type {@link org.eclipse.intent.mapping.Couple}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Saved URI Fragments</em>' containment reference list isn't clear, there
+	 * really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Saved URI Fragments</em>' containment reference list.
+	 * @see org.eclipse.intent.mapping.MappingPackage#getEObjectContainer_SavedURIFragments()
+	 * @model containment="true"
+	 * @generated NOT
+	 */
+	List<ICouple> getSavedURIFragments();
+
+} // EObjectContainer
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/EObjectLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/EObjectLocation.java
new file mode 100644
index 0000000..cb6f6ea
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/EObjectLocation.java
@@ -0,0 +1,116 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.intent.mapping.emf.IEObjectLocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>EObject Location</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.EObjectLocation#getURIFragment <em>URI Fragment</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.EObjectLocation#getFeatureName <em>Feature Name</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.EObjectLocation#getIndex <em>Index</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getEObjectLocation()
+ * @model
+ * @generated NOT
+ */
+public interface EObjectLocation extends Location, IEObjectLocation {
+	/**
+	 * Returns the value of the '<em><b>URI Fragment</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>URI Fragment</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>URI Fragment</em>' attribute.
+	 * @see #setURIFragment(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getEObjectLocation_URIFragment()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getURIFragment();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.EObjectLocation#getURIFragment <em>URI
+	 * Fragment</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>URI Fragment</em>' attribute.
+	 * @see #getURIFragment()
+	 * @generated
+	 */
+	void setURIFragment(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Feature Name</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Setting</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Feature Name</em>' attribute.
+	 * @see #setFeatureName(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getEObjectLocation_FeatureName()
+	 * @model
+	 * @generated
+	 */
+	String getFeatureName();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.EObjectLocation#getFeatureName <em>Feature
+	 * Name</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Feature Name</em>' attribute.
+	 * @see #getFeatureName()
+	 * @generated
+	 */
+	void setFeatureName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Index</b></em>' attribute. The default value is <code>"0"</code>. <!--
+	 * begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Index</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Index</em>' attribute.
+	 * @see #setIndex(int)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getEObjectLocation_Index()
+	 * @model default="0" required="true"
+	 * @generated
+	 */
+	int getIndex();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.EObjectLocation#getIndex <em>Index</em>}'
+	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Index</em>' attribute.
+	 * @see #getIndex()
+	 * @generated
+	 */
+	void setIndex(int value);
+
+} // EObjectLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/IEMFBaseElement.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/IEMFBaseElement.java
new file mode 100644
index 0000000..3f643a7
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/IEMFBaseElement.java
@@ -0,0 +1,27 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.intent.mapping.base.IMappingElement;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>IBase Element</b></em>'. <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getIBaseElement()
+ * @model interface="true" abstract="true"
+ * @generated NOT
+ */
+public interface IEMFBaseElement extends EObject, IMappingElement {
+} // IEMFBaseElement
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Link.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Link.java
new file mode 100644
index 0000000..1dc5297
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Link.java
@@ -0,0 +1,123 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Link</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.Link#getStatus <em>Status</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Link#getDescription <em>Description</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Link#getSource <em>Source</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Link#getTarget <em>Target</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getLink()
+ * @model
+ * @generated NOT
+ */
+public interface Link extends IEMFBaseElement, ILink {
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Description</em>' attribute.
+	 * @see #setDescription(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getLink_Description()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.Link#getDescription <em>Description</em>}'
+	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Description</em>' attribute.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Source</b></em>' container reference. It is bidirectional and its
+	 * opposite is '{@link org.eclipse.intent.mapping.Location#getTargetLinks <em>Target Links</em>}'. <!--
+	 * begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Source</em>' container reference isn't clear, there really should be more of
+	 * a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Source</em>' container reference.
+	 * @see #setSource(Location)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getLink_Source()
+	 * @see org.eclipse.intent.mapping.Location#getTargetLinks
+	 * @model opposite="targetLinks" required="true" transient="false"
+	 * @generated
+	 */
+	Location getSource();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.Link#getSource <em>Source</em>}' container
+	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Source</em>' container reference.
+	 * @see #getSource()
+	 * @generated NOT
+	 */
+	void setSource(ILocation value);
+
+	/**
+	 * Returns the value of the '<em><b>Target</b></em>' reference. It is bidirectional and its opposite is '
+	 * {@link org.eclipse.intent.mapping.Location#getSourceLinks <em>Source Links</em>}'. <!-- begin-user-doc
+	 * -->
+	 * <p>
+	 * If the meaning of the '<em>Target</em>' reference isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Target</em>' reference.
+	 * @see #setTarget(Location)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getLink_Target()
+	 * @see org.eclipse.intent.mapping.Location#getSourceLinks
+	 * @model opposite="sourceLinks" required="true"
+	 * @generated
+	 */
+	Location getTarget();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.Link#getTarget <em>Target</em>}' reference.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Target</em>' reference.
+	 * @see #getTarget()
+	 * @generated NOT
+	 */
+	void setTarget(ILocation value);
+
+} // Link
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Location.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Location.java
new file mode 100644
index 0000000..8a23b3b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Location.java
@@ -0,0 +1,183 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import java.io.Serializable;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Location</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.Location#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Location#getScope <em>Scope</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Location#getSourceLinks <em>Source Links</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Location#getTargetLinks <em>Target Links</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Location#getContents <em>Contents</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Location#getContainer <em>Container</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Location#getReferencingScopes <em>Referencing Scopes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getLocation()
+ * @model interface="true" abstract="true"
+ * @generated NOT
+ */
+public interface Location extends IEMFBaseElement, LocationContainer, ILocation {
+
+	/**
+	 * Returns the value of the '<em><b>Source Links</b></em>' reference list. The list contents are of type
+	 * {@link org.eclipse.intent.mapping.Link}. It is bidirectional and its opposite is '
+	 * {@link org.eclipse.intent.mapping.Link#getTarget <em>Target</em>}'. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Source Links</em>' reference list isn't clear, there really should be more
+	 * of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Source Links</em>' reference list.
+	 * @see org.eclipse.intent.mapping.MappingPackage#getLocation_SourceLinks()
+	 * @see org.eclipse.intent.mapping.Link#getTarget
+	 * @model opposite="target"
+	 * @generated NOT
+	 */
+	EList<ILink> getSourceLinks();
+
+	/**
+	 * Returns the value of the '<em><b>Target Links</b></em>' containment reference list. The list contents
+	 * are of type {@link org.eclipse.intent.mapping.Link}. It is bidirectional and its opposite is
+	 * '{@link org.eclipse.intent.mapping.Link#getSource <em>Source</em>}'. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Target Links</em>' containment reference list isn't clear, there really
+	 * should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Target Links</em>' containment reference list.
+	 * @see org.eclipse.intent.mapping.MappingPackage#getLocation_TargetLinks()
+	 * @see org.eclipse.intent.mapping.Link#getSource
+	 * @model opposite="source" containment="true"
+	 * @generated NOT
+	 */
+	EList<ILink> getTargetLinks();
+
+	/**
+	 * Returns the value of the '<em><b>Contents</b></em>' containment reference list. The list contents are
+	 * of type {@link org.eclipse.intent.mapping.Location}. It is bidirectional and its opposite is
+	 * '{@link org.eclipse.intent.mapping.Location#getContainer <em>Container</em>}'. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Contents</em>' containment reference list isn't clear, there really should
+	 * be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Contents</em>' containment reference list.
+	 * @see org.eclipse.intent.mapping.MappingPackage#getLocation_Contents()
+	 * @see org.eclipse.intent.mapping.Location#getContainer
+	 * @model opposite="container" containment="true"
+	 * @generated NOT
+	 */
+	EList<ILocation> getContents();
+
+	/**
+	 * Returns the value of the '<em><b>Container</b></em>' container reference. It is bidirectional and its
+	 * opposite is '{@link org.eclipse.intent.mapping.LocationContainer#getContents <em>Contents</em>}'. <!--
+	 * begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Container</em>' container reference isn't clear, there really should be more
+	 * of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Container</em>' container reference.
+	 * @see #setContainer(LocationContainer)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getLocation_Container()
+	 * @see org.eclipse.intent.mapping.LocationContainer#getContents
+	 * @model opposite="contents" transient="false"
+	 * @generated
+	 */
+	LocationContainer getContainer();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.Location#getContainer <em>Container</em>}'
+	 * container reference. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Container</em>' container reference.
+	 * @see #getContainer()
+	 * @generated NOT
+	 */
+	void setContainer(ILocationContainer value);
+
+	/**
+	 * Returns the value of the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Type</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Type</em>' attribute.
+	 * @see #setType(Serializable)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getLocation_Type()
+	 * @model dataType="org.eclipse.mylyn.docs.intent.mapping.Type"
+	 * @generated
+	 */
+	Serializable getType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.Location#getType <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Type</em>' attribute.
+	 * @see #getType()
+	 * @generated
+	 */
+	void setType(Serializable value);
+
+	/**
+	 * Returns the value of the '<em><b>Marked As Deleted</b></em>' attribute. The default value is
+	 * <code>"false"</code>. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Marked As Deleted</em>' attribute isn't clear, there really should be more
+	 * of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Marked As Deleted</em>' attribute.
+	 * @see #setMarkedAsDeleted(boolean)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getLocation_MarkedAsDeleted()
+	 * @model default="false" required="true"
+	 * @generated
+	 */
+	boolean isMarkedAsDeleted();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.Location#isMarkedAsDeleted <em>Marked As
+	 * Deleted</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Marked As Deleted</em>' attribute.
+	 * @see #isMarkedAsDeleted()
+	 * @generated
+	 */
+	void setMarkedAsDeleted(boolean value);
+
+} // Location
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/LocationContainer.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/LocationContainer.java
new file mode 100644
index 0000000..d7b99e9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/LocationContainer.java
@@ -0,0 +1,34 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Location Container</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.LocationContainer#getContents <em>Contents</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getLocationContainer()
+ * @model interface="true" abstract="true"
+ * @generated NOT
+ */
+public interface LocationContainer extends EObject, ILocationContainer {
+
+} // LocationContainer
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/MappingFactory.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/MappingFactory.java
new file mode 100644
index 0000000..2376431
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/MappingFactory.java
@@ -0,0 +1,134 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc --> The <b>Factory</b> for the model. It provides a create method for each non-abstract
+ * class of the model. <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.intent.mapping.MappingPackage
+ * @generated
+ */
+public interface MappingFactory extends EFactory {
+	/**
+	 * The singleton instance of the factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	MappingFactory eINSTANCE = org.eclipse.intent.mapping.impl.MappingFactoryImpl.init();
+
+	/**
+	 * Returns a new object of class '<em>Link</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Link</em>'.
+	 * @generated
+	 */
+	Link createLink();
+
+	/**
+	 * Returns a new object of class '<em>Base</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Base</em>'.
+	 * @generated
+	 */
+	Base createBase();
+
+	/**
+	 * Returns a new object of class '<em>Text Location</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Text Location</em>'.
+	 * @generated
+	 */
+	TextLocation createTextLocation();
+
+	/**
+	 * Returns a new object of class '<em>EObject Location</em>'. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @return a new object of class '<em>EObject Location</em>'.
+	 * @generated
+	 */
+	EObjectLocation createEObjectLocation();
+
+	/**
+	 * Returns a new object of class '<em>Report</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Report</em>'.
+	 * @generated
+	 */
+	Report createReport();
+
+	/**
+	 * Returns a new object of class '<em>Couple</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Couple</em>'.
+	 * @generated
+	 */
+	Couple createCouple();
+
+	/**
+	 * Returns a new object of class '<em>CDO Folder Location</em>'. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @return a new object of class '<em>CDO Folder Location</em>'.
+	 * @generated
+	 */
+	CDOFolderLocation createCDOFolderLocation();
+
+	/**
+	 * Returns a new object of class '<em>CDO Repository Location</em>'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>CDO Repository Location</em>'.
+	 * @generated
+	 */
+	CDORepositoryLocation createCDORepositoryLocation();
+
+	/**
+	 * Returns a new object of class '<em>CDO Binary Resource Location</em>'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>CDO Binary Resource Location</em>'.
+	 * @generated
+	 */
+	CDOBinaryResourceLocation createCDOBinaryResourceLocation();
+
+	/**
+	 * Returns a new object of class '<em>CDO Text Resource Location</em>'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>CDO Text Resource Location</em>'.
+	 * @generated
+	 */
+	CDOTextResourceLocation createCDOTextResourceLocation();
+
+	/**
+	 * Returns a new object of class '<em>CDO Resource Location</em>'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>CDO Resource Location</em>'.
+	 * @generated
+	 */
+	CDOResourceLocation createCDOResourceLocation();
+
+	/**
+	 * Returns the package supported by this factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the package supported by this factory.
+	 * @generated
+	 */
+	MappingPackage getMappingPackage();
+
+} // MappingFactory
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/MappingPackage.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/MappingPackage.java
new file mode 100644
index 0000000..c9ee0c8
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/MappingPackage.java
@@ -0,0 +1,2550 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc --> The <b>Package</b> for the model. It contains accessors for the meta objects to
+ * represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.intent.mapping.MappingFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface MappingPackage extends EPackage {
+	/**
+	 * The package name. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNAME = "mapping";
+
+	/**
+	 * The package namespace URI. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNS_URI = "http://www.eclipse.org/intent/mapping";
+
+	/**
+	 * The package namespace name. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNS_PREFIX = "mapping";
+
+	/**
+	 * The singleton instance of the package. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	MappingPackage eINSTANCE = org.eclipse.intent.mapping.impl.MappingPackageImpl.init();
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.IEMFBaseElement <em>IEMF Base
+	 * Element</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.IEMFBaseElement
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getIEMFBaseElement()
+	 * @generated
+	 */
+	int IEMF_BASE_ELEMENT = 3;
+
+	/**
+	 * The number of structural features of the '<em>IEMF Base Element</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IEMF_BASE_ELEMENT_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>IEMF Base Element</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IEMF_BASE_ELEMENT_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.LocationImpl <em>Location</em>}'
+	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.LocationImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getLocation()
+	 * @generated
+	 */
+	int LOCATION = 0;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LOCATION__CONTENTS = IEMF_BASE_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LOCATION__SOURCE_LINKS = IEMF_BASE_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LOCATION__TARGET_LINKS = IEMF_BASE_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LOCATION__CONTAINER = IEMF_BASE_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LOCATION__TYPE = IEMF_BASE_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LOCATION__MARKED_AS_DELETED = IEMF_BASE_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LOCATION_FEATURE_COUNT = IEMF_BASE_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of operations of the '<em>Location</em>' class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LOCATION_OPERATION_COUNT = IEMF_BASE_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.LinkImpl <em>Link</em>}' class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.LinkImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getLink()
+	 * @generated
+	 */
+	int LINK = 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LINK__DESCRIPTION = IEMF_BASE_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Source</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LINK__SOURCE = IEMF_BASE_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Target</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LINK__TARGET = IEMF_BASE_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LINK__TYPE = IEMF_BASE_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Reports</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LINK__REPORTS = IEMF_BASE_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>Link</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LINK_FEATURE_COUNT = IEMF_BASE_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of operations of the '<em>Link</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LINK_OPERATION_COUNT = IEMF_BASE_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.BaseImpl <em>Base</em>}' class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.BaseImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getBase()
+	 * @generated
+	 */
+	int BASE = 2;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASE__CONTENTS = IEMF_BASE_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASE__NAME = IEMF_BASE_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Reports</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASE__REPORTS = IEMF_BASE_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Container Providers</b></em>' attribute list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASE__CONTAINER_PROVIDERS = IEMF_BASE_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of structural features of the '<em>Base</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASE_FEATURE_COUNT = IEMF_BASE_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of operations of the '<em>Base</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASE_OPERATION_COUNT = IEMF_BASE_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.TextLocationImpl <em>Text
+	 * Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.TextLocationImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getTextLocation()
+	 * @generated
+	 */
+	int TEXT_LOCATION = 4;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_LOCATION__CONTENTS = LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_LOCATION__SOURCE_LINKS = LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_LOCATION__TARGET_LINKS = LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_LOCATION__CONTAINER = LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_LOCATION__TYPE = LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_LOCATION__MARKED_AS_DELETED = LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Start Offset</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_LOCATION__START_OFFSET = LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>End Offset</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_LOCATION__END_OFFSET = LOCATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Text Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_LOCATION_FEATURE_COUNT = LOCATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Text Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_LOCATION_OPERATION_COUNT = LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.TextContainer <em>Text Container</em>}'
+	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.TextContainer
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getTextContainer()
+	 * @generated
+	 */
+	int TEXT_CONTAINER = 5;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_CONTAINER__CONTENTS = LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_CONTAINER__SOURCE_LINKS = LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_CONTAINER__TARGET_LINKS = LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_CONTAINER__CONTAINER = LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_CONTAINER__TYPE = LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_CONTAINER__MARKED_AS_DELETED = LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Text</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_CONTAINER__TEXT = LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Text Container</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_CONTAINER_FEATURE_COUNT = LOCATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Text Container</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int TEXT_CONTAINER_OPERATION_COUNT = LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.EObjectLocationImpl <em>EObject
+	 * Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.EObjectLocationImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getEObjectLocation()
+	 * @generated
+	 */
+	int EOBJECT_LOCATION = 6;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION__CONTENTS = LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION__SOURCE_LINKS = LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION__TARGET_LINKS = LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION__CONTAINER = LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION__TYPE = LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION__MARKED_AS_DELETED = LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>URI Fragment</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION__URI_FRAGMENT = LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Saved URI Fragment</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION__SAVED_URI_FRAGMENT = LOCATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Feature Name</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION__FEATURE_NAME = LOCATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Index</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION__INDEX = LOCATION_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of structural features of the '<em>EObject Location</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION_FEATURE_COUNT = LOCATION_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of operations of the '<em>EObject Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_LOCATION_OPERATION_COUNT = LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.LocationContainer <em>Location
+	 * Container</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.LocationContainer
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getLocationContainer()
+	 * @generated
+	 */
+	int LOCATION_CONTAINER = 7;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LOCATION_CONTAINER__CONTENTS = 0;
+
+	/**
+	 * The number of structural features of the '<em>Location Container</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LOCATION_CONTAINER_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Location Container</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int LOCATION_CONTAINER_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.ReportImpl <em>Report</em>}' class.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.ReportImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getReport()
+	 * @generated
+	 */
+	int REPORT = 8;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REPORT__DESCRIPTION = IEMF_BASE_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Link</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REPORT__LINK = IEMF_BASE_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Report</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REPORT_FEATURE_COUNT = IEMF_BASE_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Report</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REPORT_OPERATION_COUNT = IEMF_BASE_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.CoupleImpl <em>Couple</em>}' class.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.CoupleImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCouple()
+	 * @generated
+	 */
+	int COUPLE = 9;
+
+	/**
+	 * The feature id for the '<em><b>Key</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int COUPLE__KEY = 0;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int COUPLE__VALUE = 1;
+
+	/**
+	 * The number of structural features of the '<em>Couple</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int COUPLE_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Couple</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int COUPLE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.EObjectContainer <em>EObject
+	 * Container</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.EObjectContainer
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getEObjectContainer()
+	 * @generated
+	 */
+	int EOBJECT_CONTAINER = 10;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_CONTAINER__CONTENTS = LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_CONTAINER__SOURCE_LINKS = LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_CONTAINER__TARGET_LINKS = LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_CONTAINER__CONTAINER = LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_CONTAINER__TYPE = LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_CONTAINER__MARKED_AS_DELETED = LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>XMI Content</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_CONTAINER__XMI_CONTENT = LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Saved URI Fragments</b></em>' containment reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_CONTAINER__SAVED_URI_FRAGMENTS = LOCATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>EObject Container</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_CONTAINER_FEATURE_COUNT = LOCATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>EObject Container</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EOBJECT_CONTAINER_OPERATION_COUNT = LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.CDOResourceNodeLocation <em>CDO Resource
+	 * Node Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.CDOResourceNodeLocation
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOResourceNodeLocation()
+	 * @generated
+	 */
+	int CDO_RESOURCE_NODE_LOCATION = 11;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_NODE_LOCATION__CONTENTS = LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_NODE_LOCATION__SOURCE_LINKS = LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_NODE_LOCATION__TARGET_LINKS = LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_NODE_LOCATION__CONTAINER = LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_NODE_LOCATION__TYPE = LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_NODE_LOCATION__MARKED_AS_DELETED = LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_NODE_LOCATION__PATH = LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>CDO Resource Node Location</em>' class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_NODE_LOCATION_FEATURE_COUNT = LOCATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>CDO Resource Node Location</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_NODE_LOCATION_OPERATION_COUNT = LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.CDOFileLocation <em>CDO File
+	 * Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.CDOFileLocation
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOFileLocation()
+	 * @generated
+	 */
+	int CDO_FILE_LOCATION = 12;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FILE_LOCATION__CONTENTS = CDO_RESOURCE_NODE_LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FILE_LOCATION__SOURCE_LINKS = CDO_RESOURCE_NODE_LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FILE_LOCATION__TARGET_LINKS = CDO_RESOURCE_NODE_LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FILE_LOCATION__CONTAINER = CDO_RESOURCE_NODE_LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FILE_LOCATION__TYPE = CDO_RESOURCE_NODE_LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FILE_LOCATION__MARKED_AS_DELETED = CDO_RESOURCE_NODE_LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FILE_LOCATION__PATH = CDO_RESOURCE_NODE_LOCATION__PATH;
+
+	/**
+	 * The number of structural features of the '<em>CDO File Location</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FILE_LOCATION_FEATURE_COUNT = CDO_RESOURCE_NODE_LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>CDO File Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FILE_LOCATION_OPERATION_COUNT = CDO_RESOURCE_NODE_LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.CDOFolderLocationImpl <em>CDO Folder
+	 * Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.CDOFolderLocationImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOFolderLocation()
+	 * @generated
+	 */
+	int CDO_FOLDER_LOCATION = 13;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FOLDER_LOCATION__CONTENTS = CDO_RESOURCE_NODE_LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FOLDER_LOCATION__SOURCE_LINKS = CDO_RESOURCE_NODE_LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FOLDER_LOCATION__TARGET_LINKS = CDO_RESOURCE_NODE_LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FOLDER_LOCATION__CONTAINER = CDO_RESOURCE_NODE_LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FOLDER_LOCATION__TYPE = CDO_RESOURCE_NODE_LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FOLDER_LOCATION__MARKED_AS_DELETED = CDO_RESOURCE_NODE_LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FOLDER_LOCATION__PATH = CDO_RESOURCE_NODE_LOCATION__PATH;
+
+	/**
+	 * The number of structural features of the '<em>CDO Folder Location</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FOLDER_LOCATION_FEATURE_COUNT = CDO_RESOURCE_NODE_LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>CDO Folder Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_FOLDER_LOCATION_OPERATION_COUNT = CDO_RESOURCE_NODE_LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.CDORepositoryLocationImpl <em>CDO
+	 * Repository Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.CDORepositoryLocationImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDORepositoryLocation()
+	 * @generated
+	 */
+	int CDO_REPOSITORY_LOCATION = 14;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION__CONTENTS = LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION__SOURCE_LINKS = LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION__TARGET_LINKS = LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION__CONTAINER = LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION__TYPE = LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION__MARKED_AS_DELETED = LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>URL</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION__URL = LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>UUID</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION__UUID = LOCATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION__NAME = LOCATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Branch ID</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION__BRANCH_ID = LOCATION_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of structural features of the '<em>CDO Repository Location</em>' class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION_FEATURE_COUNT = LOCATION_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of operations of the '<em>CDO Repository Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_REPOSITORY_LOCATION_OPERATION_COUNT = LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.CDOBinaryResourceLocationImpl
+	 * <em>CDO Binary Resource Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.CDOBinaryResourceLocationImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOBinaryResourceLocation()
+	 * @generated
+	 */
+	int CDO_BINARY_RESOURCE_LOCATION = 15;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_BINARY_RESOURCE_LOCATION__CONTENTS = CDO_FILE_LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_BINARY_RESOURCE_LOCATION__SOURCE_LINKS = CDO_FILE_LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_BINARY_RESOURCE_LOCATION__TARGET_LINKS = CDO_FILE_LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_BINARY_RESOURCE_LOCATION__CONTAINER = CDO_FILE_LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_BINARY_RESOURCE_LOCATION__TYPE = CDO_FILE_LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_BINARY_RESOURCE_LOCATION__MARKED_AS_DELETED = CDO_FILE_LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_BINARY_RESOURCE_LOCATION__PATH = CDO_FILE_LOCATION__PATH;
+
+	/**
+	 * The number of structural features of the '<em>CDO Binary Resource Location</em>' class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_BINARY_RESOURCE_LOCATION_FEATURE_COUNT = CDO_FILE_LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>CDO Binary Resource Location</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_BINARY_RESOURCE_LOCATION_OPERATION_COUNT = CDO_FILE_LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.CDOTextResourceLocationImpl <em>CDO
+	 * Text Resource Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.CDOTextResourceLocationImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOTextResourceLocation()
+	 * @generated
+	 */
+	int CDO_TEXT_RESOURCE_LOCATION = 16;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_TEXT_RESOURCE_LOCATION__CONTENTS = CDO_FILE_LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_TEXT_RESOURCE_LOCATION__SOURCE_LINKS = CDO_FILE_LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_TEXT_RESOURCE_LOCATION__TARGET_LINKS = CDO_FILE_LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_TEXT_RESOURCE_LOCATION__CONTAINER = CDO_FILE_LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_TEXT_RESOURCE_LOCATION__TYPE = CDO_FILE_LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_TEXT_RESOURCE_LOCATION__MARKED_AS_DELETED = CDO_FILE_LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_TEXT_RESOURCE_LOCATION__PATH = CDO_FILE_LOCATION__PATH;
+
+	/**
+	 * The feature id for the '<em><b>Text</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_TEXT_RESOURCE_LOCATION__TEXT = CDO_FILE_LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>CDO Text Resource Location</em>' class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_TEXT_RESOURCE_LOCATION_FEATURE_COUNT = CDO_FILE_LOCATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>CDO Text Resource Location</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_TEXT_RESOURCE_LOCATION_OPERATION_COUNT = CDO_FILE_LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.intent.mapping.impl.CDOResourceLocationImpl <em>CDO
+	 * Resource Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.intent.mapping.impl.CDOResourceLocationImpl
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOResourceLocation()
+	 * @generated
+	 */
+	int CDO_RESOURCE_LOCATION = 17;
+
+	/**
+	 * The feature id for the '<em><b>Contents</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_LOCATION__CONTENTS = CDO_FILE_LOCATION__CONTENTS;
+
+	/**
+	 * The feature id for the '<em><b>Source Links</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_LOCATION__SOURCE_LINKS = CDO_FILE_LOCATION__SOURCE_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Target Links</b></em>' containment reference list. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_LOCATION__TARGET_LINKS = CDO_FILE_LOCATION__TARGET_LINKS;
+
+	/**
+	 * The feature id for the '<em><b>Container</b></em>' container reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_LOCATION__CONTAINER = CDO_FILE_LOCATION__CONTAINER;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_LOCATION__TYPE = CDO_FILE_LOCATION__TYPE;
+
+	/**
+	 * The feature id for the '<em><b>Marked As Deleted</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_LOCATION__MARKED_AS_DELETED = CDO_FILE_LOCATION__MARKED_AS_DELETED;
+
+	/**
+	 * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_LOCATION__PATH = CDO_FILE_LOCATION__PATH;
+
+	/**
+	 * The feature id for the '<em><b>XMI Content</b></em>' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_LOCATION__XMI_CONTENT = CDO_FILE_LOCATION_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Saved URI Fragments</b></em>' containment reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_LOCATION__SAVED_URI_FRAGMENTS = CDO_FILE_LOCATION_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>CDO Resource Location</em>' class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_LOCATION_FEATURE_COUNT = CDO_FILE_LOCATION_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>CDO Resource Location</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CDO_RESOURCE_LOCATION_OPERATION_COUNT = CDO_FILE_LOCATION_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '<em>Type</em>' data type. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see java.io.Serializable
+	 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getType()
+	 * @generated
+	 */
+	int TYPE = 18;
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.Location <em>Location</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Location</em>'.
+	 * @see org.eclipse.intent.mapping.Location
+	 * @generated
+	 */
+	EClass getLocation();
+
+	/**
+	 * Returns the meta object for the reference list '
+	 * {@link org.eclipse.intent.mapping.Location#getSourceLinks <em>Source Links</em>}'. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference list '<em>Source Links</em>'.
+	 * @see org.eclipse.intent.mapping.Location#getSourceLinks()
+	 * @see #getLocation()
+	 * @generated
+	 */
+	EReference getLocation_SourceLinks();
+
+	/**
+	 * Returns the meta object for the containment reference list '
+	 * {@link org.eclipse.intent.mapping.Location#getTargetLinks <em>Target Links</em>}'. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Target Links</em>'.
+	 * @see org.eclipse.intent.mapping.Location#getTargetLinks()
+	 * @see #getLocation()
+	 * @generated
+	 */
+	EReference getLocation_TargetLinks();
+
+	/**
+	 * Returns the meta object for the container reference '
+	 * {@link org.eclipse.intent.mapping.Location#getContainer <em>Container</em>}'. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the container reference '<em>Container</em>'.
+	 * @see org.eclipse.intent.mapping.Location#getContainer()
+	 * @see #getLocation()
+	 * @generated
+	 */
+	EReference getLocation_Container();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.intent.mapping.Location#getType
+	 * <em>Type</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Type</em>'.
+	 * @see org.eclipse.intent.mapping.Location#getType()
+	 * @see #getLocation()
+	 * @generated
+	 */
+	EAttribute getLocation_Type();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.intent.mapping.Location#isMarkedAsDeleted
+	 * <em>Marked As Deleted</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Marked As Deleted</em>'.
+	 * @see org.eclipse.intent.mapping.Location#isMarkedAsDeleted()
+	 * @see #getLocation()
+	 * @generated
+	 */
+	EAttribute getLocation_MarkedAsDeleted();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.Link <em>Link</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Link</em>'.
+	 * @see org.eclipse.intent.mapping.Link
+	 * @generated
+	 */
+	EClass getLink();
+
+	/**
+	 * Returns the meta object for the attribute ' {@link org.eclipse.intent.mapping.Link#getDescription
+	 * <em>Description</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Description</em>'.
+	 * @see org.eclipse.intent.mapping.Link#getDescription()
+	 * @see #getLink()
+	 * @generated
+	 */
+	EAttribute getLink_Description();
+
+	/**
+	 * Returns the meta object for the container reference '{@link org.eclipse.intent.mapping.Link#getSource
+	 * <em>Source</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the container reference '<em>Source</em>'.
+	 * @see org.eclipse.intent.mapping.Link#getSource()
+	 * @see #getLink()
+	 * @generated
+	 */
+	EReference getLink_Source();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.intent.mapping.Link#getTarget
+	 * <em>Target</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Target</em>'.
+	 * @see org.eclipse.intent.mapping.Link#getTarget()
+	 * @see #getLink()
+	 * @generated
+	 */
+	EReference getLink_Target();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.intent.mapping.Link#getType
+	 * <em>Type</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Type</em>'.
+	 * @see org.eclipse.intent.mapping.Link#getType()
+	 * @see #getLink()
+	 * @generated
+	 */
+	EAttribute getLink_Type();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.intent.mapping.Link#getReports
+	 * <em>Reports</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference list '<em>Reports</em>'.
+	 * @see org.eclipse.intent.mapping.Link#getReports()
+	 * @see #getLink()
+	 * @generated
+	 */
+	EReference getLink_Reports();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.Base <em>Base</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Base</em>'.
+	 * @see org.eclipse.intent.mapping.Base
+	 * @generated
+	 */
+	EClass getBase();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.intent.mapping.Base#getName
+	 * <em>Name</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.intent.mapping.Base#getName()
+	 * @see #getBase()
+	 * @generated
+	 */
+	EAttribute getBase_Name();
+
+	/**
+	 * Returns the meta object for the containment reference list
+	 * '{@link org.eclipse.intent.mapping.Base#getReports <em>Reports</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Reports</em>'.
+	 * @see org.eclipse.intent.mapping.Base#getReports()
+	 * @see #getBase()
+	 * @generated
+	 */
+	EReference getBase_Reports();
+
+	/**
+	 * Returns the meta object for the attribute list
+	 * '{@link org.eclipse.intent.mapping.Base#getContainerProviders <em>Container Providers</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute list '<em>Container Providers</em>'.
+	 * @see org.eclipse.intent.mapping.Base#getContainerProviders()
+	 * @see #getBase()
+	 * @generated
+	 */
+	EAttribute getBase_ContainerProviders();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.IEMFBaseElement <em>IEMF Base
+	 * Element</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>IEMF Base Element</em>'.
+	 * @see org.eclipse.intent.mapping.IEMFBaseElement
+	 * @generated
+	 */
+	EClass getIEMFBaseElement();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.TextLocation <em>Text
+	 * Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Text Location</em>'.
+	 * @see org.eclipse.intent.mapping.TextLocation
+	 * @generated
+	 */
+	EClass getTextLocation();
+
+	/**
+	 * Returns the meta object for the attribute '
+	 * {@link org.eclipse.intent.mapping.TextLocation#getStartOffset <em>Start Offset</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Start Offset</em>'.
+	 * @see org.eclipse.intent.mapping.TextLocation#getStartOffset()
+	 * @see #getTextLocation()
+	 * @generated
+	 */
+	EAttribute getTextLocation_StartOffset();
+
+	/**
+	 * Returns the meta object for the attribute ' {@link org.eclipse.intent.mapping.TextLocation#getEndOffset
+	 * <em>End Offset</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>End Offset</em>'.
+	 * @see org.eclipse.intent.mapping.TextLocation#getEndOffset()
+	 * @see #getTextLocation()
+	 * @generated
+	 */
+	EAttribute getTextLocation_EndOffset();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.TextContainer <em>Text
+	 * Container</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Text Container</em>'.
+	 * @see org.eclipse.intent.mapping.TextContainer
+	 * @generated
+	 */
+	EClass getTextContainer();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.intent.mapping.TextContainer#getText
+	 * <em>Text</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Text</em>'.
+	 * @see org.eclipse.intent.mapping.TextContainer#getText()
+	 * @see #getTextContainer()
+	 * @generated
+	 */
+	EAttribute getTextContainer_Text();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.EObjectLocation <em>EObject
+	 * Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>EObject Location</em>'.
+	 * @see org.eclipse.intent.mapping.EObjectLocation
+	 * @generated
+	 */
+	EClass getEObjectLocation();
+
+	/**
+	 * Returns the meta object for the attribute
+	 * '{@link org.eclipse.intent.mapping.EObjectLocation#getURIFragment <em>URI Fragment</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>URI Fragment</em>'.
+	 * @see org.eclipse.intent.mapping.EObjectLocation#getURIFragment()
+	 * @see #getEObjectLocation()
+	 * @generated
+	 */
+	EAttribute getEObjectLocation_URIFragment();
+
+	/**
+	 * Returns the meta object for the attribute
+	 * '{@link org.eclipse.intent.mapping.EObjectLocation#getSavedURIFragment <em>Saved URI Fragment</em>}'.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Saved URI Fragment</em>'.
+	 * @see org.eclipse.intent.mapping.EObjectLocation#getSavedURIFragment()
+	 * @see #getEObjectLocation()
+	 * @generated
+	 */
+	EAttribute getEObjectLocation_SavedURIFragment();
+
+	/**
+	 * Returns the meta object for the attribute
+	 * '{@link org.eclipse.intent.mapping.EObjectLocation#getFeatureName <em>Feature Name</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Feature Name</em>'.
+	 * @see org.eclipse.intent.mapping.EObjectLocation#getFeatureName()
+	 * @see #getEObjectLocation()
+	 * @generated
+	 */
+	EAttribute getEObjectLocation_FeatureName();
+
+	/**
+	 * Returns the meta object for the attribute ' {@link org.eclipse.intent.mapping.EObjectLocation#getIndex
+	 * <em>Index</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Index</em>'.
+	 * @see org.eclipse.intent.mapping.EObjectLocation#getIndex()
+	 * @see #getEObjectLocation()
+	 * @generated
+	 */
+	EAttribute getEObjectLocation_Index();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.LocationContainer <em>Location
+	 * Container</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Location Container</em>'.
+	 * @see org.eclipse.intent.mapping.LocationContainer
+	 * @generated
+	 */
+	EClass getLocationContainer();
+
+	/**
+	 * Returns the meta object for the containment reference list '
+	 * {@link org.eclipse.intent.mapping.LocationContainer#getContents <em>Contents</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Contents</em>'.
+	 * @see org.eclipse.intent.mapping.LocationContainer#getContents()
+	 * @see #getLocationContainer()
+	 * @generated
+	 */
+	EReference getLocationContainer_Contents();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.Report <em>Report</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Report</em>'.
+	 * @see org.eclipse.intent.mapping.Report
+	 * @generated
+	 */
+	EClass getReport();
+
+	/**
+	 * Returns the meta object for the attribute ' {@link org.eclipse.intent.mapping.Report#getDescription
+	 * <em>Description</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Description</em>'.
+	 * @see org.eclipse.intent.mapping.Report#getDescription()
+	 * @see #getReport()
+	 * @generated
+	 */
+	EAttribute getReport_Description();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.intent.mapping.Report#getLink
+	 * <em>Link</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Link</em>'.
+	 * @see org.eclipse.intent.mapping.Report#getLink()
+	 * @see #getReport()
+	 * @generated
+	 */
+	EReference getReport_Link();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.Couple <em>Couple</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Couple</em>'.
+	 * @see org.eclipse.intent.mapping.Couple
+	 * @generated
+	 */
+	EClass getCouple();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.intent.mapping.Couple#getKey
+	 * <em>Key</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Key</em>'.
+	 * @see org.eclipse.intent.mapping.Couple#getKey()
+	 * @see #getCouple()
+	 * @generated
+	 */
+	EAttribute getCouple_Key();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.intent.mapping.Couple#getValue
+	 * <em>Value</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see org.eclipse.intent.mapping.Couple#getValue()
+	 * @see #getCouple()
+	 * @generated
+	 */
+	EAttribute getCouple_Value();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.EObjectContainer <em>EObject
+	 * Container</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>EObject Container</em>'.
+	 * @see org.eclipse.intent.mapping.EObjectContainer
+	 * @generated
+	 */
+	EClass getEObjectContainer();
+
+	/**
+	 * Returns the meta object for the attribute
+	 * '{@link org.eclipse.intent.mapping.EObjectContainer#getXMIContent <em>XMI Content</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>XMI Content</em>'.
+	 * @see org.eclipse.intent.mapping.EObjectContainer#getXMIContent()
+	 * @see #getEObjectContainer()
+	 * @generated
+	 */
+	EAttribute getEObjectContainer_XMIContent();
+
+	/**
+	 * Returns the meta object for the containment reference list
+	 * '{@link org.eclipse.intent.mapping.EObjectContainer#getSavedURIFragments <em>Saved URI
+	 * Fragments</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Saved URI Fragments</em>'.
+	 * @see org.eclipse.intent.mapping.EObjectContainer#getSavedURIFragments()
+	 * @see #getEObjectContainer()
+	 * @generated
+	 */
+	EReference getEObjectContainer_SavedURIFragments();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.CDOResourceNodeLocation <em>CDO
+	 * Resource Node Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>CDO Resource Node Location</em>'.
+	 * @see org.eclipse.intent.mapping.CDOResourceNodeLocation
+	 * @generated
+	 */
+	EClass getCDOResourceNodeLocation();
+
+	/**
+	 * Returns the meta object for the attribute
+	 * '{@link org.eclipse.intent.mapping.CDOResourceNodeLocation#getPath <em>Path</em>}'. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Path</em>'.
+	 * @see org.eclipse.intent.mapping.CDOResourceNodeLocation#getPath()
+	 * @see #getCDOResourceNodeLocation()
+	 * @generated
+	 */
+	EAttribute getCDOResourceNodeLocation_Path();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.CDOFileLocation <em>CDO File
+	 * Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>CDO File Location</em>'.
+	 * @see org.eclipse.intent.mapping.CDOFileLocation
+	 * @generated
+	 */
+	EClass getCDOFileLocation();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.CDOFolderLocation <em>CDO Folder
+	 * Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>CDO Folder Location</em>'.
+	 * @see org.eclipse.intent.mapping.CDOFolderLocation
+	 * @generated
+	 */
+	EClass getCDOFolderLocation();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.CDORepositoryLocation <em>CDO
+	 * Repository Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>CDO Repository Location</em>'.
+	 * @see org.eclipse.intent.mapping.CDORepositoryLocation
+	 * @generated
+	 */
+	EClass getCDORepositoryLocation();
+
+	/**
+	 * Returns the meta object for the attribute
+	 * '{@link org.eclipse.intent.mapping.CDORepositoryLocation#getURL <em>URL</em>}'. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>URL</em>'.
+	 * @see org.eclipse.intent.mapping.CDORepositoryLocation#getURL()
+	 * @see #getCDORepositoryLocation()
+	 * @generated
+	 */
+	EAttribute getCDORepositoryLocation_URL();
+
+	/**
+	 * Returns the meta object for the attribute
+	 * '{@link org.eclipse.intent.mapping.CDORepositoryLocation#getUUID <em>UUID</em>}'. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>UUID</em>'.
+	 * @see org.eclipse.intent.mapping.CDORepositoryLocation#getUUID()
+	 * @see #getCDORepositoryLocation()
+	 * @generated
+	 */
+	EAttribute getCDORepositoryLocation_UUID();
+
+	/**
+	 * Returns the meta object for the attribute
+	 * '{@link org.eclipse.intent.mapping.CDORepositoryLocation#getName <em>Name</em>}'. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.intent.mapping.CDORepositoryLocation#getName()
+	 * @see #getCDORepositoryLocation()
+	 * @generated
+	 */
+	EAttribute getCDORepositoryLocation_Name();
+
+	/**
+	 * Returns the meta object for the attribute
+	 * '{@link org.eclipse.intent.mapping.CDORepositoryLocation#getBranchID <em>Branch ID</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Branch ID</em>'.
+	 * @see org.eclipse.intent.mapping.CDORepositoryLocation#getBranchID()
+	 * @see #getCDORepositoryLocation()
+	 * @generated
+	 */
+	EAttribute getCDORepositoryLocation_BranchID();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.CDOBinaryResourceLocation <em>CDO
+	 * Binary Resource Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>CDO Binary Resource Location</em>'.
+	 * @see org.eclipse.intent.mapping.CDOBinaryResourceLocation
+	 * @generated
+	 */
+	EClass getCDOBinaryResourceLocation();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.CDOTextResourceLocation <em>CDO
+	 * Text Resource Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>CDO Text Resource Location</em>'.
+	 * @see org.eclipse.intent.mapping.CDOTextResourceLocation
+	 * @generated
+	 */
+	EClass getCDOTextResourceLocation();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.intent.mapping.CDOResourceLocation <em>CDO
+	 * Resource Location</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>CDO Resource Location</em>'.
+	 * @see org.eclipse.intent.mapping.CDOResourceLocation
+	 * @generated
+	 */
+	EClass getCDOResourceLocation();
+
+	/**
+	 * Returns the meta object for data type '{@link java.io.Serializable <em>Type</em>}'. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for data type '<em>Type</em>'.
+	 * @see java.io.Serializable
+	 * @model instanceClass="java.io.Serializable"
+	 * @generated
+	 */
+	EDataType getType();
+
+	/**
+	 * Returns the factory that creates the instances of the model. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @return the factory that creates the instances of the model.
+	 * @generated
+	 */
+	MappingFactory getMappingFactory();
+
+	/**
+	 * <!-- begin-user-doc --> Defines literals for the meta objects that represent
+	 * <ul>
+	 * <li>each class,</li>
+	 * <li>each feature of each class,</li>
+	 * <li>each operation of each class,</li>
+	 * <li>each enum,</li>
+	 * <li>and each data type</li>
+	 * </ul>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	interface Literals {
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.impl.LocationImpl
+		 * <em>Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.LocationImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getLocation()
+		 * @generated
+		 */
+		EClass LOCATION = eINSTANCE.getLocation();
+
+		/**
+		 * The meta object literal for the '<em><b>Source Links</b></em>' reference list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference LOCATION__SOURCE_LINKS = eINSTANCE.getLocation_SourceLinks();
+
+		/**
+		 * The meta object literal for the '<em><b>Target Links</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference LOCATION__TARGET_LINKS = eINSTANCE.getLocation_TargetLinks();
+
+		/**
+		 * The meta object literal for the '<em><b>Container</b></em>' container reference feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference LOCATION__CONTAINER = eINSTANCE.getLocation_Container();
+
+		/**
+		 * The meta object literal for the '<em><b>Type</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute LOCATION__TYPE = eINSTANCE.getLocation_Type();
+
+		/**
+		 * The meta object literal for the '<em><b>Marked As Deleted</b></em>' attribute feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute LOCATION__MARKED_AS_DELETED = eINSTANCE.getLocation_MarkedAsDeleted();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.impl.LinkImpl <em>Link</em>}'
+		 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.LinkImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getLink()
+		 * @generated
+		 */
+		EClass LINK = eINSTANCE.getLink();
+
+		/**
+		 * The meta object literal for the '<em><b>Description</b></em>' attribute feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute LINK__DESCRIPTION = eINSTANCE.getLink_Description();
+
+		/**
+		 * The meta object literal for the '<em><b>Source</b></em>' container reference feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference LINK__SOURCE = eINSTANCE.getLink_Source();
+
+		/**
+		 * The meta object literal for the '<em><b>Target</b></em>' reference feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference LINK__TARGET = eINSTANCE.getLink_Target();
+
+		/**
+		 * The meta object literal for the '<em><b>Type</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute LINK__TYPE = eINSTANCE.getLink_Type();
+
+		/**
+		 * The meta object literal for the '<em><b>Reports</b></em>' reference list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference LINK__REPORTS = eINSTANCE.getLink_Reports();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.impl.BaseImpl <em>Base</em>}'
+		 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.BaseImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getBase()
+		 * @generated
+		 */
+		EClass BASE = eINSTANCE.getBase();
+
+		/**
+		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute BASE__NAME = eINSTANCE.getBase_Name();
+
+		/**
+		 * The meta object literal for the '<em><b>Reports</b></em>' containment reference list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference BASE__REPORTS = eINSTANCE.getBase_Reports();
+
+		/**
+		 * The meta object literal for the '<em><b>Container Providers</b></em>' attribute list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute BASE__CONTAINER_PROVIDERS = eINSTANCE.getBase_ContainerProviders();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.IEMFBaseElement <em>IEMF Base
+		 * Element</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.IEMFBaseElement
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getIEMFBaseElement()
+		 * @generated
+		 */
+		EClass IEMF_BASE_ELEMENT = eINSTANCE.getIEMFBaseElement();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.impl.TextLocationImpl <em>Text
+		 * Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.TextLocationImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getTextLocation()
+		 * @generated
+		 */
+		EClass TEXT_LOCATION = eINSTANCE.getTextLocation();
+
+		/**
+		 * The meta object literal for the '<em><b>Start Offset</b></em>' attribute feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute TEXT_LOCATION__START_OFFSET = eINSTANCE.getTextLocation_StartOffset();
+
+		/**
+		 * The meta object literal for the '<em><b>End Offset</b></em>' attribute feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute TEXT_LOCATION__END_OFFSET = eINSTANCE.getTextLocation_EndOffset();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.TextContainer <em>Text
+		 * Container</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.TextContainer
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getTextContainer()
+		 * @generated
+		 */
+		EClass TEXT_CONTAINER = eINSTANCE.getTextContainer();
+
+		/**
+		 * The meta object literal for the '<em><b>Text</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute TEXT_CONTAINER__TEXT = eINSTANCE.getTextContainer_Text();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.impl.EObjectLocationImpl
+		 * <em>EObject Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.EObjectLocationImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getEObjectLocation()
+		 * @generated
+		 */
+		EClass EOBJECT_LOCATION = eINSTANCE.getEObjectLocation();
+
+		/**
+		 * The meta object literal for the '<em><b>URI Fragment</b></em>' attribute feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute EOBJECT_LOCATION__URI_FRAGMENT = eINSTANCE.getEObjectLocation_URIFragment();
+
+		/**
+		 * The meta object literal for the '<em><b>Saved URI Fragment</b></em>' attribute feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute EOBJECT_LOCATION__SAVED_URI_FRAGMENT = eINSTANCE.getEObjectLocation_SavedURIFragment();
+
+		/**
+		 * The meta object literal for the '<em><b>Feature Name</b></em>' attribute feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute EOBJECT_LOCATION__FEATURE_NAME = eINSTANCE.getEObjectLocation_FeatureName();
+
+		/**
+		 * The meta object literal for the '<em><b>Index</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute EOBJECT_LOCATION__INDEX = eINSTANCE.getEObjectLocation_Index();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.LocationContainer <em>Location
+		 * Container</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.LocationContainer
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getLocationContainer()
+		 * @generated
+		 */
+		EClass LOCATION_CONTAINER = eINSTANCE.getLocationContainer();
+
+		/**
+		 * The meta object literal for the '<em><b>Contents</b></em>' containment reference list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference LOCATION_CONTAINER__CONTENTS = eINSTANCE.getLocationContainer_Contents();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.impl.ReportImpl
+		 * <em>Report</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.ReportImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getReport()
+		 * @generated
+		 */
+		EClass REPORT = eINSTANCE.getReport();
+
+		/**
+		 * The meta object literal for the '<em><b>Description</b></em>' attribute feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute REPORT__DESCRIPTION = eINSTANCE.getReport_Description();
+
+		/**
+		 * The meta object literal for the '<em><b>Link</b></em>' reference feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference REPORT__LINK = eINSTANCE.getReport_Link();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.impl.CoupleImpl
+		 * <em>Couple</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.CoupleImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCouple()
+		 * @generated
+		 */
+		EClass COUPLE = eINSTANCE.getCouple();
+
+		/**
+		 * The meta object literal for the '<em><b>Key</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute COUPLE__KEY = eINSTANCE.getCouple_Key();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute COUPLE__VALUE = eINSTANCE.getCouple_Value();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.EObjectContainer <em>EObject
+		 * Container</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.EObjectContainer
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getEObjectContainer()
+		 * @generated
+		 */
+		EClass EOBJECT_CONTAINER = eINSTANCE.getEObjectContainer();
+
+		/**
+		 * The meta object literal for the '<em><b>XMI Content</b></em>' attribute feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute EOBJECT_CONTAINER__XMI_CONTENT = eINSTANCE.getEObjectContainer_XMIContent();
+
+		/**
+		 * The meta object literal for the '<em><b>Saved URI Fragments</b></em>' containment reference list
+		 * feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference EOBJECT_CONTAINER__SAVED_URI_FRAGMENTS = eINSTANCE.getEObjectContainer_SavedURIFragments();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.CDOResourceNodeLocation <em>CDO
+		 * Resource Node Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.CDOResourceNodeLocation
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOResourceNodeLocation()
+		 * @generated
+		 */
+		EClass CDO_RESOURCE_NODE_LOCATION = eINSTANCE.getCDOResourceNodeLocation();
+
+		/**
+		 * The meta object literal for the '<em><b>Path</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute CDO_RESOURCE_NODE_LOCATION__PATH = eINSTANCE.getCDOResourceNodeLocation_Path();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.CDOFileLocation <em>CDO File
+		 * Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.CDOFileLocation
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOFileLocation()
+		 * @generated
+		 */
+		EClass CDO_FILE_LOCATION = eINSTANCE.getCDOFileLocation();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.impl.CDOFolderLocationImpl
+		 * <em>CDO Folder Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.CDOFolderLocationImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOFolderLocation()
+		 * @generated
+		 */
+		EClass CDO_FOLDER_LOCATION = eINSTANCE.getCDOFolderLocation();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.impl.CDORepositoryLocationImpl
+		 * <em>CDO Repository Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.CDORepositoryLocationImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDORepositoryLocation()
+		 * @generated
+		 */
+		EClass CDO_REPOSITORY_LOCATION = eINSTANCE.getCDORepositoryLocation();
+
+		/**
+		 * The meta object literal for the '<em><b>URL</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute CDO_REPOSITORY_LOCATION__URL = eINSTANCE.getCDORepositoryLocation_URL();
+
+		/**
+		 * The meta object literal for the '<em><b>UUID</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute CDO_REPOSITORY_LOCATION__UUID = eINSTANCE.getCDORepositoryLocation_UUID();
+
+		/**
+		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute CDO_REPOSITORY_LOCATION__NAME = eINSTANCE.getCDORepositoryLocation_Name();
+
+		/**
+		 * The meta object literal for the '<em><b>Branch ID</b></em>' attribute feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute CDO_REPOSITORY_LOCATION__BRANCH_ID = eINSTANCE.getCDORepositoryLocation_BranchID();
+
+		/**
+		 * The meta object literal for the
+		 * '{@link org.eclipse.intent.mapping.impl.CDOBinaryResourceLocationImpl <em>CDO Binary Resource
+		 * Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.CDOBinaryResourceLocationImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOBinaryResourceLocation()
+		 * @generated
+		 */
+		EClass CDO_BINARY_RESOURCE_LOCATION = eINSTANCE.getCDOBinaryResourceLocation();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.impl.CDOTextResourceLocationImpl
+		 * <em>CDO Text Resource Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.CDOTextResourceLocationImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOTextResourceLocation()
+		 * @generated
+		 */
+		EClass CDO_TEXT_RESOURCE_LOCATION = eINSTANCE.getCDOTextResourceLocation();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.intent.mapping.impl.CDOResourceLocationImpl
+		 * <em>CDO Resource Location</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.intent.mapping.impl.CDOResourceLocationImpl
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getCDOResourceLocation()
+		 * @generated
+		 */
+		EClass CDO_RESOURCE_LOCATION = eINSTANCE.getCDOResourceLocation();
+
+		/**
+		 * The meta object literal for the '<em>Type</em>' data type. <!-- begin-user-doc --> <!--
+		 * end-user-doc -->
+		 * 
+		 * @see java.io.Serializable
+		 * @see org.eclipse.intent.mapping.impl.MappingPackageImpl#getType()
+		 * @generated
+		 */
+		EDataType TYPE = eINSTANCE.getType();
+
+	}
+
+} // MappingPackage
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Report.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Report.java
new file mode 100644
index 0000000..7055e35
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/Report.java
@@ -0,0 +1,90 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.IReport;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Report</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.Report#getDescription <em>Description</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.Report#getLink <em>Link</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getReport()
+ * @model abstract="true"
+ * @generated NOT
+ */
+public interface Report extends IEMFBaseElement, IReport {
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Description</em>' attribute.
+	 * @see #setDescription(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getReport_Description()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.Report#getDescription <em>Description</em>}'
+	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Description</em>' attribute.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Link</b></em>' reference. It is bidirectional and its opposite is '
+	 * {@link org.eclipse.intent.mapping.Link#getReports <em>Reports</em>}'. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Link</em>' reference isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Link</em>' reference.
+	 * @see #setLink(Link)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getReport_Link()
+	 * @see org.eclipse.intent.mapping.Link#getReports
+	 * @model opposite="reports" required="true"
+	 * @generated NOT
+	 */
+	ILink getLink();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.Report#getLink <em>Link</em>}' reference. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Link</em>' reference.
+	 * @see #getLink()
+	 * @generated NOT
+	 */
+	void setLink(ILink value);
+
+} // Report
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/TextContainer.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/TextContainer.java
new file mode 100644
index 0000000..b56ad85
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/TextContainer.java
@@ -0,0 +1,57 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Text Container</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.TextContainer#getText <em>Text</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getTextContainer()
+ * @model interface="true" abstract="true"
+ * @generated
+ */
+public interface TextContainer extends Location {
+	/**
+	 * Returns the value of the '<em><b>Text</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Text</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Text</em>' attribute.
+	 * @see #setText(String)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getTextContainer_Text()
+	 * @model required="true"
+	 * @generated
+	 */
+	String getText();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.TextContainer#getText <em>Text</em>}'
+	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Text</em>' attribute.
+	 * @see #getText()
+	 * @generated
+	 */
+	void setText(String value);
+
+} // TextContainer
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/TextLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/TextLocation.java
new file mode 100644
index 0000000..ef660f8
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/TextLocation.java
@@ -0,0 +1,89 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping;
+
+import org.eclipse.intent.mapping.text.ITextLocation;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Text Location</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.TextLocation#getStartOffset <em>Start Offset</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.TextLocation#getEndOffset <em>End Offset</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.intent.mapping.MappingPackage#getTextLocation()
+ * @model
+ * @generated NOT
+ */
+public interface TextLocation extends Location, ITextLocation {
+	/**
+	 * Returns the value of the '<em><b>Start Offset</b></em>' attribute. The default value is
+	 * <code>"-1"</code>. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Text Offset</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Start Offset</em>' attribute.
+	 * @see #setStartOffset(int)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getTextLocation_StartOffset()
+	 * @model default="-1" required="true"
+	 * @generated
+	 */
+	int getStartOffset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.TextLocation#getStartOffset <em>Start
+	 * Offset</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Start Offset</em>' attribute.
+	 * @see #getStartOffset()
+	 * @generated
+	 */
+	void setStartOffset(int value);
+
+	/**
+	 * Returns the value of the '<em><b>End Offset</b></em>' attribute. The default value is <code>"-1"</code>
+	 * . <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>End Offset</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>End Offset</em>' attribute.
+	 * @see #setEndOffset(int)
+	 * @see org.eclipse.intent.mapping.MappingPackage#getTextLocation_EndOffset()
+	 * @model default="-1" required="true"
+	 * @generated
+	 */
+	int getEndOffset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.intent.mapping.TextLocation#getEndOffset <em>End
+	 * Offset</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>End Offset</em>' attribute.
+	 * @see #getEndOffset()
+	 * @generated
+	 */
+	void setEndOffset(int value);
+
+} // TextLocation
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/BaseImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/BaseImpl.java
new file mode 100644
index 0000000..204d370
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/BaseImpl.java
@@ -0,0 +1,380 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.impl.AdapterImpl;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.internal.cdo.CDOObjectImpl;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.LocationContainer;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.BaseElementFactory.FactoryDescriptor;
+import org.eclipse.intent.mapping.base.ContainerProviderRegistry;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.IBaseListener;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.emf.ICDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.emf.ICDOFolderLocation;
+import org.eclipse.intent.mapping.emf.ICDORepositoryLocation;
+import org.eclipse.intent.mapping.emf.ICDOResourceLocation;
+import org.eclipse.intent.mapping.emf.ICDOTextResourceLocation;
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.eclipse.intent.mapping.emf.IEObjectLocation;
+import org.eclipse.intent.mapping.text.ITextLocation;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Base</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.BaseImpl#getContents <em>Contents</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.BaseImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.BaseImpl#getReports <em>Reports</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.BaseImpl#getContainerProviders <em>Container
+ * Providers</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class BaseImpl extends CDOObjectImpl implements Base {
+
+	/**
+	 * The {@link ContainerProviderRegistry}.
+	 * 
+	 * @generated NOT
+	 */
+	private final ContainerProviderRegistry registry;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public BaseImpl() {
+		super();
+		registry = new ContainerProviderRegistry(this);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.BASE;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected int eStaticFeatureCount() {
+		return 0;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@SuppressWarnings("unchecked")
+	public EList<ILocation> getContents() {
+		return (EList<ILocation>)eGet(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return (String)eGet(MappingPackage.Literals.BASE__NAME, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setName(String newName) {
+		eSet(MappingPackage.Literals.BASE__NAME, newName);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@SuppressWarnings("unchecked")
+	public EList<IReport> getReports() {
+		return (EList<IReport>)eGet(MappingPackage.Literals.BASE__REPORTS, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	public EList<String> getContainerProviders() {
+		return (EList<String>)eGet(MappingPackage.Literals.BASE__CONTAINER_PROVIDERS, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == LocationContainer.class) {
+			switch (derivedFeatureID) {
+				case MappingPackage.BASE__CONTENTS:
+					return MappingPackage.LOCATION_CONTAINER__CONTENTS;
+				default:
+					return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == LocationContainer.class) {
+			switch (baseFeatureID) {
+				case MappingPackage.LOCATION_CONTAINER__CONTENTS:
+					return MappingPackage.BASE__CONTENTS;
+				default:
+					return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * {@link IBase} adapter.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class BaseAdapter extends AdapterImpl {
+
+		/**
+		 * The {@link IBaseListener} to forward notification to.
+		 */
+		private final IBaseListener listener;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param listener
+		 *            the {@link IBaseListener} to forward notification to
+		 */
+		private BaseAdapter(IBaseListener listener) {
+			this.listener = listener;
+		}
+
+		@SuppressWarnings("unchecked")
+		@Override
+		public void notifyChanged(Notification msg) {
+			final List<Adapter> eAdapters = new ArrayList<Adapter>(eAdapters());
+			switch (msg.getFeatureID(Base.class)) {
+				case MappingPackage.BASE__NAME:
+					listener.nameChanged((String)msg.getOldValue(), (String)msg.getNewValue());
+					break;
+				case MappingPackage.BASE__CONTENTS:
+					switch (msg.getEventType()) {
+						case Notification.ADD:
+							listener.contentsAdded((ILocation)msg.getNewValue());
+							break;
+						case Notification.ADD_MANY:
+							for (ILocation location : (List<ILocation>)msg.getNewValue()) {
+								listener.contentsAdded(location);
+							}
+							break;
+						case Notification.REMOVE:
+							listener.contentsRemoved((ILocation)msg.getOldValue());
+							break;
+						case Notification.REMOVE_MANY:
+							for (ILocation location : (List<ILocation>)msg.getOldValue()) {
+								listener.contentsRemoved(location);
+							}
+							break;
+					}
+					break;
+				case MappingPackage.BASE__REPORTS:
+					switch (msg.getEventType()) {
+						case Notification.ADD:
+							listener.reportAdded((IReport)msg.getNewValue());
+							break;
+						case Notification.ADD_MANY:
+							for (IReport report : (List<IReport>)msg.getNewValue()) {
+								listener.reportAdded(report);
+							}
+							break;
+						case Notification.REMOVE:
+							listener.reportRemoved((IReport)msg.getOldValue());
+							break;
+						case Notification.REMOVE_MANY:
+							for (IReport report : (List<IReport>)msg.getOldValue()) {
+								listener.reportRemoved(report);
+							}
+							break;
+					}
+					break;
+				case MappingPackage.BASE__CONTAINER_PROVIDERS:
+					switch (msg.getEventType()) {
+						case Notification.ADD:
+							listener.containerProviderAdded((String)msg.getNewValue());
+							break;
+						case Notification.ADD_MANY:
+							for (String provider : (List<String>)msg.getNewValue()) {
+								listener.containerProviderAdded(provider);
+							}
+							break;
+						case Notification.REMOVE:
+							listener.containerProviderRemoved((String)msg.getOldValue());
+							break;
+						case Notification.REMOVE_MANY:
+							for (String provider : (List<String>)msg.getOldValue()) {
+								listener.containerProviderRemoved(provider);
+							}
+							break;
+					}
+					break;
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IBase#addListener(org.eclipse.intent.mapping.base.IBaseListener)
+	 * @generated NOT
+	 */
+	public void addListener(IBaseListener listener) {
+		eAdapters().add(new BaseAdapter(listener));
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IBase#removeListener(org.eclipse.intent.mapping.base.IBaseListener)
+	 * @generated NOT
+	 */
+	public void removeListener(IBaseListener listener) {
+		final Iterator<Adapter> it = eAdapters().iterator();
+		while (it.hasNext()) {
+			final Adapter adapter = it.next();
+			if (adapter instanceof BaseAdapter && ((BaseAdapter)adapter).listener == listener) {
+				it.remove();
+				break;
+			}
+		}
+	}
+
+	/**
+	 * The {@link BaseElementFactory}.
+	 * 
+	 * @generated NOT
+	 */
+	private final BaseElementFactory factory = initElementFactory();
+
+	/**
+	 * Initializes a {@link BaseElementFactory}.
+	 * 
+	 * @return the created and initialized {@link BaseElementFactory}
+	 * @generated NOT
+	 */
+	private BaseElementFactory initElementFactory() {
+		BaseElementFactory res = new BaseElementFactory();
+
+		res.addDescriptor(ILink.class, new FactoryDescriptor<LinkImpl>(LinkImpl.class));
+		res.addDescriptor(IReport.class, new FactoryDescriptor<ReportImpl>(ReportImpl.class));
+		res.addDescriptor(ITextLocation.class, new FactoryDescriptor<TextLocationImpl>(
+				TextLocationImpl.class));
+		res.addDescriptor(IEObjectLocation.class, new FactoryDescriptor<EObjectLocationImpl>(
+				EObjectLocationImpl.class));
+		res.addDescriptor(ICouple.class, new FactoryDescriptor<CoupleImpl>(CoupleImpl.class));
+
+		res.addDescriptor(ICDORepositoryLocation.class, new FactoryDescriptor<CDORepositoryLocationImpl>(
+				CDORepositoryLocationImpl.class));
+		res.addDescriptor(ICDOFolderLocation.class, new FactoryDescriptor<CDOFolderLocationImpl>(
+				CDOFolderLocationImpl.class));
+		res.addDescriptor(ICDOBinaryResourceLocation.class,
+				new FactoryDescriptor<CDOBinaryResourceLocationImpl>(CDOBinaryResourceLocationImpl.class));
+		res.addDescriptor(ICDOTextResourceLocation.class, new FactoryDescriptor<CDOTextResourceLocationImpl>(
+				CDOTextResourceLocationImpl.class));
+		res.addDescriptor(ICDOResourceLocation.class, new FactoryDescriptor<CDOResourceLocationImpl>(
+				CDOResourceLocationImpl.class));
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IBase#getFactory()
+	 * @generated NOT
+	 */
+	public BaseElementFactory getFactory() {
+		return factory;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IBase#save()
+	 * @generated NOT
+	 */
+	public void save() throws IOException {
+		final Resource eResource = this.eResource();
+		if (eResource != null) {
+			eResource.save(null);
+		} else {
+			throw new IOException("mapping base " + getName()
+					+ " is not contained in a resource and can't be saved.");
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IBase#getContainerProviderRegistry()
+	 * @generated NOT
+	 */
+	public ContainerProviderRegistry getContainerProviderRegistry() {
+		return registry;
+	}
+
+} // BaseImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOBinaryResourceLocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOBinaryResourceLocationImpl.java
new file mode 100644
index 0000000..5b4a474
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOBinaryResourceLocationImpl.java
@@ -0,0 +1,69 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.intent.mapping.CDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>CDO Binary Resource
+ * Location</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.CDOBinaryResourceLocationImpl#getPath <em>Path</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CDOBinaryResourceLocationImpl extends LocationImpl implements CDOBinaryResourceLocation {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CDOBinaryResourceLocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.CDO_BINARY_RESOURCE_LOCATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getPath() {
+		return (String)eGet(MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setPath(String newPath) {
+		eSet(MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, newPath);
+	}
+
+} // CDOBinaryResourceLocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOFolderLocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOFolderLocationImpl.java
new file mode 100644
index 0000000..a59dab3
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOFolderLocationImpl.java
@@ -0,0 +1,69 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.intent.mapping.CDOFolderLocation;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>CDO Folder Location</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.CDOFolderLocationImpl#getPath <em>Path</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CDOFolderLocationImpl extends LocationImpl implements CDOFolderLocation {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CDOFolderLocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.CDO_FOLDER_LOCATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getPath() {
+		return (String)eGet(MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setPath(String newPath) {
+		eSet(MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, newPath);
+	}
+
+} // CDOFolderLocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDORepositoryLocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDORepositoryLocationImpl.java
new file mode 100644
index 0000000..a131475
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDORepositoryLocationImpl.java
@@ -0,0 +1,126 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.intent.mapping.CDORepositoryLocation;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>CDO Repository Location</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.CDORepositoryLocationImpl#getURL <em>URL</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.CDORepositoryLocationImpl#getUUID <em>UUID</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.CDORepositoryLocationImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.CDORepositoryLocationImpl#getBranchID <em>Branch ID</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CDORepositoryLocationImpl extends LocationImpl implements CDORepositoryLocation {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CDORepositoryLocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.CDO_REPOSITORY_LOCATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getURL() {
+		return (String)eGet(MappingPackage.Literals.CDO_REPOSITORY_LOCATION__URL, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setURL(String newURL) {
+		eSet(MappingPackage.Literals.CDO_REPOSITORY_LOCATION__URL, newURL);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getUUID() {
+		return (String)eGet(MappingPackage.Literals.CDO_REPOSITORY_LOCATION__UUID, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setUUID(String newUUID) {
+		eSet(MappingPackage.Literals.CDO_REPOSITORY_LOCATION__UUID, newUUID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return (String)eGet(MappingPackage.Literals.CDO_REPOSITORY_LOCATION__NAME, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setName(String newName) {
+		eSet(MappingPackage.Literals.CDO_REPOSITORY_LOCATION__NAME, newName);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getBranchID() {
+		return (Integer)eGet(MappingPackage.Literals.CDO_REPOSITORY_LOCATION__BRANCH_ID, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBranchID(int newBranchID) {
+		eSet(MappingPackage.Literals.CDO_REPOSITORY_LOCATION__BRANCH_ID, newBranchID);
+	}
+
+} // CDORepositoryLocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOResourceLocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOResourceLocationImpl.java
new file mode 100644
index 0000000..d5aac1f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOResourceLocationImpl.java
@@ -0,0 +1,144 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.intent.mapping.CDOResourceLocation;
+import org.eclipse.intent.mapping.EObjectContainer;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.emf.ICouple;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>CDO Resource Location</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.CDOResourceLocationImpl#getPath <em>Path</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.CDOResourceLocationImpl#getXMIContent <em>XMI Content</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.CDOResourceLocationImpl#getSavedURIFragments <em>Saved URI
+ * Fragments</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CDOResourceLocationImpl extends LocationImpl implements CDOResourceLocation {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CDOResourceLocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.CDO_RESOURCE_LOCATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getPath() {
+		return (String)eGet(MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setPath(String newPath) {
+		eSet(MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, newPath);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getXMIContent() {
+		return (String)eGet(MappingPackage.Literals.EOBJECT_CONTAINER__XMI_CONTENT, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setXMIContent(String newXMIContent) {
+		eSet(MappingPackage.Literals.EOBJECT_CONTAINER__XMI_CONTENT, newXMIContent);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@SuppressWarnings("unchecked")
+	public List<ICouple> getSavedURIFragments() {
+		return (List<ICouple>)eGet(MappingPackage.Literals.EOBJECT_CONTAINER__SAVED_URI_FRAGMENTS, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == EObjectContainer.class) {
+			switch (derivedFeatureID) {
+				case MappingPackage.CDO_RESOURCE_LOCATION__XMI_CONTENT:
+					return MappingPackage.EOBJECT_CONTAINER__XMI_CONTENT;
+				case MappingPackage.CDO_RESOURCE_LOCATION__SAVED_URI_FRAGMENTS:
+					return MappingPackage.EOBJECT_CONTAINER__SAVED_URI_FRAGMENTS;
+				default:
+					return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == EObjectContainer.class) {
+			switch (baseFeatureID) {
+				case MappingPackage.EOBJECT_CONTAINER__XMI_CONTENT:
+					return MappingPackage.CDO_RESOURCE_LOCATION__XMI_CONTENT;
+				case MappingPackage.EOBJECT_CONTAINER__SAVED_URI_FRAGMENTS:
+					return MappingPackage.CDO_RESOURCE_LOCATION__SAVED_URI_FRAGMENTS;
+				default:
+					return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+} // CDOResourceLocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOTextResourceLocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOTextResourceLocationImpl.java
new file mode 100644
index 0000000..1b1f157
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CDOTextResourceLocationImpl.java
@@ -0,0 +1,125 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.intent.mapping.CDOTextResourceLocation;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.TextContainer;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>CDO Text Resource Location</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.CDOTextResourceLocationImpl#getPath <em>Path</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.CDOTextResourceLocationImpl#getText <em>Text</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CDOTextResourceLocationImpl extends LocationImpl implements CDOTextResourceLocation {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CDOTextResourceLocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.CDO_TEXT_RESOURCE_LOCATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getPath() {
+		return (String)eGet(MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setPath(String newPath) {
+		eSet(MappingPackage.Literals.CDO_RESOURCE_NODE_LOCATION__PATH, newPath);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getText() {
+		return (String)eGet(MappingPackage.Literals.TEXT_CONTAINER__TEXT, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setText(String newText) {
+		eSet(MappingPackage.Literals.TEXT_CONTAINER__TEXT, newText);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == TextContainer.class) {
+			switch (derivedFeatureID) {
+				case MappingPackage.CDO_TEXT_RESOURCE_LOCATION__TEXT:
+					return MappingPackage.TEXT_CONTAINER__TEXT;
+				default:
+					return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == TextContainer.class) {
+			switch (baseFeatureID) {
+				case MappingPackage.TEXT_CONTAINER__TEXT:
+					return MappingPackage.CDO_TEXT_RESOURCE_LOCATION__TEXT;
+				default:
+					return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+} // CDOTextResourceLocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CoupleImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CoupleImpl.java
new file mode 100644
index 0000000..6fc6f58
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/CoupleImpl.java
@@ -0,0 +1,99 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.internal.cdo.CDOObjectImpl;
+import org.eclipse.intent.mapping.Couple;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Couple</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.CoupleImpl#getKey <em>Key</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.CoupleImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CoupleImpl extends CDOObjectImpl implements Couple {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CoupleImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.COUPLE;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected int eStaticFeatureCount() {
+		return 0;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getKey() {
+		return (String)eGet(MappingPackage.Literals.COUPLE__KEY, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setKey(String newKey) {
+		eSet(MappingPackage.Literals.COUPLE__KEY, newKey);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getValue() {
+		return (String)eGet(MappingPackage.Literals.COUPLE__VALUE, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setValue(String newValue) {
+		eSet(MappingPackage.Literals.COUPLE__VALUE, newValue);
+	}
+
+} // CoupleImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/EObjectLocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/EObjectLocationImpl.java
new file mode 100644
index 0000000..8da0635
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/EObjectLocationImpl.java
@@ -0,0 +1,148 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.intent.mapping.EObjectLocation;
+import org.eclipse.intent.mapping.MappingPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>EObject Location</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.EObjectLocationImpl#getURIFragment <em>URI Fragment</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.EObjectLocationImpl#getSavedURIFragment <em>Saved URI
+ * Fragment</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.EObjectLocationImpl#getFeatureName <em>Feature Name</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.EObjectLocationImpl#getIndex <em>Index</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class EObjectLocationImpl extends LocationImpl implements EObjectLocation {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EObjectLocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.EOBJECT_LOCATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getURIFragment() {
+		return (String)eGet(MappingPackage.Literals.EOBJECT_LOCATION__URI_FRAGMENT, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setURIFragment(String newURIFragment) {
+		eSet(MappingPackage.Literals.EOBJECT_LOCATION__URI_FRAGMENT, newURIFragment);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getSavedURIFragment() {
+		return (String)eGet(MappingPackage.Literals.EOBJECT_LOCATION__SAVED_URI_FRAGMENT, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setSavedURIFragment(String newSavedURIFragment) {
+		eSet(MappingPackage.Literals.EOBJECT_LOCATION__SAVED_URI_FRAGMENT, newSavedURIFragment);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getFeatureName() {
+		return (String)eGet(MappingPackage.Literals.EOBJECT_LOCATION__FEATURE_NAME, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setFeatureName(String newFeatureName) {
+		eSet(MappingPackage.Literals.EOBJECT_LOCATION__FEATURE_NAME, newFeatureName);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getIndex() {
+		return (Integer)eGet(MappingPackage.Literals.EOBJECT_LOCATION__INDEX, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setIndex(int newIndex) {
+		eSet(MappingPackage.Literals.EOBJECT_LOCATION__INDEX, newIndex);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (URIFragment: ");
+		result.append(getURIFragment());
+		result.append(", featureName: ");
+		result.append(getFeatureName());
+		result.append(", index: ");
+		result.append(getIndex());
+		result.append(')');
+		return result.toString();
+	}
+
+} // EObjectLocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/LinkImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/LinkImpl.java
new file mode 100644
index 0000000..9912465
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/LinkImpl.java
@@ -0,0 +1,331 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.notify.impl.AdapterImpl;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.internal.cdo.CDOObjectImpl;
+import org.eclipse.intent.mapping.Link;
+import org.eclipse.intent.mapping.Location;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILinkListener;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.IReport;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Link</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.LinkImpl#getDescription <em>Description</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.LinkImpl#getSource <em>Source</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.LinkImpl#getTarget <em>Target</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.LinkImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.LinkImpl#getReports <em>Reports</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class LinkImpl extends CDOObjectImpl implements Link {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public LinkImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.LINK;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected int eStaticFeatureCount() {
+		return 0;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getDescription() {
+		return (String)eGet(MappingPackage.Literals.LINK__DESCRIPTION, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setDescription(String newDescription) {
+		eSet(MappingPackage.Literals.LINK__DESCRIPTION, newDescription);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Location getSource() {
+		return (Location)eGet(MappingPackage.Literals.LINK__SOURCE, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setSource(Location newSource) {
+		eSet(MappingPackage.Literals.LINK__SOURCE, newSource);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public void setSource(ILocation newSource) {
+		eSet(MappingPackage.Literals.LINK__SOURCE, newSource);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.emf.ecore.impl.BasicEObjectImpl#eInverseRemove(org.eclipse.emf.ecore.InternalEObject,
+	 *      int, org.eclipse.emf.common.notify.NotificationChain)
+	 * @generated NOT
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		final ILocation oldLocation;
+		if (featureID == MappingPackage.LINK__SOURCE) {
+			oldLocation = getSource();
+		} else if (featureID == MappingPackage.LINK__TARGET) {
+			oldLocation = getTarget();
+		} else {
+			oldLocation = null;
+		}
+
+		final NotificationChain result = super.eInverseRemove(otherEnd, featureID, msgs);
+
+		if (oldLocation != null) {
+			final ILocationContainer container = oldLocation.getContainer();
+			if (container != null && oldLocation.getTargetLinks().isEmpty() && oldLocation.getSourceLinks()
+					.isEmpty()) {
+				container.getContents().remove(oldLocation);
+			}
+		}
+
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Location getTarget() {
+		return (Location)eGet(MappingPackage.Literals.LINK__TARGET, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setTarget(Location newTarget) {
+		eSet(MappingPackage.Literals.LINK__TARGET, newTarget);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public void setTarget(ILocation newTarget) {
+		eSet(MappingPackage.Literals.LINK__TARGET, newTarget);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Serializable getType() {
+		return (Serializable)eGet(MappingPackage.Literals.LINK__TYPE, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setType(Serializable newType) {
+		eSet(MappingPackage.Literals.LINK__TYPE, newType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@SuppressWarnings("unchecked")
+	public EList<IReport> getReports() {
+		return (EList<IReport>)eGet(MappingPackage.Literals.LINK__REPORTS, true);
+	}
+
+	/**
+	 * {@link ILink} adapter.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class LinkAdapter extends AdapterImpl {
+
+		/**
+		 * The {@link ILinkListener} to forward notification to.
+		 */
+		private final ILinkListener listener;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param listener
+		 *            the {@link ILinkListener} to forward notification to
+		 */
+		private LinkAdapter(ILinkListener listener) {
+			this.listener = listener;
+		}
+
+		@SuppressWarnings("unchecked")
+		@Override
+		public void notifyChanged(Notification msg) {
+			final List<Adapter> eAdapters = new ArrayList<Adapter>(eAdapters());
+			switch (msg.getFeatureID(Link.class)) {
+				case MappingPackage.LINK__DESCRIPTION:
+					for (Adapter adapter : eAdapters) {
+						if (adapter instanceof LinkAdapter) {
+							((LinkAdapter)adapter).listener.descriptionChanged((String)msg.getOldValue(),
+									(String)msg.getNewValue());
+						}
+					}
+					break;
+				case MappingPackage.LINK__SOURCE:
+					for (Adapter adapter : eAdapters) {
+						if (adapter instanceof LinkAdapter) {
+							((LinkAdapter)adapter).listener.sourceChanged((Location)msg.getOldValue(),
+									(Location)msg.getNewValue());
+						}
+					}
+					break;
+				case MappingPackage.LINK__TARGET:
+					for (Adapter adapter : eAdapters) {
+						if (adapter instanceof LinkAdapter) {
+							((LinkAdapter)adapter).listener.targetChanged((Location)msg.getOldValue(),
+									(Location)msg.getNewValue());
+						}
+					}
+					break;
+				case MappingPackage.LINK__REPORTS:
+					switch (msg.getEventType()) {
+						case Notification.ADD:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LinkAdapter) {
+									((LinkAdapter)adapter).listener.reportAdded((IReport)msg.getNewValue());
+								}
+							}
+							break;
+						case Notification.ADD_MANY:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LinkAdapter) {
+									for (IReport report : (List<IReport>)msg.getNewValue()) {
+										((LinkAdapter)adapter).listener.reportAdded(report);
+									}
+								}
+							}
+							break;
+						case Notification.REMOVE:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LinkAdapter) {
+									((LinkAdapter)adapter).listener.reportRemoved((IReport)msg.getOldValue());
+								}
+							}
+							break;
+						case Notification.REMOVE_MANY:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LinkAdapter) {
+									for (IReport report : (List<IReport>)msg.getOldValue()) {
+										((LinkAdapter)adapter).listener.reportRemoved(report);
+									}
+								}
+							}
+					}
+					break;
+			}
+		}
+
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILink#addListener(org.eclipse.intent.mapping.base.ILinkListener)
+	 * @generated NOT
+	 */
+	public void addListener(ILinkListener listener) {
+		eAdapters().add(new LinkAdapter(listener));
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILink#removeListener(org.eclipse.intent.mapping.base.ILinkListener)
+	 * @generated NOT
+	 */
+	public void removeListener(ILinkListener listener) {
+		final Iterator<Adapter> it = eAdapters().iterator();
+		while (it.hasNext()) {
+			final Adapter adapter = it.next();
+			if (adapter instanceof LinkAdapter && ((LinkAdapter)adapter).listener == listener) {
+				it.remove();
+				break;
+			}
+		}
+	}
+
+} // LinkImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/LocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/LocationImpl.java
new file mode 100644
index 0000000..aeb792c
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/LocationImpl.java
@@ -0,0 +1,415 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.impl.AdapterImpl;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.internal.cdo.CDOObjectImpl;
+import org.eclipse.intent.mapping.Location;
+import org.eclipse.intent.mapping.LocationContainer;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationListener;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Location</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.LocationImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.LocationImpl#getScope <em>Scope</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.LocationImpl#getSourceLinks <em>Source Links</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.LocationImpl#getTargetLinks <em>Target Links</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.LocationImpl#getContents <em>Contents</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.LocationImpl#getContainer <em>Container</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.LocationImpl#getReferencingScopes <em>Referencing
+ * Scopes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class LocationImpl extends CDOObjectImpl implements Location {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public LocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.LOCATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected int eStaticFeatureCount() {
+		return 0;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@SuppressWarnings("unchecked")
+	public EList<ILink> getSourceLinks() {
+		return (EList<ILink>)eGet(MappingPackage.Literals.LOCATION__SOURCE_LINKS, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@SuppressWarnings("unchecked")
+	public EList<ILink> getTargetLinks() {
+		return (EList<ILink>)eGet(MappingPackage.Literals.LOCATION__TARGET_LINKS, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@SuppressWarnings("unchecked")
+	public EList<ILocation> getContents() {
+		return (EList<ILocation>)eGet(MappingPackage.Literals.LOCATION_CONTAINER__CONTENTS, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public LocationContainer getContainer() {
+		return (LocationContainer)eGet(MappingPackage.Literals.LOCATION__CONTAINER, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setContainer(LocationContainer newContainer) {
+		eSet(MappingPackage.Literals.LOCATION__CONTAINER, newContainer);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public void setContainer(ILocationContainer newContainer) {
+		eSet(MappingPackage.Literals.LOCATION__CONTAINER, newContainer);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Serializable getType() {
+		return (Serializable)eGet(MappingPackage.Literals.LOCATION__TYPE, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setType(Serializable newType) {
+		eSet(MappingPackage.Literals.LOCATION__TYPE, newType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean isMarkedAsDeleted() {
+		return (Boolean)eGet(MappingPackage.Literals.LOCATION__MARKED_AS_DELETED, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setMarkedAsDeleted(boolean newMarkedAsDeleted) {
+		eSet(MappingPackage.Literals.LOCATION__MARKED_AS_DELETED, newMarkedAsDeleted);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == LocationContainer.class) {
+			switch (derivedFeatureID) {
+				case MappingPackage.LOCATION__CONTENTS:
+					return MappingPackage.LOCATION_CONTAINER__CONTENTS;
+				default:
+					return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == LocationContainer.class) {
+			switch (baseFeatureID) {
+				case MappingPackage.LOCATION_CONTAINER__CONTENTS:
+					return MappingPackage.LOCATION__CONTENTS;
+				default:
+					return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * {@link ILocation} adapter.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class LocationAdapter extends AdapterImpl {
+
+		/**
+		 * The {@link ILocationListener} to forward notification to.
+		 */
+		private final ILocationListener listener;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param listener
+		 *            the {@link ILocationListener} to forward notification to
+		 */
+		private LocationAdapter(ILocationListener listener) {
+			this.listener = listener;
+		}
+
+		@SuppressWarnings("unchecked")
+		@Override
+		public void notifyChanged(Notification msg) {
+			final List<Adapter> eAdapters = new ArrayList<Adapter>(eAdapters());
+			switch (msg.getFeatureID(Location.class)) {
+				case MappingPackage.LOCATION__SOURCE_LINKS:
+					switch (msg.getEventType()) {
+						case Notification.ADD:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									((LocationAdapter)adapter).listener.sourceLinkAdded((ILink)msg
+											.getNewValue());
+								}
+							}
+							break;
+						case Notification.ADD_MANY:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									for (ILink link : (List<ILink>)msg.getNewValue()) {
+										((LocationAdapter)adapter).listener.sourceLinkAdded(link);
+									}
+								}
+							}
+							break;
+						case Notification.REMOVE:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									((LocationAdapter)adapter).listener.sourceLinkRemoved((ILink)msg
+											.getOldValue());
+								}
+							}
+							break;
+						case Notification.REMOVE_MANY:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									for (ILink link : (List<ILink>)msg.getOldValue()) {
+										((LocationAdapter)adapter).listener.sourceLinkRemoved(link);
+									}
+								}
+							}
+							break;
+					}
+					break;
+				case MappingPackage.LOCATION__TARGET_LINKS:
+					switch (msg.getEventType()) {
+						case Notification.ADD:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									((LocationAdapter)adapter).listener.targetLinkAdded((ILink)msg
+											.getNewValue());
+								}
+							}
+							break;
+						case Notification.ADD_MANY:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									for (ILink link : (List<ILink>)msg.getNewValue()) {
+										((LocationAdapter)adapter).listener.targetLinkAdded(link);
+									}
+								}
+							}
+							break;
+						case Notification.REMOVE:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									((LocationAdapter)adapter).listener.targetLinkRemoved((ILink)msg
+											.getOldValue());
+								}
+							}
+							break;
+						case Notification.REMOVE_MANY:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									for (ILink link : (List<ILink>)msg.getOldValue()) {
+										((LocationAdapter)adapter).listener.targetLinkRemoved(link);
+									}
+								}
+							}
+							break;
+					}
+					break;
+				case MappingPackage.LOCATION__CONTENTS:
+					switch (msg.getEventType()) {
+						case Notification.ADD:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									((LocationAdapter)adapter).listener.contentsAdded((ILocation)msg
+											.getNewValue());
+								}
+							}
+							break;
+						case Notification.ADD_MANY:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									for (ILocation location : (List<ILocation>)msg.getNewValue()) {
+										((LocationAdapter)adapter).listener.contentsAdded(location);
+									}
+								}
+							}
+							break;
+						case Notification.REMOVE:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									((LocationAdapter)adapter).listener.contentsRemoved((ILocation)msg
+											.getOldValue());
+								}
+							}
+							break;
+						case Notification.REMOVE_MANY:
+							for (Adapter adapter : eAdapters) {
+								if (adapter instanceof LocationAdapter) {
+									for (ILocation location : (List<ILocation>)msg.getOldValue()) {
+										((LocationAdapter)adapter).listener.contentsRemoved(location);
+									}
+								}
+							}
+							break;
+					}
+					break;
+				case MappingPackage.LOCATION__CONTAINER:
+					for (Adapter adapter : eAdapters) {
+						if (adapter instanceof LocationAdapter) {
+							((LocationAdapter)adapter).listener.containerChanged((ILocationContainer)msg
+									.getOldValue(), (ILocationContainer)msg.getNewValue());
+						}
+					}
+					break;
+				case MappingPackage.LOCATION__MARKED_AS_DELETED:
+					for (Adapter adapter : eAdapters) {
+						if (adapter instanceof LocationAdapter) {
+							((LocationAdapter)adapter).listener.markedAsDeletedChanged((Boolean)msg
+									.getNewValue());
+						}
+					}
+					break;
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILocation#addListener(org.eclipse.intent.mapping.base.ILocationListener)
+	 * @generated NOT
+	 */
+	public void addListener(ILocationListener listener) {
+		eAdapters().add(new LocationAdapter(listener));
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILocation#removeListener(org.eclipse.intent.mapping.base.ILocationListener)
+	 * @generated NOT
+	 */
+	public void removeListener(ILocationListener listener) {
+		final Iterator<Adapter> it = eAdapters().iterator();
+		while (it.hasNext()) {
+			final Adapter adapter = it.next();
+			if (adapter instanceof LocationAdapter && ((LocationAdapter)adapter).listener == listener) {
+				it.remove();
+				break;
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILocation#change(java.lang.String)
+	 * @generated NOT
+	 */
+	public void change(String reportDescription) {
+		final List<Adapter> eAdapters = new ArrayList<Adapter>(eAdapters());
+		for (Adapter adapter : eAdapters) {
+			if (adapter instanceof LocationAdapter) {
+				((LocationAdapter)adapter).listener.changed(reportDescription);
+			}
+		}
+	}
+
+} // LocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/MappingFactoryImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/MappingFactoryImpl.java
new file mode 100644
index 0000000..c87c2bb
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/MappingFactoryImpl.java
@@ -0,0 +1,286 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import java.io.Serializable;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.CDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.CDOFolderLocation;
+import org.eclipse.intent.mapping.CDORepositoryLocation;
+import org.eclipse.intent.mapping.CDOResourceLocation;
+import org.eclipse.intent.mapping.CDOTextResourceLocation;
+import org.eclipse.intent.mapping.Couple;
+import org.eclipse.intent.mapping.EObjectLocation;
+import org.eclipse.intent.mapping.Link;
+import org.eclipse.intent.mapping.MappingFactory;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.Report;
+import org.eclipse.intent.mapping.TextLocation;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Factory</b>. <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class MappingFactoryImpl extends EFactoryImpl implements MappingFactory {
+	/**
+	 * Creates the default factory implementation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static MappingFactory init() {
+		try {
+			MappingFactory theMappingFactory = (MappingFactory)EPackage.Registry.INSTANCE.getEFactory(
+					MappingPackage.eNS_URI);
+			if (theMappingFactory != null) {
+				return theMappingFactory;
+			}
+		} catch (Exception exception) {
+			EcorePlugin.INSTANCE.log(exception);
+		}
+		return new MappingFactoryImpl();
+	}
+
+	/**
+	 * Creates an instance of the factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MappingFactoryImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public EObject create(EClass eClass) {
+		switch (eClass.getClassifierID()) {
+			case MappingPackage.LINK:
+				return (EObject)createLink();
+			case MappingPackage.BASE:
+				return (EObject)createBase();
+			case MappingPackage.TEXT_LOCATION:
+				return (EObject)createTextLocation();
+			case MappingPackage.EOBJECT_LOCATION:
+				return (EObject)createEObjectLocation();
+			case MappingPackage.REPORT:
+				return (EObject)createReport();
+			case MappingPackage.COUPLE:
+				return (EObject)createCouple();
+			case MappingPackage.CDO_FOLDER_LOCATION:
+				return (EObject)createCDOFolderLocation();
+			case MappingPackage.CDO_REPOSITORY_LOCATION:
+				return (EObject)createCDORepositoryLocation();
+			case MappingPackage.CDO_BINARY_RESOURCE_LOCATION:
+				return (EObject)createCDOBinaryResourceLocation();
+			case MappingPackage.CDO_TEXT_RESOURCE_LOCATION:
+				return (EObject)createCDOTextResourceLocation();
+			case MappingPackage.CDO_RESOURCE_LOCATION:
+				return (EObject)createCDOResourceLocation();
+			default:
+				throw new IllegalArgumentException("The class '" + eClass.getName()
+						+ "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object createFromString(EDataType eDataType, String initialValue) {
+		switch (eDataType.getClassifierID()) {
+			case MappingPackage.TYPE:
+				return createTypeFromString(eDataType, initialValue);
+			default:
+				throw new IllegalArgumentException("The datatype '" + eDataType.getName()
+						+ "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String convertToString(EDataType eDataType, Object instanceValue) {
+		switch (eDataType.getClassifierID()) {
+			case MappingPackage.TYPE:
+				return convertTypeToString(eDataType, instanceValue);
+			default:
+				throw new IllegalArgumentException("The datatype '" + eDataType.getName()
+						+ "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Link createLink() {
+		LinkImpl link = new LinkImpl();
+		return link;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Base createBase() {
+		BaseImpl base = new BaseImpl();
+		return base;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public TextLocation createTextLocation() {
+		TextLocationImpl textLocation = new TextLocationImpl();
+		return textLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EObjectLocation createEObjectLocation() {
+		EObjectLocationImpl eObjectLocation = new EObjectLocationImpl();
+		return eObjectLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Report createReport() {
+		ReportImpl report = new ReportImpl();
+		return report;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Couple createCouple() {
+		CoupleImpl couple = new CoupleImpl();
+		return couple;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CDOFolderLocation createCDOFolderLocation() {
+		CDOFolderLocationImpl cdoFolderLocation = new CDOFolderLocationImpl();
+		return cdoFolderLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CDORepositoryLocation createCDORepositoryLocation() {
+		CDORepositoryLocationImpl cdoRepositoryLocation = new CDORepositoryLocationImpl();
+		return cdoRepositoryLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CDOBinaryResourceLocation createCDOBinaryResourceLocation() {
+		CDOBinaryResourceLocationImpl cdoBinaryResourceLocation = new CDOBinaryResourceLocationImpl();
+		return cdoBinaryResourceLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CDOTextResourceLocation createCDOTextResourceLocation() {
+		CDOTextResourceLocationImpl cdoTextResourceLocation = new CDOTextResourceLocationImpl();
+		return cdoTextResourceLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CDOResourceLocation createCDOResourceLocation() {
+		CDOResourceLocationImpl cdoResourceLocation = new CDOResourceLocationImpl();
+		return cdoResourceLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Serializable createTypeFromString(EDataType eDataType, String initialValue) {
+		return (Serializable)super.createFromString(eDataType, initialValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertTypeToString(EDataType eDataType, Object instanceValue) {
+		return super.convertToString(eDataType, instanceValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MappingPackage getMappingPackage() {
+		return (MappingPackage)getEPackage();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @deprecated
+	 * @generated
+	 */
+	@Deprecated
+	public static MappingPackage getPackage() {
+		return MappingPackage.eINSTANCE;
+	}
+
+} // MappingFactoryImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/MappingPackageImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/MappingPackageImpl.java
new file mode 100644
index 0000000..ad667ef
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/MappingPackageImpl.java
@@ -0,0 +1,1008 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import java.io.Serializable;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.CDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.CDOFileLocation;
+import org.eclipse.intent.mapping.CDOFolderLocation;
+import org.eclipse.intent.mapping.CDORepositoryLocation;
+import org.eclipse.intent.mapping.CDOResourceLocation;
+import org.eclipse.intent.mapping.CDOResourceNodeLocation;
+import org.eclipse.intent.mapping.CDOTextResourceLocation;
+import org.eclipse.intent.mapping.Couple;
+import org.eclipse.intent.mapping.EObjectContainer;
+import org.eclipse.intent.mapping.EObjectLocation;
+import org.eclipse.intent.mapping.IEMFBaseElement;
+import org.eclipse.intent.mapping.Link;
+import org.eclipse.intent.mapping.Location;
+import org.eclipse.intent.mapping.LocationContainer;
+import org.eclipse.intent.mapping.MappingFactory;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.Report;
+import org.eclipse.intent.mapping.TextContainer;
+import org.eclipse.intent.mapping.TextLocation;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Package</b>. <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class MappingPackageImpl extends EPackageImpl implements MappingPackage {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass locationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass linkEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass baseEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass iemfBaseElementEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass textLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass textContainerEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass eObjectLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass locationContainerEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass reportEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass coupleEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass eObjectContainerEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass cdoResourceNodeLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass cdoFileLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass cdoFolderLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass cdoRepositoryLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass cdoBinaryResourceLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass cdoTextResourceLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass cdoResourceLocationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EDataType typeEDataType = null;
+
+	/**
+	 * Creates an instance of the model <b>Package</b>, registered with
+	 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package package URI value.
+	 * <p>
+	 * Note: the correct way to create the package is via the static factory method {@link #init init()},
+	 * which also performs initialization of the package, or returns the registered package, if one already
+	 * exists. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.emf.ecore.EPackage.Registry
+	 * @see org.eclipse.intent.mapping.MappingPackage#eNS_URI
+	 * @see #init()
+	 * @generated
+	 */
+	private MappingPackageImpl() {
+		super(eNS_URI, MappingFactory.eINSTANCE);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static boolean isInited = false;
+
+	/**
+	 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it
+	 * depends.
+	 * <p>
+	 * This method is used to initialize {@link MappingPackage#eINSTANCE} when that field is accessed. Clients
+	 * should not invoke it directly. Instead, they should simply access that field to obtain the package.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #eNS_URI
+	 * @see #createPackageContents()
+	 * @see #initializePackageContents()
+	 * @generated
+	 */
+	public static MappingPackage init() {
+		if (isInited)
+			return (MappingPackage)EPackage.Registry.INSTANCE.getEPackage(MappingPackage.eNS_URI);
+
+		// Obtain or create and register package
+		MappingPackageImpl theMappingPackage = (MappingPackageImpl)(EPackage.Registry.INSTANCE.get(
+				eNS_URI) instanceof MappingPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI)
+						: new MappingPackageImpl());
+
+		isInited = true;
+
+		// Create package meta-data objects
+		theMappingPackage.createPackageContents();
+
+		// Initialize created meta-data
+		theMappingPackage.initializePackageContents();
+
+		// Mark meta-data to indicate it can't be changed
+		theMappingPackage.freeze();
+
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(MappingPackage.eNS_URI, theMappingPackage);
+		return theMappingPackage;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getLocation() {
+		return locationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getLocation_SourceLinks() {
+		return (EReference)locationEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getLocation_TargetLinks() {
+		return (EReference)locationEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getLocation_Container() {
+		return (EReference)locationEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getLocation_Type() {
+		return (EAttribute)locationEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getLocation_MarkedAsDeleted() {
+		return (EAttribute)locationEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getLink() {
+		return linkEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getLink_Description() {
+		return (EAttribute)linkEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getLink_Source() {
+		return (EReference)linkEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getLink_Target() {
+		return (EReference)linkEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getLink_Type() {
+		return (EAttribute)linkEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getLink_Reports() {
+		return (EReference)linkEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getBase() {
+		return baseEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getBase_Name() {
+		return (EAttribute)baseEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getBase_Reports() {
+		return (EReference)baseEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getBase_ContainerProviders() {
+		return (EAttribute)baseEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getIEMFBaseElement() {
+		return iemfBaseElementEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getTextLocation() {
+		return textLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getTextLocation_StartOffset() {
+		return (EAttribute)textLocationEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getTextLocation_EndOffset() {
+		return (EAttribute)textLocationEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getTextContainer() {
+		return textContainerEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getTextContainer_Text() {
+		return (EAttribute)textContainerEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getEObjectLocation() {
+		return eObjectLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getEObjectLocation_URIFragment() {
+		return (EAttribute)eObjectLocationEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getEObjectLocation_SavedURIFragment() {
+		return (EAttribute)eObjectLocationEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getEObjectLocation_FeatureName() {
+		return (EAttribute)eObjectLocationEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getEObjectLocation_Index() {
+		return (EAttribute)eObjectLocationEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getLocationContainer() {
+		return locationContainerEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getLocationContainer_Contents() {
+		return (EReference)locationContainerEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getReport() {
+		return reportEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getReport_Description() {
+		return (EAttribute)reportEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getReport_Link() {
+		return (EReference)reportEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getCouple() {
+		return coupleEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getCouple_Key() {
+		return (EAttribute)coupleEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getCouple_Value() {
+		return (EAttribute)coupleEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getEObjectContainer() {
+		return eObjectContainerEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getEObjectContainer_XMIContent() {
+		return (EAttribute)eObjectContainerEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getEObjectContainer_SavedURIFragments() {
+		return (EReference)eObjectContainerEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getCDOResourceNodeLocation() {
+		return cdoResourceNodeLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getCDOResourceNodeLocation_Path() {
+		return (EAttribute)cdoResourceNodeLocationEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getCDOFileLocation() {
+		return cdoFileLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getCDOFolderLocation() {
+		return cdoFolderLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getCDORepositoryLocation() {
+		return cdoRepositoryLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getCDORepositoryLocation_URL() {
+		return (EAttribute)cdoRepositoryLocationEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getCDORepositoryLocation_UUID() {
+		return (EAttribute)cdoRepositoryLocationEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getCDORepositoryLocation_Name() {
+		return (EAttribute)cdoRepositoryLocationEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getCDORepositoryLocation_BranchID() {
+		return (EAttribute)cdoRepositoryLocationEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getCDOBinaryResourceLocation() {
+		return cdoBinaryResourceLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getCDOTextResourceLocation() {
+		return cdoTextResourceLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getCDOResourceLocation() {
+		return cdoResourceLocationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EDataType getType() {
+		return typeEDataType;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MappingFactory getMappingFactory() {
+		return (MappingFactory)getEFactoryInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private boolean isCreated = false;
+
+	/**
+	 * Creates the meta-model objects for the package. This method is guarded to have no affect on any
+	 * invocation but its first. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void createPackageContents() {
+		if (isCreated)
+			return;
+		isCreated = true;
+
+		// Create classes and their features
+		locationEClass = createEClass(LOCATION);
+		createEReference(locationEClass, LOCATION__SOURCE_LINKS);
+		createEReference(locationEClass, LOCATION__TARGET_LINKS);
+		createEReference(locationEClass, LOCATION__CONTAINER);
+		createEAttribute(locationEClass, LOCATION__TYPE);
+		createEAttribute(locationEClass, LOCATION__MARKED_AS_DELETED);
+
+		linkEClass = createEClass(LINK);
+		createEAttribute(linkEClass, LINK__DESCRIPTION);
+		createEReference(linkEClass, LINK__SOURCE);
+		createEReference(linkEClass, LINK__TARGET);
+		createEAttribute(linkEClass, LINK__TYPE);
+		createEReference(linkEClass, LINK__REPORTS);
+
+		baseEClass = createEClass(BASE);
+		createEAttribute(baseEClass, BASE__NAME);
+		createEReference(baseEClass, BASE__REPORTS);
+		createEAttribute(baseEClass, BASE__CONTAINER_PROVIDERS);
+
+		iemfBaseElementEClass = createEClass(IEMF_BASE_ELEMENT);
+
+		textLocationEClass = createEClass(TEXT_LOCATION);
+		createEAttribute(textLocationEClass, TEXT_LOCATION__START_OFFSET);
+		createEAttribute(textLocationEClass, TEXT_LOCATION__END_OFFSET);
+
+		textContainerEClass = createEClass(TEXT_CONTAINER);
+		createEAttribute(textContainerEClass, TEXT_CONTAINER__TEXT);
+
+		eObjectLocationEClass = createEClass(EOBJECT_LOCATION);
+		createEAttribute(eObjectLocationEClass, EOBJECT_LOCATION__URI_FRAGMENT);
+		createEAttribute(eObjectLocationEClass, EOBJECT_LOCATION__SAVED_URI_FRAGMENT);
+		createEAttribute(eObjectLocationEClass, EOBJECT_LOCATION__FEATURE_NAME);
+		createEAttribute(eObjectLocationEClass, EOBJECT_LOCATION__INDEX);
+
+		locationContainerEClass = createEClass(LOCATION_CONTAINER);
+		createEReference(locationContainerEClass, LOCATION_CONTAINER__CONTENTS);
+
+		reportEClass = createEClass(REPORT);
+		createEAttribute(reportEClass, REPORT__DESCRIPTION);
+		createEReference(reportEClass, REPORT__LINK);
+
+		coupleEClass = createEClass(COUPLE);
+		createEAttribute(coupleEClass, COUPLE__KEY);
+		createEAttribute(coupleEClass, COUPLE__VALUE);
+
+		eObjectContainerEClass = createEClass(EOBJECT_CONTAINER);
+		createEAttribute(eObjectContainerEClass, EOBJECT_CONTAINER__XMI_CONTENT);
+		createEReference(eObjectContainerEClass, EOBJECT_CONTAINER__SAVED_URI_FRAGMENTS);
+
+		cdoResourceNodeLocationEClass = createEClass(CDO_RESOURCE_NODE_LOCATION);
+		createEAttribute(cdoResourceNodeLocationEClass, CDO_RESOURCE_NODE_LOCATION__PATH);
+
+		cdoFileLocationEClass = createEClass(CDO_FILE_LOCATION);
+
+		cdoFolderLocationEClass = createEClass(CDO_FOLDER_LOCATION);
+
+		cdoRepositoryLocationEClass = createEClass(CDO_REPOSITORY_LOCATION);
+		createEAttribute(cdoRepositoryLocationEClass, CDO_REPOSITORY_LOCATION__URL);
+		createEAttribute(cdoRepositoryLocationEClass, CDO_REPOSITORY_LOCATION__UUID);
+		createEAttribute(cdoRepositoryLocationEClass, CDO_REPOSITORY_LOCATION__NAME);
+		createEAttribute(cdoRepositoryLocationEClass, CDO_REPOSITORY_LOCATION__BRANCH_ID);
+
+		cdoBinaryResourceLocationEClass = createEClass(CDO_BINARY_RESOURCE_LOCATION);
+
+		cdoTextResourceLocationEClass = createEClass(CDO_TEXT_RESOURCE_LOCATION);
+
+		cdoResourceLocationEClass = createEClass(CDO_RESOURCE_LOCATION);
+
+		// Create data types
+		typeEDataType = createEDataType(TYPE);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private boolean isInitialized = false;
+
+	/**
+	 * Complete the initialization of the package and its meta-model. This method is guarded to have no affect
+	 * on any invocation but its first. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void initializePackageContents() {
+		if (isInitialized)
+			return;
+		isInitialized = true;
+
+		// Initialize package
+		setName(eNAME);
+		setNsPrefix(eNS_PREFIX);
+		setNsURI(eNS_URI);
+
+		// Create type parameters
+
+		// Set bounds for type parameters
+
+		// Add supertypes to classes
+		locationEClass.getESuperTypes().add(this.getIEMFBaseElement());
+		locationEClass.getESuperTypes().add(this.getLocationContainer());
+		linkEClass.getESuperTypes().add(this.getIEMFBaseElement());
+		baseEClass.getESuperTypes().add(this.getIEMFBaseElement());
+		baseEClass.getESuperTypes().add(this.getLocationContainer());
+		textLocationEClass.getESuperTypes().add(this.getLocation());
+		textContainerEClass.getESuperTypes().add(this.getLocation());
+		eObjectLocationEClass.getESuperTypes().add(this.getLocation());
+		reportEClass.getESuperTypes().add(this.getIEMFBaseElement());
+		eObjectContainerEClass.getESuperTypes().add(this.getLocation());
+		cdoResourceNodeLocationEClass.getESuperTypes().add(this.getLocation());
+		cdoFileLocationEClass.getESuperTypes().add(this.getCDOResourceNodeLocation());
+		cdoFolderLocationEClass.getESuperTypes().add(this.getCDOResourceNodeLocation());
+		cdoRepositoryLocationEClass.getESuperTypes().add(this.getLocation());
+		cdoBinaryResourceLocationEClass.getESuperTypes().add(this.getCDOFileLocation());
+		cdoTextResourceLocationEClass.getESuperTypes().add(this.getCDOFileLocation());
+		cdoTextResourceLocationEClass.getESuperTypes().add(this.getTextContainer());
+		cdoResourceLocationEClass.getESuperTypes().add(this.getCDOFileLocation());
+		cdoResourceLocationEClass.getESuperTypes().add(this.getEObjectContainer());
+
+		// Initialize classes, features, and operations; add parameters
+		initEClass(locationEClass, Location.class, "Location", IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getLocation_SourceLinks(), this.getLink(), this.getLink_Target(), "sourceLinks", null,
+				0, -1, Location.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
+				IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getLocation_TargetLinks(), this.getLink(), this.getLink_Source(), "targetLinks", null,
+				0, -1, Location.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
+				!IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getLocation_Container(), this.getLocationContainer(), this
+				.getLocationContainer_Contents(), "container", null, 0, 1, Location.class, !IS_TRANSIENT,
+				!IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
+				!IS_DERIVED, IS_ORDERED);
+		initEAttribute(getLocation_Type(), this.getType(), "type", null, 0, 1, Location.class, !IS_TRANSIENT,
+				!IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getLocation_MarkedAsDeleted(), ecorePackage.getEBoolean(), "markedAsDeleted", "false",
+				1, 1, Location.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(linkEClass, Link.class, "Link", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getLink_Description(), ecorePackage.getEString(), "description", null, 1, 1,
+				Link.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
+				!IS_DERIVED, IS_ORDERED);
+		initEReference(getLink_Source(), this.getLocation(), this.getLocation_TargetLinks(), "source", null,
+				1, 1, Link.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
+				!IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getLink_Target(), this.getLocation(), this.getLocation_SourceLinks(), "target", null,
+				1, 1, Link.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
+				IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getLink_Type(), this.getType(), "type", null, 0, 1, Link.class, !IS_TRANSIENT,
+				!IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getLink_Reports(), this.getReport(), this.getReport_Link(), "reports", null, 0, -1,
+				Link.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
+				!IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(baseEClass, Base.class, "Base", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getBase_Name(), ecorePackage.getEString(), "name", null, 1, 1, Base.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+				IS_ORDERED);
+		initEReference(getBase_Reports(), this.getReport(), null, "reports", null, 0, -1, Base.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getBase_ContainerProviders(), ecorePackage.getEString(), "containerProviders", null, 0,
+				-1, Base.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
+				!IS_DERIVED, IS_ORDERED);
+
+		initEClass(iemfBaseElementEClass, IEMFBaseElement.class, "IEMFBaseElement", IS_ABSTRACT, IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(textLocationEClass, TextLocation.class, "TextLocation", !IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getTextLocation_StartOffset(), ecorePackage.getEInt(), "startOffset", "-1", 1, 1,
+				TextLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getTextLocation_EndOffset(), ecorePackage.getEInt(), "endOffset", "-1", 1, 1,
+				TextLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(textContainerEClass, TextContainer.class, "TextContainer", IS_ABSTRACT, IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getTextContainer_Text(), ecorePackage.getEString(), "text", null, 1, 1,
+				TextContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(eObjectLocationEClass, EObjectLocation.class, "EObjectLocation", !IS_ABSTRACT,
+				!IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getEObjectLocation_URIFragment(), ecorePackage.getEString(), "URIFragment", null, 1, 1,
+				EObjectLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getEObjectLocation_SavedURIFragment(), ecorePackage.getEString(), "savedURIFragment",
+				null, 1, 1, EObjectLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE,
+				!IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getEObjectLocation_FeatureName(), ecorePackage.getEString(), "featureName", null, 0, 1,
+				EObjectLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getEObjectLocation_Index(), ecorePackage.getEInt(), "index", "0", 1, 1,
+				EObjectLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(locationContainerEClass, LocationContainer.class, "LocationContainer", IS_ABSTRACT,
+				IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getLocationContainer_Contents(), this.getLocation(), this.getLocation_Container(),
+				"contents", null, 0, -1, LocationContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE,
+				IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(reportEClass, Report.class, "Report", !IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getReport_Description(), ecorePackage.getEString(), "description", null, 1, 1,
+				Report.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
+				!IS_DERIVED, IS_ORDERED);
+		initEReference(getReport_Link(), this.getLink(), this.getLink_Reports(), "link", null, 1, 1,
+				Report.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
+				!IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(coupleEClass, Couple.class, "Couple", !IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getCouple_Key(), ecorePackage.getEString(), "key", null, 1, 1, Couple.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+				IS_ORDERED);
+		initEAttribute(getCouple_Value(), ecorePackage.getEString(), "value", null, 1, 1, Couple.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+				IS_ORDERED);
+
+		initEClass(eObjectContainerEClass, EObjectContainer.class, "EObjectContainer", IS_ABSTRACT,
+				IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getEObjectContainer_XMIContent(), ecorePackage.getEString(), "XMIContent", null, 1, 1,
+				EObjectContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getEObjectContainer_SavedURIFragments(), this.getCouple(), null, "savedURIFragments",
+				null, 0, -1, EObjectContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
+				!IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(cdoResourceNodeLocationEClass, CDOResourceNodeLocation.class, "CDOResourceNodeLocation",
+				IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getCDOResourceNodeLocation_Path(), ecorePackage.getEString(), "path", null, 1, 1,
+				CDOResourceNodeLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE,
+				!IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(cdoFileLocationEClass, CDOFileLocation.class, "CDOFileLocation", IS_ABSTRACT, IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(cdoFolderLocationEClass, CDOFolderLocation.class, "CDOFolderLocation", !IS_ABSTRACT,
+				!IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(cdoRepositoryLocationEClass, CDORepositoryLocation.class, "CDORepositoryLocation",
+				!IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getCDORepositoryLocation_URL(), ecorePackage.getEString(), "URL", null, 0, 1,
+				CDORepositoryLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE,
+				!IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getCDORepositoryLocation_UUID(), ecorePackage.getEString(), "UUID", null, 1, 1,
+				CDORepositoryLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE,
+				!IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getCDORepositoryLocation_Name(), ecorePackage.getEString(), "name", null, 1, 1,
+				CDORepositoryLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE,
+				!IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getCDORepositoryLocation_BranchID(), ecorePackage.getEInt(), "branchID", "-1", 1, 1,
+				CDORepositoryLocation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE,
+				!IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(cdoBinaryResourceLocationEClass, CDOBinaryResourceLocation.class,
+				"CDOBinaryResourceLocation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(cdoTextResourceLocationEClass, CDOTextResourceLocation.class, "CDOTextResourceLocation",
+				!IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(cdoResourceLocationEClass, CDOResourceLocation.class, "CDOResourceLocation", !IS_ABSTRACT,
+				!IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		// Initialize data types
+		initEDataType(typeEDataType, Serializable.class, "Type", IS_SERIALIZABLE,
+				!IS_GENERATED_INSTANCE_CLASS);
+
+		// Create resource
+		createResource(eNS_URI);
+	}
+
+} // MappingPackageImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/ReportImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/ReportImpl.java
new file mode 100644
index 0000000..4706b28
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/ReportImpl.java
@@ -0,0 +1,191 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.impl.AdapterImpl;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.internal.cdo.CDOObjectImpl;
+import org.eclipse.intent.mapping.Link;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.Report;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.base.IReportListener;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Report</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.ReportImpl#getDescription <em>Description</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.ReportImpl#getLink <em>Link</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ReportImpl extends CDOObjectImpl implements Report {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ReportImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.REPORT;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected int eStaticFeatureCount() {
+		return 0;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getDescription() {
+		return (String)eGet(MappingPackage.Literals.REPORT__DESCRIPTION, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setDescription(String newDescription) {
+		eSet(MappingPackage.Literals.REPORT__DESCRIPTION, newDescription);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Link getLink() {
+		return (Link)eGet(MappingPackage.Literals.REPORT__LINK, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setLink(Link newLink) {
+		eSet(MappingPackage.Literals.REPORT__LINK, newLink);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public void setLink(ILink newLink) {
+		eSet(MappingPackage.Literals.REPORT__LINK, newLink);
+	}
+
+	/**
+	 * {@link IReport} adapter.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class ReportAdapter extends AdapterImpl {
+
+		/**
+		 * The {@link IReportListener} to forward notification to.
+		 */
+		private final IReportListener listener;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param listener
+		 *            the {@link IReportListener} to forward notification to
+		 */
+		private ReportAdapter(IReportListener listener) {
+			this.listener = listener;
+		}
+
+		@Override
+		public void notifyChanged(Notification msg) {
+			final List<Adapter> eAdapters = new ArrayList<Adapter>(eAdapters());
+			switch (msg.getFeatureID(Report.class)) {
+				case MappingPackage.REPORT__DESCRIPTION:
+					for (Adapter adapter : eAdapters) {
+						if (adapter instanceof ReportAdapter) {
+							((ReportAdapter)adapter).listener.descriptionChanged((String)msg.getOldValue(),
+									(String)msg.getNewValue());
+						}
+					}
+					break;
+				case MappingPackage.REPORT__LINK:
+					for (Adapter adapter : eAdapters) {
+						if (adapter instanceof ReportAdapter) {
+							((ReportAdapter)adapter).listener.linkChanged((ILink)msg.getOldValue(), (ILink)msg
+									.getNewValue());
+						}
+					}
+					break;
+			}
+		}
+
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IReport#addListener(org.eclipse.intent.mapping.base.IReportListener)
+	 */
+	public void addListener(IReportListener listener) {
+		eAdapters().add(new ReportAdapter(listener));
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IReport#removeListener(org.eclipse.intent.mapping.base.IReportListener)
+	 */
+	public void removeListener(IReportListener listener) {
+		final Iterator<Adapter> it = eAdapters().iterator();
+		while (it.hasNext()) {
+			final Adapter adapter = it.next();
+			if (adapter instanceof ReportAdapter && ((ReportAdapter)adapter).listener == listener) {
+				it.remove();
+				break;
+			}
+		}
+	}
+
+} // ReportImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/TextLocationImpl.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/TextLocationImpl.java
new file mode 100644
index 0000000..b4c85f2
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/impl/TextLocationImpl.java
@@ -0,0 +1,107 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.TextLocation;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Text Location</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.intent.mapping.impl.TextLocationImpl#getStartOffset <em>Start Offset</em>}</li>
+ * <li>{@link org.eclipse.intent.mapping.impl.TextLocationImpl#getEndOffset <em>End Offset</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class TextLocationImpl extends LocationImpl implements TextLocation {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public TextLocationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MappingPackage.Literals.TEXT_LOCATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getStartOffset() {
+		return (Integer)eGet(MappingPackage.Literals.TEXT_LOCATION__START_OFFSET, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setStartOffset(int newStartOffset) {
+		eSet(MappingPackage.Literals.TEXT_LOCATION__START_OFFSET, newStartOffset);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getEndOffset() {
+		return (Integer)eGet(MappingPackage.Literals.TEXT_LOCATION__END_OFFSET, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setEndOffset(int newEndOffset) {
+		eSet(MappingPackage.Literals.TEXT_LOCATION__END_OFFSET, newEndOffset);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (startOffset: ");
+		result.append(getStartOffset());
+		result.append(", endOffset: ");
+		result.append(getEndOffset());
+		result.append(')');
+		return result.toString();
+	}
+
+} // TextLocationImpl
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/util/MappingAdapterFactory.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/util/MappingAdapterFactory.java
new file mode 100644
index 0000000..ed3c23b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/util/MappingAdapterFactory.java
@@ -0,0 +1,461 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.CDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.CDOFileLocation;
+import org.eclipse.intent.mapping.CDOFolderLocation;
+import org.eclipse.intent.mapping.CDORepositoryLocation;
+import org.eclipse.intent.mapping.CDOResourceLocation;
+import org.eclipse.intent.mapping.CDOResourceNodeLocation;
+import org.eclipse.intent.mapping.CDOTextResourceLocation;
+import org.eclipse.intent.mapping.Couple;
+import org.eclipse.intent.mapping.EObjectContainer;
+import org.eclipse.intent.mapping.EObjectLocation;
+import org.eclipse.intent.mapping.IEMFBaseElement;
+import org.eclipse.intent.mapping.Link;
+import org.eclipse.intent.mapping.Location;
+import org.eclipse.intent.mapping.LocationContainer;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.Report;
+import org.eclipse.intent.mapping.TextContainer;
+import org.eclipse.intent.mapping.TextLocation;
+
+/**
+ * <!-- begin-user-doc --> The <b>Adapter Factory</b> for the model. It provides an adapter
+ * <code>createXXX</code> method for each class of the model. <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.intent.mapping.MappingPackage
+ * @generated
+ */
+public class MappingAdapterFactory extends AdapterFactoryImpl {
+	/**
+	 * The cached model package. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected static MappingPackage modelPackage;
+
+	/**
+	 * Creates an instance of the adapter factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MappingAdapterFactory() {
+		if (modelPackage == null) {
+			modelPackage = MappingPackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Returns whether this factory is applicable for the type of the object. <!-- begin-user-doc --> This
+	 * implementation returns <code>true</code> if the object is either the model's package or is an instance
+	 * object of the model. <!-- end-user-doc -->
+	 * 
+	 * @return whether this factory is applicable for the type of the object.
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object object) {
+		if (object == modelPackage) {
+			return true;
+		}
+		if (object instanceof EObject) {
+			return ((EObject)object).eClass().getEPackage() == modelPackage;
+		}
+		return false;
+	}
+
+	/**
+	 * The switch that delegates to the <code>createXXX</code> methods. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected MappingSwitch<Adapter> modelSwitch = new MappingSwitch<Adapter>() {
+		@Override
+		public Adapter caseLocation(Location object) {
+			return createLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseLink(Link object) {
+			return createLinkAdapter();
+		}
+
+		@Override
+		public Adapter caseBase(Base object) {
+			return createBaseAdapter();
+		}
+
+		@Override
+		public Adapter caseIEMFBaseElement(IEMFBaseElement object) {
+			return createIEMFBaseElementAdapter();
+		}
+
+		@Override
+		public Adapter caseTextLocation(TextLocation object) {
+			return createTextLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseTextContainer(TextContainer object) {
+			return createTextContainerAdapter();
+		}
+
+		@Override
+		public Adapter caseEObjectLocation(EObjectLocation object) {
+			return createEObjectLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseLocationContainer(LocationContainer object) {
+			return createLocationContainerAdapter();
+		}
+
+		@Override
+		public Adapter caseReport(Report object) {
+			return createReportAdapter();
+		}
+
+		@Override
+		public Adapter caseCouple(Couple object) {
+			return createCoupleAdapter();
+		}
+
+		@Override
+		public Adapter caseEObjectContainer(EObjectContainer object) {
+			return createEObjectContainerAdapter();
+		}
+
+		@Override
+		public Adapter caseCDOResourceNodeLocation(CDOResourceNodeLocation object) {
+			return createCDOResourceNodeLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseCDOFileLocation(CDOFileLocation object) {
+			return createCDOFileLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseCDOFolderLocation(CDOFolderLocation object) {
+			return createCDOFolderLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseCDORepositoryLocation(CDORepositoryLocation object) {
+			return createCDORepositoryLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseCDOBinaryResourceLocation(CDOBinaryResourceLocation object) {
+			return createCDOBinaryResourceLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseCDOTextResourceLocation(CDOTextResourceLocation object) {
+			return createCDOTextResourceLocationAdapter();
+		}
+
+		@Override
+		public Adapter caseCDOResourceLocation(CDOResourceLocation object) {
+			return createCDOResourceLocationAdapter();
+		}
+
+		@Override
+		public Adapter defaultCase(EObject object) {
+			return createEObjectAdapter();
+		}
+	};
+
+	/**
+	 * Creates an adapter for the <code>target</code>. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param target
+	 *            the object to adapt.
+	 * @return the adapter for the <code>target</code>.
+	 * @generated
+	 */
+	@Override
+	public Adapter createAdapter(Notifier target) {
+		return modelSwitch.doSwitch((EObject)target);
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.Location
+	 * <em>Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can
+	 * easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.Location
+	 * @generated
+	 */
+	public Adapter createLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.Link <em>Link</em>}'.
+	 * <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.Link
+	 * @generated
+	 */
+	public Adapter createLinkAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.Base <em>Base</em>}'.
+	 * <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.Base
+	 * @generated
+	 */
+	public Adapter createBaseAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class ' {@link org.eclipse.intent.mapping.IEMFBaseElement
+	 * <em>IEMF Base Element</em>}'. <!-- begin-user-doc --> This default implementation returns null so that
+	 * we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.IEMFBaseElement
+	 * @generated
+	 */
+	public Adapter createIEMFBaseElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.TextLocation <em>Text
+	 * Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily
+	 * ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.TextLocation
+	 * @generated
+	 */
+	public Adapter createTextLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.TextContainer <em>Text
+	 * Container</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can
+	 * easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.TextContainer
+	 * @generated
+	 */
+	public Adapter createTextContainerAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class ' {@link org.eclipse.intent.mapping.EObjectLocation
+	 * <em>EObject Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so that
+	 * we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.EObjectLocation
+	 * @generated
+	 */
+	public Adapter createEObjectLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class ' {@link org.eclipse.intent.mapping.LocationContainer
+	 * <em>Location Container</em>}'. <!-- begin-user-doc --> This default implementation returns null so that
+	 * we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.LocationContainer
+	 * @generated
+	 */
+	public Adapter createLocationContainerAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.Report
+	 * <em>Report</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can
+	 * easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.Report
+	 * @generated
+	 */
+	public Adapter createReportAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.Couple
+	 * <em>Couple</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can
+	 * easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.Couple
+	 * @generated
+	 */
+	public Adapter createCoupleAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.EObjectContainer
+	 * <em>EObject Container</em>}'. <!-- begin-user-doc --> This default implementation returns null so that
+	 * we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.EObjectContainer
+	 * @generated
+	 */
+	public Adapter createEObjectContainerAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.CDOResourceNodeLocation
+	 * <em>CDO Resource Node Location</em>}'. <!-- begin-user-doc --> This default implementation returns null
+	 * so that we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the
+	 * cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.CDOResourceNodeLocation
+	 * @generated
+	 */
+	public Adapter createCDOResourceNodeLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.CDOFileLocation <em>CDO
+	 * File Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can
+	 * easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway.
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.CDOFileLocation
+	 * @generated
+	 */
+	public Adapter createCDOFileLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.CDOFolderLocation
+	 * <em>CDO Folder Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so
+	 * that we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.CDOFolderLocation
+	 * @generated
+	 */
+	public Adapter createCDOFolderLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.CDORepositoryLocation
+	 * <em>CDO Repository Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so
+	 * that we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.CDORepositoryLocation
+	 * @generated
+	 */
+	public Adapter createCDORepositoryLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class
+	 * '{@link org.eclipse.intent.mapping.CDOBinaryResourceLocation <em>CDO Binary Resource Location</em>}'.
+	 * <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore cases;
+	 * it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.CDOBinaryResourceLocation
+	 * @generated
+	 */
+	public Adapter createCDOBinaryResourceLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.CDOTextResourceLocation
+	 * <em>CDO Text Resource Location</em>}'. <!-- begin-user-doc --> This default implementation returns null
+	 * so that we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the
+	 * cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.CDOTextResourceLocation
+	 * @generated
+	 */
+	public Adapter createCDOTextResourceLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.intent.mapping.CDOResourceLocation
+	 * <em>CDO Resource Location</em>}'. <!-- begin-user-doc --> This default implementation returns null so
+	 * that we can easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases
+	 * anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see org.eclipse.intent.mapping.CDOResourceLocation
+	 * @generated
+	 */
+	public Adapter createCDOResourceLocationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for the default case. <!-- begin-user-doc --> This default implementation returns
+	 * null. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @generated
+	 */
+	public Adapter createEObjectAdapter() {
+		return null;
+	}
+
+} // MappingAdapterFactory
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/util/MappingSwitch.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/util/MappingSwitch.java
new file mode 100644
index 0000000..d535ea5
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src-gen/org/eclipse/intent/mapping/util/MappingSwitch.java
@@ -0,0 +1,605 @@
+/**
+ *  Copyright (c) 2015 Obeo.
+ *  All rights reserved. This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License v1.0
+ *  which accompanies this distribution, and is available at
+ *  http://www.eclipse.org/legal/epl-v10.html
+ * 
+ *  Contributors:
+ *     Obeo - initial API and implementation and/or initial documentation
+ *     ...
+ * 
+ */
+package org.eclipse.intent.mapping.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.CDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.CDOFileLocation;
+import org.eclipse.intent.mapping.CDOFolderLocation;
+import org.eclipse.intent.mapping.CDORepositoryLocation;
+import org.eclipse.intent.mapping.CDOResourceLocation;
+import org.eclipse.intent.mapping.CDOResourceNodeLocation;
+import org.eclipse.intent.mapping.CDOTextResourceLocation;
+import org.eclipse.intent.mapping.Couple;
+import org.eclipse.intent.mapping.EObjectContainer;
+import org.eclipse.intent.mapping.EObjectLocation;
+import org.eclipse.intent.mapping.IEMFBaseElement;
+import org.eclipse.intent.mapping.Link;
+import org.eclipse.intent.mapping.Location;
+import org.eclipse.intent.mapping.LocationContainer;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.Report;
+import org.eclipse.intent.mapping.TextContainer;
+import org.eclipse.intent.mapping.TextLocation;
+
+/**
+ * <!-- begin-user-doc --> The <b>Switch</b> for the model's inheritance hierarchy. It supports the call
+ * {@link #doSwitch(EObject) doSwitch(object)} to invoke the <code>caseXXX</code> method for each class of the
+ * model, starting with the actual class of the object and proceeding up the inheritance hierarchy until a
+ * non-null result is returned, which is the result of the switch. <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.intent.mapping.MappingPackage
+ * @generated
+ */
+public class MappingSwitch<T> extends Switch<T> {
+	/**
+	 * The cached model package <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected static MappingPackage modelPackage;
+
+	/**
+	 * Creates an instance of the switch. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MappingSwitch() {
+		if (modelPackage == null) {
+			modelPackage = MappingPackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Checks whether this is a switch for the given package. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param ePackage
+	 *            the package in question.
+	 * @return whether this is a switch for the given package.
+	 * @generated
+	 */
+	@Override
+	protected boolean isSwitchFor(EPackage ePackage) {
+		return ePackage == modelPackage;
+	}
+
+	/**
+	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields
+	 * that result. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @generated
+	 */
+	@Override
+	protected T doSwitch(int classifierID, EObject theEObject) {
+		switch (classifierID) {
+			case MappingPackage.LOCATION: {
+				Location location = (Location)theEObject;
+				T result = caseLocation(location);
+				if (result == null)
+					result = caseIEMFBaseElement(location);
+				if (result == null)
+					result = caseLocationContainer(location);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.LINK: {
+				Link link = (Link)theEObject;
+				T result = caseLink(link);
+				if (result == null)
+					result = caseIEMFBaseElement(link);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.BASE: {
+				Base base = (Base)theEObject;
+				T result = caseBase(base);
+				if (result == null)
+					result = caseIEMFBaseElement(base);
+				if (result == null)
+					result = caseLocationContainer(base);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.IEMF_BASE_ELEMENT: {
+				IEMFBaseElement iemfBaseElement = (IEMFBaseElement)theEObject;
+				T result = caseIEMFBaseElement(iemfBaseElement);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.TEXT_LOCATION: {
+				TextLocation textLocation = (TextLocation)theEObject;
+				T result = caseTextLocation(textLocation);
+				if (result == null)
+					result = caseLocation(textLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(textLocation);
+				if (result == null)
+					result = caseLocationContainer(textLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.TEXT_CONTAINER: {
+				TextContainer textContainer = (TextContainer)theEObject;
+				T result = caseTextContainer(textContainer);
+				if (result == null)
+					result = caseLocation(textContainer);
+				if (result == null)
+					result = caseIEMFBaseElement(textContainer);
+				if (result == null)
+					result = caseLocationContainer(textContainer);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.EOBJECT_LOCATION: {
+				EObjectLocation eObjectLocation = (EObjectLocation)theEObject;
+				T result = caseEObjectLocation(eObjectLocation);
+				if (result == null)
+					result = caseLocation(eObjectLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(eObjectLocation);
+				if (result == null)
+					result = caseLocationContainer(eObjectLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.LOCATION_CONTAINER: {
+				LocationContainer locationContainer = (LocationContainer)theEObject;
+				T result = caseLocationContainer(locationContainer);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.REPORT: {
+				Report report = (Report)theEObject;
+				T result = caseReport(report);
+				if (result == null)
+					result = caseIEMFBaseElement(report);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.COUPLE: {
+				Couple couple = (Couple)theEObject;
+				T result = caseCouple(couple);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.EOBJECT_CONTAINER: {
+				EObjectContainer eObjectContainer = (EObjectContainer)theEObject;
+				T result = caseEObjectContainer(eObjectContainer);
+				if (result == null)
+					result = caseLocation(eObjectContainer);
+				if (result == null)
+					result = caseIEMFBaseElement(eObjectContainer);
+				if (result == null)
+					result = caseLocationContainer(eObjectContainer);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.CDO_RESOURCE_NODE_LOCATION: {
+				CDOResourceNodeLocation cdoResourceNodeLocation = (CDOResourceNodeLocation)theEObject;
+				T result = caseCDOResourceNodeLocation(cdoResourceNodeLocation);
+				if (result == null)
+					result = caseLocation(cdoResourceNodeLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(cdoResourceNodeLocation);
+				if (result == null)
+					result = caseLocationContainer(cdoResourceNodeLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.CDO_FILE_LOCATION: {
+				CDOFileLocation cdoFileLocation = (CDOFileLocation)theEObject;
+				T result = caseCDOFileLocation(cdoFileLocation);
+				if (result == null)
+					result = caseCDOResourceNodeLocation(cdoFileLocation);
+				if (result == null)
+					result = caseLocation(cdoFileLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(cdoFileLocation);
+				if (result == null)
+					result = caseLocationContainer(cdoFileLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.CDO_FOLDER_LOCATION: {
+				CDOFolderLocation cdoFolderLocation = (CDOFolderLocation)theEObject;
+				T result = caseCDOFolderLocation(cdoFolderLocation);
+				if (result == null)
+					result = caseCDOResourceNodeLocation(cdoFolderLocation);
+				if (result == null)
+					result = caseLocation(cdoFolderLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(cdoFolderLocation);
+				if (result == null)
+					result = caseLocationContainer(cdoFolderLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.CDO_REPOSITORY_LOCATION: {
+				CDORepositoryLocation cdoRepositoryLocation = (CDORepositoryLocation)theEObject;
+				T result = caseCDORepositoryLocation(cdoRepositoryLocation);
+				if (result == null)
+					result = caseLocation(cdoRepositoryLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(cdoRepositoryLocation);
+				if (result == null)
+					result = caseLocationContainer(cdoRepositoryLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.CDO_BINARY_RESOURCE_LOCATION: {
+				CDOBinaryResourceLocation cdoBinaryResourceLocation = (CDOBinaryResourceLocation)theEObject;
+				T result = caseCDOBinaryResourceLocation(cdoBinaryResourceLocation);
+				if (result == null)
+					result = caseCDOFileLocation(cdoBinaryResourceLocation);
+				if (result == null)
+					result = caseCDOResourceNodeLocation(cdoBinaryResourceLocation);
+				if (result == null)
+					result = caseLocation(cdoBinaryResourceLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(cdoBinaryResourceLocation);
+				if (result == null)
+					result = caseLocationContainer(cdoBinaryResourceLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.CDO_TEXT_RESOURCE_LOCATION: {
+				CDOTextResourceLocation cdoTextResourceLocation = (CDOTextResourceLocation)theEObject;
+				T result = caseCDOTextResourceLocation(cdoTextResourceLocation);
+				if (result == null)
+					result = caseCDOFileLocation(cdoTextResourceLocation);
+				if (result == null)
+					result = caseTextContainer(cdoTextResourceLocation);
+				if (result == null)
+					result = caseCDOResourceNodeLocation(cdoTextResourceLocation);
+				if (result == null)
+					result = caseLocation(cdoTextResourceLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(cdoTextResourceLocation);
+				if (result == null)
+					result = caseLocationContainer(cdoTextResourceLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case MappingPackage.CDO_RESOURCE_LOCATION: {
+				CDOResourceLocation cdoResourceLocation = (CDOResourceLocation)theEObject;
+				T result = caseCDOResourceLocation(cdoResourceLocation);
+				if (result == null)
+					result = caseCDOFileLocation(cdoResourceLocation);
+				if (result == null)
+					result = caseEObjectContainer(cdoResourceLocation);
+				if (result == null)
+					result = caseCDOResourceNodeLocation(cdoResourceLocation);
+				if (result == null)
+					result = caseLocation(cdoResourceLocation);
+				if (result == null)
+					result = caseIEMFBaseElement(cdoResourceLocation);
+				if (result == null)
+					result = caseLocationContainer(cdoResourceLocation);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			default:
+				return defaultCase(theEObject);
+		}
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Location</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseLocation(Location object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Link</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Link</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseLink(Link object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Base</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Base</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseBase(Base object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>IEMF Base Element</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>IEMF Base Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIEMFBaseElement(IEMFBaseElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Text Location</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Text Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTextLocation(TextLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Text Container</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Text Container</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseTextContainer(TextContainer object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject Location</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEObjectLocation(EObjectLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Location Container</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Location Container</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseLocationContainer(LocationContainer object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Report</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Report</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseReport(Report object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Couple</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Couple</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCouple(Couple object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject Container</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject Container</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEObjectContainer(EObjectContainer object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CDO Resource Node Location</em>'.
+	 * <!-- begin-user-doc --> This implementation returns null; returning a non-null result will terminate
+	 * the switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>CDO Resource Node Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCDOResourceNodeLocation(CDOResourceNodeLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CDO File Location</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>CDO File Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCDOFileLocation(CDOFileLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CDO Folder Location</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>CDO Folder Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCDOFolderLocation(CDOFolderLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CDO Repository Location</em>'.
+	 * <!-- begin-user-doc --> This implementation returns null; returning a non-null result will terminate
+	 * the switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>CDO Repository Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCDORepositoryLocation(CDORepositoryLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CDO Binary Resource
+	 * Location</em>'. <!-- begin-user-doc --> This implementation returns null; returning a non-null result
+	 * will terminate the switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>CDO Binary Resource
+	 *         Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCDOBinaryResourceLocation(CDOBinaryResourceLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CDO Text Resource Location</em>'.
+	 * <!-- begin-user-doc --> This implementation returns null; returning a non-null result will terminate
+	 * the switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>CDO Text Resource Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCDOTextResourceLocation(CDOTextResourceLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>CDO Resource Location</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>CDO Resource Location</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCDOResourceLocation(CDOResourceLocation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch, but this
+	 * is the last case anyway. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+	 * @generated
+	 */
+	@Override
+	public T defaultCase(EObject object) {
+		return null;
+	}
+
+} // MappingSwitch
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/CDOMappingBaseListener.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/CDOMappingBaseListener.java
new file mode 100644
index 0000000..cd5e00e
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/CDOMappingBaseListener.java
@@ -0,0 +1,165 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.emf.cdo.CDOObject;
+import org.eclipse.emf.cdo.common.id.CDOID;
+import org.eclipse.emf.cdo.common.revision.CDOIDAndVersion;
+import org.eclipse.emf.cdo.session.CDOSessionInvalidationEvent;
+import org.eclipse.emf.cdo.view.CDOView;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.IBaseRegistry;
+import org.eclipse.intent.mapping.impl.BaseImpl;
+import org.eclipse.net4j.util.event.IEvent;
+import org.eclipse.net4j.util.event.IListener;
+
+/**
+ * A CDO listener that track changes on {@link IBase}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class CDOMappingBaseListener implements IListener {
+
+	/**
+	 * Mapping to keep track of {@link IBaseRegistry#register(IBase) registered} bases.
+	 */
+	Map<CDOID, Map<String, Map<Integer, BaseImpl>>> bases = new HashMap<CDOID, Map<String, Map<Integer, BaseImpl>>>();
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.net4j.util.event.IListener#notifyEvent(org.eclipse.net4j.util.event.IEvent)
+	 */
+	public void notifyEvent(IEvent event) {
+		if (event instanceof CDOSessionInvalidationEvent) {
+			final CDOSessionInvalidationEvent cdoSessionInvalidationEvent = (CDOSessionInvalidationEvent)event;
+
+			checkAttachedObjects(cdoSessionInvalidationEvent);
+
+			checkDetachedObjects(cdoSessionInvalidationEvent);
+		}
+	}
+
+	/**
+	 * Checks for {@link CDOSessionInvalidationEvent#getNewObjects() attached objects}.
+	 * 
+	 * @param cdoSessionInvalidationEvent
+	 *            the {@link CDOSessionInvalidationEvent}
+	 */
+	protected void checkAttachedObjects(CDOSessionInvalidationEvent cdoSessionInvalidationEvent) {
+		final CDOView view = cdoSessionInvalidationEvent.getLocalTransaction();
+
+		for (CDOIDAndVersion cdoidAndVersion : cdoSessionInvalidationEvent.getNewObjects()) {
+			final CDOObject object = view.getObject(cdoidAndVersion.getID());
+			if (object instanceof BaseImpl) {
+				registerBase(view, (BaseImpl)object);
+			}
+		}
+	}
+
+	/**
+	 * Checks for {@link CDOSessionInvalidationEvent#getDetachedObjects() detached objects}.
+	 * 
+	 * @param cdoSessionInvalidationEvent
+	 *            the {@link CDOSessionInvalidationEvent}
+	 */
+	protected void checkDetachedObjects(final CDOSessionInvalidationEvent cdoSessionInvalidationEvent) {
+		final CDOView view = cdoSessionInvalidationEvent.getSource().openView(cdoSessionInvalidationEvent
+				.getBranch(), cdoSessionInvalidationEvent.getPreviousTimeStamp());
+
+		for (CDOIDAndVersion cdoidAndVersion : cdoSessionInvalidationEvent.getDetachedObjects()) {
+			final CDOObject object = view.getObject(cdoidAndVersion.getID());
+			if (object instanceof BaseImpl) {
+				unregisterBase(view, (BaseImpl)object);
+			}
+		}
+
+		view.close();
+	}
+
+	/**
+	 * {@link IBaseRegistry#register(IBase) Registers} the given {@link BaseImpl}.
+	 * 
+	 * @param view
+	 *            the {@link CDOView}
+	 * @param base
+	 *            the {@link BaseImpl}
+	 */
+	protected void registerBase(CDOView view, BaseImpl base) {
+		MappingUtils.getMappingRegistry().register(base);
+		final CDOID cdoID = base.cdoID();
+		Map<String, Map<Integer, BaseImpl>> repoMap = bases.get(cdoID);
+		if (repoMap == null) {
+			repoMap = new HashMap<String, Map<Integer, BaseImpl>>();
+			bases.put(cdoID, repoMap);
+		}
+		final String uuid = view.getSession().getRepositoryInfo().getUUID();
+		Map<Integer, BaseImpl> branchMap = repoMap.get(uuid);
+		if (branchMap == null) {
+			branchMap = new HashMap<Integer, BaseImpl>();
+			repoMap.put(uuid, branchMap);
+		}
+		branchMap.put(view.getBranch().getID(), base);
+		MappingUtils.getMappingRegistry().register(base);
+	}
+
+	/**
+	 * {@link IBaseRegistry#unregister(IBase) Unregisters} the given {@link BaseImpl}.
+	 * 
+	 * @param view
+	 *            the {@link CDOView}
+	 * @param base
+	 *            the {@link BaseImpl}
+	 */
+	protected void unregisterBase(CDOView view, BaseImpl base) {
+		final CDOID cdoID = base.cdoID();
+		final Map<String, Map<Integer, BaseImpl>> repoMap = bases.get(cdoID);
+		if (repoMap != null) {
+			final String uuid = view.getSession().getRepositoryInfo().getUUID();
+			final Map<Integer, BaseImpl> branchMap = repoMap.get(uuid);
+			if (branchMap != null) {
+				final BaseImpl toRemove = branchMap.remove(view.getBranch().getID());
+				if (toRemove != null) {
+					MappingUtils.getMappingRegistry().unregister(toRemove);
+					removeFromMap(cdoID, repoMap, uuid, branchMap);
+				}
+			}
+		}
+	}
+
+	/**
+	 * Removes empty maps.
+	 * 
+	 * @param cdoID
+	 *            the {@link CDOID}
+	 * @param repoMap
+	 *            the repository map
+	 * @param uuid
+	 *            the UUID of the repository
+	 * @param branchMap
+	 *            the branch map
+	 */
+	protected void removeFromMap(CDOID cdoID, Map<String, Map<Integer, BaseImpl>> repoMap, String uuid,
+			Map<Integer, BaseImpl> branchMap) {
+		if (branchMap.isEmpty()) {
+			repoMap.remove(uuid);
+			if (repoMap.isEmpty()) {
+				bases.remove(cdoID);
+			}
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOBinaryResourceLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOBinaryResourceLocation.java
new file mode 100644
index 0000000..5bc2b26
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOBinaryResourceLocation.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf;
+
+/**
+ * {@link org.eclipse.emf.cdo.eresource.CDOFileResource CDOFileResource} location.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ICDOBinaryResourceLocation extends ICDOFileLocation {
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOFileLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOFileLocation.java
new file mode 100644
index 0000000..45618a5
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOFileLocation.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf;
+
+/**
+ * {@link org.eclipse.emf.cdo.eresource.CDOBinaryResource CDOBinaryResource} location.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ICDOFileLocation extends ICDOResourceNodeLocation {
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOFolderLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOFolderLocation.java
new file mode 100644
index 0000000..480451d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOFolderLocation.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf;
+
+/**
+ * {@link org.eclipse.emf.cdo.eresource.CDOResourceFolder CDOResourceFolder} location.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ICDOFolderLocation extends ICDOResourceNodeLocation {
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDORepositoryLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDORepositoryLocation.java
new file mode 100644
index 0000000..916fccf
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDORepositoryLocation.java
@@ -0,0 +1,83 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf;
+
+import org.eclipse.intent.mapping.base.ILocation;
+
+/**
+ * A CDO repository {@link ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ICDORepositoryLocation extends ILocation {
+
+	/**
+	 * Gets the CDO repository URL.
+	 * 
+	 * @return the CDO repository URL
+	 */
+	String getURL();
+
+	/**
+	 * Sets the CDO repository URL.
+	 * 
+	 * @param url
+	 *            the new CDO repository URL
+	 */
+	void setURL(String url);
+
+	/**
+	 * Gets the CDO repository UUID.
+	 * 
+	 * @return the CDO repository UUID
+	 */
+	String getUUID();
+
+	/**
+	 * Sets the CDO repository UUID.
+	 * 
+	 * @param uuid
+	 *            the new CDO repository UUID
+	 */
+	void setUUID(String uuid);
+
+	/**
+	 * Gets the CDO repository name.
+	 * 
+	 * @return the CDO repository name
+	 */
+	String getName();
+
+	/**
+	 * Sets the CDO repository name.
+	 * 
+	 * @param name
+	 *            the new CDO repository name
+	 */
+	void setName(String name);
+
+	/**
+	 * Gets the banch ID.
+	 * 
+	 * @return the branch ID
+	 */
+	int getBranchID();
+
+	/**
+	 * Sets the branch ID.
+	 * 
+	 * @param id
+	 *            the new branch ID
+	 */
+	void setBranchID(int id);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOResourceLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOResourceLocation.java
new file mode 100644
index 0000000..7c2e7a9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOResourceLocation.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf;
+
+/**
+ * {@link org.eclipse.emf.cdo.eresource.CDOResource CDOResource} location.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ICDOResourceLocation extends ICDOFileLocation, IEObjectContainer {
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOResourceNodeLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOResourceNodeLocation.java
new file mode 100644
index 0000000..7149cb1
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOResourceNodeLocation.java
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf;
+
+import org.eclipse.intent.mapping.base.ILocation;
+
+/**
+ * An {@link ILocation} for {@link org.eclipse.emf.cdo.eresource.CDOResourceNode CDOResourceNode}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ICDOResourceNodeLocation extends ILocation {
+
+	/**
+	 * Gets the {@link org.eclipse.emf.cdo.eresource.CDOResourceNode#getPath() path}.
+	 * 
+	 * @return the {@link org.eclipse.emf.cdo.eresource.CDOResourceNode#getPath() path}
+	 */
+	String getPath();
+
+	/**
+	 * Sets the {@link org.eclipse.emf.cdo.eresource.CDOResourceNode#getPath() path}.
+	 * 
+	 * @param path
+	 *            the new path
+	 */
+	void setPath(String path);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOTextResourceLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOTextResourceLocation.java
new file mode 100644
index 0000000..666ee34
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICDOTextResourceLocation.java
@@ -0,0 +1,23 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf;
+
+import org.eclipse.intent.mapping.text.ITextContainer;
+
+/**
+ * {@link org.eclipse.emf.cdo.eresource.CDOTextResource CDOTextResource} location.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ICDOTextResourceLocation extends ICDOFileLocation, ITextContainer {
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICouple.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICouple.java
new file mode 100644
index 0000000..6f1579d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/ICouple.java
@@ -0,0 +1,53 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf;
+
+import org.eclipse.intent.mapping.base.IBaseElement;
+
+/**
+ * A key and a value.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ICouple extends IBaseElement {
+
+	/**
+	 * Gets the key.
+	 * 
+	 * @return the key
+	 */
+	String getKey();
+
+	/**
+	 * Sets the key.
+	 * 
+	 * @param key
+	 *            the new key
+	 */
+	void setKey(String key);
+
+	/**
+	 * Gets the value.
+	 * 
+	 * @return the value
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value.
+	 * 
+	 * @param value
+	 *            the new value
+	 */
+	void setValue(String value);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/IEObjectContainer.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/IEObjectContainer.java
new file mode 100644
index 0000000..7429527
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/IEObjectContainer.java
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf;
+
+import java.util.List;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.intent.mapping.base.ILocation;
+
+/**
+ * {@link org.eclipse.emf.ecore.resource.Resource Resource} container.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IEObjectContainer extends ILocation {
+
+	/**
+	 * Gets the XMI contents.
+	 * 
+	 * @return the XMI contents
+	 */
+	String getXMIContent();
+
+	/**
+	 * Sets the XMI contents.
+	 * 
+	 * @param xmiContent
+	 *            the XMI contents
+	 */
+	void setXMIContent(String xmiContent);
+
+	/**
+	 * The mapping from {@link EObject} {@link URI} fragments to saved {@link URI} fragment.
+	 * 
+	 * @return the mapping from {@link EObject} {@link URI} fragments to saved {@link URI} fragment
+	 */
+	List<ICouple> getSavedURIFragments();
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/IEObjectLocation.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/IEObjectLocation.java
new file mode 100644
index 0000000..761b053
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/IEObjectLocation.java
@@ -0,0 +1,94 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf;
+
+import org.eclipse.intent.mapping.base.ILocation;
+
+/**
+ * An {@link org.eclipse.intent.mapping.base.ILocation ILocation} for {@link org.eclipse.emf.ecore.EObject
+ * EObject}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IEObjectLocation extends ILocation {
+
+	/**
+	 * Gets the {@link java.net.URI URI} fragment of the {@link org.eclipse.emf.ecore.EObject EObject}
+	 * relative to the {@link IEObjectLocation#getContainer() container}.
+	 * 
+	 * @return the {@link java.net.URI URI} fragment of the {@link org.eclipse.emf.ecore.EObject EObject}
+	 *         relative to the {@link IEObjectLocation#getContainer() container}
+	 */
+	String getURIFragment();
+
+	/**
+	 * Sets the {@link java.net.URI URI} fragment of the {@link org.eclipse.emf.ecore.EObject EObject}
+	 * relative to the {@link IEObjectLocation#getContainer() container}.
+	 * 
+	 * @param uriFragment
+	 *            the {@link java.net.URI URI} fragment of the {@link org.eclipse.emf.ecore.EObject EObject}
+	 *            relative to the {@link IEObjectLocation#getContainer() container}
+	 */
+	void setURIFragment(String uriFragment);
+
+	/**
+	 * Gets the saved {@link java.net.URI URI} fragment of the {@link org.eclipse.emf.ecore.EObject EObject}
+	 * relative to the saved {@link IEObjectLocation#getContainer() container}.
+	 * 
+	 * @return the {@link java.net.URI URI} fragment of the {@link org.eclipse.emf.ecore.EObject EObject}
+	 *         relative to {@link IEObjectLocation#getContainer() container}
+	 */
+	String getSavedURIFragment();
+
+	/**
+	 * Sets the saved {@link java.net.URI URI} fragment of the {@link org.eclipse.emf.ecore.EObject EObject}
+	 * relative to the saved {@link IEObjectLocation#getContainer() container}.
+	 * 
+	 * @param uriFragment
+	 *            the {@link java.net.URI URI} fragment of the {@link org.eclipse.emf.ecore.EObject EObject}
+	 *            relative to the saved {@link IEObjectLocation#getContainer() container}
+	 */
+	void setSavedURIFragment(String uriFragment);
+
+	/**
+	 * Sets the {@link org.eclipse.emf.ecore.EStructuralFeature#getName() feature name}.
+	 * 
+	 * @param featureName
+	 *            the {@link org.eclipse.emf.ecore.EStructuralFeature#getName() feature name} if any,
+	 *            <code>null</code> otherwise
+	 */
+	void setFeatureName(String featureName);
+
+	/**
+	 * Gets the {@link org.eclipse.emf.ecore.EStructuralFeature#getName() feature name}.
+	 * 
+	 * @return the {@link org.eclipse.emf.ecore.EStructuralFeature#getName() feature name} if any,
+	 *         <code>null</code> otherwise
+	 */
+	String getFeatureName();
+
+	/**
+	 * Gets the index in the {@link #getFeatureName() feature}.
+	 * 
+	 * @return the index in the {@link #getFeatureName() feature}
+	 */
+	int getIndex();
+
+	/**
+	 * Sets the index in the {@link #getFeatureName() feature}.
+	 * 
+	 * @param index
+	 *            the index in the {@link #getFeatureName() feature}
+	 */
+	void setIndex(int index);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/CDOContainerProvider.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/CDOContainerProvider.java
new file mode 100644
index 0000000..d2403cb
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/CDOContainerProvider.java
@@ -0,0 +1,51 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.connector;
+
+import org.eclipse.emf.cdo.eresource.CDOResource;
+import org.eclipse.emf.cdo.view.CDOView;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+
+/**
+ * {@link EObject} -> {@link CDOResource} -> {@link CDOView}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class CDOContainerProvider implements IContainerProvider {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IContainerProvider#getContainer(java.lang.Object)
+	 */
+	public Object getContainer(Object element) {
+		final Object res;
+
+		if (element instanceof CDOResource) {
+			res = ((CDOResource)element).cdoView();
+		} else if (element instanceof EObject) {
+			final Resource resource = ((EObject)element).eResource();
+			if (resource instanceof CDOResource) {
+				res = resource;
+			} else {
+				res = null;
+			}
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/CDOResourceNodeConnector.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/CDOResourceNodeConnector.java
new file mode 100644
index 0000000..fbf1dc3
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/CDOResourceNodeConnector.java
@@ -0,0 +1,218 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.connector;
+
+import java.io.IOException;
+import java.io.Reader;
+
+import org.eclipse.emf.cdo.eresource.CDOBinaryResource;
+import org.eclipse.emf.cdo.eresource.CDOResource;
+import org.eclipse.emf.cdo.eresource.CDOResourceFolder;
+import org.eclipse.emf.cdo.eresource.CDOResourceNode;
+import org.eclipse.emf.cdo.eresource.CDOTextResource;
+import org.eclipse.emf.cdo.view.CDOView;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.connector.AbstractConnector;
+import org.eclipse.intent.mapping.emf.ICDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.emf.ICDOFolderLocation;
+import org.eclipse.intent.mapping.emf.ICDORepositoryLocation;
+import org.eclipse.intent.mapping.emf.ICDOResourceLocation;
+import org.eclipse.intent.mapping.emf.ICDOResourceNodeLocation;
+import org.eclipse.intent.mapping.emf.ICDOTextResourceLocation;
+import org.eclipse.intent.mapping.emf.connector.EObjectConnector.EObjectContainerHelper;
+import org.eclipse.intent.mapping.text.TextConnector.TextContainerHelper;
+
+/**
+ * {@link CDOResourceNode} connector.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class CDOResourceNodeConnector extends AbstractConnector {
+
+	/**
+	 * The buffer size.
+	 */
+	private static final int BUFFZE_SIZE = 8192;
+
+	/**
+	 * The {@link EObjectContainerHelper}.
+	 */
+	private final EObjectContainerHelper eObjectContainerHelper = new EObjectContainerHelper();
+
+	/**
+	 * The {@link TextContainerHelper}.
+	 */
+	private final TextContainerHelper textContainerHelper = new TextContainerHelper();
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationDescriptor(org.eclipse.intent.mapping.base.IBase,
+	 *      java.lang.Object)
+	 */
+	public ILocationDescriptor getLocationDescriptor(IBase base, Object element) {
+		final ILocationDescriptor res;
+
+		final Object adapted = adapt(element);
+		if (adapted instanceof CDOResourceNode) {
+			res = new ObjectLocationDescriptor(base, adapted, ((CDOResourceNode)adapted).getPath());
+			// TODO register the descriptor to the CDO repository connector
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	@Override
+	public void dispose(ILocationDescriptor locationDescriptor) {
+		super.dispose(locationDescriptor);
+		// TODO unregister the descriptor from the CDO repository connector
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationType(java.lang.Class, java.lang.Object)
+	 */
+	public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+			Object element) {
+		final Class<? extends ILocation> res;
+
+		if (element instanceof CDOResource) {
+			res = ICDOResourceLocation.class;
+		} else if (element instanceof CDOTextResource) {
+			// TODO text file delegates ?
+			res = ICDOTextResourceLocation.class;
+		} else if (element instanceof CDOBinaryResource) {
+			// TODO binary file delegates ?
+			res = ICDOBinaryResourceLocation.class;
+		} else if (element instanceof CDOResourceFolder) {
+			res = ICDOFolderLocation.class;
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getElement(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public Object getElement(ILocation location) {
+		final CDOView cdoview = (CDOView)MappingUtils.getConnectorRegistry().getElement(
+				(ICDORepositoryLocation)location.getContainer());
+
+		return cdoview.getResourceNode(((ICDOResourceNodeLocation)location).getPath());
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getName(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public String getName(ILocation location) {
+		return ((ICDOResourceNodeLocation)location).getPath();
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getType()
+	 */
+	public Class<? extends ILocation> getType() {
+		return ICDOResourceNodeLocation.class;
+	}
+
+	@Override
+	protected boolean canUpdate(Object element) {
+		return element instanceof CDOResourceNode;
+	}
+
+	@Override
+	protected boolean match(ILocation location, Object element) {
+		final boolean res;
+
+		// TODO we implicitly decide to have a flat structure of location here... we probably don't want to do
+		// that
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)location.getContainer();
+		final CDOResourceNode node = (CDOResourceNode)element;
+		if (node.cdoView().getSession().getRepositoryInfo().getUUID().equals(container.getUUID()) && node
+				.cdoView().getBranch().getID() == container.getBranchID()) {
+			res = ((ICDOResourceNodeLocation)location).getPath().equals(((CDOResourceNode)element).getPath());
+		} else {
+			res = false;
+		}
+
+		return res;
+	}
+
+	@Override
+	protected void initLocation(ILocationContainer container, ILocation location, Object element) {
+		final ICDOResourceNodeLocation toInit = (ICDOResourceNodeLocation)location;
+
+		toInit.setPath(((CDOResourceNode)element).getPath());
+		if (toInit instanceof ICDOResourceLocation) {
+			try {
+				eObjectContainerHelper.updateEObjectContainer(container, (ICDOResourceLocation)toInit,
+						(CDOResource)element);
+				// CHECKSTYLE:OFF
+			} catch (Exception e) {
+				// CHECKSTYLE:ON
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+		} else if (toInit instanceof ICDOTextResourceLocation) {
+			try {
+				final CDOTextResource textResource = (CDOTextResource)element;
+				final String text = getContent(textResource.getContents().getContents(), textResource
+						.getEncoding());
+				textContainerHelper.updateTextContainer(container, (ICDOTextResourceLocation)toInit, text);
+				// CHECKSTYLE:OFF
+			} catch (Exception e) {
+				// CHECKSTYLE:ON
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+		}
+		// TODO binary and text file delegates ?
+	}
+
+	/**
+	 * Gets the content of the given {@link Reader}.
+	 * 
+	 * @param reader
+	 *            the {@link Reader}
+	 * @param encoding
+	 *            the encoding
+	 * @return the content of the given {@link Reader}
+	 * @throws IOException
+	 *             if the {@link Reader} can't be read
+	 */
+	private String getContent(Reader reader, String encoding) throws IOException {
+		final StringBuilder builder = new StringBuilder();
+
+		char[] buffer = new char[BUFFZE_SIZE];
+		while (reader.read(buffer) != -1) {
+			builder.append(buffer);
+		}
+
+		return builder.toString();
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/CDOViewConnector.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/CDOViewConnector.java
new file mode 100644
index 0000000..ac1eaf9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/CDOViewConnector.java
@@ -0,0 +1,186 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.connector;
+
+import java.util.Set;
+
+import org.eclipse.emf.cdo.internal.net4j.CDONet4jSessionImpl;
+import org.eclipse.emf.cdo.view.CDOView;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.connector.AbstractConnector;
+import org.eclipse.intent.mapping.emf.ICDORepositoryLocation;
+
+/**
+ * {@link CDOView} connector.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class CDOViewConnector extends AbstractConnector {
+
+	/**
+	 * The {@link MappingCDOListener}.
+	 */
+	private final MappingCDOListener listener = new MappingCDOListener();
+
+	/**
+	 * Adds the given {@link CDOView} to the cache.
+	 * 
+	 * @param view
+	 *            the {@link CDOView} to add
+	 */
+	public void addSessionToCache(CDOView view) {
+		listener.addSessionToCache(view);
+	}
+
+	/**
+	 * Removes the given {@link CDOView} to the cache.
+	 * 
+	 * @param view
+	 *            the {@link CDOView} to remove
+	 */
+	public void removeSessionFromCache(CDOView view) {
+		listener.removeSessionFromCache(view);
+	}
+
+	/**
+	 * Adds the given {@link IBase} to the {@link Set} of {@link IBase} to update.
+	 * 
+	 * @param base
+	 *            the {@link IBase}
+	 */
+	public void addBaseToUpdate(IBase base) {
+		listener.addBaseToUpdate(base);
+	}
+
+	/**
+	 * Removes the given {@link IBase} from the {@link Set} of {@link IBase} to update.
+	 * 
+	 * @param base
+	 *            the {@link IBase}
+	 */
+	public void removeBaseToUpdate(IBase base) {
+		listener.removeBaseToUpdate(base);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationDescriptor(org.eclipse.intent.mapping.base.IBase,
+	 *      java.lang.Object)
+	 */
+	public ILocationDescriptor getLocationDescriptor(IBase base, Object element) {
+		final ILocationDescriptor res;
+
+		final Object adapted = adapt(element);
+		if (adapted instanceof CDOView) {
+			final CDOView cdoView = (CDOView)adapted;
+			res = new ObjectLocationDescriptor(base, adapted, cdoView.getSession().getRepositoryInfo()
+					.getName() + " (" + getURL(cdoView) + ")");
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationType(java.lang.Class, java.lang.Object)
+	 */
+	public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+			Object element) {
+		final Class<? extends ILocation> res;
+
+		if (element instanceof CDOView) {
+			res = getType();
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getElement(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public Object getElement(ILocation location) {
+		return listener.getElement(location);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getName(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public String getName(ILocation location) {
+		final ICDORepositoryLocation repositoryLocation = (ICDORepositoryLocation)location;
+		return repositoryLocation.getName() + " (" + repositoryLocation.getURL() + ")";
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getType()
+	 */
+	public Class<? extends ILocation> getType() {
+		return ICDORepositoryLocation.class;
+	}
+
+	@Override
+	protected boolean canUpdate(Object element) {
+		return element instanceof CDOView;
+	}
+
+	@Override
+	protected boolean match(ILocation location, Object element) {
+		return ((ICDORepositoryLocation)location).getUUID().equals(((CDOView)element).getSession()
+				.getRepositoryInfo().getUUID()) && ((ICDORepositoryLocation)location)
+						.getBranchID() == ((CDOView)element).getBranch().getID();
+	}
+
+	@Override
+	protected void initLocation(ILocationContainer container, ILocation location, Object element) {
+		final ICDORepositoryLocation toInit = (ICDORepositoryLocation)location;
+		final CDOView cdoView = (CDOView)element;
+
+		toInit.setURL(getURL(cdoView));
+		toInit.setUUID(cdoView.getSession().getRepositoryInfo().getUUID());
+		toInit.setName(cdoView.getSession().getRepositoryInfo().getName());
+		toInit.setBranchID(cdoView.getBranch().getID());
+	}
+
+	/**
+	 * Gets the URL for the given {@link CDOView}.
+	 * 
+	 * @param cdoView
+	 *            the {@link CDOView}
+	 * @return the URL for the given {@link CDOView}
+	 */
+	protected String getURL(CDOView cdoView) {
+		final String res;
+
+		if (cdoView.getSession() instanceof CDONet4jSessionImpl) {
+			res = ((CDONet4jSessionImpl)cdoView.getSession()).getConnector().getURL();
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/EObjectConnector.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/EObjectConnector.java
new file mode 100644
index 0000000..9c0a547
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/EObjectConnector.java
@@ -0,0 +1,750 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.connector;
+
+import java.io.ByteArrayInputStream;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map.Entry;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.compare.AttributeChange;
+import org.eclipse.emf.compare.Comparison;
+import org.eclipse.emf.compare.Diff;
+import org.eclipse.emf.compare.EMFCompare;
+import org.eclipse.emf.compare.Match;
+import org.eclipse.emf.compare.ReferenceChange;
+import org.eclipse.emf.compare.scope.DefaultComparisonScope;
+import org.eclipse.emf.compare.scope.IComparisonScope;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EStructuralFeature.Setting;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.util.EcoreUtil.Copier;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl;
+import org.eclipse.emf.ecore.xmi.impl.XMLHelperImpl;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.connector.AbstractConnector;
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.eclipse.intent.mapping.emf.IEObjectContainer;
+import org.eclipse.intent.mapping.emf.IEObjectLocation;
+
+/**
+ * {@link EObject} {@link org.eclipse.intent.mapping.connector.IConnector IConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EObjectConnector extends AbstractConnector {
+
+	/**
+	 * Utility helper to
+	 * {@link EObjectContainerHelper#updateEObjectContainer(ILocationContainer, IEObjectContainer, Resource)
+	 * update EObject container}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class EObjectContainerHelper {
+
+		/**
+		 * Updates the given {@link IEObjectContainer} with the given {@link Resource}.
+		 * 
+		 * @param container
+		 *            the {@link ILocationContainer}
+		 * @param eObjectContainer
+		 *            the {@link IEObjectContainer}
+		 * @param newResource
+		 *            the {@link Resource}
+		 * @throws Exception
+		 *             if the XMI serialization failed
+		 */
+		public void updateEObjectContainer(ILocationContainer container, IEObjectContainer eObjectContainer,
+				Resource newResource) throws Exception {
+			if (eObjectContainer.getXMIContent() != null && !eObjectContainer.getXMIContent().isEmpty()) {
+				final XMIResourceImpl oldResource = new XMIResourceImpl(URI.createURI(""));
+				oldResource.load(new ByteArrayInputStream(eObjectContainer.getXMIContent().getBytes(UTF_8)),
+						new HashMap<Object, Object>());
+				final IComparisonScope scope = new DefaultComparisonScope(oldResource, newResource, null);
+				final Comparison comparison = EMFCompare.builder().build().compare(scope);
+				for (ILocation child : new ArrayList<ILocation>(eObjectContainer.getContents())) {
+					if (child instanceof IEObjectLocation && !child.isMarkedAsDeleted()) {
+						final IEObjectLocation location = (IEObjectLocation)child;
+						updateEObjectLocation(oldResource, comparison, location, needSavedURIFragment(
+								newResource));
+					}
+				}
+			}
+
+			eObjectContainer.getSavedURIFragments().clear();
+			if (needSavedURIFragment(newResource)) {
+				updateSavedURIFragment(container, eObjectContainer, newResource);
+			}
+
+			final String newXMIContent = XMLHelperImpl.saveString(new HashMap<Object, Object>(), newResource
+					.getContents(), UTF_8, null);
+			eObjectContainer.setXMIContent(newXMIContent);
+		}
+
+		/**
+		 * Tells if the given {@link Resource} need to use {@link IEObjectLocation#getSavedURIFragment() saved
+		 * URI fragment}.
+		 * 
+		 * @param resource
+		 *            the {@link Resource}
+		 * @return <code>true</code> if the given {@link Resource} need to use
+		 *         {@link IEObjectLocation#getSavedURIFragment() saved URI fragment}, <code>false</code>
+		 *         otherwise
+		 */
+		protected boolean needSavedURIFragment(Resource resource) {
+			// !(resource instanceof XMIResource);
+			// TODO make an accurate guess...
+			return true;
+		}
+
+		/**
+		 * Updates the given {@link IEObjectLocation}.
+		 * 
+		 * @param oldResource
+		 *            the old {@link Resource}
+		 * @param comparison
+		 *            the {@link Comparison}
+		 * @param eObjectlocation
+		 *            the {@link IEObjectLocation}
+		 * @param useSaveURIFragment
+		 *            tells if we should use {@link IEObjectLocation#getSavedURIFragment()}
+		 * @throws Exception
+		 *             if {@link org.eclipse.intent.mapping.Report Report} can't be created
+		 */
+		protected void updateEObjectLocation(Resource oldResource, Comparison comparison,
+				IEObjectLocation eObjectlocation, boolean useSaveURIFragment) throws Exception {
+			final EObject oldObject;
+			if (useSaveURIFragment) {
+				oldObject = oldResource.getEObject(eObjectlocation.getSavedURIFragment());
+			} else {
+				oldObject = oldResource.getEObject(eObjectlocation.getURIFragment());
+			}
+			final Match match = comparison.getMatch(oldObject);
+
+			if (match.getRight() != null) {
+				final String newURIFragment = match.getRight().eResource().getURIFragment(match.getRight());
+				if (!match.getDifferences().isEmpty()) {
+					final EObject newObject = match.getRight();
+					if (eObjectlocation.getFeatureName() == null) {
+						MappingUtils.markAsChanged(eObjectlocation, getMatchMessage(oldObject, newObject,
+								match));
+					} else {
+						updateLoccationSetting(comparison, eObjectlocation, oldObject, newObject, match);
+					}
+				}
+				eObjectlocation.setURIFragment(newURIFragment);
+			} else {
+				MappingUtils.markAsDeletedOrDelete(eObjectlocation, String.format(
+						"%s at %s has been deleted.", getValueString(oldObject), eObjectlocation
+								.getURIFragment()));
+			}
+		}
+
+		/**
+		 * Gets a human readable messages for the given {@link Match}.
+		 * 
+		 * @param oldObject
+		 *            the old {@link EObject}
+		 * @param newObject
+		 *            the new {@link EObject}
+		 * @param match
+		 *            the {@link Match}
+		 * @return a human readable messages for the given {@link Match}
+		 */
+		protected String getMatchMessage(EObject oldObject, EObject newObject, Match match) {
+			final StringBuilder res = new StringBuilder();
+
+			for (Diff diff : match.getDifferences()) {
+				if (diff instanceof AttributeChange) {
+					res.append("Attribure ");
+					final EAttribute attribute = ((AttributeChange)diff).getAttribute();
+					res.append(attribute.getName());
+					res.append(" was ");
+					res.append(getValueString(oldObject.eGet(attribute)));
+					res.append(" changed to ");
+					res.append(getValueString(newObject.eGet(attribute)));
+				} else if (diff instanceof ReferenceChange) {
+					res.append("Reference ");
+					final EReference reference = ((ReferenceChange)diff).getReference();
+					res.append(reference.getName());
+					res.append(" was ");
+					res.append(getValueString(oldObject.eGet(reference)));
+					res.append(" changed to ");
+					res.append(getValueString(newObject.eGet(reference)));
+				}
+				res.append(".\n");
+			}
+
+			return res.substring(0, res.length() - 1);
+		}
+
+		/**
+		 * Updates the given {@link IEObjectLocation} for a {@link LocationSetting}.
+		 * 
+		 * @param comparison
+		 *            the {@link Comparison}
+		 * @param eObjectlocation
+		 *            the {@link IEObjectLocation} to update
+		 * @param oldObject
+		 *            the old holding {@link EObject}
+		 * @param newObject
+		 *            the new holding {@link EObject}
+		 * @param match
+		 *            the {@link Match}
+		 * @throws IllegalAccessException
+		 *             if the class or its nullary constructor is not accessible.
+		 * @throws InstantiationException
+		 *             if this Class represents an abstract class, an interface, an array class, a primitive
+		 *             type, or void; or if the class has no nullary constructor; or if the instantiation
+		 *             fails for some other reason.
+		 * @throws ClassNotFoundException
+		 *             if the {@link Class} can't be found
+		 */
+		protected void updateLoccationSetting(Comparison comparison, IEObjectLocation eObjectlocation,
+				final EObject oldObject, EObject newObject, final Match match) throws InstantiationException,
+				IllegalAccessException, ClassNotFoundException {
+			final EStructuralFeature feature = oldObject.eClass().getEStructuralFeature(eObjectlocation
+					.getFeatureName());
+			final boolean hasDiffForFeature = hasDiffForFeature(match, feature);
+			if (hasDiffForFeature) {
+				final Object oldValue;
+				final Object newValue;
+				if (feature.isMany()) {
+					oldValue = ((List<?>)oldObject.eGet(feature)).get(eObjectlocation.getIndex());
+					newValue = getNewValueInManySetting(comparison, oldValue);
+					final int newIndex = ((List<?>)newObject.eGet(feature)).indexOf(newValue);
+					eObjectlocation.setIndex(newIndex);
+				} else {
+					oldValue = oldObject.eGet(feature);
+					newValue = newObject.eGet(feature);
+				}
+				if (eObjectlocation.getIndex() == -1) {
+					MappingUtils.markAsDeletedOrDelete(eObjectlocation, String.format(
+							"%s (%s) value %s has been removed from feature %s.", getLabel(oldObject),
+							eObjectlocation.getURIFragment(), getValueString(oldValue), eObjectlocation
+									.getFeatureName()));
+				} else if (!oldValue.equals(newValue)) {
+					MappingUtils.markAsChanged(eObjectlocation, String.format(
+							"%s (%s) feature %s value %s has been changed to %s.", getLabel(oldObject),
+							eObjectlocation.getURIFragment(), eObjectlocation.getFeatureName(),
+							getValueString(oldValue), getValueString(newValue)));
+				}
+			} else {
+				// there is a diff for the holding EObject but not the located setting
+				// nothing to do here
+			}
+		}
+
+		/**
+		 * Gets the string representation of the given value.
+		 * 
+		 * @param value
+		 *            the value
+		 * @return the string representation of the given value
+		 */
+		protected String getValueString(Object value) {
+			final String res;
+
+			if (value instanceof EObject) {
+				res = getLabel((EObject)value);
+			} else if (value == null) {
+				res = "null";
+			} else {
+				res = value.toString();
+			}
+
+			return res;
+		}
+
+		/**
+		 * Gets the new value for a multi-valuated setting.
+		 * 
+		 * @param comparison
+		 *            the {@link Comparison}
+		 * @param oldValue
+		 *            the old value
+		 * @return the new value for a multi-valuated setting
+		 */
+		protected Object getNewValueInManySetting(Comparison comparison, final Object oldValue) {
+			final Object newValue;
+			if (oldValue instanceof EObject) {
+				final Match valueMatch = comparison.getMatch((EObject)oldValue);
+				if (valueMatch != null) {
+					newValue = valueMatch.getRight();
+				} else {
+					newValue = oldValue;
+				}
+			} else {
+				newValue = oldValue;
+			}
+			return newValue;
+		}
+
+		/**
+		 * Tells if there is a difference in the given {@link Match} for the given {@link EStructuralFeature}.
+		 * 
+		 * @param match
+		 *            the {@link Match}
+		 * @param feature
+		 *            the {@link EStructuralFeature}
+		 * @return <code>true</code> if there is a difference in the given {@link Match} for the given
+		 *         {@link EStructuralFeature}, <code>false</code> otherwise
+		 */
+		protected boolean hasDiffForFeature(Match match, EStructuralFeature feature) {
+			boolean res = false;
+
+			for (Diff diff : match.getDifferences()) {
+				if (diff instanceof AttributeChange) {
+					if (((AttributeChange)diff).getAttribute() == feature) {
+						res = true;
+						break;
+					}
+				} else if (diff instanceof ReferenceChange) {
+					if (((ReferenceChange)diff).getReference() == feature) {
+						res = true;
+						break;
+					}
+				}
+			}
+
+			return res;
+		}
+
+	}
+
+	/**
+	 * Locate a specific {@link Setting}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class LocationSetting implements Setting {
+
+		/**
+		 * The {@link EObject}.
+		 */
+		private final EObject eObject;
+
+		/**
+		 * The {@link EStructuralFeature}.
+		 */
+		private final EStructuralFeature feature;
+
+		/**
+		 * The index in the {@link LocationSetting#getEStructuralFeature() feature}.
+		 */
+		private final int index;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param eObject
+		 *            the {@link EObject}
+		 * @param feature
+		 *            the {@link EStructuralFeature}
+		 * @param index
+		 *            the index in the {@link LocationSetting#getEStructuralFeature() feature}
+		 */
+		private LocationSetting(EObject eObject, EStructuralFeature feature, int index) {
+			this.eObject = eObject;
+			this.feature = feature;
+			this.index = index;
+		}
+
+		/**
+		 * Unsupported operation.
+		 */
+		public void unset() {
+			throw new UnsupportedOperationException();
+		}
+
+		/**
+		 * Unsupported operation.
+		 * 
+		 * @param newValue
+		 *            the new value
+		 */
+		public void set(Object newValue) {
+			throw new UnsupportedOperationException();
+		}
+
+		/**
+		 * Unsupported operation.
+		 * 
+		 * @return <code>true</code> if is setn <code>false</code> otherwise
+		 */
+		public boolean isSet() {
+			throw new UnsupportedOperationException();
+		}
+
+		/**
+		 * Gets the {@link EStructuralFeature} containing the value.
+		 * 
+		 * @return the {@link EStructuralFeature} containing the value
+		 */
+		public EStructuralFeature getEStructuralFeature() {
+			return feature;
+		}
+
+		/**
+		 * Gets the containing {@link EObject}.
+		 * 
+		 * @return the containing {@link EObject}
+		 */
+		public EObject getEObject() {
+			return eObject;
+		}
+
+		/**
+		 * Gets the value.
+		 * 
+		 * @param resolve
+		 *            whether to resolve
+		 * @return the value
+		 */
+		@SuppressWarnings("unchecked")
+		public Object get(boolean resolve) {
+			final Object res;
+
+			final Object value = eObject.eGet(feature, resolve);
+			if (feature.isMany()) {
+				res = ((List<Object>)value).get(index);
+			} else {
+				res = value;
+			}
+
+			return res;
+		}
+	}
+
+	/**
+	 * UTF-8 charset.
+	 */
+	private static final String UTF_8 = "UTF-8";
+
+	/**
+	 * The factory used to retrieve providers.
+	 */
+	private static final AdapterFactory FACTORY = new ComposedAdapterFactory(
+			ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationType(java.lang.Class, java.lang.Object)
+	 */
+	public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+			Object element) {
+		final Class<? extends ILocation> res;
+
+		if (IEObjectContainer.class.isAssignableFrom(containerType) && (element instanceof EObject
+				|| element instanceof Setting)) {
+			res = getType();
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	@Override
+	protected void initLocation(ILocationContainer container, ILocation location, Object element) {
+		final IEObjectLocation toInit = (IEObjectLocation)location;
+
+		final EObject eObject;
+		final String featureName;
+		final int index;
+		if (element instanceof Setting) {
+			final Setting setting = (Setting)element;
+			eObject = setting.getEObject();
+			final EStructuralFeature feature = ((Setting)element).getEStructuralFeature();
+			featureName = feature.getName();
+			if (feature.isMany()) {
+				index = ((List<?>)eObject.eGet(feature, true)).indexOf(setting.get(true));
+			} else {
+				index = 0;
+			}
+		} else {
+			eObject = getEObject((IEObjectContainer)container, (EObject)element);
+			featureName = null;
+			index = 0;
+		}
+
+		final String uriFragment = eObject.eResource().getURIFragment(eObject);
+		toInit.setURIFragment(uriFragment);
+		toInit.setFeatureName(featureName);
+		toInit.setSavedURIFragment(getSavedURIFragment((IEObjectContainer)container, uriFragment));
+		toInit.setIndex(index);
+	}
+
+	/**
+	 * Gets the saved {@link URI} fragment for the given {@link IEObjectContainer} and {@link URI} fragment.
+	 * 
+	 * @param container
+	 *            the {@link IEObjectContainer}
+	 * @param uriFragment
+	 *            the {@link URI} fragment
+	 * @return the saved {@link URI} fragment for the given {@link IEObjectContainer} and {@link URI} fragment
+	 *         if any, <code>null</code> otherwise
+	 */
+	private String getSavedURIFragment(IEObjectContainer container, String uriFragment) {
+		String res = null;
+
+		for (ICouple couple : container.getSavedURIFragments()) {
+			if (couple.getKey().contentEquals(uriFragment)) {
+				res = couple.getValue();
+			}
+		}
+
+		return res;
+	}
+
+	/**
+	 * Gets the instance of the given {@link EObject} in the given {@link IEObjectContainer}.
+	 * 
+	 * @param container
+	 *            the {@link IEObjectContainer}
+	 * @param eObject
+	 *            the original {@link EObject}
+	 * @return the instance of the given {@link EObject} in the given {@link IEObjectContainer} if any, the
+	 *         <code>null</code> otherwise
+	 */
+	private EObject getEObject(IEObjectContainer container, EObject eObject) {
+		final EObject res;
+
+		final Resource resource = (Resource)MappingUtils.getConnectorRegistry().getElement(container);
+		final String uriFragment = eObject.eResource().getURIFragment(eObject);
+		res = resource.getEObject(uriFragment);
+
+		return res;
+	}
+
+	@Override
+	protected boolean match(ILocation location, Object element) {
+		final boolean res;
+
+		final IEObjectLocation eObjectLocation = (IEObjectLocation)location;
+		if (eObjectLocation.getFeatureName() != null) {
+			if (element instanceof Setting) {
+				final Setting setting = (Setting)element;
+				final String uriFragment = setting.getEObject().eResource().getURIFragment(setting
+						.getEObject());
+				final boolean correctIndex;
+				if (setting.getEStructuralFeature().isMany()) {
+					correctIndex = eObjectLocation.getIndex() == ((List<?>)setting.getEObject().eGet(setting
+							.getEStructuralFeature())).indexOf(setting.get(true));
+				} else {
+					correctIndex = true;
+				}
+				res = uriFragment != null && uriFragment.equals(eObjectLocation.getURIFragment())
+						&& eObjectLocation.getFeatureName().equals(setting.getEStructuralFeature().getName())
+						&& correctIndex;
+			} else {
+				res = false;
+			}
+		} else {
+			if (element instanceof EObject) {
+				final EObject eObject = (EObject)element;
+				final String uriFragment = ((EObject)element).eResource().getURIFragment(eObject);
+				res = uriFragment != null && uriFragment.equals(eObjectLocation.getURIFragment());
+			} else {
+				res = false;
+			}
+		}
+
+		return res;
+	}
+
+	/**
+	 * Updates {@link IEObjectLocation#getSavedURIFragment() saved URI fragment}.
+	 * 
+	 * @param container
+	 *            the {@link ILocationContainer}
+	 * @param eObjectContainer
+	 *            the {@link IEObjectContainer}
+	 * @param newResource
+	 *            the new {@link Resource}
+	 * @throws Exception
+	 *             if the XMI serialization failed or elements couldn't be created
+	 */
+	private static void updateSavedURIFragment(ILocationContainer container,
+			IEObjectContainer eObjectContainer, Resource newResource) throws Exception {
+		final IBase base = MappingUtils.getBase(container);
+
+		final Copier copier = new Copier();
+		final Collection<EObject> copiedContents = copier.copyAll(newResource.getContents());
+		copier.copyReferences();
+		final XMIResourceImpl newXMIResource = new XMIResourceImpl();
+		newXMIResource.getContents().addAll(copiedContents);
+
+		for (Entry<EObject, EObject> entry : copier.entrySet()) {
+			final EObject newEObject = entry.getKey();
+			final EObject savedEObject = entry.getValue();
+			final ICouple couple = base.getFactory().createElement(ICouple.class);
+			couple.setKey(newResource.getURIFragment(newEObject));
+			couple.setValue(newXMIResource.getURIFragment(savedEObject));
+			eObjectContainer.getSavedURIFragments().add(couple);
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getName(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public String getName(ILocation location) {
+		final String res;
+
+		final Object element = getElement(location);
+		if (element instanceof Setting) {
+			final Setting setting = (Setting)element;
+			res = getName(setting.getEObject(), setting.getEStructuralFeature(), ((IEObjectLocation)location)
+					.getIndex());
+		} else if (element instanceof EObject) {
+			res = getName((EObject)element, null, 0);
+		} else {
+			// the located element has been deleted...
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Gets the name for the given {@link EObject} and {@link EStructuralFeature}.
+	 * 
+	 * @param eObj
+	 *            the {@link EObject}
+	 * @param feature
+	 *            the {@link EStructuralFeature} can be <code>null</code>
+	 * @param index
+	 *            the index in the feature
+	 * @return the name for the given {@link EObject} and {@link EStructuralFeature}
+	 */
+	private String getName(EObject eObj, EStructuralFeature feature, int index) {
+		final StringBuilder res = new StringBuilder();
+
+		res.append(getLabel(eObj));
+		if (feature != null) {
+			res.append(" ");
+			res.append(feature.getEContainingClass().getName());
+			res.append(".");
+			res.append(feature.getName());
+			res.append("[");
+			res.append(index);
+			res.append("]");
+		}
+
+		return res.toString();
+	}
+
+	/**
+	 * Gets the label of the given {@link EObject}.
+	 * 
+	 * @param eObj
+	 *            the {@link EObject}
+	 * @return the label of the given {@link EObject}
+	 */
+	private static String getLabel(EObject eObj) {
+		final String res;
+		final IItemLabelProvider itemProvider = (IItemLabelProvider)FACTORY.adapt(eObj,
+				IItemLabelProvider.class);
+
+		if (itemProvider == null) {
+			res = eObj.toString();
+		} else {
+			res = itemProvider.getText(eObj);
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationDescriptor(org.eclipse.intent.mapping.base.IBase,
+	 *      java.lang.Object)
+	 */
+	public ILocationDescriptor getLocationDescriptor(IBase base, Object element) {
+		final ILocationDescriptor res;
+
+		final Object adapted = adapt(element);
+		if (adapted instanceof EObject) {
+			final EObject eObj = (EObject)adapted;
+			res = new ObjectLocationDescriptor(base, adapted, getName(eObj, null, 0));
+		} else if (adapted instanceof Setting) {
+			final EObject eObj = ((Setting)adapted).getEObject();
+			final EStructuralFeature feature = ((Setting)adapted).getEStructuralFeature();
+			res = new ObjectLocationDescriptor(base, adapted, getName(eObj, feature, 0));
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	@Override
+	protected boolean canUpdate(Object element) {
+		return element instanceof EObject || element instanceof Setting;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getElement(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public Object getElement(ILocation location) {
+		final Object res;
+
+		final IEObjectLocation eObjLocation = (IEObjectLocation)location;
+		if (location.getContainer() != null) {
+			final Resource resource = (Resource)MappingUtils.getConnectorRegistry().getElement(
+					(ILocation)location.getContainer());
+			final EObject eObject = resource.getEObject(eObjLocation.getURIFragment());
+			if (eObjLocation.getFeatureName() != null) {
+				final EStructuralFeature feature = eObject.eClass().getEStructuralFeature(eObjLocation
+						.getFeatureName());
+				final int index = eObjLocation.getIndex();
+				res = new LocationSetting(eObject, feature, index);
+			} else {
+				res = eObject;
+			}
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationType()
+	 */
+	public Class<? extends ILocation> getType() {
+		return IEObjectLocation.class;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/MappingCDOListener.java b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/MappingCDOListener.java
new file mode 100644
index 0000000..e24cfea
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.emf/src/org/eclipse/intent/mapping/emf/connector/MappingCDOListener.java
@@ -0,0 +1,305 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.connector;
+
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedHashSet;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+
+import org.eclipse.emf.cdo.CDOObject;
+import org.eclipse.emf.cdo.common.revision.CDOIDAndVersion;
+import org.eclipse.emf.cdo.common.revision.CDORevisionKey;
+import org.eclipse.emf.cdo.common.revision.delta.CDOFeatureDelta;
+import org.eclipse.emf.cdo.common.revision.delta.CDORevisionDelta;
+import org.eclipse.emf.cdo.eresource.CDOResource;
+import org.eclipse.emf.cdo.eresource.CDOResourceFolder;
+import org.eclipse.emf.cdo.eresource.CDOResourceNode;
+import org.eclipse.emf.cdo.eresource.EresourcePackage;
+import org.eclipse.emf.cdo.session.CDOSessionInvalidationEvent;
+import org.eclipse.emf.cdo.view.CDOView;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.emf.ICDORepositoryLocation;
+import org.eclipse.net4j.util.event.IEvent;
+import org.eclipse.net4j.util.event.IListener;
+
+/**
+ * Listen to changes and update locations accordingly.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class MappingCDOListener implements IListener {
+
+	/**
+	 * The {@link CDOView} cache.
+	 */
+	private final Map<String, Map<Integer, CDOView>> viewCache = new HashMap<String, Map<Integer, CDOView>>();
+
+	/**
+	 * The {@link Set} of {@link IBase} to update.
+	 */
+	private final Set<IBase> bases = new LinkedHashSet<IBase>();
+
+	/**
+	 * Adds the given {@link CDOView} to the cache.
+	 * 
+	 * @param view
+	 *            the {@link CDOView} to add
+	 */
+	public void addSessionToCache(CDOView view) {
+		Map<Integer, CDOView> map = viewCache.get(view.getSession().getRepositoryInfo().getUUID());
+		if (map == null) {
+			map = new HashMap<Integer, CDOView>();
+			viewCache.put(view.getSession().getRepositoryInfo().getUUID(), map);
+		}
+		map.put(view.getBranch().getID(), view);
+
+		view.getSession().addListener(this);
+	}
+
+	/**
+	 * Removes the given {@link CDOView} to the cache.
+	 * 
+	 * @param view
+	 *            the {@link CDOView} to remove
+	 */
+	public void removeSessionFromCache(CDOView view) {
+		view.getSession().removeListener(this);
+
+		Map<Integer, CDOView> map = viewCache.get(view.getSession().getRepositoryInfo().getUUID());
+		if (map != null) {
+			if (map.remove(view.getBranch().getID()) != null && map.isEmpty()) {
+				viewCache.remove(view.getSession().getRepositoryInfo().getUUID());
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getElement(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public Object getElement(ILocation location) {
+		final CDOView res;
+
+		final Map<Integer, CDOView> map = viewCache.get(((ICDORepositoryLocation)location).getUUID());
+		if (map != null) {
+			res = map.get(((ICDORepositoryLocation)location).getBranchID());
+		} else {
+			res = null;
+		}
+
+		// TODO if not in cache open a session/view...
+
+		return res;
+	}
+
+	/**
+	 * Adds the given {@link IBase} to the {@link Set} of {@link IBase} to update.
+	 * 
+	 * @param base
+	 *            the {@link IBase}
+	 */
+	public void addBaseToUpdate(IBase base) {
+		bases.add(base);
+	}
+
+	/**
+	 * Removes the given {@link IBase} from the {@link Set} of {@link IBase} to update.
+	 * 
+	 * @param base
+	 *            the {@link IBase}
+	 */
+	public void removeBaseToUpdate(IBase base) {
+		bases.add(base);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.net4j.util.event.IListener#notifyEvent(org.eclipse.net4j.util.event.IEvent)
+	 */
+	public void notifyEvent(IEvent event) {
+		if (event instanceof CDOSessionInvalidationEvent) {
+			final CDOSessionInvalidationEvent cdoSessionInvalidationEvent = (CDOSessionInvalidationEvent)event;
+
+			checkDetachedObjects(cdoSessionInvalidationEvent);
+
+			checkChangedObjects(cdoSessionInvalidationEvent);
+		}
+	}
+
+	/**
+	 * Checks for {@link CDOSessionInvalidationEvent#getDetachedObjects() detached objects}.
+	 * 
+	 * @param cdoSessionInvalidationEvent
+	 *            the {@link CDOSessionInvalidationEvent}
+	 */
+	protected void checkDetachedObjects(final CDOSessionInvalidationEvent cdoSessionInvalidationEvent) {
+		final CDOView view = cdoSessionInvalidationEvent.getSource().openView(cdoSessionInvalidationEvent
+				.getBranch(), cdoSessionInvalidationEvent.getPreviousTimeStamp());
+
+		for (CDOIDAndVersion cdoidAndVersion : cdoSessionInvalidationEvent.getDetachedObjects()) {
+			final CDOObject object = view.getObject(cdoidAndVersion.getID());
+			if (object instanceof CDOResourceNode) {
+				final CDOResourceNode node = (CDOResourceNode)object;
+				for (IBase base : bases) {
+					final ILocation repositoryLocation = MappingUtils.getConnectorRegistry().getLocation(base,
+							view);
+					if (repositoryLocation != null) {
+						deleteResourceNode(repositoryLocation, node);
+					}
+				}
+			} else {
+				// TODO other deletions/resource change
+			}
+		}
+
+		view.close();
+	}
+
+	/**
+	 * Deletes the given {@link CDOResourceNode} from the given {@link ILocationContainer}.
+	 * 
+	 * @param container
+	 *            the {@link ILocationContainer}
+	 * @param node
+	 *            the {@link CDOResourceNode}
+	 */
+	protected void deleteResourceNode(final ILocationContainer container, final CDOResourceNode node) {
+		final ILocation resourceNodeLocation = MappingUtils.getConnectorRegistry().getLocation(container,
+				node);
+		if (resourceNodeLocation != null) {
+			try {
+				MappingUtils.markAsDeletedOrDelete(resourceNodeLocation, node.getPath()
+						+ " has been deleted.");
+			} catch (InstantiationException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			} catch (IllegalAccessException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			} catch (ClassNotFoundException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+		}
+	}
+
+	/**
+	 * Checks for {@link CDOSessionInvalidationEvent#getChangedObjects() changed objects}.
+	 * 
+	 * @param cdoSessionInvalidationEvent
+	 *            the {@link CDOSessionInvalidationEvent}
+	 */
+	protected void checkChangedObjects(final CDOSessionInvalidationEvent cdoSessionInvalidationEvent) {
+		final CDOView oldView = cdoSessionInvalidationEvent.getSource().openView(cdoSessionInvalidationEvent
+				.getBranch(), cdoSessionInvalidationEvent.getPreviousTimeStamp());
+		final CDOView newView = cdoSessionInvalidationEvent.getLocalTransaction();
+
+		for (IBase base : bases) {
+			final Map<CDOView, Set<Object>> changedElements = new HashMap<CDOView, Set<Object>>();
+			for (CDORevisionKey cdoRevisionKey : cdoSessionInvalidationEvent.getChangedObjects()) {
+				final ILocation repositoryLocation = MappingUtils.getConnectorRegistry().getLocation(base,
+						oldView);
+				if (repositoryLocation != null) {
+					if (cdoRevisionKey instanceof CDORevisionDelta) {
+						final CDORevisionDelta delta = (CDORevisionDelta)cdoRevisionKey;
+						final CDOObject newObject = newView.getObject(delta.getID());
+						Set<Object> set = changedElements.get(newView);
+						if (set == null) {
+							set = new HashSet<Object>();
+							changedElements.put(newView, set);
+						}
+						set.add(newObject.eResource());
+						final CDOFeatureDelta renameDelta = delta.getFeatureDelta(EresourcePackage.eINSTANCE
+								.getCDOResourceNode_Name());
+						final CDOFeatureDelta binaryContentDelta = delta.getFeatureDelta(
+								EresourcePackage.eINSTANCE.getCDOBinaryResource_Contents());
+						final CDOFeatureDelta textContentDelta = delta.getFeatureDelta(
+								EresourcePackage.eINSTANCE.getCDOTextResource_Contents());
+						if (renameDelta != null) {
+							final CDOResourceNode object = (CDOResourceNode)oldView.getObject(delta.getID());
+							final CDOResourceNode oldNode = (CDOResourceNode)object;
+							renameResourceNode(newView, repositoryLocation, oldNode,
+									(CDOResourceNode)newObject);
+						} else if (binaryContentDelta != null || textContentDelta != null) {
+							set.add(newObject);
+						}
+					}
+				}
+			}
+			resourceContentChanged(base, changedElements);
+		}
+		oldView.close();
+
+	}
+
+	/**
+	 * Renames the given {@link CDOResourceNode} and its contents if any.
+	 * 
+	 * @param newView
+	 *            the {@link CDOView} before changes
+	 * @param repositoryLocation
+	 *            the repository location
+	 * @param oldNode
+	 *            the {@link CDOResourceNode} before changes
+	 * @param newNode
+	 *            the {@link CDOResourceNode} after changes
+	 */
+	private void renameResourceNode(CDOView newView, ILocation repositoryLocation, CDOResourceNode oldNode,
+			CDOResourceNode newNode) {
+		final ILocation location = MappingUtils.getConnectorRegistry().getLocation(repositoryLocation,
+				oldNode);
+		if (location != null) {
+			MappingUtils.getConnectorRegistry().updateLocation(location, newNode);
+		}
+		if (oldNode instanceof CDOResourceFolder) {
+			for (CDOResourceNode oldChild : ((CDOResourceFolder)oldNode).getNodes()) {
+				final CDOResourceNode newChild = (CDOResourceNode)newView.getObject(oldChild.cdoID());
+				if (newChild != null) {
+					renameResourceNode(newView, repositoryLocation, oldChild, newChild);
+				}
+			}
+		}
+	}
+
+	/**
+	 * Updates changed {@link CDOResource}.
+	 * 
+	 * @param base
+	 *            the {@link IBase}
+	 * @param changedElements
+	 *            the {@link Set} of changed elements per {@link CDOView}
+	 */
+	private void resourceContentChanged(IBase base, Map<CDOView, Set<Object>> changedElements) {
+		for (Entry<CDOView, Set<Object>> entry : changedElements.entrySet()) {
+			final ILocation repositoryLocation = MappingUtils.getConnectorRegistry().getLocation(base, entry
+					.getKey());
+			if (repositoryLocation != null) {
+				for (Object element : entry.getValue()) {
+					final ILocation location = MappingUtils.getConnectorRegistry().getLocation(
+							repositoryLocation, element);
+					if (location != null) {
+						MappingUtils.getConnectorRegistry().updateLocation(location, element);
+					}
+				}
+			}
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.checkstyle b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.checkstyle
new file mode 100644
index 0000000..b3e8ea9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.checkstyle
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6Configuration.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+  <filter name="FilesFromPackage" enabled="true">
+    <filter-data value="google-diff-match-patch"/>
+  </filter>
+</fileset-config>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.classpath b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.classpath
new file mode 100644
index 0000000..304e861
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.project b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.project
new file mode 100644
index 0000000..0b3fddf
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.ide.ui</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.settings/org.eclipse.jdt.core.prefs b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3433b02
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,315 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.settings/org.eclipse.jdt.ui.prefs b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..f7e57f8
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=com;eu;fr;java;javax;org;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/META-INF/MANIFEST.MF b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..e5d2296
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,20 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Ui
+Bundle-SymbolicName: org.eclipse.intent.mapping.ide.ui;singleton:=true
+Bundle-Version: 0.10.0.qualifier
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.intent.mapping,
+ org.eclipse.intent.mapping.ide,
+ org.eclipse.core.resources,
+ org.eclipse.ui.ide,
+ org.eclipse.ui.editors,
+ org.eclipse.jface.text
+Export-Package: org.eclipse.intent.mapping.ide.ui,
+ org.eclipse.intent.mapping.ide.ui.adapter,
+ org.eclipse.intent.mapping.ide.ui.command,
+ org.eclipse.intent.mapping.ide.ui.marker,
+ org.eclipse.intent.mapping.ide.ui.view
+Bundle-ActivationPolicy: lazy
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/build.properties b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/build.properties
new file mode 100644
index 0000000..cc91072
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/build.properties
@@ -0,0 +1,4 @@
+source.. = src/
+bin.includes = META-INF/,\
+               .,\
+               plugin.xml
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/plugin.xml b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/plugin.xml
new file mode 100644
index 0000000..00f4228
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/plugin.xml
@@ -0,0 +1,288 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+   <extension
+         point="org.eclipse.ui.views">
+      <category
+            id="org.eclipse.intent.mapping.ide.ui.mapping"
+            name="Mapping">
+      </category>
+      <view
+            category="org.eclipse.intent.mapping.ide.ui.mapping"
+            class="org.eclipse.intent.mapping.ide.ui.view.MappingView"
+            id="org.eclipse.intent.mapping.ide.ui.view.MappingView"
+            name="Mapping">
+      </view>
+      <view
+            category="org.eclipse.intent.mapping.ide.ui.mapping"
+            class="org.eclipse.intent.mapping.ide.ui.view.SynchronizationPaletteView"
+            id="org.eclipse.intent.mapping.ide.ui.view.SynchronizationPaletteView"
+            name="Synchronization Palette">
+      </view>
+   </extension>
+   <extension
+         point="org.eclipse.core.runtime.adapters">
+      <factory
+            adaptableType="java.lang.Object"
+            class="org.eclipse.intent.mapping.ide.ui.adapter.ObjectToLocationAdapterFactory">
+         <adapter
+               type="org.eclipse.intent.mapping.base.ILocation">
+         </adapter>
+         <adapter
+               type="org.eclipse.intent.mapping.base.ILocationDescriptor">
+         </adapter>
+      </factory>
+   </extension>
+   <extension
+         point="org.eclipse.ui.menus">
+      <menuContribution
+            allPopups="false"
+            locationURI="popup:org.eclipse.ui.popup.any?after=additions">
+         <menu
+               id="org.eclipse.intent.mapping.ide.ui.menu"
+               label="Synchronize"
+               tooltip="Locations and Links menu">
+            <command
+                  commandId="org.eclipse.intent.mapping.ide.ui.linkAsSource"
+                  label="Link location as master source"
+                  style="push"
+                  tooltip="Links the current location as master source with activated locations from the synchronization palette">
+               <visibleWhen
+                     checkEnabled="false">
+                  <with
+                        variable="selection">
+                     <iterate
+                           ifEmpty="false"
+                           operator="and">
+                        <adapt
+                              type="org.eclipse.intent.mapping.base.ILocationDescriptor">
+                           <instanceof
+                                 value="org.eclipse.intent.mapping.base.ILocationDescriptor">
+                           </instanceof>
+                        </adapt>
+                     </iterate>
+                  </with>
+               </visibleWhen>
+            </command>
+            <command
+                  commandId="org.eclipse.intent.mapping.ide.ui.linkAsTarget"
+                  label="Link location as slave target"
+                  style="push"
+                  tooltip="Links the current location as slave target with activated locations from the synchronization palette">
+               <visibleWhen
+                     checkEnabled="false">
+                  <with
+                        variable="selection">
+                     <iterate
+                           ifEmpty="false"
+                           operator="and">
+                        <adapt
+                              type="org.eclipse.intent.mapping.base.ILocationDescriptor">
+                           <instanceof
+                                 value="org.eclipse.intent.mapping.base.ILocationDescriptor">
+                           </instanceof>
+                        </adapt>
+                     </iterate>
+                  </with>
+               </visibleWhen>
+            </command>
+            <command
+                  commandId="org.eclipse.intent.mapping.ide.ui.addToSynchronizationPalette"
+                  label="Add location to synchronization palette"
+                  style="push"
+                  tooltip="Adds the selected location to synchronization palette">
+               <visibleWhen
+                     checkEnabled="false">
+                  <with
+                        variable="selection">
+                     <iterate
+                           ifEmpty="false"
+                           operator="and">
+                        <adapt
+                              type="org.eclipse.intent.mapping.base.ILocationDescriptor">
+                           <instanceof
+                                 value="org.eclipse.intent.mapping.base.ILocationDescriptor">
+                           </instanceof>
+                        </adapt>
+                     </iterate>
+                  </with>
+               </visibleWhen>
+            </command>
+            <command
+                  commandId="org.eclipse.intent.mapping.ide.ui.removeFromSynchronizationPalette"
+                  label="Remove location from  synchronization palette"
+                  style="push"
+                  tooltip="Removes the selected location from the synchronization palette">
+               <visibleWhen
+                     checkEnabled="false">
+                  <with
+                        variable="selection">
+                     <iterate
+                           ifEmpty="false"
+                           operator="and">
+                        <adapt
+                              type="org.eclipse.intent.mapping.base.ILocationDescriptor">
+                           <instanceof
+                                 value="org.eclipse.intent.mapping.base.ILocationDescriptor">
+                           </instanceof>
+                        </adapt>
+                     </iterate>
+                  </with>
+               </visibleWhen>
+            </command>
+            <command
+                  commandId="org.eclipse.intent.mapping.ide.ui.delete"
+                  label="Delete"
+                  style="push"
+                  tooltip="Deletes the selection">
+               <visibleWhen
+                     checkEnabled="false">
+                  <with
+                        variable="selection">
+                     <iterate
+                           ifEmpty="false"
+                           operator="and">
+                        <or>
+                           <instanceof
+                                 value="org.eclipse.intent.mapping.base.ILocation">
+                           </instanceof>
+                           <instanceof
+                                 value="org.eclipse.intent.mapping.base.ILink">
+                           </instanceof>
+                           <instanceof
+                                 value="org.eclipse.intent.mapping.base.IReport">
+                           </instanceof>
+                        </or>
+                     </iterate>
+                  </with>
+               </visibleWhen>
+            </command>
+            <command
+                  commandId="org.eclipse.intent.mapping.ide.ui.describe"
+                  label="Describe"
+                  style="push"
+                  tooltip="Describe the selected Link or Report">
+               <visibleWhen
+                     checkEnabled="false">
+                  <with
+                        variable="selection">
+                     <iterate
+                           ifEmpty="false"
+                           operator="and">
+                        <or>
+                           <instanceof
+                                 value="org.eclipse.intent.mapping.base.ILink">
+                           </instanceof>
+                           <instanceof
+                                 value="org.eclipse.intent.mapping.base.IReport">
+                           </instanceof>
+                        </or>
+                     </iterate>
+                     <count
+                           value="1">
+                     </count>
+                  </with>
+               </visibleWhen>
+            </command>
+            <command
+                  commandId="org.eclipse.intent.mapping.ide.ui.addReport"
+                  label="Add Report"
+                  style="push"
+                  tooltip="Add a Report to the selected Link">
+               <visibleWhen
+                     checkEnabled="false">
+                  <with
+                        variable="selection">
+                     <iterate
+                           ifEmpty="false"
+                           operator="and">
+                        <instanceof
+                              value="org.eclipse.intent.mapping.base.ILink">
+                        </instanceof>
+                     </iterate>
+                     <count
+                           value="1">
+                     </count>
+                  </with>
+               </visibleWhen>
+            </command>
+         </menu>
+      </menuContribution>
+   </extension>
+   <extension
+         point="org.eclipse.ui.handlers">
+      <handler
+            class="org.eclipse.intent.mapping.ide.ui.command.AddToSynchronizationPaletteHandler"
+            commandId="org.eclipse.intent.mapping.ide.ui.addToSynchronizationPalette">
+      </handler>
+      <handler
+            class="org.eclipse.intent.mapping.ide.ui.command.RemoveFromSynchronizationPaletteHandler"
+            commandId="org.eclipse.intent.mapping.ide.ui.removeFromSynchronizationPalette">
+      </handler>
+      <handler
+            class="org.eclipse.intent.mapping.ide.ui.command.LinkAsSource"
+            commandId="org.eclipse.intent.mapping.ide.ui.linkAsSource">
+      </handler>
+      <handler
+            class="org.eclipse.intent.mapping.ide.ui.command.LinkAsTarget"
+            commandId="org.eclipse.intent.mapping.ide.ui.linkAsTarget">
+      </handler>
+      <handler
+            class="org.eclipse.intent.mapping.ide.ui.command.Delete"
+            commandId="org.eclipse.intent.mapping.ide.ui.delete">
+      </handler>
+      <handler
+            class="org.eclipse.intent.mapping.ide.ui.command.Describe"
+            commandId="org.eclipse.intent.mapping.ide.ui.describe">
+      </handler>
+      <handler
+            class="org.eclipse.intent.mapping.ide.ui.command.AddReport"
+            commandId="org.eclipse.intent.mapping.ide.ui.addReport">
+      </handler>
+   </extension>
+   <extension
+         point="org.eclipse.ui.commands">
+      <command
+            description="Adds the selected location to synchronization palette"
+            id="org.eclipse.intent.mapping.ide.ui.addToSynchronizationPalette"
+            name="Add Location to synchronization palette">
+      </command>
+      <command
+            description="Removes the selected location from the synchronization palette"
+            id="org.eclipse.intent.mapping.ide.ui.removeFromSynchronizationPalette"
+            name="Remove Location from  synchronization palette">
+      </command>
+      <command
+            description="Links the selected location as master source with activated locations from the synchronization palette"
+            id="org.eclipse.intent.mapping.ide.ui.linkAsSource"
+            name="Link as master source">
+      </command>
+      <command
+            description="Links the selected location as slave target with activated locations from the synchronization palette"
+            id="org.eclipse.intent.mapping.ide.ui.linkAsTarget"
+            name="Link as slave target">
+      </command>
+      <command
+            description="Deletes the selection"
+            id="org.eclipse.intent.mapping.ide.ui.delete"
+            name="Delete">
+      </command>
+      <command
+            description="Describe the selected Link or Report"
+            id="org.eclipse.intent.mapping.ide.ui.describe"
+            name="Describe">
+      </command>
+      <command
+            description="Add a Report to selected Link"
+            id="org.eclipse.intent.mapping.ide.ui.addReport"
+            name="Add Report">
+      </command>
+   </extension>
+   <extension
+         point="org.eclipse.ui.newWizards">
+      <category
+            id="org.eclipse.intent.mapping.ide.ui.mapping"
+            name="Mapping">
+      </category>
+   </extension>
+</plugin>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/pom.xml b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/pom.xml
new file mode 100644
index 0000000..352e875
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/pom.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping.ide.ui</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-plugin</packaging>
+
+  <name>Mapping IDE UI</name>
+
+  <build>
+   <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-source-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+  
+</project>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/Activator.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/Activator.java
new file mode 100644
index 0000000..69645b3
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/Activator.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class Activator extends Plugin {
+
+	/** The plug-in ID. */
+	public static final String PLUGIN_ID = "org.eclipse.intent.mapping.ide.ui";
+
+	/** This plug-in's shared instance. */
+	private static Activator plugin;
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext)
+	 */
+	public void start(BundleContext context) throws Exception {
+		super.start(context);
+		plugin = this;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
+	 */
+	public void stop(BundleContext context) throws Exception {
+		super.stop(context);
+		plugin = null;
+	}
+
+	/**
+	 * Returns the shared instance.
+	 * 
+	 * @return the shared instance
+	 */
+	public static Activator getDefault() {
+		return plugin;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/UiIdeMappingUtils.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/UiIdeMappingUtils.java
new file mode 100644
index 0000000..1012d2b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/UiIdeMappingUtils.java
@@ -0,0 +1,139 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui;
+
+import java.io.File;
+import java.net.URI;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.URIUtil;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IFileEditorInput;
+import org.eclipse.ui.IURIEditorInput;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.editors.text.ILocationProvider;
+import org.eclipse.ui.ide.IDE;
+
+/**
+ * UI Ide mapping utilities.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public final class UiIdeMappingUtils {
+
+	/**
+	 * Constructor.
+	 */
+	private UiIdeMappingUtils() {
+		// nothing to do here
+	}
+
+	/**
+	 * Shows the given {@link ILocation} in an editor.
+	 * 
+	 * @param location
+	 *            the {@link ILocation} to show
+	 */
+	public static void showLocation(ILocation location) {
+		if (!location.isMarkedAsDeleted()) {
+			final IMarker marker = IdeMappingUtils.getMarker(location);
+			if (marker != null) {
+				showMarker(marker);
+			} else {
+				final IMarker createdMarker = IdeMappingUtils.getOrCreateMarker(location);
+				if (createdMarker != null) {
+					showMarker(createdMarker);
+				}
+				IdeMappingUtils.deleteMarker(location);
+			}
+		}
+	}
+
+	/**
+	 * Shows the given {@link IMarker}.
+	 * 
+	 * @param marker
+	 *            the {@link IMarker} to show
+	 */
+	private static void showMarker(final IMarker marker) {
+		final IWorkbenchPage activePage = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+				.getActivePage();
+		try {
+			IDE.openEditor(activePage, marker, true);
+		} catch (PartInitException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+					"unable to open location marker: ", e));
+		}
+	}
+
+	/**
+	 * Gets the {@link IFile} from the given {@link IEditorInput}.
+	 * 
+	 * @param editorInput
+	 *            the {@link IEditorInput}
+	 * @return the {@link IFile} from the given {@link IEditorInput} if any, <code>null</code> otherwise
+	 */
+	public static IFile getFile(final IEditorInput editorInput) {
+		final IFile file;
+		if (editorInput instanceof IFileEditorInput) {
+			file = ((IFileEditorInput)editorInput).getFile();
+		} else {
+			final IPath path = getPath(editorInput);
+			if (path != null) {
+				file = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(path);
+			} else {
+				file = IdeMappingUtils.adapt(editorInput, IFile.class);
+			}
+		}
+		return file;
+	}
+
+	/**
+	 * Gets the {@link IPath} from the given {@link IEditorInput}.
+	 * 
+	 * @param editorInput
+	 *            the {@link IEditorInput}
+	 * @return the {@link IPath} from the given {@link IEditorInput} if any, <code>null</code> otherwise
+	 */
+	public static IPath getPath(final IEditorInput editorInput) {
+		final IPath path;
+		if (editorInput instanceof ILocationProvider) {
+			path = ((ILocationProvider)editorInput).getPath(editorInput);
+		} else if (editorInput instanceof IURIEditorInput) {
+			final URI uri = ((IURIEditorInput)editorInput).getURI();
+			if (uri != null) {
+				final File osFile = URIUtil.toFile(uri);
+				if (osFile != null) {
+					path = Path.fromOSString(osFile.getAbsolutePath());
+				} else {
+					path = null;
+				}
+			} else {
+				path = null;
+			}
+		} else {
+			path = null;
+		}
+		return path;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/adapter/ObjectToLocationAdapterFactory.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/adapter/ObjectToLocationAdapterFactory.java
new file mode 100644
index 0000000..51f68a7
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/adapter/ObjectToLocationAdapterFactory.java
@@ -0,0 +1,198 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.adapter;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.base.LocationDescriptor;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.adapter.MarkerToLocationDescriptorAdapterFactory;
+import org.eclipse.intent.mapping.ide.ui.Activator;
+import org.eclipse.intent.mapping.ide.ui.UiIdeMappingUtils;
+import org.eclipse.intent.mapping.text.TextRegion;
+import org.eclipse.jface.text.ITextSelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * Adapts {@link Object} to {@link ILocation} and {@link ILocationDescriptor}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ObjectToLocationAdapterFactory extends MarkerToLocationDescriptorAdapterFactory {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
+	 */
+	public Object getAdapter(Object adaptableObject, @SuppressWarnings("rawtypes") Class adapterType) {
+		final Object res;
+
+		final Object superRes = super.getAdapter(adaptableObject, adapterType);
+		if (superRes != null) {
+			res = superRes;
+		} else {
+			if (adaptableObject instanceof IStructuredSelection) {
+				final Object firstElement = ((IStructuredSelection)adaptableObject).getFirstElement();
+				if (firstElement instanceof ILocation) {
+					res = (ILocation)firstElement;
+				} else {
+					res = selectionToLocationDescriptor((IStructuredSelection)adaptableObject);
+				}
+			} else if (adaptableObject instanceof ITextSelection) {
+				res = textSelectionToLocationDescriptor((ITextSelection)adaptableObject);
+			} else {
+				res = objectToLocationDescriptor(adaptableObject);
+			}
+		}
+
+		return adapt(res, adapterType);
+	}
+
+	/**
+	 * Adapts {@link ILocationDescriptor} to {@link ILocation} and vise versa.
+	 * 
+	 * @param object
+	 *            {@link ILocation} or {@link ILocationDescriptor}
+	 * @param adapterType
+	 *            the type of adapter to look up
+	 * @return {@link ILocation} or {@link ILocationDescriptor}
+	 */
+	private Object adapt(Object object, Class<?> adapterType) {
+		final Object res;
+
+		if (ILocation.class == adapterType) {
+			if (object instanceof ILocation) {
+				res = object;
+			} else {
+				if (object instanceof ILocationDescriptor && ((ILocationDescriptor)object).exists()) {
+					res = ((ILocationDescriptor)object).getLocation();
+				} else {
+					res = null;
+				}
+			}
+		} else if (ILocationDescriptor.class == adapterType) {
+			if (object instanceof ILocation) {
+				res = new LocationDescriptor((ILocation)object);
+			} else if (object instanceof ILocationDescriptor) {
+				res = object;
+			} else {
+				res = null;
+			}
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Adapts {@link IStructuredSelection} to {@link ILocationDescriptor}.
+	 * 
+	 * @param selection
+	 *            the {@link IStructuredSelection}
+	 * @return the {@link ILocationDescriptor}
+	 */
+	private ILocationDescriptor selectionToLocationDescriptor(IStructuredSelection selection) {
+		final ILocationDescriptor res;
+
+		final Object firstElement = selection.getFirstElement();
+		res = objectToLocationDescriptor(firstElement);
+
+		return res;
+	}
+
+	/**
+	 * Adapts the given element to {@link ILocationDescriptor}.
+	 * 
+	 * @param element
+	 *            the element
+	 * @return the {@link ILocationDescriptor}
+	 */
+	private ILocationDescriptor objectToLocationDescriptor(final Object element) {
+		final ILocationDescriptor res;
+
+		final IBase currentBase = IdeMappingUtils.getCurrentBase();
+		if (currentBase != null) {
+			res = MappingUtils.getConnectorRegistry().getLocationDescriptor(currentBase, element);
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Adapts {@link ITextSelection} {@link ILocationDescriptor}.
+	 * 
+	 * @param selection
+	 *            the {@link ITextSelection}
+	 * @return the {@link ILocationDescriptor}
+	 */
+	private ILocationDescriptor textSelectionToLocationDescriptor(ITextSelection selection) {
+		ILocationDescriptor res;
+
+		final IWorkbenchPart activePart = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()
+				.getActivePart();
+		if (activePart instanceof IEditorPart) {
+			final IEditorInput input = ((IEditorPart)activePart).getEditorInput();
+			final IFile file = UiIdeMappingUtils.getFile(input);
+			try {
+				final String content = MappingUtils.getContent((int)file.getLocation().toFile().length(), file
+						.getContents());
+				final int start = selection.getOffset();
+				final Integer end = start + selection.getLength();
+				if (start > -1 && end < content.length()) {
+					// TODO find a way to provide more dynamic container
+					final TextRegion region = new TextRegion(file, content.substring(start, end), start, end);
+					res = IdeMappingUtils.adapt(region, ILocationDescriptor.class);
+				} else {
+					res = null;
+				}
+			} catch (IOException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+						"can't read content " + file.getLocation().toString(), e));
+				res = null;
+			} catch (CoreException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+						"can't read content " + file.getLocation().toString(), e));
+				res = null;
+			}
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
+	 */
+	public Class<?>[] getAdapterList() {
+		return new Class[] {ILocation.class, ILocationDescriptor.class };
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/AbstractLocationHandler.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/AbstractLocationHandler.java
new file mode 100644
index 0000000..82fe527
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/AbstractLocationHandler.java
@@ -0,0 +1,215 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.command;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.ui.Activator;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * Abstract implementation of handler for {@link ILocationDescriptor}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractLocationHandler extends AbstractHandler {
+
+	/**
+	 * Unable to create {@link ILink} message.
+	 */
+	protected static final String UNABLE_TO_CREATE_LINK = "unable to create link";
+
+	/**
+	 * Unable to create source {@link ILocation} message.
+	 */
+	protected static final String UNABLE_TO_CREATE_SOURCE_LOCATION = "unable to create source location";
+
+	/**
+	 * Unable to create target {@link ILocation} message.
+	 */
+	protected static final String UNABLE_TO_CREATE_TARGET_LOCATION = "unable to create target location";
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.commands.AbstractHandler#execute(org.eclipse.core.commands.ExecutionEvent)
+	 */
+	public Object execute(ExecutionEvent event) throws ExecutionException {
+		final ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+				.getSelectionService().getSelection();
+
+		final List<ILocationDescriptor> locationDescriptors = new ArrayList<ILocationDescriptor>();
+		if (selection instanceof IStructuredSelection) {
+
+			for (Object selected : ((IStructuredSelection)selection).toList()) {
+				final Object element = getElementFromSelectedObject(selected);
+				final ILocationDescriptor locationDescriptor = IdeMappingUtils.adapt(element,
+						ILocationDescriptor.class);
+				if (locationDescriptor != null) {
+					locationDescriptors.add(locationDescriptor);
+				}
+			}
+
+		} else {
+			final ILocationDescriptor locationDescriptor = IdeMappingUtils.adapt(selection,
+					ILocationDescriptor.class);
+			if (locationDescriptor != null) {
+				locationDescriptors.add(locationDescriptor);
+			}
+		}
+
+		for (ILocationDescriptor locationDescriptor : locationDescriptors) {
+			handleLocationDescriptor(locationDescriptor);
+		}
+
+		return null;
+	}
+
+	/**
+	 * Gets the element to adapt to {@link ILocationDescriptor} from the given selected {@link Object}.
+	 * 
+	 * @param selected
+	 *            the selected {@link Object}
+	 * @return the element to adapt to {@link ILocationDescriptor} from the given selected {@link Object}
+	 */
+	protected Object getElementFromSelectedObject(Object selected) {
+		return selected;
+	}
+
+	@Override
+	public void setEnabled(Object evaluationContext) {
+		super.setEnabled(evaluationContext);
+		boolean enable;
+
+		final ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+				.getSelectionService().getSelection();
+		if (selection instanceof IStructuredSelection) {
+			enable = false;
+			for (Object selected : ((IStructuredSelection)selection).toList()) {
+				final Object element = getElementFromSelectedObject(selected);
+				final ILocationDescriptor locationDescriptor = IdeMappingUtils.adapt(element,
+						ILocationDescriptor.class);
+				if (locationDescriptor != null) {
+					if (canHandleLocation(locationDescriptor)) {
+						enable = true;
+						break;
+					}
+				}
+			}
+		} else if (selection != null) {
+			final ILocationDescriptor locationDescriptor = IdeMappingUtils.adapt(selection,
+					ILocationDescriptor.class);
+			enable = locationDescriptor != null && canHandleLocation(locationDescriptor);
+		} else {
+			enable = false;
+		}
+
+		setBaseEnabled(enable);
+	}
+
+	/**
+	 * Creates the {@link ILocation} from {@link ILocationDescriptor}.
+	 * 
+	 * @param locationDescriptor
+	 *            the {@link ILocationDescriptor}
+	 * @param errorMessage
+	 *            the error message
+	 * @return the created {@link ILocation} if no error occurred, <code>null</code> otherwise
+	 */
+	protected ILocation createLocation(ILocationDescriptor locationDescriptor, String errorMessage) {
+		ILocation res;
+
+		try {
+			res = locationDescriptor.getOrCreate();
+		} catch (InstantiationException eLocation) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, errorMessage,
+					eLocation));
+			res = null;
+		} catch (IllegalAccessException eLocation) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, errorMessage,
+					eLocation));
+			res = null;
+		} catch (ClassNotFoundException eLocation) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, errorMessage,
+					eLocation));
+			res = null;
+		}
+		return res;
+	}
+
+	/**
+	 * Creates the {@link ILink}.
+	 * 
+	 * @param source
+	 *            the {@link ILink#getSource() source} {@link ILocation}
+	 * @param target
+	 *            the {@link ILink#getTarget() target} {@link ILocation}
+	 * @return the created {@link ILink} if any, <code>null</code> otherwise
+	 */
+	protected ILink createLink(final ILocation source, ILocation target) {
+		ILink res;
+
+		try {
+			if (MappingUtils.canCreateLink(source, target)) {
+				res = MappingUtils.createLink(source, target);
+			} else {
+				res = null;
+			}
+		} catch (InstantiationException eLink) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+					UNABLE_TO_CREATE_LINK, eLink));
+			res = null;
+		} catch (IllegalAccessException eLink) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+					UNABLE_TO_CREATE_LINK, eLink));
+			res = null;
+		} catch (ClassNotFoundException eLink) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+					UNABLE_TO_CREATE_LINK, eLink));
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Handles the given {@link ILocationDescriptor} by applying needed operation.
+	 * 
+	 * @param locationDescriptor
+	 *            the {@link ILocationDescriptor} to handle
+	 */
+	protected abstract void handleLocationDescriptor(ILocationDescriptor locationDescriptor);
+
+	/**
+	 * Tells if the given {@link ILocationDescriptor} can be handled.
+	 * 
+	 * @param locationDescriptor
+	 *            the {@link ILocationDescriptor} to check
+	 * @return <code>true</code> if the given {@link ILocationDescriptor} can be handled, <code>false</code>
+	 *         otherwise
+	 */
+	protected abstract boolean canHandleLocation(ILocationDescriptor locationDescriptor);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/AddReport.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/AddReport.java
new file mode 100644
index 0000000..844791c
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/AddReport.java
@@ -0,0 +1,69 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.command;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.ide.ui.Activator;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.window.Window;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * Add an {@link org.eclipse.intent.mapping.base.IReport IReport} to the selected {@link ILink}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class AddReport extends AbstractHandler {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.commands.AbstractHandler#execute(org.eclipse.core.commands.ExecutionEvent)
+	 */
+	public Object execute(ExecutionEvent event) throws ExecutionException {
+		final ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+				.getSelectionService().getSelection();
+
+		if (selection instanceof IStructuredSelection) {
+			final Object element = ((IStructuredSelection)selection).getFirstElement();
+			if (element instanceof ILink) {
+				final Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+				MultiLineTextDialog dialog = new MultiLineTextDialog(shell, "");
+				if (dialog.open() == Window.OK) {
+					try {
+						MappingUtils.createReport((ILink)element, dialog.getText());
+					} catch (InstantiationException e) {
+						Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+								.getMessage(), e));
+					} catch (IllegalAccessException e) {
+						Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+								.getMessage(), e));
+					} catch (ClassNotFoundException e) {
+						Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+								.getMessage(), e));
+					}
+				}
+			}
+		}
+
+		return null;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/AddToSynchronizationPaletteHandler.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/AddToSynchronizationPaletteHandler.java
new file mode 100644
index 0000000..1d6d797
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/AddToSynchronizationPaletteHandler.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.command;
+
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+
+/**
+ * Adds selected {@link ILocationDescriptor} to the {@link IdeMappingUtils#getSynchronizationPalette()
+ * synchronization palette}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class AddToSynchronizationPaletteHandler extends AbstractLocationHandler {
+
+	@Override
+	protected void handleLocationDescriptor(ILocationDescriptor locationDescriptor) {
+		IdeMappingUtils.addLocationToPalette(locationDescriptor);
+	}
+
+	@Override
+	protected boolean canHandleLocation(ILocationDescriptor locationDescriptor) {
+		return !IdeMappingUtils.getSynchronizationPalette().contains(locationDescriptor);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/Delete.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/Delete.java
new file mode 100644
index 0000000..bd2bc83
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/Delete.java
@@ -0,0 +1,148 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.command;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * Deletes the selected {@link ILink}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class Delete extends AbstractHandler {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.commands.AbstractHandler#execute(org.eclipse.core.commands.ExecutionEvent)
+	 */
+	public Object execute(ExecutionEvent event) throws ExecutionException {
+		final ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+				.getSelectionService().getSelection();
+
+		if (selection instanceof IStructuredSelection) {
+			deleteReports(((IStructuredSelection)selection).toList());
+			deleteLinks(((IStructuredSelection)selection).toList());
+			deleteLocations(((IStructuredSelection)selection).toList());
+		}
+
+		return null;
+	}
+
+	@Override
+	public void setEnabled(Object evaluationContext) {
+		super.setEnabled(evaluationContext);
+		boolean enable = false;
+
+		final ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+				.getSelectionService().getSelection();
+
+		if (selection instanceof IStructuredSelection) {
+			for (Object selected : ((IStructuredSelection)selection).toList()) {
+				if (selected instanceof IReport) {
+					enable = true;
+					break;
+				}
+			}
+			if (!enable) {
+				for (Object selected : ((IStructuredSelection)selection).toList()) {
+					if (selected instanceof ILink && MappingUtils.canDeleteLink((ILink)selected)) {
+						enable = true;
+						break;
+					}
+				}
+			}
+			if (!enable) {
+				for (Object selected : ((IStructuredSelection)selection).toList()) {
+					if (selected instanceof ILocation && MappingUtils.canDeleteLocation(
+							(ILocation)selected)) {
+						enable = true;
+						break;
+					}
+				}
+			}
+		}
+
+		setBaseEnabled(enable);
+	}
+
+	/**
+	 * Deletes selected {@link IReport}.
+	 * 
+	 * @param selection
+	 *            the selection
+	 */
+	private void deleteReports(List<?> selection) {
+		final List<IReport> reportsToDelete = new ArrayList<IReport>();
+		for (Object data : selection) {
+			if (data instanceof IReport) {
+				reportsToDelete.add((IReport)data);
+			}
+		}
+
+		for (IReport report : reportsToDelete) {
+			MappingUtils.deleteReport(report);
+		}
+	}
+
+	/**
+	 * Deletes selected {@link ILink}.
+	 * 
+	 * @param selection
+	 *            the selection
+	 */
+	private void deleteLinks(List<?> selection) {
+		final List<ILink> linksToDelete = new ArrayList<ILink>();
+		for (Object data : selection) {
+			if (data instanceof ILink && MappingUtils.canDeleteLink((ILink)data)) {
+				linksToDelete.add((ILink)data);
+			}
+		}
+
+		for (ILink link : linksToDelete) {
+			MappingUtils.deleteLink(link);
+		}
+	}
+
+	/**
+	 * Deletes selected {@link ILocation}.
+	 * 
+	 * @param selection
+	 *            the selection
+	 */
+	private void deleteLocations(List<?> selection) {
+		final List<ILocation> locationsToDelete = new ArrayList<ILocation>();
+
+		for (Object data : selection) {
+			if (data instanceof ILocation) {
+				locationsToDelete.add((ILocation)data);
+			}
+		}
+
+		for (ILocation location : locationsToDelete) {
+			MappingUtils.deleteLocation(location);
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/Describe.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/Describe.java
new file mode 100644
index 0000000..a677472
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/Describe.java
@@ -0,0 +1,63 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.command;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.window.Window;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * Describe the selected {@link ILink} or {@link IReport}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class Describe extends AbstractHandler {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.commands.AbstractHandler#execute(org.eclipse.core.commands.ExecutionEvent)
+	 */
+	public Object execute(ExecutionEvent event) throws ExecutionException {
+		final ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+				.getSelectionService().getSelection();
+
+		if (selection instanceof IStructuredSelection) {
+			final Object element = ((IStructuredSelection)selection).getFirstElement();
+			if (element instanceof ILink) {
+				final Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+				MultiLineTextDialog dialog = new MultiLineTextDialog(shell, ((ILink)element)
+						.getDescription());
+				if (dialog.open() == Window.OK) {
+					((ILink)element).setDescription(dialog.getText());
+				}
+			} else if (element instanceof IReport) {
+				final Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+				MultiLineTextDialog dialog = new MultiLineTextDialog(shell, ((IReport)element)
+						.getDescription());
+				if (dialog.open() == Window.OK) {
+					((IReport)element).setDescription(dialog.getText());
+				}
+			}
+		}
+
+		return null;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/LinkAsSource.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/LinkAsSource.java
new file mode 100644
index 0000000..31692a6
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/LinkAsSource.java
@@ -0,0 +1,63 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.command;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+
+/**
+ * Links the selection as {@link org.eclipse.intent.mapping.base.ILink#getSource() source} of the active
+ * synchronization palette.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class LinkAsSource extends AbstractLocationHandler {
+
+	@Override
+	protected void handleLocationDescriptor(ILocationDescriptor sourceDescriptor) {
+		final ILocation source = createLocation(sourceDescriptor, UNABLE_TO_CREATE_SOURCE_LOCATION);
+		sourceDescriptor.dispose();
+		if (source != null) {
+			for (ILocationDescriptor targetDescriptor : IdeMappingUtils.getSynchronizationPalette()) {
+				if (IdeMappingUtils.isActive(targetDescriptor)) {
+					final ILocation target = createLocation(targetDescriptor,
+							UNABLE_TO_CREATE_TARGET_LOCATION);
+					if (!source.equals(target) && MappingUtils.getLink(source, target) == null) {
+						createLink(source, target);
+					}
+				}
+			}
+		}
+	}
+
+	@Override
+	protected boolean canHandleLocation(ILocationDescriptor sourceDescriptor) {
+		boolean res = false;
+
+		if (sourceDescriptor.exists()) {
+			for (ILocationDescriptor targetDescriptor : IdeMappingUtils.getSynchronizationPalette()) {
+				if (IdeMappingUtils.isActive(targetDescriptor)) {
+					if (MappingUtils.canCreateLink(sourceDescriptor, targetDescriptor)) {
+						res = true;
+						break;
+					}
+				}
+			}
+		} else {
+			res = IdeMappingUtils.asActiveLocationDescriptor();
+		}
+
+		return res;
+	}
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/LinkAsTarget.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/LinkAsTarget.java
new file mode 100644
index 0000000..f48808f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/LinkAsTarget.java
@@ -0,0 +1,63 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.command;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+
+/**
+ * Links the selection as {@link org.eclipse.intent.mapping.base.ILink#getTarget() target} of the active
+ * synchronization palette.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class LinkAsTarget extends AbstractLocationHandler {
+
+	@Override
+	protected void handleLocationDescriptor(ILocationDescriptor targetDescriptor) {
+		final ILocation target = createLocation(targetDescriptor, UNABLE_TO_CREATE_TARGET_LOCATION);
+		targetDescriptor.dispose();
+		if (target != null) {
+			for (ILocationDescriptor sourceDescriptor : IdeMappingUtils.getSynchronizationPalette()) {
+				if (IdeMappingUtils.isActive(sourceDescriptor)) {
+					final ILocation source = createLocation(sourceDescriptor,
+							UNABLE_TO_CREATE_SOURCE_LOCATION);
+					if (!source.equals(target) && MappingUtils.getLink(source, target) == null) {
+						createLink(source, target);
+					}
+				}
+			}
+		}
+	}
+
+	@Override
+	protected boolean canHandleLocation(ILocationDescriptor targetDescriptor) {
+		boolean res = false;
+
+		if (targetDescriptor.exists()) {
+			for (ILocationDescriptor sourceDescriptor : IdeMappingUtils.getSynchronizationPalette()) {
+				if (IdeMappingUtils.isActive(sourceDescriptor)) {
+					if (MappingUtils.canCreateLink(sourceDescriptor, targetDescriptor)) {
+						res = true;
+						break;
+					}
+				}
+			}
+		} else {
+			res = IdeMappingUtils.asActiveLocationDescriptor();
+		}
+
+		return res;
+	}
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/MultiLineTextDialog.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/MultiLineTextDialog.java
new file mode 100644
index 0000000..d643e7f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/MultiLineTextDialog.java
@@ -0,0 +1,112 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.command;
+
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+
+/**
+ * A multi line text {@link Dialog}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class MultiLineTextDialog extends Dialog {
+
+	/**
+	 * Initial {@link Dialog} size.
+	 */
+	private static final int Y = 300;
+
+	/**
+	 * Initial {@link Dialog} size.
+	 */
+	private static final int X = 450;
+
+	/**
+	 * The initial text.
+	 */
+	private String text;
+
+	/**
+	 * Create the dialog.
+	 * 
+	 * @param parentShell
+	 *            the parent {@link Shell}
+	 * @param initialText
+	 *            the initial text
+	 */
+	public MultiLineTextDialog(Shell parentShell, String initialText) {
+		super(parentShell);
+		this.text = initialText;
+	}
+
+	/**
+	 * Create contents of the dialog.
+	 * 
+	 * @param parent
+	 */
+	@Override
+	protected Control createDialogArea(Composite parent) {
+		Composite container = (Composite)super.createDialogArea(parent);
+		container.setLayout(new FillLayout(SWT.HORIZONTAL));
+
+		final Text textText = new Text(container, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.CANCEL
+				| SWT.MULTI);
+		textText.setText(text);
+		textText.addDisposeListener(new DisposeListener() {
+
+			public void widgetDisposed(DisposeEvent e) {
+				text = textText.getText();
+			}
+		});
+
+		return container;
+	}
+
+	/**
+	 * Create contents of the button bar.
+	 * 
+	 * @param parent
+	 */
+	@Override
+	protected void createButtonsForButtonBar(Composite parent) {
+		createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
+		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
+	}
+
+	/**
+	 * Return the initial size of the dialog.
+	 */
+	@Override
+	protected Point getInitialSize() {
+		return new Point(X, Y);
+	}
+
+	/**
+	 * Gets the {@link Dialog} text.
+	 * 
+	 * @return the {@link Dialog} text
+	 */
+	public String getText() {
+		return text;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/RemoveFromSynchronizationPaletteHandler.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/RemoveFromSynchronizationPaletteHandler.java
new file mode 100644
index 0000000..3c63910
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/command/RemoveFromSynchronizationPaletteHandler.java
@@ -0,0 +1,36 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.command;
+
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+
+/**
+ * Removes selected {@link ILocationDescriptor} from the {@link IdeMappingUtils#getSynchronizationPalette()
+ * synchronization palette}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class RemoveFromSynchronizationPaletteHandler extends AbstractLocationHandler {
+
+	@Override
+	protected void handleLocationDescriptor(ILocationDescriptor locationDescriptor) {
+		IdeMappingUtils.removeLocationFromPalette(locationDescriptor);
+		locationDescriptor.dispose();
+	}
+
+	@Override
+	protected boolean canHandleLocation(ILocationDescriptor locationDescriptor) {
+		return IdeMappingUtils.getSynchronizationPalette().contains(locationDescriptor);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/marker/TextLocationMarkerUpdater.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/marker/TextLocationMarkerUpdater.java
new file mode 100644
index 0000000..0f60d3f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/marker/TextLocationMarkerUpdater.java
@@ -0,0 +1,124 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.marker;
+
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.ide.ILocationMarker;
+import org.eclipse.intent.mapping.ide.ui.Activator;
+import org.eclipse.intent.mapping.text.ITextLocation;
+import org.eclipse.jface.text.IDocument;
+import org.eclipse.jface.text.Position;
+import org.eclipse.ui.texteditor.IMarkerUpdater;
+
+/**
+ * Updates {@link ITextLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class TextLocationMarkerUpdater implements IMarkerUpdater {
+
+	// TODO can't be used since we don't know which ITextLocation will be updated and which will not.
+
+	/**
+	 * The ID of this updater.
+	 */
+	public static final String ID = "org.eclipse.intent.mapping.ide.ui.marker.textLocationMarkerUpdater";
+
+	/**
+	 * Updated attributes.
+	 */
+	private static final String[] ATTRIBUTES = {ILocationMarker.LOCATION_ATTRIBUTE, };
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.ui.texteditor.IMarkerUpdater#getMarkerType()
+	 */
+	public String getMarkerType() {
+		return ILocationMarker.TEXT_LOCATION_ID;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.ui.texteditor.IMarkerUpdater#getAttribute()
+	 */
+	public String[] getAttribute() {
+		return ATTRIBUTES;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.ui.texteditor.IMarkerUpdater#updateMarker(org.eclipse.core.resources.IMarker,
+	 *      org.eclipse.jface.text.IDocument, org.eclipse.jface.text.Position)
+	 */
+	public boolean updateMarker(IMarker marker, IDocument document, Position position) {
+		final boolean res;
+
+		if (position != null) {
+			res = updateLocation(marker, position);
+		} else {
+			res = true;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Updates the {@link ITextLocation} corresponding to the given {@link IMarker} witht he given
+	 * {@link Position}.
+	 * 
+	 * @param marker
+	 *            the {@link IMarker} to update
+	 * @param position
+	 *            the new {@link Position}
+	 * @return <code>false</code> if the {@link IMarker} should be deleted, <code>true</code> otherwise
+	 */
+	private boolean updateLocation(IMarker marker, Position position) {
+		boolean res;
+
+		try {
+			final ITextLocation location = (ITextLocation)marker.getAttribute(
+					ILocationMarker.LOCATION_ATTRIBUTE);
+			if (position.isDeleted()) {
+				// TODO mark location as deleted
+				res = false;
+			} else {
+				final int locationStart = location.getStartOffset();
+				final int locationEnd = location.getEndOffset();
+
+				if (locationStart != -1 && locationEnd != -1) {
+					int offset = position.getOffset();
+					if (locationStart != offset) {
+						location.setStartOffset(offset);
+					}
+					offset += position.getLength();
+					if (locationEnd != offset) {
+						location.setEndOffset(offset);
+					}
+				}
+				// TODO if the length is 0 then mark location as deleted and remove the marker ?
+				res = true;
+			}
+		} catch (CoreException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
+					e));
+			res = true;
+		}
+
+		return res;
+	}
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/AbstractLocationContentProvider.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/AbstractLocationContentProvider.java
new file mode 100644
index 0000000..dc4717d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/AbstractLocationContentProvider.java
@@ -0,0 +1,399 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILinkListener;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationListener;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Abstract {@link ILocation} {@link ITreeContentProvider}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractLocationContentProvider implements ITreeContentProvider {
+
+	/**
+	 * The {@link ILinkListener}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class LinkListener extends ILinkListener.Stub {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILinkListener.Stub#sourceChanged(org.eclipse.intent.mapping.base.ILocation,
+		 *      org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public void sourceChanged(ILocation oldSource, ILocation newSource) {
+			update();
+			refresh();
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILinkListener.Stub#targetChanged(org.eclipse.intent.mapping.base.ILocation,
+		 *      org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public void targetChanged(ILocation oldTarget, ILocation newTarget) {
+			update();
+			refresh();
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILinkListener.Stub#reportAdded(org.eclipse.intent.mapping.base.IReport)
+		 */
+		public void reportAdded(org.eclipse.intent.mapping.base.IReport report) {
+			if (showReport) {
+				update();
+				refresh();
+			}
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILinkListener.Stub#reportRemoved(org.eclipse.intent.mapping.base.IReport)
+		 */
+		public void reportRemoved(org.eclipse.intent.mapping.base.IReport report) {
+			if (showReport) {
+				update();
+				refresh();
+			}
+		}
+
+	}
+
+	/**
+	 * Empty {@link Object} array.
+	 */
+	private static final Object[] EMPTY = new Object[0];
+
+	/**
+	 * The {@link List} of root {@link ILocation}.
+	 */
+	protected final List<ILocation> roots = new ArrayList<ILocation>();
+
+	/**
+	 * the tree of {@link ILocation}.
+	 */
+	protected final Map<ILocation, List<ILocation>> locationForest = new HashMap<ILocation, List<ILocation>>();
+
+	/**
+	 * The current {@link Viewer}.
+	 */
+	protected Viewer currentViewer;
+
+	/**
+	 * The current input.
+	 */
+	protected Object currentInput;
+
+	/**
+	 * The {@link ILinkListener}.
+	 */
+	protected final ILinkListener linkListener = new LinkListener();
+
+	/**
+	 * The {@link Set} of listened {@link ILink}.
+	 */
+	protected Set<ILink> listenedLinks = new HashSet<ILink>();
+
+	/**
+	 * Should we show {@link org.eclipse.intent.mapping.base.IReport IReport}. Default to <code>false</code>.
+	 */
+	protected boolean showReport;
+
+	/**
+	 * The {@link ILocationListener}.
+	 */
+	protected ILocationListener locationListener = new ILocationListener.Stub() {
+
+		@Override
+		public void containerChanged(ILocationContainer oldContainer, ILocationContainer newContainer) {
+			update();
+			refresh();
+		}
+
+		@Override
+		public void markedAsDeletedChanged(boolean newValue) {
+			update();
+			refresh();
+		}
+
+		public void changed(String reportDescription) {
+			update();
+			refresh();
+		}
+
+	};
+
+	/**
+	 * The {@link Set} of listened {@link ILocation}.
+	 */
+	protected Set<ILocation> listenedLocations = new HashSet<ILocation>();
+
+	/**
+	 * Refresh the {@link Viewer}.
+	 */
+	private void refresh() {
+		if (!currentViewer.getControl().isDisposed()) {
+			if (Display.getDefault().getThread() == Thread.currentThread()) {
+				currentViewer.refresh();
+			} else {
+				Display.getDefault().asyncExec(new Runnable() {
+
+					public void run() {
+						currentViewer.refresh();
+					}
+				});
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
+	 */
+	public void dispose() {
+		clearLocations();
+		clearLinks();
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer,
+	 *      java.lang.Object, java.lang.Object)
+	 */
+	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
+		update(viewer, newInput);
+	}
+
+	/**
+	 * Update the content with the given {@link Viewer} and {@link Object input}.
+	 * 
+	 * @param viewer
+	 *            the {@link Viewer}
+	 * @param input
+	 *            the {@link Object input}
+	 */
+	private void update(Viewer viewer, Object input) {
+		this.currentViewer = viewer;
+		this.currentInput = input;
+		update();
+	}
+
+	/**
+	 * Update the content.
+	 */
+	protected void update() {
+		clearLocations();
+		clearLinks();
+
+		final List<ILocation> locationLeaves = new ArrayList<ILocation>();
+		final List<ILink> links = new ArrayList<ILink>();
+
+		setLeavesAndLinks(currentInput, locationLeaves, links);
+
+		installLinkListeners(links);
+
+		roots.addAll(setLocationForest(currentViewer, locationLeaves));
+	}
+
+	/**
+	 * Sets {@link ILocation} leaves and {@link ILink}.
+	 * 
+	 * @param input
+	 *            the current input
+	 * @param locationLeaves
+	 *            the {@link List} of {@link ILocation} leaves to set
+	 * @param links
+	 *            the {@link List} of {@link ILink} to set
+	 */
+	protected abstract void setLeavesAndLinks(Object input, List<ILocation> locationLeaves,
+			List<ILink> links);
+
+	/**
+	 * Installs {@link ILinkListener} on the given {@link ILink}.
+	 * 
+	 * @param links
+	 *            the {@link List} of {@link ILink}
+	 */
+	private void installLinkListeners(final List<ILink> links) {
+		for (ILink link : links) {
+			listenedLinks.add(link);
+			link.addListener(linkListener);
+		}
+	}
+
+	/**
+	 * Clears the {@link ILocation} and removes {@link ILocationListener}.
+	 */
+	private void clearLocations() {
+		Set<ILocation> currentLocations = new HashSet<ILocation>(roots);
+
+		while (!currentLocations.isEmpty()) {
+			Set<ILocation> nextLocations = new HashSet<ILocation>();
+			for (ILocation current : currentLocations) {
+				listenedLocations.remove(current);
+				current.removeListener(locationListener);
+				nextLocations.addAll(locationForest.get(current));
+			}
+			currentLocations = nextLocations;
+		}
+
+		roots.clear();
+		locationForest.clear();
+	}
+
+	/**
+	 * Clears the {@link ILinkListener}.
+	 */
+	private void clearLinks() {
+		for (ILink link : listenedLinks) {
+			link.removeListener(linkListener);
+		}
+		listenedLinks.clear();
+	}
+
+	/**
+	 * Sets the {@link ILocation} forest.
+	 * 
+	 * @param viewer
+	 *            the {@link Viewer}.
+	 * @param locationLeaves
+	 *            the {@link List} of {@link ILocation} leaves.
+	 * @return the {@link List} of {@link ILocation} roots.
+	 */
+	private List<ILocation> setLocationForest(Viewer viewer, List<ILocation> locationLeaves) {
+		final List<ILocation> res = new ArrayList<ILocation>();
+
+		Set<ILocation> currentLocations = new LinkedHashSet<ILocation>(locationLeaves);
+		for (ILocation leaf : locationLeaves) {
+			locationForest.put(leaf, new ArrayList<ILocation>());
+		}
+		while (!currentLocations.isEmpty()) {
+			final Set<ILocation> nextLocations = new LinkedHashSet<ILocation>();
+			for (ILocation current : currentLocations) {
+				if (current != null) {
+					if (!listenedLocations.contains(current)) {
+						listenedLocations.add(current);
+						current.addListener(locationListener);
+					}
+					if (current.getContainer() instanceof ILocation) {
+						final ILocation container = (ILocation)current.getContainer();
+						List<ILocation> children = locationForest.get(container);
+						if (children == null) {
+							children = new ArrayList<ILocation>();
+							locationForest.put(container, children);
+						}
+						children.add(current);
+						nextLocations.add(container);
+					} else {
+						res.add(current);
+					}
+				}
+
+			}
+			currentLocations = nextLocations;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.ITreeContentProvider#getElements(java.lang.Object)
+	 */
+	public Object[] getElements(Object inputElement) {
+		final List<Object> res = new ArrayList<Object>(roots.size());
+
+		for (ILocation location : roots) {
+			if (inputElement == location) {
+				final Object[] children = getChildren(inputElement);
+				for (int i = 0; i < children.length; i++) {
+					res.add(i, children[i]);
+				}
+			} else {
+				res.add(location);
+			}
+		}
+
+		return res.toArray();
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
+	 */
+	public Object[] getChildren(Object parentElement) {
+		final Object[] res;
+
+		final List<ILocation> children = locationForest.get(parentElement);
+		if (children != null) {
+			res = children.toArray();
+		} else {
+			res = EMPTY;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
+	 */
+	public Object getParent(Object element) {
+		final ILocation res;
+
+		final ILocationContainer container = ((ILocation)element).getContainer();
+		if (container instanceof ILocation) {
+			res = (ILocation)container;
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
+	 */
+	public boolean hasChildren(Object element) {
+		return !locationForest.get(element).isEmpty();
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/ContainerProviderSelectionDialog.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/ContainerProviderSelectionDialog.java
new file mode 100644
index 0000000..852f1d4
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/ContainerProviderSelectionDialog.java
@@ -0,0 +1,184 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.viewers.CheckStateChangedEvent;
+import org.eclipse.jface.viewers.CheckboxTableViewer;
+import org.eclipse.jface.viewers.ICheckStateListener;
+import org.eclipse.jface.viewers.ICheckStateProvider;
+import org.eclipse.jface.viewers.IStructuredContentProvider;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Table;
+
+/**
+ * A {@link IContainerProvider} selection dialog.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ContainerProviderSelectionDialog extends Dialog {
+
+	/**
+	 * The Y size.
+	 */
+	private static final int Y = 300;
+
+	/**
+	 * The X size.
+	 */
+	private static final int X = 900;
+
+	/**
+	 * The {@link IBase} to edit.
+	 */
+	protected final IBase base;
+
+	/**
+	 * Selected {@link List} of {@link IContainerProvider} names.
+	 */
+	protected final List<String> selected = new ArrayList<String>();
+
+	/**
+	 * Create the dialog.
+	 * 
+	 * @param parentShell
+	 *            the parent {@link Shell}
+	 * @param base
+	 *            the {@link IBase} to edit
+	 */
+	public ContainerProviderSelectionDialog(Shell parentShell, IBase base) {
+		super(parentShell);
+		this.base = base;
+		selected.addAll(base.getContainerProviders());
+	}
+
+	/**
+	 * Create contents of the dialog.
+	 * 
+	 * @param parent
+	 */
+	@Override
+	protected Control createDialogArea(Composite parent) {
+		final Composite container = (Composite)super.createDialogArea(parent);
+
+		CheckboxTableViewer tableViewer = new CheckboxTableViewer(new Table(container, SWT.BORDER
+				| SWT.V_SCROLL | SWT.CHECK));
+		tableViewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+		tableViewer.setLabelProvider(new LabelProvider());
+		tableViewer.setContentProvider(new IStructuredContentProvider() {
+
+			@SuppressWarnings("unchecked")
+			public Object[] getElements(Object inputElement) {
+				return ((java.util.List<Object>)inputElement).toArray();
+			}
+
+			/**
+			 * {@inheritDoc}
+			 *
+			 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
+			 */
+			public void dispose() {
+				// nothing to do here
+			}
+
+			public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
+				// nothing to do here
+			}
+
+		});
+		tableViewer.setCheckStateProvider(new ICheckStateProvider() {
+
+			public boolean isGrayed(Object element) {
+				return false;
+			}
+
+			public boolean isChecked(Object element) {
+				return selected.contains(element);
+			}
+		});
+		tableViewer.addCheckStateListener(new ICheckStateListener() {
+
+			public void checkStateChanged(CheckStateChangedEvent event) {
+				if (event.getChecked()) {
+					selected.add((String)event.getElement());
+				} else {
+					selected.remove((String)event.getElement());
+				}
+			}
+		});
+		tableViewer.setInput(getContainerProviderNames());
+
+		return container;
+	}
+
+	/**
+	 * Gets the {@link java.util.List List} of possible {@link IContainerProvider} names.
+	 * 
+	 * @return the {@link java.util.List List} of possible {@link IContainerProvider} names
+	 */
+	protected java.util.List<String> getContainerProviderNames() {
+		final java.util.List<String> res;
+
+		final Set<String> providerNames = new HashSet<String>();
+		providerNames.addAll(base.getContainerProviders());
+		providerNames.addAll(MappingUtils.getContainerProviderFactory().getProviderNames());
+
+		res = new ArrayList<String>(providerNames);
+		Collections.sort(res);
+
+		return res;
+	}
+
+	/**
+	 * Create contents of the button bar.
+	 * 
+	 * @param parent
+	 */
+	@Override
+	protected void createButtonsForButtonBar(Composite parent) {
+		createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
+		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
+	}
+
+	/**
+	 * Return the initial size of the dialog.
+	 */
+	@Override
+	protected Point getInitialSize() {
+		return new Point(X, Y);
+	}
+
+	@Override
+	protected void okPressed() {
+		super.okPressed();
+		base.getContainerProviders().clear();
+		base.getContainerProviders().addAll(selected);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/FilteredCheckboxTree.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/FilteredCheckboxTree.java
new file mode 100644
index 0000000..4942de6
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/FilteredCheckboxTree.java
@@ -0,0 +1,207 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.ide.ui.Activator;
+import org.eclipse.jface.viewers.CheckboxTreeViewer;
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.dialogs.FilteredTree;
+import org.eclipse.ui.dialogs.PatternFilter;
+
+/**
+ * A tree that filter and has check boxes.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class FilteredCheckboxTree extends FilteredTree {
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param parent
+	 *            the parent <code>Composite</code>
+	 * @param treeStyle
+	 *            the style bits for the <code>Tree</code>
+	 * @param filter
+	 *            the filter to be used
+	 * @param useNewLook
+	 *            <code>true</code> if the new 3.5 look should be used
+	 */
+	public FilteredCheckboxTree(Composite parent, int treeStyle, PatternFilter filter, boolean useNewLook) {
+		super(parent, treeStyle, filter, useNewLook);
+	}
+
+	/**
+	 * Custom tree viewer subclass that clears the caches in patternFilter on any change to the tree. See bug
+	 * 187200.
+	 * 
+	 * @since 3.3
+	 */
+	class NotifyingTreeViewer extends CheckboxTreeViewer {
+
+		/**
+		 * Clear cache {@link Method}.
+		 */
+		private final Method clearCaches;
+
+		/**
+		 * A notifying tree with check boxes.
+		 * 
+		 * @param parent
+		 *            the parent control
+		 * @param style
+		 *            the SWT style bits
+		 */
+		NotifyingTreeViewer(Composite parent, int style) {
+			super(parent, style);
+			Method method = null;
+			try {
+				method = PatternFilter.class.getDeclaredMethod("clearCaches");
+				method.setAccessible(true);
+			} catch (NoSuchMethodException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			} catch (SecurityException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			}
+			clearCaches = method;
+		}
+
+		/**
+		 * Clear the cache.
+		 */
+		private void clearCache() {
+			try {
+				clearCaches.invoke(getPatternFilter());
+			} catch (IllegalAccessException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			} catch (IllegalArgumentException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			} catch (InvocationTargetException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			}
+		}
+
+		@Override
+		public void add(Object parentElementOrTreePath, Object childElement) {
+			clearCache();
+			super.add(parentElementOrTreePath, childElement);
+		}
+
+		@Override
+		public void add(Object parentElementOrTreePath, Object[] childElements) {
+			clearCache();
+			super.add(parentElementOrTreePath, childElements);
+		}
+
+		@Override
+		protected void inputChanged(Object input, Object oldInput) {
+			clearCache();
+			super.inputChanged(input, oldInput);
+		}
+
+		@Override
+		public void insert(Object parentElementOrTreePath, Object element, int position) {
+			clearCache();
+			super.insert(parentElementOrTreePath, element, position);
+		}
+
+		@Override
+		public void refresh() {
+			clearCache();
+			super.refresh();
+		}
+
+		@Override
+		public void refresh(boolean updateLabels) {
+			clearCache();
+			super.refresh(updateLabels);
+		}
+
+		@Override
+		public void refresh(Object element) {
+			clearCache();
+			super.refresh(element);
+		}
+
+		@Override
+		public void refresh(Object element, boolean updateLabels) {
+			clearCache();
+			super.refresh(element, updateLabels);
+		}
+
+		@Override
+		public void remove(Object elementsOrTreePaths) {
+			clearCache();
+			super.remove(elementsOrTreePaths);
+		}
+
+		@Override
+		public void remove(Object parent, Object[] elements) {
+			clearCache();
+			super.remove(parent, elements);
+		}
+
+		@Override
+		public void remove(Object[] elementsOrTreePaths) {
+			clearCache();
+			super.remove(elementsOrTreePaths);
+		}
+
+		@Override
+		public void replace(Object parentElementOrTreePath, int index, Object element) {
+			clearCache();
+			super.replace(parentElementOrTreePath, index, element);
+		}
+
+		@Override
+		public void setChildCount(Object elementOrTreePath, int count) {
+			clearCache();
+			super.setChildCount(elementOrTreePath, count);
+		}
+
+		@Override
+		public void setContentProvider(IContentProvider provider) {
+			clearCache();
+			super.setContentProvider(provider);
+		}
+
+		@Override
+		public void setHasChildren(Object elementOrTreePath, boolean hasChildren) {
+			clearCache();
+			super.setHasChildren(elementOrTreePath, hasChildren);
+		}
+
+	}
+
+	@Override
+	protected TreeViewer doCreateTreeViewer(Composite parent, int style) {
+		return new NotifyingTreeViewer(parent, style);
+	}
+
+	@Override
+	public CheckboxTreeViewer getViewer() {
+		return (CheckboxTreeViewer)super.getViewer();
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/LinkedLocationContentProvider.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/LinkedLocationContentProvider.java
new file mode 100644
index 0000000..31453c9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/LinkedLocationContentProvider.java
@@ -0,0 +1,318 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationListener.Stub;
+
+/**
+ * Provide {@link ILink linked} {@link ILocation} for a given {@link ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class LinkedLocationContentProvider extends AbstractLocationContentProvider {
+
+	/**
+	 * Recursively listen to {@link ILocation#getContents() content} changes.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class ContentLocationListener extends Stub {
+
+		/**
+		 * Link listener for content listener. It basically attach to an {@link ILink} when its
+		 * {@link ILink#getSource() source} or {@link ILink#getTarget() target} is not setted yet.
+		 *
+		 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+		 */
+		private final class LinkListener extends org.eclipse.intent.mapping.base.ILinkListener.Stub {
+
+			/**
+			 * The link we are attached to.
+			 */
+			private final ILink link;
+
+			/**
+			 * Constructor.
+			 * 
+			 * @param link
+			 *            the {@link ILink} to attach to.
+			 */
+			LinkListener(ILink link) {
+				this.link = link;
+			}
+
+			@Override
+			public void sourceChanged(ILocation oldSource, ILocation newSource) {
+				update();
+				currentViewer.refresh();
+				link.removeListener(this);
+			}
+
+			@Override
+			public void targetChanged(ILocation oldTarget, ILocation newTarget) {
+				update();
+				currentViewer.refresh();
+				link.removeListener(this);
+			}
+		}
+
+		@Override
+		public void contentsAdded(ILocation location) {
+			update();
+			currentViewer.refresh();
+			addListener(location);
+		}
+
+		@Override
+		public void contentsRemoved(ILocation location) {
+			removeListener(location);
+		}
+
+		@Override
+		public void sourceLinkAdded(ILink link) {
+			if (direction == SOURCE) {
+				if (link.getSource() == null) {
+					link.addListener(new LinkListener(link));
+				} else {
+					update();
+					currentViewer.refresh();
+				}
+			}
+		}
+
+		@Override
+		public void targetLinkAdded(ILink link) {
+			if (direction == TARGET) {
+				if (link.getTarget() == null) {
+					link.addListener(new LinkListener(link));
+				} else {
+					update();
+					currentViewer.refresh();
+				}
+			}
+		}
+
+		/**
+		 * Recursively add itself to the content of the given {@link ILocation}.
+		 * 
+		 * @param location
+		 *            the {@link ILocation} to listen
+		 */
+		private void addListener(ILocation location) {
+			if (!listeners.containsKey(location)) {
+				location.addListener(this);
+				listeners.put(location, this);
+				for (ILocation child : location.getContents()) {
+					addListener(child);
+				}
+			}
+		}
+
+		/**
+		 * Recursively remove itself from the content of the given {@link ILocation}.
+		 * 
+		 * @param location
+		 *            the {@link ILocation} to listen
+		 */
+		private void removeListener(ILocation location) {
+			location.removeListener(this);
+			listeners.remove(location);
+			for (ILocation child : location.getContents()) {
+				removeListener(child);
+			}
+		}
+	}
+
+	/**
+	 * {@link ILocation#getSourceLinks() source} direction.
+	 */
+	public static final int SOURCE = 0;
+
+	/**
+	 * {@link ILocation#getTargetLinks() target} direction.
+	 */
+	public static final int TARGET = 1;
+
+	/**
+	 * The direction either {@link #SOURCE source} or {@link #TARGET target}.
+	 */
+	private final int direction;
+
+	/**
+	 * Tells if the input location should be walked recursively for {@link ILink}.
+	 */
+	private final boolean recursive;
+
+	/**
+	 * Tells if we should provide {@link ILink}.
+	 */
+	private final boolean provideLinks;
+
+	/**
+	 * Mapping from an {@link ILocation} and its {@link ContentLocationListener}.
+	 */
+	private final Map<ILocation, ContentLocationListener> listeners = new HashMap<ILocation, ContentLocationListener>();
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param provideLinks
+	 *            tells if we should provide {@link ILink}
+	 * @param direction
+	 *            the direction either {@link #SOURCE source} or {@link #TARGET target}
+	 * @param recursive
+	 *            tells if the input location should be walked recursively for {@link ILink}
+	 */
+	public LinkedLocationContentProvider(boolean provideLinks, int direction, boolean recursive) {
+		this.provideLinks = provideLinks;
+		this.direction = direction;
+		this.recursive = recursive;
+	}
+
+	@Override
+	protected void setLeavesAndLinks(Object input, List<ILocation> locationLeaves, List<ILink> links) {
+		if (input instanceof ILocation) {
+			final ILocation location = (ILocation)input;
+			if (direction == SOURCE) {
+				for (ILink link : location.getSourceLinks()) {
+					links.add(link);
+					locationLeaves.add(link.getSource());
+				}
+			} else if (direction == TARGET) {
+				for (ILink link : location.getTargetLinks()) {
+					links.add(link);
+					locationLeaves.add(link.getTarget());
+				}
+			}
+			if (recursive) {
+				final ContentLocationListener listener = new ContentLocationListener();
+				location.addListener(listener);
+				listeners.put((ILocation)input, listener);
+				for (ILocation child : location.getContents()) {
+					setLeavesAndLinks(child, locationLeaves, links);
+				}
+			}
+		}
+	}
+
+	@Override
+	public boolean hasChildren(Object element) {
+		final boolean res;
+
+		if (provideLinks) {
+			if (element instanceof ILocation) {
+				res = !getchildLinks((ILocation)element).isEmpty() || super.hasChildren(element);
+			} else {
+				res = false;
+			}
+		} else {
+			res = super.hasChildren(element);
+		}
+
+		return res;
+	}
+
+	@Override
+	public Object[] getChildren(Object parentElement) {
+		final Object[] res;
+
+		final Object[] childLocations = super.getChildren(parentElement);
+		if (provideLinks && parentElement instanceof ILocation) {
+			final List<ILink> childlinks = getchildLinks((ILocation)parentElement);
+			res = concat(childLocations, childlinks.toArray());
+		} else {
+			res = childLocations;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Gets child {@link ILink} for the given parent {@link ILocation}.
+	 * 
+	 * @param parentlocation
+	 *            the parent {@link ILocation}
+	 * @return child {@link ILink} for the given parent {@link ILocation}
+	 */
+	private List<ILink> getchildLinks(ILocation parentlocation) {
+		final List<ILink> links = new ArrayList<ILink>();
+		final List<ILink> linksToCheck;
+		if (direction == SOURCE) {
+			linksToCheck = parentlocation.getTargetLinks();
+		} else if (direction == TARGET) {
+			linksToCheck = parentlocation.getSourceLinks();
+		} else {
+			throw new IllegalStateException("should not happend");
+		}
+		for (ILink link : linksToCheck) {
+			if (listenedLinks.contains(link)) {
+				links.add(link);
+			}
+		}
+		return links;
+	}
+
+	/**
+	 * Concatenates two given arrays of {@link Object}.
+	 * 
+	 * @param first
+	 *            the first array
+	 * @param second
+	 *            the second array
+	 * @return a new array composed of the two given arrays
+	 */
+	private Object[] concat(Object[] first, Object[] second) {
+		final Object[] result = Arrays.copyOf(first, first.length + second.length);
+
+		System.arraycopy(second, 0, result, first.length, second.length);
+
+		return result;
+	}
+
+	@Override
+	public Object getParent(Object element) {
+		final Object res;
+
+		if (provideLinks && element instanceof ILink) {
+			if (direction == SOURCE) {
+				res = ((ILink)element).getTarget();
+			} else if (direction == TARGET) {
+				res = ((ILink)element).getSource();
+			} else {
+				throw new IllegalStateException("should not happend");
+			}
+		} else {
+			res = super.getParent(element);
+		}
+
+		return res;
+	}
+
+	@Override
+	protected void update() {
+		for (Entry<ILocation, ContentLocationListener> entry : listeners.entrySet()) {
+			entry.getKey().removeListener(entry.getValue());
+		}
+		listeners.clear();
+		super.update();
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingBaseRegistryContentProvider.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingBaseRegistryContentProvider.java
new file mode 100644
index 0000000..3165038
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingBaseRegistryContentProvider.java
@@ -0,0 +1,156 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.IBaseRegistry;
+import org.eclipse.intent.mapping.base.IBaseRegistryListener;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.jface.viewers.IStructuredContentProvider;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * {@link IBaseRegistry} content provider.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class MappingBaseRegistryContentProvider implements IStructuredContentProvider {
+
+	/**
+	 * Workaround for null in JFace combo box...
+	 */
+	public static final Object NO_VALUE = new Object();
+
+	// Force the start of org.eclipse.intent.mapping.ide
+	// TODO we should find a better way to do that
+	{
+		IdeMappingUtils.getFileConectorDelegateRegistry();
+	}
+
+	/**
+	 * An {@link IBaseRegistryListener} that update a {@link Viewer}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class RegisteryListener implements IBaseRegistryListener {
+
+		/**
+		 * The {@link Viewer} to update.
+		 */
+		private final Viewer viewer;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param viewer
+		 *            the {@link Viewer} to update
+		 */
+		RegisteryListener(Viewer viewer) {
+			this.viewer = viewer;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseRegistryListener#baseRegistred(org.eclipse.intent.mapping.base.IBase)
+		 */
+		public void baseRegistred(IBase base) {
+			refresh();
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseRegistryListener#baseUnregistred(org.eclipse.intent.mapping.base.IBase)
+		 */
+		public void baseUnregistred(IBase base) {
+			refresh();
+		}
+
+		/**
+		 * Refresh the {@link Viewer}.
+		 */
+		private void refresh() {
+			if (!viewer.getControl().isDisposed()) {
+				if (Display.getDefault().getThread() == Thread.currentThread()) {
+					viewer.refresh();
+				} else {
+					Display.getDefault().asyncExec(new Runnable() {
+
+						public void run() {
+							viewer.refresh();
+						}
+					});
+				}
+			}
+		}
+
+	}
+
+	/**
+	 * {@link Viewer} to {@link RegisteryListener} mapping.
+	 */
+	private final Map<Viewer, RegisteryListener> listeners = new HashMap<Viewer, RegisteryListener>();
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
+	 */
+	public void dispose() {
+		assert listeners.isEmpty();
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer,
+	 *      java.lang.Object, java.lang.Object)
+	 */
+	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
+		if (oldInput instanceof IBaseRegistry) {
+			((IBaseRegistry)oldInput).removeListener(listeners.remove(viewer));
+		}
+		if (newInput instanceof IBaseRegistry) {
+			final RegisteryListener listener = new RegisteryListener(viewer);
+			listeners.put(viewer, listener);
+			((IBaseRegistry)newInput).addListener(listener);
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
+	 */
+	public Object[] getElements(Object inputElement) {
+		final Object[] res;
+
+		if (inputElement instanceof IBaseRegistry) {
+			res = new Object[((IBaseRegistry)inputElement).getBases().size() + 1];
+			int index = 0;
+			res[index++] = NO_VALUE;
+			for (IBase base : ((IBaseRegistry)inputElement).getBases()) {
+				res[index++] = base;
+			}
+		} else {
+			res = new Object[0];
+		}
+
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingKeyUpListener.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingKeyUpListener.java
new file mode 100644
index 0000000..e56ab4d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingKeyUpListener.java
@@ -0,0 +1,108 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeItem;
+
+/**
+ * Mapping key up listener for {@link Tree}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+final class MappingKeyUpListener implements Listener {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event)
+	 */
+	public void handleEvent(Event event) {
+		if (event.keyCode == SWT.DEL) {
+			deleteReports(((Tree)event.widget).getSelection());
+			deleteLinks(((Tree)event.widget).getSelection());
+			deleteLocations(((Tree)event.widget).getSelection());
+		}
+	}
+
+	/**
+	 * Deletes selected {@link IReport}.
+	 * 
+	 * @param selection
+	 *            the selection
+	 */
+	private void deleteReports(TreeItem[] selection) {
+		final List<IReport> reportsToDelete = new ArrayList<IReport>();
+		for (TreeItem item : selection) {
+			final Object data = item.getData();
+			if (data instanceof IReport) {
+				reportsToDelete.add((IReport)data);
+			}
+		}
+
+		for (IReport report : reportsToDelete) {
+			MappingUtils.deleteReport(report);
+		}
+	}
+
+	/**
+	 * Deletes selected {@link ILink}.
+	 * 
+	 * @param selection
+	 *            the selection
+	 */
+	private void deleteLinks(TreeItem[] selection) {
+		final List<ILink> linksToDelete = new ArrayList<ILink>();
+		for (TreeItem item : selection) {
+			final Object data = item.getData();
+			if (data instanceof ILink && MappingUtils.canDeleteLink((ILink)data)) {
+				linksToDelete.add((ILink)data);
+			}
+		}
+
+		for (ILink link : linksToDelete) {
+			MappingUtils.deleteLink(link);
+		}
+	}
+
+	/**
+	 * Deletes selected {@link ILocation}.
+	 * 
+	 * @param selection
+	 *            the selection
+	 */
+	private void deleteLocations(TreeItem[] selection) {
+		final List<ILocation> locationsToDelete = new ArrayList<ILocation>();
+
+		for (TreeItem item : selection) {
+			final Object data = item.getData();
+			if (data instanceof ILocation && MappingUtils.canDeleteLocation((ILocation)data)) {
+				locationsToDelete.add((ILocation)data);
+			}
+		}
+
+		for (ILocation location : locationsToDelete) {
+			MappingUtils.deleteLocation(location);
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingLabelProvider.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingLabelProvider.java
new file mode 100644
index 0000000..389a853
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingLabelProvider.java
@@ -0,0 +1,123 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.jface.viewers.BaseLabelProvider;
+import org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.StyledString;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * Mapping {@link ILabelProvider}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class MappingLabelProvider extends BaseLabelProvider implements ILabelProvider, IStyledLabelProvider {
+
+	/**
+	 * {@link ILocation#getSourceLinks() source} column.
+	 */
+	public static final int SOURCE = 0;
+
+	/**
+	 * {@link ILocation#getTargetLinks() target} column.
+	 */
+	public static final int TARGET = 1;
+
+	/**
+	 * The column either {@link #SOURCE} or {@link #TARGET}.
+	 */
+	private final int column;
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param column
+	 *            the column either {@link #SOURCE} or {@link #TARGET}
+	 */
+	public MappingLabelProvider(int column) {
+		this.column = column;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
+	 */
+	public Image getImage(Object element) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
+	 */
+	public String getText(Object element) {
+		final String res;
+
+		if (element == MappingBaseRegistryContentProvider.NO_VALUE) {
+			res = "";
+		} else if (column == SOURCE) {
+			if (element instanceof ILocation) {
+				res = MappingUtils.getConnectorRegistry().getName((ILocation)element);
+			} else if (element instanceof ILocationDescriptor) {
+				res = ((ILocationDescriptor)element).getName();
+			} else if (element instanceof ILink) {
+				res = MappingUtils.getConnectorRegistry().getName(((ILink)element).getSource());
+			} else if (element instanceof IReport) {
+				res = ((IReport)element).getDescription();
+			} else if (element instanceof IBase) {
+				res = ((IBase)element).getName();
+			} else {
+				throw new IllegalStateException("should not happend");
+			}
+		} else if (column == TARGET) {
+			if (element instanceof ILink) {
+				res = MappingUtils.getConnectorRegistry().getName(((ILink)element).getTarget());
+			} else {
+				res = "";
+			}
+		} else {
+			throw new IllegalStateException("should not happend");
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider#getStyledText(java.lang.Object)
+	 */
+	public StyledString getStyledText(Object element) {
+		final String text = getText(element);
+		final StyledString res;
+
+		if (text == null) {
+			res = new StyledString();
+		} else {
+			res = new StyledString(text);
+		}
+
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingView.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingView.java
new file mode 100644
index 0000000..a728576
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/MappingView.java
@@ -0,0 +1,1108 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.IBaseListener;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.base.ILocationListener;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.ide.ILocationMarker;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.ui.Activator;
+import org.eclipse.intent.mapping.ide.ui.UiIdeMappingUtils;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.viewers.ComboViewer;
+import org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.TreeViewerColumn;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.viewers.ViewerComparator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.SashForm;
+import org.eclipse.swt.events.FocusEvent;
+import org.eclipse.swt.events.FocusListener;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.TabFolder;
+import org.eclipse.swt.widgets.TabItem;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IEditorReference;
+import org.eclipse.ui.IPageListener;
+import org.eclipse.ui.IPartListener2;
+import org.eclipse.ui.ISelectionListener;
+import org.eclipse.ui.IWindowListener;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchPartReference;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.dialogs.FilteredTree;
+import org.eclipse.ui.dialogs.PatternFilter;
+import org.eclipse.ui.part.ViewPart;
+
+/**
+ * Mapping {@link ViewPart}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class MappingView extends ViewPart {
+
+	/**
+	 * Selection changed Listener for {@link IBase} combo.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class BaseComboSelectionChangedListener implements ISelectionChangedListener {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
+		 */
+		public void selectionChanged(SelectionChangedEvent event) {
+			final IBase oldBase = IdeMappingUtils.getCurrentBase();
+			final Object selected = ((IStructuredSelection)event.getSelection()).getFirstElement();
+			final IBase newBase;
+			if (selected == MappingBaseRegistryContentProvider.NO_VALUE) {
+				newBase = null;
+			} else {
+				newBase = (IBase)selected;
+			}
+			if (oldBase != null) {
+				for (ILocation child : oldBase.getContents()) {
+					deleteLocation(child);
+				}
+				try {
+					oldBase.save();
+				} catch (IOException e) {
+					if (Activator.getDefault() != null) {
+						Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+								"unable to save base " + oldBase.getName(), e));
+					}
+				}
+			}
+			IdeMappingUtils.setCurrentBase(newBase);
+			if (newBase != null) {
+				for (ILocation child : newBase.getContents()) {
+					addLocation(child);
+				}
+			}
+		}
+	}
+
+	/**
+	 * Adds and removes location markers according to edited locations and changes in {@link IBase}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class MarkerBaseListener extends ILocationListener.Stub implements IBaseListener, ILocationListener {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#contentsAdded(org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public void contentsAdded(ILocation location) {
+			location.addListener(this);
+			if (isOpenedInEditor(location)) {
+				IdeMappingUtils.getOrCreateMarker(location);
+			}
+		}
+
+		/**
+		 * Tells if the given {@link ILocation} is opened in an editor.
+		 * 
+		 * @param location
+		 *            the {@link ILocation} to check
+		 * @return <code>true</code> if the given {@link ILocation} is opened in an editor, <code>false</code>
+		 *         otherwise
+		 */
+		private boolean isOpenedInEditor(ILocation location) {
+			final boolean res;
+
+			// we assume all opened location are directly contained by the base
+			if (location.getContainer() instanceof ILocation) {
+				res = isOpenedInEditor((ILocation)location.getContainer());
+			} else {
+				res = editedLocations.contains(location);
+			}
+
+			return res;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#contentsRemoved(org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public void contentsRemoved(ILocation location) {
+			location.removeListener(this);
+			IdeMappingUtils.deleteMarker(location);
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#nameChanged(java.lang.String, java.lang.String)
+		 */
+		public void nameChanged(String oldName, String newName) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#reportAdded(org.eclipse.intent.mapping.base.IReport)
+		 */
+		public void reportAdded(IReport report) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#reportRemoved(org.eclipse.intent.mapping.base.IReport)
+		 */
+		public void reportRemoved(IReport report) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#containerProviderAdded(java.lang.String)
+		 */
+		public void containerProviderAdded(String provider) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#containerProviderRemoved(java.lang.String)
+		 */
+		public void containerProviderRemoved(String provider) {
+			// nothing to do here
+		}
+
+	}
+
+	/**
+	 * Listen to {@link org.eclipse.ui.IEditorPart IEditorPart}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class EditorPartListener implements IWindowListener, IPageListener, IPartListener2 {
+
+		/**
+		 * Unable to create location mesage.
+		 */
+		private static final String UNABLE_TO_CREATE_LOCATION = "unable to create location";
+
+		/**
+		 * The array of {@link Viewer}.
+		 */
+		private final Viewer[] viewers;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param viewers
+		 *            the array of {@link Viewer}
+		 */
+		EditorPartListener(Viewer... viewers) {
+			this.viewers = viewers;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IWindowListener#windowActivated(org.eclipse.ui.IWorkbenchWindow)
+		 */
+		public void windowActivated(IWorkbenchWindow window) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IWindowListener#windowDeactivated(org.eclipse.ui.IWorkbenchWindow)
+		 */
+		public void windowDeactivated(IWorkbenchWindow window) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IWindowListener#windowClosed(org.eclipse.ui.IWorkbenchWindow)
+		 */
+		public void windowClosed(IWorkbenchWindow window) {
+			window.removePageListener(this);
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IWindowListener#windowOpened(org.eclipse.ui.IWorkbenchWindow)
+		 */
+		public void windowOpened(IWorkbenchWindow window) {
+			window.addPageListener(this);
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IPageListener#pageActivated(org.eclipse.ui.IWorkbenchPage)
+		 */
+		public void pageActivated(IWorkbenchPage page) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IPageListener#pageClosed(org.eclipse.ui.IWorkbenchPage)
+		 */
+		public void pageClosed(IWorkbenchPage page) {
+			page.removePartListener(this);
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IPageListener#pageOpened(org.eclipse.ui.IWorkbenchPage)
+		 */
+		public void pageOpened(IWorkbenchPage page) {
+			page.addPartListener(this);
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IPartListener2#partActivated(org.eclipse.ui.IWorkbenchPartReference)
+		 */
+		public void partActivated(IWorkbenchPartReference partRef) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IPartListener2#partBroughtToTop(org.eclipse.ui.IWorkbenchPartReference)
+		 */
+		public void partBroughtToTop(IWorkbenchPartReference partRef) {
+			final IWorkbenchPart part = partRef.getPart(false);
+			if (part instanceof IEditorPart) {
+				setInput((IEditorPart)part);
+			}
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IPartListener2#partClosed(org.eclipse.ui.IWorkbenchPartReference)
+		 */
+		public void partClosed(IWorkbenchPartReference partRef) {
+			final IWorkbenchPart part = partRef.getPart(false);
+			if (part instanceof IEditorPart) {
+				final IBase currentBase = IdeMappingUtils.getCurrentBase();
+				createLocationMarker(currentBase, (IEditorPart)part);
+			}
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IPartListener2#partDeactivated(org.eclipse.ui.IWorkbenchPartReference)
+		 */
+		public void partDeactivated(IWorkbenchPartReference partRef) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IPartListener2#partOpened(org.eclipse.ui.IWorkbenchPartReference)
+		 */
+		public void partOpened(IWorkbenchPartReference partRef) {
+			final IWorkbenchPart part = partRef.getPart(false);
+			if (part instanceof IEditorPart) {
+				setInput((IEditorPart)part);
+				final IBase currentBase = IdeMappingUtils.getCurrentBase();
+				createLocationMarker(currentBase, (IEditorPart)part);
+			}
+		}
+
+		/**
+		 * Sets input according to the given {@link IEditorPart}.
+		 * 
+		 * @param editorPart
+		 *            the {@link IEditorPart}
+		 */
+		public void setInput(final IEditorPart editorPart) {
+			if (editorPart == null) {
+				for (Viewer viewer : viewers) {
+					viewer.setInput(null);
+				}
+			} else {
+				final IEditorInput input = editorPart.getEditorInput();
+				final IFile file = UiIdeMappingUtils.getFile(input);
+				final IBase base = IdeMappingUtils.getCurrentBase();
+				if (base != null) {
+					try {
+						// TODO get the location and add a listener to be notified when the location is
+						// created
+						final ILocation location = MappingUtils.getConnectorRegistry().getOrCreateLocation(
+								base, file);
+						for (Viewer viewer : viewers) {
+							viewer.setInput(location);
+						}
+					} catch (InstantiationException e) {
+						Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+								UNABLE_TO_CREATE_LOCATION, e));
+					} catch (IllegalAccessException e) {
+						Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+								UNABLE_TO_CREATE_LOCATION, e));
+					} catch (ClassNotFoundException e) {
+						Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+								UNABLE_TO_CREATE_LOCATION, e));
+					}
+				}
+			}
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IPartListener2#partHidden(org.eclipse.ui.IWorkbenchPartReference)
+		 */
+		public void partHidden(IWorkbenchPartReference partRef) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IPartListener2#partVisible(org.eclipse.ui.IWorkbenchPartReference)
+		 */
+		public void partVisible(IWorkbenchPartReference partRef) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.ui.IPartListener2#partInputChanged(org.eclipse.ui.IWorkbenchPartReference)
+		 */
+		public void partInputChanged(IWorkbenchPartReference partRef) {
+			final IWorkbenchPart part = partRef.getPart(false);
+			if (part instanceof IEditorPart) {
+				setInput((IEditorPart)part);
+				final IBase currentBase = IdeMappingUtils.getCurrentBase();
+				createLocationMarker(currentBase, (IEditorPart)part);
+			}
+		}
+
+	}
+
+	/**
+	 * The view ID.
+	 */
+	public static final String ID = "org.eclipse.intent.mapping.ide.ui.view.MappingView"; //$NON-NLS-1$
+
+	/**
+	 * Default width.
+	 */
+	private static final int WIDTH = 300;
+
+	/**
+	 * Source column label.
+	 */
+	private static final String SOURCE_LABEL = "Master source";
+
+	/**
+	 * Target column label.
+	 */
+	private static final String TARGET_LABEL = "Slave target";
+
+	/**
+	 * The {@link SelectionProviderIntermediate} delegating to {@link org.eclipse.jface.viewers.Viewer Viewer}
+	 * .
+	 */
+	private final SelectionProviderIntermediate selectionProvider = new SelectionProviderIntermediate();
+
+	/**
+	 * The {@link ISelectionListener} updating selection tree viewer input.
+	 */
+	private ISelectionListener selectionListener;
+
+	/**
+	 * The {@link EditorPartListener}.
+	 */
+	private EditorPartListener editorPartListener;
+
+	/**
+	 * The {@link List} of edited {@link ILocation}.
+	 */
+	private final List<ILocation> editedLocations = new ArrayList<ILocation>();
+
+	/**
+	 * The listener maintaining the {@link ILocation} to {@link org.eclipse.core.resources.IMarker IMarker}
+	 * mapping.
+	 */
+	private final MarkerBaseListener markerBaseListener = new MarkerBaseListener();
+
+	/**
+	 * The {@link MenuManager}.
+	 */
+	private final MenuManager menuManager = new MenuManager();
+
+	/**
+	 * {@link List} of created {@link Menu}.
+	 */
+	private final List<Menu> menus = new ArrayList<Menu>();
+
+	/**
+	 * Constructor.
+	 */
+	public MappingView() {
+	}
+
+	@Override
+	public void createPartControl(Composite parent) {
+
+		Composite composite = new Composite(parent, SWT.NONE);
+		composite.setLayout(new GridLayout(1, false));
+
+		Composite headerComposite = new Composite(composite, SWT.NONE);
+		headerComposite.setLayout(new GridLayout(3, false));
+		headerComposite.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false, 1, 1));
+
+		final ComboViewer mappingBaseCombo = addMappingBaseCombo(headerComposite);
+
+		TabFolder bodyTabFolder = new TabFolder(composite, SWT.NONE);
+		bodyTabFolder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
+
+		addSelectionTabItem(bodyTabFolder, mappingBaseCombo);
+		addDocumentTabItem(bodyTabFolder, mappingBaseCombo);
+		addReportTabItem(bodyTabFolder, mappingBaseCombo);
+
+		final Button containerProviderButton = new Button(headerComposite, SWT.NONE);
+		containerProviderButton.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, true, false, 1, 1));
+		containerProviderButton.setText("Select Container Providers");
+		containerProviderButton.setEnabled(IdeMappingUtils.getCurrentBase() != null);
+		mappingBaseCombo.addSelectionChangedListener(new ISelectionChangedListener() {
+
+			public void selectionChanged(SelectionChangedEvent event) {
+				containerProviderButton.setEnabled(IdeMappingUtils.getCurrentBase() != null);
+			}
+		});
+		containerProviderButton.addListener(SWT.Selection, new Listener() {
+
+			public void handleEvent(Event event) {
+				final ContainerProviderSelectionDialog dialog = new ContainerProviderSelectionDialog(getSite()
+						.getShell(), IdeMappingUtils.getCurrentBase());
+				dialog.open();
+			}
+
+		});
+
+		getSite().setSelectionProvider(selectionProvider);
+
+		createActions();
+		initializeToolBar();
+
+		getSite().registerContextMenu(menuManager, selectionProvider);
+	}
+
+	/**
+	 * Add the mapping base {@link ComboViewer} to the given header {@link Composite}.
+	 * 
+	 * @param headerComposite
+	 *            the header {@link Composite}
+	 * @return the mapping base {@link ComboViewer}
+	 */
+	private ComboViewer addMappingBaseCombo(Composite headerComposite) {
+
+		final Label selectMappingBaseLabel = new Label(headerComposite, SWT.NONE);
+		selectMappingBaseLabel.setToolTipText("Select a mapping base.");
+		selectMappingBaseLabel.setText("Mapping base:");
+		final ComboViewer mappingCombo = new ComboViewer(headerComposite, SWT.READ_ONLY);
+		Combo combo = mappingCombo.getCombo();
+		combo.setToolTipText("Select the mapping base to use.");
+		mappingCombo.setContentProvider(new MappingBaseRegistryContentProvider());
+		mappingCombo.setLabelProvider(new MappingLabelProvider(MappingLabelProvider.SOURCE));
+		mappingCombo.setComparator(new ViewerComparator());
+		mappingCombo.setInput(MappingUtils.getMappingRegistry());
+		mappingCombo.addSelectionChangedListener(new BaseComboSelectionChangedListener());
+
+		return mappingCombo;
+	}
+
+	/**
+	 * Adds the selection {@link TabItem} to the given body {@link TabFolder}.
+	 * 
+	 * @param bodyTabFolder
+	 *            the body {@link TabFolder}
+	 * @param mappingBaseCombo
+	 *            the mapping base {@link ComboViewer}
+	 */
+	private void addSelectionTabItem(TabFolder bodyTabFolder, ComboViewer mappingBaseCombo) {
+		TabItem selectionTabItem = new TabItem(bodyTabFolder, SWT.NONE);
+		selectionTabItem.setText("Selection");
+
+		Composite treeComposite = new Composite(bodyTabFolder, SWT.NONE);
+		selectionTabItem.setControl(treeComposite);
+		treeComposite.setLayout(new FillLayout(SWT.HORIZONTAL));
+
+		SashForm sashForm = new SashForm(treeComposite, SWT.NONE);
+
+		final Composite referencingComposite = new Composite(sashForm, SWT.NONE);
+		referencingComposite.setLayout(new GridLayout(1, false));
+
+		final Label referencingLabel = new Label(referencingComposite, SWT.CENTER);
+		referencingLabel.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1));
+		referencingLabel.setToolTipText("Locations referencing the current selection via a Link.");
+		referencingLabel.setText("Referencing Locations");
+
+		final FilteredTree referencingTree = new FilteredTree(referencingComposite, SWT.MULTI | SWT.BORDER,
+				new PatternFilter(), false);
+		referencingTree.getViewer().getTree().addListener(SWT.KeyDown, new MappingKeyUpListener());
+		referencingTree.getViewer().getTree().addListener(SWT.MouseDoubleClick,
+				new ShowLocationDoubleClickListener(referencingTree.getViewer().getTree()));
+		referencingTree.getViewer().setContentProvider(new LinkedLocationContentProvider(false,
+				LinkedLocationContentProvider.SOURCE, false));
+		referencingTree.getViewer().setLabelProvider(new MappingLabelProvider(MappingLabelProvider.SOURCE));
+		referencingTree.getViewer().getControl().addFocusListener(new FocusListener() {
+
+			public void focusLost(FocusEvent e) {
+				selectionProvider.setSelectionProviderDelegate(null);
+			}
+
+			public void focusGained(FocusEvent e) {
+				selectionProvider.setSelectionProviderDelegate(referencingTree.getViewer());
+			}
+		});
+		Menu menu = menuManager.createContextMenu(referencingTree.getViewer().getControl());
+		menus.add(menu);
+		referencingTree.getViewer().getControl().setMenu(menu);
+
+		final Composite referencedComposite = new Composite(sashForm, SWT.NONE);
+		referencedComposite.setLayout(new GridLayout(1, false));
+
+		final Label referencedLabel = new Label(referencedComposite, SWT.CENTER);
+		referencedLabel.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1));
+		referencedLabel.setToolTipText("Locations referenced by the current selection via a Link.");
+		referencedLabel.setText("Referenced Locations");
+
+		final FilteredTree referencedTree = new FilteredTree(referencedComposite, SWT.MULTI | SWT.BORDER,
+				new PatternFilter(), false);
+		referencedTree.getViewer().getTree().addListener(SWT.KeyUp, new MappingKeyUpListener());
+		referencedTree.getViewer().getTree().addListener(SWT.MouseDoubleClick,
+				new ShowLocationDoubleClickListener(referencedTree.getViewer().getTree()));
+		referencedTree.getViewer().setContentProvider(new LinkedLocationContentProvider(false,
+				LinkedLocationContentProvider.TARGET, false));
+		referencedTree.getViewer().setLabelProvider(new MappingLabelProvider(MappingLabelProvider.SOURCE));
+		referencedTree.getViewer().getControl().addFocusListener(new FocusListener() {
+
+			public void focusLost(FocusEvent e) {
+				selectionProvider.setSelectionProviderDelegate(null);
+			}
+
+			public void focusGained(FocusEvent e) {
+				selectionProvider.setSelectionProviderDelegate(referencedTree.getViewer());
+			}
+		});
+		menu = menuManager.createContextMenu(referencedTree.getViewer().getControl());
+		menus.add(menu);
+		referencedTree.getViewer().getControl().setMenu(menu);
+
+		mappingBaseCombo.addSelectionChangedListener(new ISelectionChangedListener() {
+
+			public void selectionChanged(SelectionChangedEvent event) {
+				final IBase base;
+				final Object selected = ((IStructuredSelection)event.getSelection()).getFirstElement();
+				if (selected == MappingBaseRegistryContentProvider.NO_VALUE) {
+					base = null;
+				} else {
+					base = (IBase)selected;
+				}
+				final ILocation location = (ILocation)referencedTree.getViewer().getInput();
+				if (location != null && areSameBase(MappingUtils.getBase(location), base)) {
+					referencingTree.getViewer().setInput(null);
+					referencedTree.getViewer().setInput(null);
+				}
+			}
+		});
+
+		selectionListener = new ISelectionListener() {
+
+			public void selectionChanged(IWorkbenchPart part, ISelection selection) {
+				final IBase currentBase = IdeMappingUtils.getCurrentBase();
+				if (part != MappingView.this && currentBase != null) {
+					final ILocationDescriptor locationDescriptor = IdeMappingUtils.adapt(selection,
+							ILocationDescriptor.class);
+					if (locationDescriptor != null && locationDescriptor.exists()) {
+						final ILocation location = locationDescriptor.getLocation();
+						if (location != null && areSameBase(currentBase, MappingUtils.getBase(location))) {
+							referencingTree.getViewer().setInput(location);
+							referencedTree.getViewer().setInput(location);
+						}
+					}
+				}
+			}
+		};
+
+		referencingTree.getViewer().getTree().addListener(SWT.MouseDoubleClick,
+				new ShowLocationDoubleClickListener(referencingTree.getViewer().getTree()));
+		referencedTree.getViewer().getTree().addListener(SWT.MouseDoubleClick,
+				new ShowLocationDoubleClickListener(referencedTree.getViewer().getTree()));
+
+		getSite().getWorkbenchWindow().getSelectionService().addSelectionListener(selectionListener);
+
+		sashForm.setWeights(new int[] {1, 1 });
+	}
+
+	/**
+	 * Adds the document {@link TabItem} to the given body {@link TabFolder}.
+	 * 
+	 * @param bodyTabFolder
+	 *            the body {@link TabFolder}
+	 * @param mappingBaseCombo
+	 *            the mapping base {@link ComboViewer}
+	 */
+	private void addDocumentTabItem(TabFolder bodyTabFolder, ComboViewer mappingBaseCombo) {
+		TabItem selectionTabItem = new TabItem(bodyTabFolder, SWT.NONE);
+		selectionTabItem.setText("Document");
+
+		Composite treeComposite = new Composite(bodyTabFolder, SWT.NONE);
+		selectionTabItem.setControl(treeComposite);
+		treeComposite.setLayout(new FillLayout(SWT.HORIZONTAL));
+
+		SashForm sashForm = new SashForm(treeComposite, SWT.NONE);
+
+		final Composite referencingComposite = new Composite(sashForm, SWT.NONE);
+		referencingComposite.setLayout(new GridLayout(1, false));
+
+		final Label referencingLabel = new Label(referencingComposite, SWT.CENTER);
+		referencingLabel.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1));
+		referencingLabel.setToolTipText("Links from other documents to the current document.");
+		referencingLabel.setText("Incoming Links");
+
+		final FilteredTree referencingTree = new FilteredTree(referencingComposite, SWT.MULTI | SWT.BORDER,
+				new PatternFilter(), false);
+		referencingTree.getViewer().getTree().addListener(SWT.KeyDown, new MappingKeyUpListener());
+		referencingTree.getViewer().setContentProvider(new LinkedLocationContentProvider(true,
+				LinkedLocationContentProvider.SOURCE, true));
+		referencingTree.getViewer().getTree().addListener(SWT.MouseDoubleClick,
+				new ShowLocationDoubleClickListener(referencingTree.getViewer().getTree()));
+
+		referencingTree.getViewer().getTree().setHeaderVisible(true);
+		TreeViewerColumn referencingTreeSourceColumn = new TreeViewerColumn(referencingTree.getViewer(),
+				SWT.NONE);
+		referencingTreeSourceColumn.getColumn().setData(LinkedLocationContentProvider.SOURCE);
+		referencingTreeSourceColumn.getColumn().setResizable(true);
+		referencingTreeSourceColumn.getColumn().setText(SOURCE_LABEL);
+		referencingTreeSourceColumn.getColumn().setWidth(WIDTH);
+		referencingTreeSourceColumn.setLabelProvider(new DelegatingStyledCellLabelProvider(
+				new MappingLabelProvider(MappingLabelProvider.SOURCE)));
+
+		TreeViewerColumn referencingTreeTargetColumn = new TreeViewerColumn(referencingTree.getViewer(),
+				SWT.NONE);
+		referencingTreeTargetColumn.getColumn().setData(LinkedLocationContentProvider.TARGET);
+		referencingTreeTargetColumn.getColumn().setResizable(true);
+		referencingTreeTargetColumn.getColumn().setText(TARGET_LABEL);
+		referencingTreeTargetColumn.getColumn().setWidth(WIDTH);
+		referencingTreeTargetColumn.setLabelProvider(new DelegatingStyledCellLabelProvider(
+				new MappingLabelProvider(MappingLabelProvider.TARGET)));
+
+		referencingTree.getViewer().getControl().addFocusListener(new FocusListener() {
+
+			public void focusLost(FocusEvent e) {
+				selectionProvider.setSelectionProviderDelegate(null);
+			}
+
+			public void focusGained(FocusEvent e) {
+				selectionProvider.setSelectionProviderDelegate(referencingTree.getViewer());
+			}
+		});
+		Menu menu = menuManager.createContextMenu(referencingTree.getViewer().getControl());
+		menus.add(menu);
+		referencingTree.getViewer().getControl().setMenu(menu);
+
+		final Composite referencedComposite = new Composite(sashForm, SWT.NONE);
+		referencedComposite.setLayout(new GridLayout(1, false));
+
+		final Label referencedLabel = new Label(referencedComposite, SWT.CENTER);
+		referencedLabel.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1));
+		referencedLabel.setToolTipText("Links from the current document to other documents.");
+		referencedLabel.setText("Outgoing Links");
+
+		final FilteredTree referencedTree = new FilteredTree(referencedComposite, SWT.MULTI | SWT.BORDER,
+				new PatternFilter(), false);
+		referencedTree.getViewer().getTree().addListener(SWT.KeyUp, new MappingKeyUpListener());
+		referencedTree.getViewer().setContentProvider(new LinkedLocationContentProvider(true,
+				LinkedLocationContentProvider.TARGET, true));
+		referencedTree.getViewer().getTree().addListener(SWT.MouseDoubleClick,
+				new ShowLocationDoubleClickListener(referencedTree.getViewer().getTree()));
+
+		referencedTree.getViewer().getTree().setHeaderVisible(true);
+		TreeViewerColumn referencedTreeSourceColumn = new TreeViewerColumn(referencedTree.getViewer(),
+				SWT.NONE);
+		referencedTreeSourceColumn.getColumn().setResizable(true);
+		referencedTreeSourceColumn.getColumn().setText(SOURCE_LABEL);
+		referencedTreeSourceColumn.getColumn().setWidth(WIDTH);
+		referencedTreeSourceColumn.setLabelProvider(new DelegatingStyledCellLabelProvider(
+				new MappingLabelProvider(MappingLabelProvider.SOURCE)));
+
+		TreeViewerColumn referencedTreeTargetColumn = new TreeViewerColumn(referencedTree.getViewer(),
+				SWT.NONE);
+		referencedTreeTargetColumn.getColumn().setResizable(true);
+		referencedTreeTargetColumn.getColumn().setText(TARGET_LABEL);
+		referencedTreeTargetColumn.getColumn().setWidth(WIDTH);
+		referencedTreeTargetColumn.setLabelProvider(new DelegatingStyledCellLabelProvider(
+				new MappingLabelProvider(MappingLabelProvider.TARGET)));
+
+		referencedTree.getViewer().getControl().addFocusListener(new FocusListener() {
+
+			public void focusLost(FocusEvent e) {
+				selectionProvider.setSelectionProviderDelegate(null);
+			}
+
+			public void focusGained(FocusEvent e) {
+				selectionProvider.setSelectionProviderDelegate(referencedTree.getViewer());
+			}
+		});
+		menu = menuManager.createContextMenu(referencedTree.getViewer().getControl());
+		menus.add(menu);
+		referencedTree.getViewer().getControl().setMenu(menu);
+
+		mappingBaseCombo.addSelectionChangedListener(new ISelectionChangedListener() {
+
+			public void selectionChanged(SelectionChangedEvent event) {
+				final Object selected = ((IStructuredSelection)event.getSelection()).getFirstElement();
+				if (selected == MappingBaseRegistryContentProvider.NO_VALUE) {
+					editorPartListener.setInput(null);
+				} else {
+					final IEditorPart activeEditor = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+							.getActivePage().getActiveEditor();
+					if (activeEditor != null && editorPartListener != null) {
+						editorPartListener.setInput(activeEditor);
+					}
+				}
+			}
+		});
+
+		editorPartListener = new EditorPartListener(referencingTree.getViewer(), referencedTree.getViewer());
+		for (
+
+		IWorkbenchWindow window : PlatformUI.getWorkbench().getWorkbenchWindows()) {
+			for (IWorkbenchPage page : window.getPages()) {
+				final IEditorPart activeEditor = page.getActiveEditor();
+				if (activeEditor != null) {
+					editorPartListener.setInput(activeEditor);
+				}
+				page.addPartListener(editorPartListener);
+			}
+			window.addPageListener(editorPartListener);
+		}
+		PlatformUI.getWorkbench().addWindowListener(editorPartListener);
+
+		sashForm.setWeights(new int[] {1, 1 });
+	}
+
+	/**
+	 * Adds the report {@link TabItem} to the given body {@link TabFolder}.
+	 * 
+	 * @param bodyTabFolder
+	 *            the body {@link TabFolder}
+	 * @param mappingBaseCombo
+	 *            the mapping base {@link ComboViewer}
+	 */
+	private void addReportTabItem(TabFolder bodyTabFolder, ComboViewer mappingBaseCombo) {
+		TabItem selectionTabItem = new TabItem(bodyTabFolder, SWT.NONE);
+		selectionTabItem.setText("Report");
+
+		Composite treeComposite = new Composite(bodyTabFolder, SWT.NONE);
+		selectionTabItem.setControl(treeComposite);
+		treeComposite.setLayout(new FillLayout(SWT.HORIZONTAL));
+
+		final FilteredTree reportTree = new FilteredTree(treeComposite, SWT.MULTI | SWT.BORDER,
+				new PatternFilter(), false);
+		reportTree.getViewer().getTree().addListener(SWT.KeyDown, new MappingKeyUpListener());
+		reportTree.getViewer().getTree().addListener(SWT.MouseDoubleClick,
+				new ShowLocationDoubleClickListener(reportTree.getViewer().getTree()));
+		reportTree.getViewer().setContentProvider(new SynchronizationLocationContentProvider());
+
+		reportTree.getViewer().getTree().setHeaderVisible(true);
+		TreeViewerColumn linkTreeSourceColumn = new TreeViewerColumn(reportTree.getViewer(), SWT.NONE);
+		linkTreeSourceColumn.getColumn().setResizable(true);
+		linkTreeSourceColumn.getColumn().setText(SOURCE_LABEL);
+		linkTreeSourceColumn.getColumn().setWidth(WIDTH);
+		linkTreeSourceColumn.setLabelProvider(new DelegatingStyledCellLabelProvider(new MappingLabelProvider(
+				MappingLabelProvider.SOURCE)));
+
+		TreeViewerColumn linkTreeTargetColumn = new TreeViewerColumn(reportTree.getViewer(), SWT.NONE);
+		linkTreeTargetColumn.getColumn().setResizable(true);
+		linkTreeTargetColumn.getColumn().setText(TARGET_LABEL);
+		linkTreeTargetColumn.getColumn().setWidth(WIDTH);
+		linkTreeTargetColumn.setLabelProvider(new DelegatingStyledCellLabelProvider(new MappingLabelProvider(
+				MappingLabelProvider.TARGET)));
+
+		reportTree.getViewer().getControl().addFocusListener(new FocusListener() {
+
+			public void focusLost(FocusEvent e) {
+				selectionProvider.setSelectionProviderDelegate(null);
+			}
+
+			public void focusGained(FocusEvent e) {
+				selectionProvider.setSelectionProviderDelegate(reportTree.getViewer());
+			}
+		});
+		final Menu menu = menuManager.createContextMenu(reportTree.getViewer().getControl());
+		menus.add(menu);
+		reportTree.getViewer().getControl().setMenu(menu);
+
+		mappingBaseCombo.addSelectionChangedListener(new ISelectionChangedListener() {
+
+			public void selectionChanged(SelectionChangedEvent event) {
+				final IBase base;
+				final Object selected = ((IStructuredSelection)event.getSelection()).getFirstElement();
+				if (selected == MappingBaseRegistryContentProvider.NO_VALUE) {
+					base = null;
+				} else {
+					base = (IBase)selected;
+				}
+				reportTree.getViewer().setInput(base);
+			}
+		});
+
+	}
+
+	/**
+	 * Create the actions.
+	 */
+	private void createActions() {
+		// Create the actions
+	}
+
+	/**
+	 * Initialize the toolbar.
+	 */
+	private void initializeToolBar() {
+		IToolBarManager toolbarManager = getViewSite().getActionBars().getToolBarManager();
+	}
+
+	@Override
+	public void setFocus() {
+		// Set the focus
+	}
+
+	@Override
+	public void dispose() {
+		super.dispose();
+		if (selectionListener != null) {
+			getSite().getWorkbenchWindow().getSelectionService().removeSelectionListener(selectionListener);
+			selectionListener = null;
+		}
+
+		for (IWorkbenchWindow window : PlatformUI.getWorkbench().getWorkbenchWindows()) {
+			for (IWorkbenchPage page : window.getPages()) {
+				page.removePartListener(editorPartListener);
+			}
+			window.removePageListener(editorPartListener);
+		}
+		PlatformUI.getWorkbench().removeWindowListener(editorPartListener);
+
+		final IBase oldBase = IdeMappingUtils.getCurrentBase();
+		if (oldBase != null) {
+			try {
+				oldBase.save();
+			} catch (IOException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+						"unable to save base " + oldBase.getName(), e));
+			}
+		}
+		IdeMappingUtils.setCurrentBase(null);
+		for (IWorkbenchWindow window : PlatformUI.getWorkbench().getWorkbenchWindows()) {
+			for (IWorkbenchPage page : window.getPages()) {
+				for (IEditorReference editorRef : page.getEditorReferences()) {
+					final IEditorPart editorPart = editorRef.getEditor(false);
+					if (editorPart != null) {
+						clearLocationMarker(oldBase, editorPart);
+					}
+				}
+			}
+		}
+
+		getSite().setSelectionProvider(null);
+
+		for (Menu menu : menus) {
+			menu.dispose();
+		}
+		menuManager.dispose();
+	}
+
+	/**
+	 * Tells if the two given {@link IBase} are the same.
+	 * 
+	 * @param firstBase
+	 *            the first {@link IBase}
+	 * @param secondBase
+	 *            the second {@link IBase}
+	 * @return <code>true</code> if the two given {@link IBase} are the same, <code>false</code> otherwise
+	 */
+	private boolean areSameBase(IBase firstBase, IBase secondBase) {
+		// TODO change this when we work on same instances of IBase
+		final boolean res;
+
+		if (firstBase == null) {
+			if (secondBase == null) {
+				res = true;
+			} else {
+				res = false;
+			}
+		} else {
+			if (secondBase == null) {
+				res = false;
+			} else {
+				res = firstBase.getName().equals(secondBase.getName());
+			}
+		}
+
+		return res;
+	}
+
+	/**
+	 * Clears all location markers for the given {@link IEditorPart}.
+	 * 
+	 * @param base
+	 *            the {@link IBase}
+	 * @param part
+	 *            the {@link IEditorPart}
+	 */
+	private void clearLocationMarker(IBase base, IEditorPart part) {
+		final IEditorInput editorInput = part.getEditorInput();
+
+		if (editorInput != null) {
+			final IFile file = UiIdeMappingUtils.getFile(editorInput);
+			if (file != null && base != null) {
+				try {
+					file.deleteMarkers(ILocationMarker.LOCATION_ID, true, IResource.DEPTH_INFINITE);
+				} catch (CoreException e) {
+					Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+							"unable to clear all location markers for " + file.getFullPath().toString(), e));
+				}
+				final ILocation fileLocation = MappingUtils.getConnectorRegistry().getLocation(base, file);
+				if (fileLocation != null) {
+					editedLocations.remove(fileLocation);
+					removeLocation(fileLocation);
+				}
+			}
+		}
+	}
+
+	/**
+	 * Removes {@link ILocation} to {@link org.eclipse.core.resources.IMarker IMarker} mapping recursively.
+	 * 
+	 * @param location
+	 *            the {@link ILocation} to remove from the mapping
+	 */
+	private void removeLocation(ILocation location) {
+		IdeMappingUtils.removeMarker(location);
+		location.removeListener(markerBaseListener);
+		for (ILocation child : location.getContents()) {
+			removeLocation(child);
+		}
+	}
+
+	/**
+	 * Removes {@link ILocation} to {@link org.eclipse.core.resources.IMarker IMarker} mapping recursively and
+	 * {@link org.eclipse.core.resources.IMarker#delete() deletes} the
+	 * {@link org.eclipse.core.resources.IMarker IMarker}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation} to remove from the mapping
+	 */
+	private void deleteLocation(ILocation location) {
+		IdeMappingUtils.deleteMarker(location);
+		location.removeListener(markerBaseListener);
+		for (ILocation child : location.getContents()) {
+			removeLocation(child);
+		}
+	}
+
+	/**
+	 * Creates markers for the given {@link ILocation} and its {@link ILocation#getContents() contained}
+	 * {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 */
+	private void addLocation(ILocation location) {
+		IdeMappingUtils.getOrCreateMarker(location);
+		location.addListener(markerBaseListener);
+		for (ILocation child : location.getContents()) {
+			addLocation(child);
+		}
+	}
+
+	/**
+	 * Creates all location markers for the given {@link IEditorPart}.
+	 * 
+	 * @param base
+	 *            the IBase
+	 * @param part
+	 *            the {@link IEditorPart}
+	 */
+	private void createLocationMarker(IBase base, IEditorPart part) {
+		final IEditorInput editorInput = part.getEditorInput();
+
+		if (editorInput != null) {
+			final IFile file = UiIdeMappingUtils.getFile(editorInput);
+			if (file != null && base != null) {
+				final ILocation fileLocation = MappingUtils.getConnectorRegistry().getLocation(base, file);
+				if (fileLocation != null) {
+					editedLocations.add(fileLocation);
+					addLocation(fileLocation);
+				}
+			}
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/SelectionProviderIntermediate.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/SelectionProviderIntermediate.java
new file mode 100644
index 0000000..d76acc7
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/SelectionProviderIntermediate.java
@@ -0,0 +1,202 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import org.eclipse.core.runtime.ListenerList;
+import org.eclipse.jface.viewers.IPostSelectionProvider;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+
+/**
+ * An {@link IPostSelectionProvider} dynamically delegating to an other {@link ISelectionProvider}. From the
+ * example of Marc R. Hoffmann.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class SelectionProviderIntermediate implements IPostSelectionProvider {
+
+	/**
+	 * The list of {@link ISelectionChangedListener} for selection.
+	 */
+	@SuppressWarnings("rawtypes")
+	private final ListenerList selectionListeners = new ListenerList();
+
+	/**
+	 * The list of {@link ISelectionChangedListener} for post selection.
+	 */
+	@SuppressWarnings("rawtypes")
+	private final ListenerList postSelectionListeners = new ListenerList();
+
+	/**
+	 * The current {@link IPostSelectionProvider}.
+	 */
+	private ISelectionProvider delegate;
+
+	/**
+	 * {@link ISelectionChangedListener} for selection.
+	 */
+	private ISelectionChangedListener selectionListener = new ISelectionChangedListener() {
+		public void selectionChanged(SelectionChangedEvent event) {
+			if (event.getSelectionProvider() == delegate) {
+				fireSelectionChanged(event.getSelection());
+			}
+		}
+	};
+
+	/**
+	 * {@link ISelectionChangedListener} for post selection.
+	 */
+	private ISelectionChangedListener postSelectionListener = new ISelectionChangedListener() {
+		public void selectionChanged(SelectionChangedEvent event) {
+			if (event.getSelectionProvider() == delegate) {
+				firePostSelectionChanged(event.getSelection());
+			}
+		}
+	};
+
+	/**
+	 * Sets a new selection provider to delegate to. Selection listeners registered with the previous delegate
+	 * are removed before.
+	 * 
+	 * @param newDelegate
+	 *            new selection provider
+	 */
+	public void setSelectionProviderDelegate(ISelectionProvider newDelegate) {
+		if (delegate != newDelegate) {
+			if (delegate != null) {
+				delegate.removeSelectionChangedListener(selectionListener);
+				if (delegate instanceof IPostSelectionProvider) {
+					((IPostSelectionProvider)delegate).removePostSelectionChangedListener(
+							postSelectionListener);
+				}
+			}
+			delegate = newDelegate;
+			if (newDelegate != null) {
+				newDelegate.addSelectionChangedListener(selectionListener);
+				if (newDelegate instanceof IPostSelectionProvider) {
+					((IPostSelectionProvider)newDelegate).addPostSelectionChangedListener(
+							postSelectionListener);
+				}
+				fireSelectionChanged(newDelegate.getSelection());
+				firePostSelectionChanged(newDelegate.getSelection());
+			}
+		}
+	}
+
+	/**
+	 * Fires {@link ISelection} change.
+	 * 
+	 * @param selection
+	 *            the {@link ISelection}
+	 */
+	protected void fireSelectionChanged(ISelection selection) {
+		fireSelectionChanged(selectionListeners, selection);
+	}
+
+	/**
+	 * Fires {@link ISelection} post change.
+	 * 
+	 * @param selection
+	 *            the {@link ISelection}
+	 */
+	protected void firePostSelectionChanged(ISelection selection) {
+		fireSelectionChanged(postSelectionListeners, selection);
+	}
+
+	/**
+	 * Fires the {@link ISelection} change to the given list of {@link ISelectionChangedListener}.
+	 * 
+	 * @param list
+	 *            the list of {@link ISelectionChangedListener}
+	 * @param selection
+	 *            the {@link ISelection}
+	 */
+	private void fireSelectionChanged(@SuppressWarnings("rawtypes") ListenerList list, ISelection selection) {
+		SelectionChangedEvent event = new SelectionChangedEvent(delegate, selection);
+		Object[] listeners = list.getListeners();
+		for (int i = 0; i < listeners.length; i++) {
+			ISelectionChangedListener listener = (ISelectionChangedListener)listeners[i];
+			listener.selectionChanged(event);
+		}
+	}
+
+	// IPostSelectionProvider Implementation
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.ISelectionProvider#addSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener)
+	 */
+	@SuppressWarnings("unchecked")
+	public void addSelectionChangedListener(ISelectionChangedListener listener) {
+		selectionListeners.add(listener);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.ISelectionProvider#removeSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener)
+	 */
+	public void removeSelectionChangedListener(ISelectionChangedListener listener) {
+		selectionListeners.remove(listener);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.IPostSelectionProvider#addPostSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener)
+	 */
+	@SuppressWarnings("unchecked")
+	public void addPostSelectionChangedListener(ISelectionChangedListener listener) {
+		postSelectionListeners.add(listener);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.IPostSelectionProvider#removePostSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener)
+	 */
+	public void removePostSelectionChangedListener(ISelectionChangedListener listener) {
+		postSelectionListeners.remove(listener);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.ISelectionProvider#getSelection()
+	 */
+	public ISelection getSelection() {
+		final ISelection res;
+
+		if (delegate == null) {
+			res = null;
+		} else {
+			res = delegate.getSelection();
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.jface.viewers.ISelectionProvider#setSelection(org.eclipse.jface.viewers.ISelection)
+	 */
+	public void setSelection(ISelection selection) {
+		if (delegate != null) {
+			delegate.setSelection(selection);
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/ShowLocationDoubleClickListener.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/ShowLocationDoubleClickListener.java
new file mode 100644
index 0000000..aab2e9f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/ShowLocationDoubleClickListener.java
@@ -0,0 +1,92 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.ide.ui.UiIdeMappingUtils;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeItem;
+
+/**
+ * {@link Listener} that open {@link ILocation}, {@link ILink}, and {@link IReport}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ShowLocationDoubleClickListener implements Listener {
+
+	/**
+	 * the {@link Tree} to listen to.
+	 */
+	private final Tree tree;
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param tree
+	 *            the {@link Tree} to listen to
+	 */
+	public ShowLocationDoubleClickListener(Tree tree) {
+		this.tree = tree;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event)
+	 */
+	public void handleEvent(Event event) {
+		Point pt = new Point(event.x, event.y);
+		TreeItem item = tree.getItem(pt);
+		if (item != null) {
+			final Object selected = item.getData();
+			if (selected instanceof ILocation) {
+				UiIdeMappingUtils.showLocation((ILocation)selected);
+			} else if (selected instanceof ILink) {
+				showLink(pt, item, (ILink)selected);
+			} else if (selected instanceof IReport) {
+				UiIdeMappingUtils.showLocation(((IReport)selected).getLink().getSource());
+			}
+		}
+	}
+
+	/**
+	 * Shows the given {@link ILink} {@link ILink#getSource() source} or {@link ILink#getTarget() target}
+	 * according to the double click position.
+	 * 
+	 * @param point
+	 *            the {@link Point}
+	 * @param item
+	 *            the {@link TreeItem}
+	 * @param link
+	 *            the {@link ILink}
+	 */
+	private void showLink(Point point, TreeItem item, ILink link) {
+		for (int i = 0; i < tree.getColumnCount(); i++) {
+			Rectangle rect = item.getBounds(i);
+			if (rect.contains(point)) {
+				if (i == 0) {
+					UiIdeMappingUtils.showLocation(link.getSource());
+				} else {
+					UiIdeMappingUtils.showLocation(link.getTarget());
+				}
+				break;
+			}
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/SynchronizationLocationContentProvider.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/SynchronizationLocationContentProvider.java
new file mode 100644
index 0000000..3f25a81
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/SynchronizationLocationContentProvider.java
@@ -0,0 +1,183 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.IBaseListener;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.base.IReportListener;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Provide {@link ILink linked} {@link ILocation} for a given {@link ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class SynchronizationLocationContentProvider extends AbstractLocationContentProvider {
+
+	/**
+	 * Refresh the current viewer when the {@link IReport} change.
+	 */
+	private final IReportListener reportListener = new IReportListener.Stub() {
+
+		public void descriptionChanged(String oldDescription, String newDescription) {
+			update();
+			refresh();
+		}
+
+		public void linkChanged(ILink oldLink, ILink newLink) {
+			update();
+			refresh();
+		}
+	};
+
+	/**
+	 * Refresh the current viewer when the current {@link IBase} {@link IBase#getReports() reports} change.
+	 */
+	private final IBaseListener baseListener = new IBaseListener.Stub() {
+
+		public void reportAdded(IReport report) {
+			update();
+			refresh();
+			report.addListener(reportListener);
+		}
+
+		public void reportRemoved(IReport report) {
+			update();
+			refresh();
+			report.removeListener(reportListener);
+		}
+	};
+
+	/**
+	 * Constructor.
+	 */
+	public SynchronizationLocationContentProvider() {
+		super();
+		showReport = true;
+	}
+
+	/**
+	 * Refresh the {@link Viewer}.
+	 */
+	private void refresh() {
+		if (!currentViewer.getControl().isDisposed()) {
+			if (Display.getDefault().getThread() == Thread.currentThread()) {
+				currentViewer.refresh();
+			} else {
+				Display.getDefault().asyncExec(new Runnable() {
+
+					public void run() {
+						currentViewer.refresh();
+					}
+				});
+			}
+		}
+	}
+
+	@Override
+	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
+		if (oldInput instanceof IBase) {
+			((IBase)oldInput).removeListener(baseListener);
+			for (IReport report : ((IBase)oldInput).getReports()) {
+				report.removeListener(reportListener);
+			}
+		}
+		if (newInput instanceof IBase) {
+			((IBase)newInput).addListener(baseListener);
+			for (IReport report : ((IBase)newInput).getReports()) {
+				report.addListener(reportListener);
+			}
+		}
+		super.inputChanged(viewer, oldInput, newInput);
+	}
+
+	@Override
+	protected void setLeavesAndLinks(Object input, List<ILocation> locationLeaves, List<ILink> links) {
+		if (input instanceof IBase) {
+			for (IReport report : ((IBase)input).getReports()) {
+				links.add(report.getLink());
+				locationLeaves.add(report.getLink().getSource());
+			}
+		}
+	}
+
+	@Override
+	public boolean hasChildren(Object element) {
+		final boolean res;
+
+		if (element instanceof ILocation) {
+			res = !((ILocation)element).getTargetLinks().isEmpty() || super.hasChildren(element);
+		} else if (element instanceof ILink) {
+			res = !((ILink)element).getReports().isEmpty();
+		} else {
+			res = false;
+		}
+
+		return res;
+	}
+
+	@Override
+	public Object[] getChildren(Object parentElement) {
+		final Object[] res;
+
+		if (parentElement instanceof ILocation) {
+			final Object[] childLocations = super.getChildren(parentElement);
+			res = concat(childLocations, ((ILocation)parentElement).getTargetLinks().toArray());
+		} else if (parentElement instanceof ILink) {
+			res = ((ILink)parentElement).getReports().toArray();
+		} else {
+			res = new Object[0];
+		}
+
+		return res;
+	}
+
+	/**
+	 * Concatenates two given arrays of {@link Object}.
+	 * 
+	 * @param first
+	 *            the first array
+	 * @param second
+	 *            the second array
+	 * @return a new array composed of the two given arrays
+	 */
+	private Object[] concat(Object[] first, Object[] second) {
+		final Object[] result = Arrays.copyOf(first, first.length + second.length);
+
+		System.arraycopy(second, 0, result, first.length, second.length);
+
+		return result;
+	}
+
+	@Override
+	public Object getParent(Object element) {
+		final Object res;
+
+		if (element instanceof ILink) {
+			res = ((ILink)element).getSource();
+		} else if (element instanceof IReport) {
+			res = ((IReport)element).getLink();
+		} else {
+			res = super.getParent(element);
+		}
+
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/SynchronizationPaletteView.java b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/SynchronizationPaletteView.java
new file mode 100644
index 0000000..7e5490f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide.ui/src/org/eclipse/intent/mapping/ide/ui/view/SynchronizationPaletteView.java
@@ -0,0 +1,480 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.ui.view;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils.ISynchronizationPaletteListener;
+import org.eclipse.intent.mapping.ide.ui.Activator;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.text.ITextSelection;
+import org.eclipse.jface.util.LocalSelectionTransfer;
+import org.eclipse.jface.viewers.ICheckStateProvider;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.viewers.ViewerDropAdapter;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.dnd.DND;
+import org.eclipse.swt.dnd.DropTarget;
+import org.eclipse.swt.dnd.TextTransfer;
+import org.eclipse.swt.dnd.Transfer;
+import org.eclipse.swt.dnd.TransferData;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeItem;
+import org.eclipse.ui.ISelectionService;
+import org.eclipse.ui.dialogs.PatternFilter;
+import org.eclipse.ui.part.ViewPart;
+
+/**
+ * Palette of {@link ILocationDescriptor} view.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class SynchronizationPaletteView extends ViewPart {
+
+	/**
+	 * Listen to text drop.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class LocationDropTargetListener extends ViewerDropAdapter {
+
+		/**
+		 * The "unable to create link" message.
+		 */
+		private static final String UNABLE_TO_CREATE_LINK = "unable to create link";
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param viewer
+		 *            the {@link Viewer}
+		 */
+		protected LocationDropTargetListener(Viewer viewer) {
+			super(viewer);
+		}
+
+		@SuppressWarnings("unchecked")
+		@Override
+		public boolean performDrop(Object data) {
+			boolean res = false;
+
+			final List<Object> sources = new ArrayList<Object>();
+			if (data instanceof String) {
+				final ISelectionService selectionService = getSite().getPage().getWorkbenchWindow()
+						.getWorkbench().getActiveWorkbenchWindow().getSelectionService();
+				final ISelection selection = selectionService.getSelection();
+				if (selection instanceof ITextSelection) {
+					sources.add(selection);
+				}
+			} else if (data instanceof IStructuredSelection) {
+				sources.addAll(((IStructuredSelection)data).toList());
+			} else if (data instanceof Collection<?>) {
+				sources.addAll((Collection<?>)data);
+			}
+
+			final Object target = getCurrentTarget();
+			for (Object source : sources) {
+				if (target == null) {
+					final ILocationDescriptor locationDescriptor = IdeMappingUtils.adapt(source,
+							ILocationDescriptor.class);
+					if (locationDescriptor != null) {
+						IdeMappingUtils.addLocationToPalette(locationDescriptor);
+						res = true;
+					}
+				} else {
+					final ILocationDescriptor sourceDescriptor = IdeMappingUtils.adapt(source,
+							ILocationDescriptor.class);
+					final ILocationDescriptor targetDescriptor = IdeMappingUtils.adapt(target,
+							ILocationDescriptor.class);
+					if (sourceDescriptor != null && targetDescriptor != null) {
+						try {
+							if (MappingUtils.createLink(sourceDescriptor, targetDescriptor) != null) {
+								res = true;
+							}
+						} catch (InstantiationException e) {
+							Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+									UNABLE_TO_CREATE_LINK, e));
+						} catch (IllegalAccessException e) {
+							Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+									UNABLE_TO_CREATE_LINK, e));
+						} catch (ClassNotFoundException e) {
+							Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+									UNABLE_TO_CREATE_LINK, e));
+						}
+					}
+				}
+			}
+
+			return res;
+		}
+
+		@SuppressWarnings("unchecked")
+		@Override
+		public boolean validateDrop(Object target, int operation, TransferData transferType) {
+			final boolean res;
+
+			final List<Object> sources = new ArrayList<Object>();
+
+			if (TextTransfer.getInstance().isSupportedType(transferType)) {
+				final ISelectionService selectionService = getSite().getPage().getWorkbenchWindow()
+						.getWorkbench().getActiveWorkbenchWindow().getSelectionService();
+				final ISelection selection = selectionService.getSelection();
+				if (selection instanceof ITextSelection) {
+					sources.add(selection);
+				}
+			} else if (LocalSelectionTransfer.getTransfer().isSupportedType(transferType)) {
+				sources.addAll(((IStructuredSelection)LocalSelectionTransfer.getTransfer().nativeToJava(
+						transferType)).toList());
+			} else {
+				// nothing to do here
+			}
+
+			if (!sources.isEmpty()) {
+				if (target == null) {
+					res = canCreateLocationDescription(sources);
+				} else {
+					res = canCreateLink(sources, target);
+				}
+			} else {
+				res = false;
+			}
+
+			return res;
+		}
+
+		/**
+		 * Tells if we can create an {@link ILink} between the given source and target element.
+		 * 
+		 * @param sources
+		 *            the {@link List} of sources
+		 * @param target
+		 *            the target
+		 * @return <code>true</code> if we can create an {@link ILink} between the given source and target
+		 *         element, <code>false</code>
+		 */
+		protected boolean canCreateLink(List<Object> sources, Object target) {
+			boolean res = false;
+
+			for (Object source : sources) {
+				final ILocationDescriptor sourceDescriptor = IdeMappingUtils.adapt(source,
+						ILocationDescriptor.class);
+				if (sourceDescriptor != null) {
+					final ILocationDescriptor targetDescriptor = IdeMappingUtils.adapt(target,
+							ILocationDescriptor.class);
+					if (targetDescriptor != null && MappingUtils.canCreateLink(sourceDescriptor,
+							targetDescriptor)) {
+						res = true;
+						break;
+					}
+				}
+			}
+
+			return res;
+		}
+
+		/**
+		 * Tells if an {@link ILocationDescriptor} can be created for the given element.
+		 * 
+		 * @param elements
+		 *            the element
+		 * @return <code>true</code> if an {@link ILocationDescriptor} can be created for the given element,
+		 *         <code>false</code> otherwise
+		 */
+		protected boolean canCreateLocationDescription(final List<Object> elements) {
+			boolean res = false;
+
+			for (Object element : elements) {
+				final ILocationDescriptor locationDescriptor = IdeMappingUtils.adapt(element,
+						ILocationDescriptor.class);
+				if (locationDescriptor != null) {
+					res = true;
+					locationDescriptor.dispose();
+					break;
+				}
+			}
+
+			return res;
+		}
+
+	}
+
+	/**
+	 * A flat content provider for the {@link IdeMappingUtils#getSynchronizationPalette() synchronization
+	 * palette}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private static class SynchronizationPaletteContentProvider implements ITreeContentProvider {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
+		 */
+		public void dispose() {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer,
+		 *      java.lang.Object, java.lang.Object)
+		 */
+		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.jface.viewers.ITreeContentProvider#getElements(java.lang.Object)
+		 */
+		public Object[] getElements(Object inputElement) {
+			return IdeMappingUtils.getSynchronizationPalette().toArray();
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
+		 */
+		public Object[] getChildren(Object parentElement) {
+			return new Object[0];
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
+		 */
+		public Object getParent(Object element) {
+			return null;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
+		 */
+		public boolean hasChildren(Object element) {
+			return false;
+		}
+
+	}
+
+	/**
+	 * {@link ISynchronizationPaletteListener} refreshing a {@link Viewer} with the
+	 * {@link IdeMappingUtils#getSynchronizationPalette() synchronization palette}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private static class SynchronizationPaletteListener implements ISynchronizationPaletteListener {
+
+		/**
+		 * The {@link TreeViewer} to refresh.
+		 */
+		private final TreeViewer viewer;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param viewer
+		 *            the {@link TreeViewer} to refresh
+		 */
+		SynchronizationPaletteListener(TreeViewer viewer) {
+			this.viewer = viewer;
+			viewer.setInput(IdeMappingUtils.getSynchronizationPalette());
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.ide.IdeMappingUtils.ISynchronizationPaletteListener#locationActivated(org.eclipse.intent.mapping.base.ILocationDescriptor)
+		 */
+		public void locationActivated(ILocationDescriptor locationDescriptor) {
+			viewer.setInput(IdeMappingUtils.getSynchronizationPalette());
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.ide.IdeMappingUtils.ISynchronizationPaletteListener#locationDeactivated(org.eclipse.intent.mapping.base.ILocationDescriptor)
+		 */
+		public void locationDeactivated(ILocationDescriptor locationDescriptor) {
+			viewer.setInput(IdeMappingUtils.getSynchronizationPalette());
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.ide.IdeMappingUtils.ISynchronizationPaletteListener#contentsAdded(org.eclipse.intent.mapping.base.ILocationDescriptor)
+		 */
+		public void contentsAdded(ILocationDescriptor locationDescriptor) {
+			viewer.setInput(IdeMappingUtils.getSynchronizationPalette());
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.ide.IdeMappingUtils.ISynchronizationPaletteListener#contentsRemoved(org.eclipse.intent.mapping.base.ILocationDescriptor)
+		 */
+		public void contentsRemoved(ILocationDescriptor locationDescriptor) {
+			viewer.setInput(IdeMappingUtils.getSynchronizationPalette());
+		}
+	}
+
+	/**
+	 * The view ID.
+	 */
+	public static final String ID = "org.eclipse.intent.mapping.ide.ui.view.SynchronizationPaletteView"; //$NON-NLS-1$
+
+	/**
+	 * The {@link SynchronizationPaletteListener} refreshing the viewer.
+	 */
+	private SynchronizationPaletteListener synchronizationPaletteListener;
+
+	/**
+	 * The {@link MenuManager}.
+	 */
+	private final MenuManager menuManager = new MenuManager();
+
+	/**
+	 * The {@link Menu}.
+	 */
+	private Menu menu;
+
+	/**
+	 * Constructor.
+	 */
+	public SynchronizationPaletteView() {
+		// nothing to do here
+	}
+
+	/**
+	 * Create contents of the view part.
+	 * 
+	 * @param parent
+	 */
+	@Override
+	public void createPartControl(Composite parent) {
+		Composite container = new Composite(parent, SWT.NONE);
+		container.setLayout(new FillLayout(SWT.HORIZONTAL));
+
+		final FilteredCheckboxTree locationsList = new FilteredCheckboxTree(container, SWT.CHECK | SWT.MULTI
+				| SWT.BORDER, new PatternFilter(), false);
+		locationsList.getViewer().setContentProvider(new SynchronizationPaletteContentProvider());
+		locationsList.getViewer().setLabelProvider(new MappingLabelProvider(MappingLabelProvider.SOURCE));
+		locationsList.getViewer().setCheckStateProvider(new ICheckStateProvider() {
+
+			public boolean isGrayed(Object element) {
+				return false;
+			}
+
+			public boolean isChecked(Object element) {
+				return IdeMappingUtils.isActive((ILocationDescriptor)element);
+			}
+		});
+		synchronizationPaletteListener = new SynchronizationPaletteListener(locationsList.getViewer());
+		IdeMappingUtils.addSynchronizationPaletteListener(synchronizationPaletteListener);
+		locationsList.getViewer().getTree().addListener(SWT.MouseDoubleClick,
+				new ShowLocationDoubleClickListener(locationsList.getViewer().getTree()));
+		locationsList.getViewer().getTree().addListener(SWT.KeyUp, new Listener() {
+
+			public void handleEvent(Event event) {
+				if (event.character == SWT.DEL) {
+					final List<ILocationDescriptor> toDelete = new ArrayList<ILocationDescriptor>();
+					for (TreeItem item : ((Tree)event.widget).getSelection()) {
+						toDelete.add((ILocationDescriptor)item.getData());
+					}
+					for (ILocationDescriptor locationDescriptor : toDelete) {
+						IdeMappingUtils.removeLocationFromPalette(locationDescriptor);
+						locationDescriptor.dispose();
+					}
+				}
+			}
+		});
+		locationsList.getViewer().getTree().addListener(SWT.Selection, new Listener() {
+
+			public void handleEvent(Event event) {
+				if (event.detail == SWT.CHECK) {
+					if (((TreeItem)event.item).getChecked()) {
+						IdeMappingUtils.activateLocation((ILocationDescriptor)event.item.getData());
+					} else {
+						IdeMappingUtils.deactivateLocation((ILocationDescriptor)event.item.getData());
+					}
+				}
+			}
+		});
+
+		final DropTarget textDropTarget = new DropTarget(locationsList.getViewer().getTree(), DND.DROP_COPY
+				| DND.DROP_MOVE | DND.DROP_LINK | DND.DROP_DEFAULT);
+		textDropTarget.setTransfer(new Transfer[] {TextTransfer.getInstance(), LocalSelectionTransfer
+				.getTransfer(), });
+		textDropTarget.addDropListener(new LocationDropTargetListener(locationsList.getViewer()));
+
+		getSite().setSelectionProvider(locationsList.getViewer());
+
+		createActions();
+		initializeToolBar();
+
+		menu = menuManager.createContextMenu(locationsList.getViewer().getControl());
+		locationsList.getViewer().getControl().setMenu(menu);
+		getSite().registerContextMenu(menuManager, locationsList.getViewer());
+	}
+
+	/**
+	 * Create the actions.
+	 */
+	private void createActions() {
+		// Create the actions
+	}
+
+	/**
+	 * Initialize the toolbar.
+	 */
+	private void initializeToolBar() {
+		IToolBarManager toolbarManager = getViewSite().getActionBars().getToolBarManager();
+	}
+
+	@Override
+	public void setFocus() {
+		// Set the focus
+	}
+
+	@Override
+	public void dispose() {
+		super.dispose();
+		IdeMappingUtils.removeSynchronizationPaletteListener(synchronizationPaletteListener);
+		menu.dispose();
+		menuManager.dispose();
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/.checkstyle b/mapping/plugins/org.eclipse.intent.mapping.ide/.checkstyle
new file mode 100644
index 0000000..b3e8ea9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/.checkstyle
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6Configuration.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+  <filter name="FilesFromPackage" enabled="true">
+    <filter-data value="google-diff-match-patch"/>
+  </filter>
+</fileset-config>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/.classpath b/mapping/plugins/org.eclipse.intent.mapping.ide/.classpath
new file mode 100644
index 0000000..304e861
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/.project b/mapping/plugins/org.eclipse.intent.mapping.ide/.project
new file mode 100644
index 0000000..c6703b9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.ide</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/.settings/org.eclipse.jdt.core.prefs b/mapping/plugins/org.eclipse.intent.mapping.ide/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3433b02
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,315 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/.settings/org.eclipse.jdt.ui.prefs b/mapping/plugins/org.eclipse.intent.mapping.ide/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..99aaf4f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=com;eu;fr;java;javax;org;\#org.junit;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/META-INF/MANIFEST.MF b/mapping/plugins/org.eclipse.intent.mapping.ide/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..0c67755
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/META-INF/MANIFEST.MF
@@ -0,0 +1,19 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Ide
+Bundle-SymbolicName: org.eclipse.intent.mapping.ide;singleton:=true
+Bundle-Version: 0.10.0.qualifier
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.intent.mapping;bundle-version="0.10.0",
+ org.eclipse.core.contenttype,
+ org.eclipse.core.resources,
+ org.eclipse.core.runtime,
+ org.eclipse.osgi
+Export-Package: org.eclipse.intent.mapping.ide,
+ org.eclipse.intent.mapping.ide.adapter,
+ org.eclipse.intent.mapping.ide.connector,
+ org.eclipse.intent.mapping.ide.internal.connector;x-friends:="org.eclipse.intent.mapping.ide.tests",
+ org.eclipse.intent.mapping.ide.internal.content;x-friends:="org.eclipse.intent.mapping.ide.tests",
+ org.eclipse.intent.mapping.ide.resource
+Bundle-ActivationPolicy: lazy
+Bundle-Activator: org.eclipse.intent.mapping.ide.Activator
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/build.properties b/mapping/plugins/org.eclipse.intent.mapping.ide/build.properties
new file mode 100644
index 0000000..cc91072
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/build.properties
@@ -0,0 +1,4 @@
+source.. = src/
+bin.includes = META-INF/,\
+               .,\
+               plugin.xml
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/plugin.xml b/mapping/plugins/org.eclipse.intent.mapping.ide/plugin.xml
new file mode 100644
index 0000000..0b8df97
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/plugin.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+   <extension-point id="org.eclipse.intent.mapping.ide.fileConnectorDelegate" name="FileConnectorDelegate" schema="schema/org.eclipse.intent.mapping.ide.fileConnectorDelegate.exsd"/>
+   <extension-point id="org.eclipse.intent.mapping.ide.location" name="Location" schema="schema/org.eclipse.intent.mapping.ide.location.exsd"/>
+   <extension-point id="org.eclipse.intent.mapping.ide.baseProvider" name="Base Provider" schema="schema/org.eclipse.intent.mapping.ide.baseProvider.exsd"/>
+   <extension-point id="org.eclipse.intent.mapping.ide.connector" name="Mapping Connector" schema="schema/org.eclipse.intent.mapping.ide.connector.exsd"/>
+   <extension-point id="org.eclipse.intent.mapping.ide.markerToLocation" name="MarkerToLocation" schema="schema/org.eclipse.intent.mapping.ide.markerToLocation.exsd"/>
+   <extension-point id="org.eclipse.intent.mapping.ide.containerProvider" name="ContainerProvider" schema="schema/org.eclipse.intent.mapping.ide.containerProvider.exsd"/>
+   <extension
+         point="org.eclipse.intent.mapping.ide.connector">
+      <connector
+            class="org.eclipse.intent.mapping.ide.connector.IdeTextConnector">
+      </connector>
+      <connector
+            class="org.eclipse.intent.mapping.ide.connector.ResourceConnector">
+      </connector>
+   </extension>
+   <extension
+         point="org.eclipse.core.runtime.adapters">
+      <factory
+            adaptableType="org.eclipse.intent.mapping.text.ITextLocation"
+            class="org.eclipse.intent.mapping.ide.adapter.TextLocationToMarkerAdapterFactory">
+         <adapter
+               type="org.eclipse.core.resources.IMarker">
+         </adapter>
+      </factory>
+      <factory
+            adaptableType="org.eclipse.core.resources.IMarker"
+            class="org.eclipse.intent.mapping.ide.adapter.MarkerToLocationDescriptorAdapterFactory">
+         <adapter
+               type="org.eclipse.intent.mapping.base.ILocationDescriptor">
+         </adapter>
+      </factory>
+   </extension>
+   <extension
+         id="org.eclipse.intent.mapping.ide.locationMarker"
+         name="Location"
+         point="org.eclipse.core.resources.markers">
+      <persistent
+            value="false">
+      </persistent>
+      <attribute
+            name="org.eclipse.intent.mapping.ide.location">
+      </attribute>
+   </extension>
+   <extension
+         id="org.eclipse.intent.mapping.ide.textLocationMarker"
+         name="Text Location"
+         point="org.eclipse.core.resources.markers">
+      <super
+            type="org.eclipse.intent.mapping.ide.locationMarker">
+      </super>
+      <super
+            type="org.eclipse.core.resources.textmarker">
+      </super>
+   </extension>
+   <extension
+         point="org.eclipse.intent.mapping.ide.markerToLocation">
+      <markerToLocation
+            class="org.eclipse.intent.mapping.ide.adapter.MarkerToTextLocationDescriptor"
+            markerType="org.eclipse.core.resources.textmarker">
+      </markerToLocation>
+   </extension>
+
+</plugin>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/pom.xml b/mapping/plugins/org.eclipse.intent.mapping.ide/pom.xml
new file mode 100644
index 0000000..69cd3fd
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/pom.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping.ide</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-plugin</packaging>
+
+  <name>Mapping IDE</name>
+
+  <build>
+   <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-source-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+  
+</project>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.baseProvider.exsd b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.baseProvider.exsd
new file mode 100644
index 0000000..d6b662d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.baseProvider.exsd
@@ -0,0 +1,86 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.intent.mapping.ide" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+      <appinfo>
+         <meta.schema plugin="org.eclipse.intent.mapping.ide" id="org.eclipse.intent.mapping.ide.baseProvider" name="Base Provider"/>
+      </appinfo>
+      <documentation>
+         This extension point give a change to any plugin providing IBase to get started.
+      </documentation>
+   </annotation>
+
+   <element name="extension">
+      <annotation>
+         <appinfo>
+            <meta.element />
+         </appinfo>
+      </annotation>
+      <complexType>
+         <attribute name="point" type="string" use="required">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="id" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="name" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appinfo>
+                  <meta.attribute translatable="true"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="since"/>
+      </appinfo>
+      <documentation>
+         0.10.0
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="examples"/>
+      </appinfo>
+      <documentation>
+         &lt;extension
+  point=&quot;org.eclipse.intent.mapping.ide.baseProvider&quot;&gt;
+&lt;/extension&gt;
+      </documentation>
+   </annotation>
+
+
+
+   <annotation>
+      <appinfo>
+         <meta.section type="copyright"/>
+      </appinfo>
+      <documentation>
+         Copyright (c) 2016 Obeo.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+   Obeo - initial API and implementation and/or initial documentation
+   ...
+      </documentation>
+   </annotation>
+
+</schema>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.connector.exsd b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.connector.exsd
new file mode 100644
index 0000000..0be0925
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.connector.exsd
@@ -0,0 +1,115 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.intent.mapping.ide" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+      <appinfo>
+         <meta.schema plugin="org.eclipse.intent.mapping.ide" id="org.eclipse.intent.mapping.ide.connector" name="Mapping Connector"/>
+      </appinfo>
+      <documentation>
+         Define an IConnector.
+      </documentation>
+   </annotation>
+
+   <element name="extension">
+      <annotation>
+         <appinfo>
+            <meta.element />
+         </appinfo>
+      </annotation>
+      <complexType>
+         <sequence minOccurs="1" maxOccurs="unbounded">
+            <element ref="connector"/>
+         </sequence>
+         <attribute name="point" type="string" use="required">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="id" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="name" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appinfo>
+                  <meta.attribute translatable="true"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <element name="connector">
+      <complexType>
+         <attribute name="class" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appinfo>
+                  <meta.attribute kind="java" basedOn=":org.eclipse.intent.mapping.conector.IConnector"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="since"/>
+      </appinfo>
+      <documentation>
+         0.10.0
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="examples"/>
+      </appinfo>
+      <documentation>
+         &lt;extension
+  point=&quot;org.eclipse.intent.mapping.ide.connector&quot;&gt;
+  &lt;connector
+    class=&quot;org.eclipse.intent.mapping.text.TextConnector&quot;&gt;
+  &lt;/connector&gt;
+&lt;/extension&gt;
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="apiinfo"/>
+      </appinfo>
+      <documentation>
+         org.eclipse.intent.mapping.conector.IConnectorRegistry.register(IConnector connector)
+      </documentation>
+   </annotation>
+
+
+   <annotation>
+      <appinfo>
+         <meta.section type="copyright"/>
+      </appinfo>
+      <documentation>
+         Copyright (c) 2015 Obeo.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+   Obeo - initial API and implementation and/or initial documentation
+   ...
+      </documentation>
+   </annotation>
+
+</schema>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.containerProvider.exsd b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.containerProvider.exsd
new file mode 100644
index 0000000..970e67f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.containerProvider.exsd
@@ -0,0 +1,118 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.intent.mapping.ide" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+      <appinfo>
+         <meta.schema plugin="org.eclipse.intent.mapping.ide" id="org.eclipse.intent.mapping.ide.containerProvider" name="ContainerProvider"/>
+      </appinfo>
+      <documentation>
+         Defines an IContainerProvider
+      </documentation>
+   </annotation>
+
+   <element name="extension">
+      <annotation>
+         <appinfo>
+            <meta.element />
+         </appinfo>
+      </annotation>
+      <complexType>
+         <sequence minOccurs="1" maxOccurs="unbounded">
+            <element ref="provider"/>
+         </sequence>
+         <attribute name="point" type="string" use="required">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="id" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="name" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appinfo>
+                  <meta.attribute translatable="true"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <element name="provider">
+      <complexType>
+         <attribute name="class" type="string" use="required">
+            <annotation>
+               <documentation>
+                  The IContainerProvider
+               </documentation>
+               <appinfo>
+                  <meta.attribute kind="java" basedOn=":org.eclipse.intent.mapping.connector.IContainerProvider"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="since"/>
+      </appinfo>
+      <documentation>
+         0.10.0
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="examples"/>
+      </appinfo>
+      <documentation>
+         [Enter extension point usage example here.]
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="apiinfo"/>
+      </appinfo>
+      <documentation>
+         [Enter API information here.]
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="implementation"/>
+      </appinfo>
+      <documentation>
+         [Enter information about supplied implementation of this extension point.]
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="copyright"/>
+      </appinfo>
+      <documentation>
+         Copyright (c) 2015 Obeo.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+   Obeo - initial API and implementation and/or initial documentation
+   ...
+      </documentation>
+   </annotation>
+
+</schema>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.fileConnectorDelegate.exsd b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.fileConnectorDelegate.exsd
new file mode 100644
index 0000000..1db5fbd
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.fileConnectorDelegate.exsd
@@ -0,0 +1,115 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.intent.mapping.ide" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+      <appinfo>
+         <meta.schema plugin="org.eclipse.intent.mapping.ide" id="org.eclipse.intent.mapping.ide.fileconnectordelegate" name="FileLocationDelegate"/>
+      </appinfo>
+      <documentation>
+         Defines a file delegate for a content type.
+      </documentation>
+   </annotation>
+
+   <element name="extension">
+      <annotation>
+         <appinfo>
+            <meta.element />
+         </appinfo>
+      </annotation>
+      <complexType>
+         <sequence minOccurs="1" maxOccurs="unbounded">
+            <element ref="fileConnectorDelegate"/>
+         </sequence>
+         <attribute name="point" type="string" use="required">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="id" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="name" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appinfo>
+                  <meta.attribute translatable="true"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <element name="fileConnectorDelegate">
+      <complexType>
+         <attribute name="class" type="string" use="required">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appinfo>
+                  <meta.attribute kind="java" basedOn=":org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="since"/>
+      </appinfo>
+      <documentation>
+         0.10.0
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="examples"/>
+      </appinfo>
+      <documentation>
+         &lt;extension
+  point=&quot;org.eclipse.intent.mapping.ide.fileConnectorDelegate&quot;&gt;
+  &lt;fileConnectorDelegate
+    class=&quot;org.eclipse.intent.mapping.emf.ide.connector.EObjectFileConnectorDelegate&quot;&gt;
+  &lt;/fileConnectorDelegate&gt;
+&lt;/extension&gt;
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="apiinfo"/>
+      </appinfo>
+      <documentation>
+         org.eclipse.intent.mapping.ide.connector.IFileDelegateRegistry.register(IFileConnectorDelegate delegate)
+      </documentation>
+   </annotation>
+
+
+   <annotation>
+      <appinfo>
+         <meta.section type="copyright"/>
+      </appinfo>
+      <documentation>
+         Copyright (c) 2015 Obeo.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+   Obeo - initial API and implementation and/or initial documentation
+   ...
+      </documentation>
+   </annotation>
+
+</schema>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.location.exsd b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.location.exsd
new file mode 100644
index 0000000..e618481
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.location.exsd
@@ -0,0 +1,155 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.intent.mapping.ide" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+      <appinfo>
+         <meta.schema plugin="org.eclipse.intent.mapping.ide" id="org.eclipse.intent.mapping.ide.location" name="Location"/>
+      </appinfo>
+      <documentation>
+         Defines a location class to instanciate for a location interface and a base implementation.
+      </documentation>
+   </annotation>
+
+   <element name="extension">
+      <annotation>
+         <appinfo>
+            <meta.element />
+         </appinfo>
+      </annotation>
+      <complexType>
+         <sequence minOccurs="1" maxOccurs="unbounded">
+            <element ref="base"/>
+         </sequence>
+         <attribute name="point" type="string" use="required">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="id" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="name" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appinfo>
+                  <meta.attribute translatable="true"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <element name="base">
+      <complexType>
+         <sequence minOccurs="1" maxOccurs="unbounded">
+            <element ref="location"/>
+         </sequence>
+         <attribute name="class" type="string" use="required">
+            <annotation>
+               <documentation>
+                  The IBase kind.
+               </documentation>
+               <appinfo>
+                  <meta.attribute kind="java" basedOn=":org.eclipse.intent.mapping.base.IBase"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <element name="location">
+      <complexType>
+         <attribute name="interface" type="string" use="required">
+            <annotation>
+               <documentation>
+                  The ILocation interface.
+               </documentation>
+               <appinfo>
+                  <meta.attribute kind="java" basedOn=":org.eclipse.intent.mapping.base.ILocation"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+         <attribute name="implementation" type="string" use="required">
+            <annotation>
+               <documentation>
+                  Must implement the referenced ILocation interface.
+               </documentation>
+               <appinfo>
+                  <meta.attribute kind="java" basedOn=":org.eclipse.intent.mapping.base.ILocation"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="since"/>
+      </appinfo>
+      <documentation>
+         0.10.0
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="examples"/>
+      </appinfo>
+      <documentation>
+         &lt;extension
+         point=&quot;org.eclipse.intent.mapping.ide.location&quot;&gt;
+      &lt;base
+            class=&quot;org.eclipse.intent.mapping.Base&quot;&gt;
+         &lt;location
+               implementation=&quot;org.eclipse.intent.mapping.ide.impl.ResourceLocationImpl&quot;
+               interface=&quot;org.eclipse.intent.mapping.ide.resource.IResourceLocation&quot;&gt;
+         &lt;/location&gt;
+         &lt;location
+               implementation=&quot;org.eclipse.intent.mapping.ide.impl.TextFileLocationImpl&quot;
+               interface=&quot;org.eclipse.intent.mapping.ide.resource.ITextFileLocation&quot;&gt;
+         &lt;/location&gt;
+         &lt;location
+               implementation=&quot;org.eclipse.intent.mapping.ide.impl.EObjectFileLocationImpl&quot;
+               interface=&quot;org.eclipse.intent.mapping.emf.ide.resource.IEObjectFileLocation&quot;&gt;
+         &lt;/location&gt;
+      &lt;/base&gt;
+   &lt;/extension&gt;
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="apiinfo"/>
+      </appinfo>
+      <documentation>
+         org.eclipse.intent.mapping.MappingUtils.registerLocationImplementation(Class&lt;? extends IBase&gt; baseClass, Class&lt;L&gt; locationInterface, Class&lt;? extends L&gt; locationClass)
+      </documentation>
+   </annotation>
+
+
+   <annotation>
+      <appinfo>
+         <meta.section type="copyright"/>
+      </appinfo>
+      <documentation>
+         Copyright (c) 2015 Obeo.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+   Obeo - initial API and implementation and/or initial documentation
+   ...
+      </documentation>
+   </annotation>
+
+</schema>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.markerToLocation.exsd b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.markerToLocation.exsd
new file mode 100644
index 0000000..09e6df5
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/schema/org.eclipse.intent.mapping.ide.markerToLocation.exsd
@@ -0,0 +1,128 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.intent.mapping.ide" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+      <appinfo>
+         <meta.schema plugin="org.eclipse.intent.mapping.ide" id="org.eclipse.intent.mapping.ide.markerToLocation" name="MarkerToLocation"/>
+      </appinfo>
+      <documentation>
+         Adapts an IMaker to an ILocation
+      </documentation>
+   </annotation>
+
+   <element name="extension">
+      <annotation>
+         <appinfo>
+            <meta.element />
+         </appinfo>
+      </annotation>
+      <complexType>
+         <sequence minOccurs="1" maxOccurs="unbounded">
+            <element ref="markerToLocation"/>
+         </sequence>
+         <attribute name="point" type="string" use="required">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="id" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="name" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appinfo>
+                  <meta.attribute translatable="true"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <element name="markerToLocation">
+      <complexType>
+         <attribute name="markerType" type="string" use="required">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appinfo>
+                  <meta.attribute kind="identifier" basedOn="org.eclipse.core.resources.markers/@id"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+         <attribute name="class" type="string" use="required">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appinfo>
+                  <meta.attribute kind="java" basedOn=":org.eclipse.intent.mapping.ide.adapter.IMarkerToLocation"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="since"/>
+      </appinfo>
+      <documentation>
+         [Enter the first release in which this extension point appears.]
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="examples"/>
+      </appinfo>
+      <documentation>
+         [Enter extension point usage example here.]
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="apiinfo"/>
+      </appinfo>
+      <documentation>
+         [Enter API information here.]
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="implementation"/>
+      </appinfo>
+      <documentation>
+         [Enter information about supplied implementation of this extension point.]
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appinfo>
+         <meta.section type="copyright"/>
+      </appinfo>
+      <documentation>
+         Copyright (c) 2016 Obeo.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+   Obeo - initial API and implementation and/or initial documentation
+   ...
+      </documentation>
+   </annotation>
+
+</schema>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/Activator.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/Activator.java
new file mode 100644
index 0000000..754b885
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/Activator.java
@@ -0,0 +1,115 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide;
+
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Plugin;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.ide.connector.ResourceLocationListener;
+import org.eclipse.intent.mapping.ide.connector.TextFileConnectorDelegate;
+import org.eclipse.intent.mapping.ide.internal.content.IdeFileTypeRegistry;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class Activator extends Plugin {
+
+	/** The plug-in ID. */
+	public static final String PLUGIN_ID = "org.eclipse.intent.mapping.ide";
+
+	/** This plug-in's shared instance. */
+	private static Activator plugin;
+
+	/** The registry listener that will be used to listen to extension changes. */
+	private IdeMappingRegistryListener registryListener = new IdeMappingRegistryListener();
+
+	/** The {@link IdeFileTypeRegistry}. */
+	private IdeFileTypeRegistry fileTypeRegistry;
+
+	/**
+	 * The {@link ResourceLocationListener}.
+	 */
+	private ResourceLocationListener resourceLocationListener;
+
+	/**
+	 * Gets the {@link ResourceLocationListener}.
+	 * 
+	 * @param resourceLocationListener
+	 *            the {@link ResourceLocationListener}
+	 */
+	public void setResourceLocationListener(ResourceLocationListener resourceLocationListener) {
+		if (this.resourceLocationListener != null) {
+			ResourcesPlugin.getWorkspace().removeResourceChangeListener(this.resourceLocationListener);
+		}
+		this.resourceLocationListener = resourceLocationListener;
+		ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceLocationListener);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext)
+	 */
+	public void start(BundleContext context) throws Exception {
+		super.start(context);
+		plugin = this;
+
+		fileTypeRegistry = new IdeFileTypeRegistry(MappingUtils.getFileTypeRegistry());
+		MappingUtils.setFileTypeRegistry(fileTypeRegistry);
+
+		IdeMappingUtils.getFileConectorDelegateRegistry().register(new TextFileConnectorDelegate());
+
+		final IExtensionRegistry registry = Platform.getExtensionRegistry();
+		registry.addListener(registryListener, IdeMappingRegistryListener.CONTAINER_PROVIDER_EXTENSION_POINT);
+		registry.addListener(registryListener,
+				IdeMappingRegistryListener.FILE_CONNECTOR_DELEGATE_EXTENSION_POINT);
+		registry.addListener(registryListener, IdeMappingRegistryListener.CONNECTOR_EXTENSION_POINT);
+		registry.addListener(registryListener, IdeMappingRegistryListener.MARKER_TO_LOCATION_EXTENSION_POINT);
+		registry.addListener(registryListener, IdeMappingRegistryListener.LOCATION_EXTENSION_POINT);
+		registry.addListener(registryListener, IdeMappingRegistryListener.BASE_PROVIDER_EXTENSION_POINT);
+		registryListener.parseInitialContributions();
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
+	 */
+	public void stop(BundleContext context) throws Exception {
+		super.stop(context);
+		plugin = null;
+
+		MappingUtils.setFileTypeRegistry(fileTypeRegistry.getDelegate());
+
+		final IExtensionRegistry registry = Platform.getExtensionRegistry();
+		registry.removeListener(registryListener);
+		// TODO clear registry ?
+
+		ResourcesPlugin.getWorkspace().removeResourceChangeListener(resourceLocationListener);
+		resourceLocationListener = null;
+	}
+
+	/**
+	 * Returns the shared instance.
+	 * 
+	 * @return the shared instance
+	 */
+	public static Activator getDefault() {
+		return plugin;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/ILocationMarker.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/ILocationMarker.java
new file mode 100644
index 0000000..65ce6c3
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/ILocationMarker.java
@@ -0,0 +1,36 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide;
+
+/**
+ * Place holder for location marker constants.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ILocationMarker {
+
+	/**
+	 * The location marker ID.
+	 */
+	String LOCATION_ID = Activator.PLUGIN_ID + ".locationMarker";
+
+	/**
+	 * The text location marker ID.
+	 */
+	String TEXT_LOCATION_ID = Activator.PLUGIN_ID + ".textLocationMarker";
+
+	/**
+	 * The location attribute.
+	 */
+	String LOCATION_ATTRIBUTE = "location";
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/IdeMappingRegistryListener.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/IdeMappingRegistryListener.java
new file mode 100644
index 0000000..5730f55
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/IdeMappingRegistryListener.java
@@ -0,0 +1,497 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtension;
+import org.eclipse.core.runtime.IExtensionPoint;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.IRegistryEventListener;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.ContainerProviderFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.connector.IConnector;
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+import org.eclipse.intent.mapping.ide.adapter.IMarkerToLocationDescriptor;
+import org.eclipse.intent.mapping.ide.adapter.MarkerToLocationDescriptorAdapterFactory;
+import org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleException;
+
+/**
+ * This listener will allow us to be aware of contribution changes against the {@link ILocation} and
+ * {@link IFileConnectorDelegate} extension points.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeMappingRegistryListener implements IRegistryEventListener {
+
+	/**
+	 * The class constant.
+	 */
+	public static final String CLASS = "class";
+
+	/**
+	 * {@link ILocation} extension point to parse for extensions.
+	 */
+	public static final String LOCATION_EXTENSION_POINT = "org.eclipse.intent.mapping.ide.location";
+
+	/**
+	 * {@link ILocation} tag.
+	 */
+	public static final String BASE_TAG_EXTENSION = "base";
+
+	/**
+	 * The {@link ILocation} extension point base attribute.
+	 */
+	public static final String BASE_ATTRIBUTE_CLASS = CLASS;
+
+	/**
+	 * {@link ILocation} tag.
+	 */
+	public static final String LOCATION_TAG_EXTENSION = "location";
+
+	/**
+	 * {@link ILocation} tag.
+	 */
+	public static final String LOCATION_ATTRIBUTE_INTERFACE = "interface";
+
+	/**
+	 * {@link ILocation} tag.
+	 */
+	public static final String LOCATION_ATTRIBUTE_IMPLEMENTATION = "implementation";
+
+	/**
+	 * {@link IFileConnectorDelegate} extension point to parse for extensions.
+	 */
+	public static final String FILE_CONNECTOR_DELEGATE_EXTENSION_POINT = "org.eclipse.intent.mapping.ide.fileConnectorDelegate";
+
+	/**
+	 * {@link IFileConnectorDelegate} tag.
+	 */
+	public static final String FILE_CONNECTOR_DELEGATE_TAG_EXTENSION = "fileConnectorDelegate";
+
+	/**
+	 * The {@link ILocation} extension point base attribute.
+	 */
+	public static final String FILE_CONNECTOR_DELEGATE_ATTRIBUTE_CLASS = CLASS;
+
+	/**
+	 * Plugin providing {@link IBase} extension point to parse for extensions.
+	 */
+	public static final String BASE_PROVIDER_EXTENSION_POINT = "org.eclipse.intent.mapping.ide.baseProvider";
+
+	/**
+	 * Plugin providing {@link IConnector} extension point to parse for extensions.
+	 */
+	public static final String CONNECTOR_EXTENSION_POINT = "org.eclipse.intent.mapping.ide.connector";
+
+	/**
+	 * {@link IConnector} tag.
+	 */
+	public static final String CONNECTOR_TAG_EXTENSION = "connector";
+
+	/**
+	 * The {@link ILocation} extension point connector attribute.
+	 */
+	public static final String CONNECTOR_ATTRIBUTE_CLASS = CLASS;
+
+	/**
+	 * Plugin providing {@link IMarkerToLocationDescriptor} extension point to parse for extensions.
+	 */
+	public static final String MARKER_TO_LOCATION_EXTENSION_POINT = "org.eclipse.intent.mapping.ide.markerToLocation";
+
+	/**
+	 * {@link IMarkerToLocationDescriptor} tag.
+	 */
+	public static final String MARKER_TO_LOCATION_TAG_EXTENSION = "markerToLocation";
+
+	/**
+	 * The {@link IMarkerToLocationDescriptor} extension point adapter attribute.
+	 */
+	public static final String MARKER_TO_LOCATION_ATTRIBUTE_CLASS = CLASS;
+
+	/**
+	 * The {@link IMarkerToLocationDescriptor} extension point adapter attribute.
+	 */
+	public static final String MARKER_TO_LOCATION_ATTRIBUTE_MARKER_TYPE = "markerType";
+
+	/**
+	 * {@link IContainerProvider} extension point to parse for extensions.
+	 */
+	public static final String CONTAINER_PROVIDER_EXTENSION_POINT = "org.eclipse.intent.mapping.ide.containerProvider";
+
+	/**
+	 * {@link IContainerProvider} tag.
+	 */
+	public static final String CONTAINER_PROVIDER_TAG_EXTENSION = "provider";
+
+	/**
+	 * The {@link IContainerProvider} extension point base attribute.
+	 */
+	public static final String CONTAINER_PROVIDER_ATTRIBUTE_CLASS = CLASS;
+
+	/**
+	 * An {@link BaseElementFactory.FactoryDescriptor} for an extension point.
+	 * 
+	 * @param <T>
+	 *            the kind of {@link ILocation}
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class ExtensionFactoryDescriptor<T extends ILocation> implements BaseElementFactory.IFactoryDescriptor<T> {
+
+		/**
+		 * The {@link IConfigurationElement}.
+		 */
+		private final IConfigurationElement element;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param element
+		 *            the {@link IConfigurationElement}
+		 */
+		public ExtensionFactoryDescriptor(IConfigurationElement element) {
+			this.element = element;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.BaseElementFactory.IFactoryDescriptor#createElement()
+		 */
+		@SuppressWarnings("unchecked")
+		public T createElement() throws InstantiationException, IllegalAccessException,
+				ClassNotFoundException {
+			try {
+				return (T)element.createExecutableExtension(LOCATION_ATTRIBUTE_IMPLEMENTATION);
+			} catch (CoreException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			}
+			return null;
+		}
+
+	}
+
+	/**
+	 * An {@link ContainerProviderFactory.FactoryDescriptor} for an extension point.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class ExtensionContainerProviderFactoryDescriptor implements ContainerProviderFactory.IFactoryDescriptor {
+
+		/**
+		 * The {@link IConfigurationElement}.
+		 */
+		private final IConfigurationElement element;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param element
+		 *            the {@link IConfigurationElement}
+		 */
+		public ExtensionContainerProviderFactoryDescriptor(IConfigurationElement element) {
+			this.element = element;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.BaseElementFactory.IFactoryDescriptor#createElement()
+		 */
+		public IContainerProvider createElement() throws InstantiationException, IllegalAccessException,
+				ClassNotFoundException {
+			try {
+				return (IContainerProvider)element.createExecutableExtension(
+						CONTAINER_PROVIDER_ATTRIBUTE_CLASS);
+			} catch (CoreException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			}
+			return null;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ContainerProviderFactory.IFactoryDescriptor#getClassName()
+		 */
+		public String getClassName() {
+			return element.getAttribute(CONTAINER_PROVIDER_ATTRIBUTE_CLASS);
+		}
+
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.IRegistryEventListener#added(org.eclipse.core.runtime.IExtension[])
+	 */
+	public void added(IExtension[] extensions) {
+		for (IExtension extension : extensions) {
+			if (LOCATION_EXTENSION_POINT.equals(extension.getUniqueIdentifier())) {
+				parseLocationExtension(extension);
+			} else if (FILE_CONNECTOR_DELEGATE_EXTENSION_POINT.equals(extension.getUniqueIdentifier())) {
+				parseFileConnectorDelegateExtension(extension);
+			} else if (BASE_PROVIDER_EXTENSION_POINT.equals(extension.getUniqueIdentifier())) {
+				parseBaseProviderExtension(extension);
+			} else if (CONNECTOR_EXTENSION_POINT.equals(extension.getUniqueIdentifier())) {
+				parseConnectorProviderExtension(extension);
+			} else if (MARKER_TO_LOCATION_EXTENSION_POINT.equals(extension.getUniqueIdentifier())) {
+				parseMarkerToLocationExtension(extension);
+			} else if (CONTAINER_PROVIDER_EXTENSION_POINT.equals(extension.getUniqueIdentifier())) {
+				parseContainerProviderExtension(extension);
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.IRegistryEventListener#added(org.eclipse.core.runtime.IExtensionPoint[])
+	 */
+	public void added(IExtensionPoint[] extensionPoints) {
+		// no need to listen to this event
+	}
+
+	/**
+	 * Though this listener reacts to the extension point changes, there could have been contributions before
+	 * it's been registered. This will parse these initial contributions.
+	 */
+	public void parseInitialContributions() {
+		final IExtensionRegistry registry = Platform.getExtensionRegistry();
+
+		for (IExtension extension : registry.getExtensionPoint(CONTAINER_PROVIDER_EXTENSION_POINT)
+				.getExtensions()) {
+			parseContainerProviderExtension(extension);
+		}
+		for (IExtension extension : registry.getExtensionPoint(FILE_CONNECTOR_DELEGATE_EXTENSION_POINT)
+				.getExtensions()) {
+			parseFileConnectorDelegateExtension(extension);
+		}
+		for (IExtension extension : registry.getExtensionPoint(CONNECTOR_EXTENSION_POINT).getExtensions()) {
+			parseConnectorProviderExtension(extension);
+		}
+		for (IExtension extension : registry.getExtensionPoint(MARKER_TO_LOCATION_EXTENSION_POINT)
+				.getExtensions()) {
+			parseMarkerToLocationExtension(extension);
+		}
+		for (IExtension extension : registry.getExtensionPoint(LOCATION_EXTENSION_POINT).getExtensions()) {
+			parseLocationExtension(extension);
+		}
+		for (IExtension extension : registry.getExtensionPoint(BASE_PROVIDER_EXTENSION_POINT)
+				.getExtensions()) {
+			parseBaseProviderExtension(extension);
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.IRegistryEventListener#removed(org.eclipse.core.runtime.IExtension[])
+	 */
+	@SuppressWarnings("unchecked")
+	public void removed(IExtension[] extensions) {
+		for (IExtension extension : extensions) {
+			final IConfigurationElement[] configElements = extension.getConfigurationElements();
+			for (IConfigurationElement elem : configElements) {
+				if (BASE_TAG_EXTENSION.equals(elem.getName())) {
+					final Bundle contributor = Platform.getBundle(elem.getContributor().getName());
+					final String baseClassName = elem.getAttribute(BASE_ATTRIBUTE_CLASS);
+					try {
+						Class<? extends IBase> baseClass = (Class<? extends IBase>)contributor.loadClass(
+								baseClassName);
+						for (IConfigurationElement locationElem : elem.getChildren(LOCATION_TAG_EXTENSION)) {
+							final String interfaceClassName = locationElem.getAttribute(
+									LOCATION_ATTRIBUTE_INTERFACE);
+							Class<ILocation> interfaceClass = (Class<ILocation>)contributor.loadClass(
+									interfaceClassName);
+							MappingUtils.unregisterLocationImplementation(baseClass, interfaceClass);
+						}
+					} catch (ClassNotFoundException e) {
+						Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+								.getMessage(), e));
+					}
+				} else if (FILE_CONNECTOR_DELEGATE_TAG_EXTENSION.equals(elem.getName())) {
+					final String delegateClassName = elem.getAttribute(
+							FILE_CONNECTOR_DELEGATE_ATTRIBUTE_CLASS);
+					IFileConnectorDelegate delegateToRemove = null;
+					for (IFileConnectorDelegate delegate : IdeMappingUtils.getFileConectorDelegateRegistry()
+							.getConnectorDelegates()) {
+						if (delegateClassName.equals(delegate.getClass().getName())) {
+							delegateToRemove = delegate;
+							break;
+						}
+					}
+					if (delegateToRemove != null) {
+						IdeMappingUtils.getFileConectorDelegateRegistry().unregister(delegateToRemove);
+					}
+				} else if (CONTAINER_PROVIDER_TAG_EXTENSION.equals(elem.getName())) {
+					MappingUtils.getContainerProviderFactory().removeDescriptor(elem.getAttribute(
+							CONTAINER_PROVIDER_ATTRIBUTE_CLASS));
+				}
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.core.runtime.IRegistryEventListener#removed(org.eclipse.core.runtime.IExtensionPoint[])
+	 */
+	public void removed(IExtensionPoint[] extensionPoints) {
+		// no need to listen to this event
+	}
+
+	/**
+	 * Parses a single {@link ILocation} extension contribution.
+	 * 
+	 * @param extension
+	 *            Parses the given extension and adds its contribution to the registry
+	 */
+	@SuppressWarnings("unchecked")
+	private void parseLocationExtension(IExtension extension) {
+		final IConfigurationElement[] configElements = extension.getConfigurationElements();
+		for (IConfigurationElement elem : configElements) {
+			if (BASE_TAG_EXTENSION.equals(elem.getName())) {
+				final Bundle contributor = Platform.getBundle(elem.getContributor().getName());
+				final String baseClassName = elem.getAttribute(BASE_ATTRIBUTE_CLASS);
+				try {
+					Class<? extends IBase> baseClass = (Class<? extends IBase>)contributor.loadClass(
+							baseClassName);
+					for (IConfigurationElement locationElem : elem.getChildren(LOCATION_TAG_EXTENSION)) {
+						final String interfaceClassName = locationElem.getAttribute(
+								LOCATION_ATTRIBUTE_INTERFACE);
+						Class<ILocation> interfaceClass = (Class<ILocation>)contributor.loadClass(
+								interfaceClassName);
+						MappingUtils.registerLocationImplementation(baseClass, interfaceClass,
+								new ExtensionFactoryDescriptor<ILocation>(locationElem));
+					}
+				} catch (ClassNotFoundException e) {
+					Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+							.getMessage(), e));
+				}
+			}
+		}
+	}
+
+	/**
+	 * Parses a single {@link IFileConnectorDelegate} extension contribution.
+	 * 
+	 * @param extension
+	 *            Parses the given extension and adds its contribution to the registry
+	 */
+	private void parseFileConnectorDelegateExtension(IExtension extension) {
+		final IConfigurationElement[] configElements = extension.getConfigurationElements();
+		for (IConfigurationElement elem : configElements) {
+			if (FILE_CONNECTOR_DELEGATE_TAG_EXTENSION.equals(elem.getName())) {
+				try {
+					final IFileConnectorDelegate delegate = (IFileConnectorDelegate)elem
+							.createExecutableExtension(FILE_CONNECTOR_DELEGATE_ATTRIBUTE_CLASS);
+					IdeMappingUtils.getFileConectorDelegateRegistry().register(delegate);
+				} catch (CoreException e) {
+					Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+							.getMessage(), e));
+				}
+			}
+		}
+	}
+
+	/**
+	 * Parses a single {@link IBase} extension contribution.
+	 * 
+	 * @param extension
+	 *            Parses the given extension and adds its contribution to the registry.
+	 */
+	private void parseBaseProviderExtension(IExtension extension) {
+		final String bundleName = extension.getContributor().getName();
+		final Bundle bundle = Platform.getBundle(bundleName);
+		try {
+			if (bundle.getState() != Bundle.ACTIVE) {
+				bundle.start();
+			}
+		} catch (BundleException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
+					e));
+		}
+	}
+
+	/**
+	 * Parses a single {@link IConnector} extension contribution.
+	 * 
+	 * @param extension
+	 *            Parses the given extension and adds its contribution to the registry
+	 */
+	private void parseConnectorProviderExtension(IExtension extension) {
+		final IConfigurationElement[] configElements = extension.getConfigurationElements();
+		for (IConfigurationElement elem : configElements) {
+			if (CONNECTOR_TAG_EXTENSION.equals(elem.getName())) {
+				try {
+					final IConnector connector = (IConnector)elem.createExecutableExtension(
+							CONNECTOR_ATTRIBUTE_CLASS);
+					MappingUtils.getConnectorRegistry().register(connector);
+				} catch (CoreException e) {
+					Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+							.getMessage(), e));
+				}
+			}
+		}
+	}
+
+	/**
+	 * Parses a single {@link IMarkerToLocationDescriptor} extension contribution.
+	 * 
+	 * @param extension
+	 *            Parses the given extension and adds its contribution to the registry
+	 */
+	private void parseMarkerToLocationExtension(IExtension extension) {
+		final IConfigurationElement[] configElements = extension.getConfigurationElements();
+		for (IConfigurationElement elem : configElements) {
+			if (MARKER_TO_LOCATION_TAG_EXTENSION.equals(elem.getName())) {
+				try {
+					final String marterType = elem.getAttribute(MARKER_TO_LOCATION_ATTRIBUTE_MARKER_TYPE);
+					final IMarkerToLocationDescriptor adapter = (IMarkerToLocationDescriptor)elem
+							.createExecutableExtension(MARKER_TO_LOCATION_ATTRIBUTE_CLASS);
+					MarkerToLocationDescriptorAdapterFactory.register(adapter, marterType);
+				} catch (CoreException e) {
+					Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+							.getMessage(), e));
+				}
+			}
+		}
+	}
+
+	/**
+	 * Parses a single {@link IContainerProvider} extension contribution.
+	 * 
+	 * @param extension
+	 *            Parses the given extension and adds its contribution to the registry
+	 */
+	private void parseContainerProviderExtension(IExtension extension) {
+		final IConfigurationElement[] configElements = extension.getConfigurationElements();
+		for (IConfigurationElement elem : configElements) {
+			if (CONTAINER_PROVIDER_TAG_EXTENSION.equals(elem.getName())) {
+				MappingUtils.getContainerProviderFactory().addDescriptor(
+						new ExtensionContainerProviderFactoryDescriptor(elem));
+			}
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/IdeMappingUtils.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/IdeMappingUtils.java
new file mode 100644
index 0000000..04e4e1b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/IdeMappingUtils.java
@@ -0,0 +1,560 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.connector.IFileDelegateRegistry;
+import org.eclipse.intent.mapping.ide.internal.connector.FileDelegateRegistry;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+
+/**
+ * Ide mapping utilities.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public final class IdeMappingUtils {
+
+	/**
+	 * Listener for the {@link IdeMappingUtils#getSynchronizationPalette() synchronization palette}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public interface ISynchronizationPaletteListener {
+
+		/**
+		 * Stub implementation.
+		 *
+		 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+		 */
+		class Stub implements ISynchronizationPaletteListener {
+
+			/**
+			 * {@inheritDoc}
+			 *
+			 * @see org.eclipse.intent.mapping.ide.IdeMappingUtils.ISynchronizationPaletteListener#locationActivated(org.eclipse.intent.mapping.base.ILocationDescriptor)
+			 */
+			public void locationActivated(ILocationDescriptor locationDescriptor) {
+				// nothing to do here
+			}
+
+			/**
+			 * {@inheritDoc}
+			 *
+			 * @see org.eclipse.intent.mapping.ide.IdeMappingUtils.ISynchronizationPaletteListener#locationDeactivated(org.eclipse.intent.mapping.base.ILocationDescriptor)
+			 */
+			public void locationDeactivated(ILocationDescriptor locationDescriptor) {
+				// nothing to do here
+			}
+
+			/**
+			 * {@inheritDoc}
+			 *
+			 * @see org.eclipse.intent.mapping.ide.IdeMappingUtils.ISynchronizationPaletteListener#contentsAdded(org.eclipse.intent.mapping.base.ILocationDescriptor)
+			 */
+			public void contentsAdded(ILocationDescriptor locationDescriptor) {
+				// nothing to do here
+			}
+
+			/**
+			 * {@inheritDoc}
+			 *
+			 * @see org.eclipse.intent.mapping.ide.IdeMappingUtils.ISynchronizationPaletteListener#contentsRemoved(org.eclipse.intent.mapping.base.ILocationDescriptor)
+			 */
+			public void contentsRemoved(ILocationDescriptor locationDescriptor) {
+				// nothing to do here
+			}
+
+		}
+
+		/**
+		 * Notifies that the given {@link ILocationDescriptor} has been activated.
+		 * 
+		 * @param locationDescriptor
+		 *            the activated {@link ILocationDescriptor}
+		 */
+		void locationActivated(ILocationDescriptor locationDescriptor);
+
+		/**
+		 * Notifies that the given {@link ILocationDescriptor} has been deactivated.
+		 * 
+		 * @param locationDescriptor
+		 *            the deactivated {@link ILocationDescriptor}
+		 */
+		void locationDeactivated(ILocationDescriptor locationDescriptor);
+
+		/**
+		 * Notifies that a {@link ILocationDescriptor} has been added.
+		 * 
+		 * @param locationDescriptor
+		 *            the added {@link ILocationDescriptor}
+		 */
+		void contentsAdded(ILocationDescriptor locationDescriptor);
+
+		/**
+		 * Notifies that a {@link ILocationDescriptor} has been removed.
+		 * 
+		 * @param locationDescriptor
+		 *            the removed {@link ILocationDescriptor}
+		 */
+		void contentsRemoved(ILocationDescriptor locationDescriptor);
+
+	}
+
+	/**
+	 * Listener for {@link IdeMappingUtils#getCurrentBase() current base}
+	 * {@link IdeMappingUtils#setCurrentBase(IBase) change}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public interface ICurrentBaseListener {
+
+		/**
+		 * Notifies that the {@link IdeMappingUtils#getCurrentBase() current base} has been
+		 * {@link IdeMappingUtils#setCurrentBase(IBase) changed}.
+		 * 
+		 * @param oldBase
+		 *            the old {@link IBase}
+		 * @param newBase
+		 *            the new {@link IBase}
+		 */
+		void currentBaseChanged(IBase oldBase, IBase newBase);
+
+	}
+
+	/**
+	 * The {@link IFileDelegateRegistry} instance.
+	 */
+	private static final IFileDelegateRegistry REGISTRY = new FileDelegateRegistry();
+
+	/**
+	 * Mapping from an {@link ILocation} and it's {@link IMarker}.
+	 */
+	private static final Map<ILocation, IMarker> LOCATION_TO_MARKER = new HashMap<ILocation, IMarker>();
+
+	/**
+	 * The palette of {@link ILocationDescriptor} to link with.
+	 */
+	private static final Map<ILocationDescriptor, Boolean> LOCATIONS_PALETTE = new LinkedHashMap<ILocationDescriptor, Boolean>();
+
+	/**
+	 * The {@link List} of {@link ISynchronizationPaletteListener}.
+	 */
+	private static final List<ISynchronizationPaletteListener> LOCATIONS_PALETTE_LISTENERS = new ArrayList<ISynchronizationPaletteListener>();
+
+	/**
+	 * The {@link List} of {@link ISynchronizationPaletteListener}.
+	 */
+	private static final List<ICurrentBaseListener> CURRENT_BASE_LISTENERS = new ArrayList<ICurrentBaseListener>();
+
+	/**
+	 * The current {@link IBase}.
+	 */
+	private static IBase currentBase;
+
+	static {
+		CURRENT_BASE_LISTENERS.add(new ICurrentBaseListener() {
+
+			public void currentBaseChanged(IBase oldBase, IBase newBase) {
+				for (ILocationDescriptor descriptor : getSynchronizationPalette()) {
+					removeLocationFromPalette(descriptor);
+				}
+			}
+		});
+	}
+
+	/**
+	 * Constructor.
+	 */
+	private IdeMappingUtils() {
+		// nothing to do here
+	}
+
+	/**
+	 * Gets the {@link IFileDelegateRegistry}.
+	 * 
+	 * @return the {@link IFileDelegateRegistry}
+	 */
+	public static IFileDelegateRegistry getFileConectorDelegateRegistry() {
+		return REGISTRY;
+	}
+
+	/**
+	 * Adapts the given {@link Object element} into an {@link Object} of the given {@link Class}.
+	 * 
+	 * @param element
+	 *            the {@link Object element}
+	 * @param cls
+	 *            the {@link Class}
+	 * @return the {@link Object} of the given {@link Class} if any, <code>null</code> otherwise
+	 * @param <T>
+	 *            the kind of result
+	 */
+	@SuppressWarnings("unchecked")
+	public static <T> T adapt(Object element, Class<T> cls) {
+		final T res;
+
+		if (cls.isInstance(element)) {
+			res = (T)element;
+		} else if (element instanceof IAdaptable) {
+			final T adaptedElement = (T)((IAdaptable)element).getAdapter(cls);
+			if (adaptedElement != null) {
+				res = adaptedElement;
+			} else {
+				res = (T)Platform.getAdapterManager().getAdapter(element, cls);
+			}
+		} else if (element != null) {
+			res = (T)Platform.getAdapterManager().getAdapter(element, cls);
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Sets the current {@link IBase} to the given {@link IBase}.
+	 * 
+	 * @param newBase
+	 *            the new {@link IBase}
+	 */
+	public static void setCurrentBase(IBase newBase) {
+		if (currentBase != newBase) {
+			final IBase oldBase = currentBase;
+			currentBase = newBase;
+			for (ICurrentBaseListener listener : getCurrentBaseListeners()) {
+				listener.currentBaseChanged(oldBase, newBase);
+			}
+		}
+	}
+
+	/**
+	 * Gets the current {@link IBase}.
+	 * 
+	 * @return the current {@link IBase}
+	 */
+	public static IBase getCurrentBase() {
+		return currentBase;
+	}
+
+	/**
+	 * Gets the {@link ILocation#getContainer() containing} {@link IFileLocation} of the given
+	 * {@link ILocation} or itself if it's a {@link IFileLocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @return the {@link ILocation#getContainer() containing} {@link IFileLocation} of the given
+	 *         {@link ILocation} or itself if it's a {@link IFileLocation}, <code>null</code> if none is found
+	 */
+	public static IFileLocation getContainingFileLocation(ILocation location) {
+		final IFileLocation res;
+
+		if (location instanceof IFileLocation) {
+			res = (IFileLocation)location;
+		} else if (location.getContainer() instanceof ILocation) {
+			res = getContainingFileLocation((ILocation)location.getContainer());
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Gets or creates the {@link IMarker} for the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @return the {@link IMarker} for the given {@link ILocation} if any exists or can be created,
+	 *         <code>null</code> otherwise
+	 */
+	public static IMarker getOrCreateMarker(ILocation location) {
+		final IMarker res;
+
+		final IMarker existingMarker = getMarker(location);
+		if (existingMarker == null) {
+			res = IdeMappingUtils.adapt(location, IMarker.class);
+			if (res != null) {
+				LOCATION_TO_MARKER.put(location, res);
+			}
+		} else {
+			res = existingMarker;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Gets the cached marker for the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @return the cached marker for the given {@link ILocation} if any, <code>null</code> otherwise
+	 */
+	public static IMarker getMarker(ILocation location) {
+		return LOCATION_TO_MARKER.get(location);
+	}
+
+	/**
+	 * {@link IMarker#delete() Deletes} the {@link IMarker} for the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 */
+	public static void deleteMarker(ILocation location) {
+		final IMarker marker = LOCATION_TO_MARKER.remove(location);
+		if (marker != null) {
+			try {
+				marker.delete();
+			} catch (CoreException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+						"unable to delete a location markers for " + marker.getResource().getFullPath()
+								.toString(), e));
+			}
+		}
+	}
+
+	/**
+	 * Removes the {@link IMarker} for the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @see #deleteMarker(ILocation) for deletion
+	 */
+	public static void removeMarker(ILocation location) {
+		LOCATION_TO_MARKER.remove(location);
+	}
+
+	/**
+	 * Gets the palette of {@link ILocationDescriptor} to link with.
+	 * 
+	 * @return the palette of {@link ILocationDescriptor} to link with
+	 */
+	public static Set<ILocationDescriptor> getSynchronizationPalette() {
+		synchronized(LOCATIONS_PALETTE) {
+			return Collections.unmodifiableSet(new LinkedHashSet(LOCATIONS_PALETTE.keySet()));
+		}
+	}
+
+	/**
+	 * Gets the {@link List} of {@link ISynchronizationPaletteListener} in a thread safe way.
+	 * 
+	 * @return the {@link List} of {@link ISynchronizationPaletteListener} in a thread safe way
+	 */
+	private static List<ISynchronizationPaletteListener> getSynchronizationPaletteListeners() {
+		synchronized(LOCATIONS_PALETTE_LISTENERS) {
+			return new ArrayList<ISynchronizationPaletteListener>(LOCATIONS_PALETTE_LISTENERS);
+		}
+	}
+
+	/**
+	 * Adds the given {@link ILocationDescriptor} to the {@link #getSynchronizationPalette() palette of
+	 * location descriptor}.
+	 * 
+	 * @param locationDescriptor
+	 *            the {@link ILocationDescriptor} to add
+	 */
+	public static void addLocationToPalette(ILocationDescriptor locationDescriptor) {
+		final Boolean added;
+		synchronized(LOCATIONS_PALETTE) {
+			added = LOCATIONS_PALETTE.put(locationDescriptor, false);
+		}
+		if (added == null || added) {
+			for (ISynchronizationPaletteListener listener : getSynchronizationPaletteListeners()) {
+				listener.contentsAdded(locationDescriptor);
+			}
+		}
+	}
+
+	/**
+	 * Removes the given {@link ILocationDescriptor} from the {@link #getSynchronizationPalette() palette of
+	 * location descriptor}.
+	 * 
+	 * @param locationDescriptor
+	 *            the {@link ILocation} to remove
+	 */
+	public static void removeLocationFromPalette(ILocationDescriptor locationDescriptor) {
+		final Boolean removed;
+		synchronized(LOCATIONS_PALETTE) {
+			removed = LOCATIONS_PALETTE.remove(locationDescriptor);
+		}
+		if (removed != null) {
+			for (ISynchronizationPaletteListener listener : getSynchronizationPaletteListeners()) {
+				listener.contentsRemoved(locationDescriptor);
+			}
+		}
+	}
+
+	/**
+	 * Adds the given {@link ISynchronizationPaletteListener}.
+	 * 
+	 * @param listener
+	 *            the {@link ISynchronizationPaletteListener} to add
+	 */
+	public static void addSynchronizationPaletteListener(ISynchronizationPaletteListener listener) {
+		synchronized(LOCATIONS_PALETTE_LISTENERS) {
+			LOCATIONS_PALETTE_LISTENERS.add(listener);
+		}
+	}
+
+	/**
+	 * removes the given {@link ISynchronizationPaletteListener}.
+	 * 
+	 * @param listener
+	 *            the {@link ISynchronizationPaletteListener} to remove
+	 */
+	public static void removeSynchronizationPaletteListener(ISynchronizationPaletteListener listener) {
+		synchronized(LOCATIONS_PALETTE_LISTENERS) {
+			LOCATIONS_PALETTE_LISTENERS.remove(listener);
+		}
+	}
+
+	/**
+	 * Activates the given {@link ILocationDescriptor} form the {@link #getSynchronizationPalette() palette of
+	 * location descriptor}.
+	 * 
+	 * @param locationDescriptor
+	 *            the {@link ILocationDescriptor} to activate
+	 */
+	public static void activateLocation(ILocationDescriptor locationDescriptor) {
+		final boolean changed;
+
+		synchronized(LOCATIONS_PALETTE) {
+			if (LOCATIONS_PALETTE.containsKey(locationDescriptor)) {
+				final Boolean lastValue = LOCATIONS_PALETTE.put(locationDescriptor, Boolean.TRUE);
+				changed = lastValue == null || !lastValue;
+			} else {
+				changed = false;
+			}
+		}
+
+		if (changed) {
+			for (ISynchronizationPaletteListener listener : getSynchronizationPaletteListeners()) {
+				listener.locationActivated(locationDescriptor);
+			}
+		}
+	}
+
+	/**
+	 * Deactivates the given {@link ILocationDescriptor} form the {@link #getSynchronizationPalette() palette
+	 * of location descriptor}.
+	 * 
+	 * @param locationDescriptor
+	 *            the {@link ILocationDescriptor} to deactivate
+	 */
+	public static void deactivateLocation(ILocationDescriptor locationDescriptor) {
+		final boolean changed;
+
+		synchronized(LOCATIONS_PALETTE) {
+			if (LOCATIONS_PALETTE.containsKey(locationDescriptor)) {
+				final Boolean lastValue = LOCATIONS_PALETTE.put(locationDescriptor, Boolean.FALSE);
+				changed = lastValue == null || lastValue;
+			} else {
+				changed = false;
+			}
+		}
+
+		if (changed) {
+			for (ISynchronizationPaletteListener listener : getSynchronizationPaletteListeners()) {
+				listener.locationDeactivated(locationDescriptor);
+			}
+		}
+	}
+
+	/**
+	 * Tells if the given {@link ILocationDescriptor} from the
+	 * {@link IdeMappingUtils#getSynchronizationPalette() location descriptors palette} is active.
+	 * 
+	 * @param locationDescriptor
+	 *            the {@link ILocationDescriptor}
+	 * @return <code>true</code> if the given {@link ILocationDescriptor} from the
+	 *         {@link IdeMappingUtils#getSynchronizationPalette() location descriptors palette} is active,
+	 *         <code>false</code> otherwise
+	 */
+	public static boolean isActive(ILocationDescriptor locationDescriptor) {
+		final boolean res;
+
+		synchronized(LOCATIONS_PALETTE) {
+			final Boolean isActive = LOCATIONS_PALETTE.get(locationDescriptor);
+			res = isActive != null && isActive;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Tells if there is at least one {@link IdeMappingUtils#isActive(ILocationDescriptor) active}
+	 * {@link ILocationDescriptor} in the {@link IdeMappingUtils#getSynchronizationPalette() location
+	 * descriptors palette} .
+	 * 
+	 * @return <code>true</code> if there is at least one {@link IdeMappingUtils#isActive(ILocationDescriptor)
+	 *         active} {@link ILocationDescriptor} in the {@link IdeMappingUtils#getSynchronizationPalette()
+	 *         location descriptors palette}, <code>false</code> otherwise
+	 */
+	public static boolean asActiveLocationDescriptor() {
+		synchronized(LOCATIONS_PALETTE) {
+			return LOCATIONS_PALETTE.values().contains(Boolean.TRUE);
+		}
+	}
+
+	/**
+	 * Gets the {@link List} of {@link ICurrentBaseListener} in a thread safe way.
+	 * 
+	 * @return the {@link List} of {@link ICurrentBaseListener} in a thread safe way
+	 */
+	private static List<ICurrentBaseListener> getCurrentBaseListeners() {
+		synchronized(CURRENT_BASE_LISTENERS) {
+			return new ArrayList<ICurrentBaseListener>(CURRENT_BASE_LISTENERS);
+		}
+	}
+
+	/**
+	 * Adds the given {@link ICurrentBaseListener}.
+	 * 
+	 * @param listener
+	 *            the {@link ICurrentBaseListener} to add
+	 */
+	public static void addCurrentBaseListener(ICurrentBaseListener listener) {
+		synchronized(CURRENT_BASE_LISTENERS) {
+			CURRENT_BASE_LISTENERS.add(listener);
+		}
+	}
+
+	/**
+	 * Removes the given {@link ICurrentBaseListener}.
+	 * 
+	 * @param listener
+	 *            the {@link ICurrentBaseListener} to remove
+	 */
+	public static void removeCurrentBaseListener(ICurrentBaseListener listener) {
+		synchronized(CURRENT_BASE_LISTENERS) {
+			CURRENT_BASE_LISTENERS.remove(listener);
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/IMarkerToLocationDescriptor.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/IMarkerToLocationDescriptor.java
new file mode 100644
index 0000000..cac295f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/IMarkerToLocationDescriptor.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.adapter;
+
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+
+/**
+ * Adapts an {@link IMarker} to an {@link ILocationDescriptor}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IMarkerToLocationDescriptor {
+
+	/**
+	 * Gets the {@link ILocationDescriptor} for the given {@link IMarker}.
+	 * 
+	 * @param marker
+	 *            the {@link IMarker} to adapt
+	 * @return the {@link ILocationDescriptor} for the given {@link IMarker} if any, <code>null</code>
+	 *         otherwise
+	 */
+	ILocationDescriptor getAdapter(IMarker marker);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/MarkerToLocationDescriptorAdapterFactory.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/MarkerToLocationDescriptorAdapterFactory.java
new file mode 100644
index 0000000..03ad3fa
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/MarkerToLocationDescriptorAdapterFactory.java
@@ -0,0 +1,111 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.adapter;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.internal.resources.MarkerManager;
+import org.eclipse.core.internal.resources.Workspace;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IAdapterFactory;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.Activator;
+
+/**
+ * Adapts {@link IMarker} to {@link ILocationDescriptor}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@SuppressWarnings("restriction")
+public class MarkerToLocationDescriptorAdapterFactory implements IAdapterFactory {
+
+	/**
+	 * Mapping from {@link IMarkerToLocationDescriptor} to marker type.
+	 */
+	private static final Map<IMarkerToLocationDescriptor, String> ADAPTER_TYPE = new HashMap<IMarkerToLocationDescriptor, String>();
+
+	/**
+	 * The {@link List} of {@link IMarkerToLocationDescriptor} from the more specific marker type to the less
+	 * specific.
+	 */
+	private static final List<IMarkerToLocationDescriptor> ADAPTERS = new ArrayList<IMarkerToLocationDescriptor>();
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
+	 */
+	@SuppressWarnings("unchecked")
+	public Object getAdapter(Object adaptableObject, @SuppressWarnings("rawtypes") Class adapterType) {
+		ILocationDescriptor res = null;
+
+		if (adaptableObject instanceof IMarker) {
+			final IMarker marker = (IMarker)adaptableObject;
+			final MarkerManager manager = ((Workspace)ResourcesPlugin.getWorkspace()).getMarkerManager();
+			try {
+				final String markerType = marker.getType();
+				for (IMarkerToLocationDescriptor adapter : ADAPTERS) {
+					if (manager.isSubtype(markerType, ADAPTER_TYPE.get(adapter))) {
+						res = adapter.getAdapter(marker);
+						if (res != null) {
+							break;
+						}
+					}
+				}
+			} catch (CoreException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			}
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
+	 */
+	public Class<?>[] getAdapterList() {
+		return new Class<?>[] {ILocationDescriptor.class };
+	}
+
+	/**
+	 * registers the given {@link IMarkerToLocationDescriptor} for the given marker type.
+	 * 
+	 * @param adapter
+	 *            the {@link IMarkerToLocationDescriptor}
+	 * @param markerType
+	 *            the marker type
+	 */
+	public static void register(IMarkerToLocationDescriptor adapter, String markerType) {
+		ADAPTER_TYPE.put(adapter, markerType);
+
+		final MarkerManager manager = ((Workspace)ResourcesPlugin.getWorkspace()).getMarkerManager();
+		int i = 0;
+		for (IMarkerToLocationDescriptor registeredAdapter : ADAPTERS) {
+			if (manager.isSubtype(markerType, ADAPTER_TYPE.get(registeredAdapter))) {
+				break;
+			}
+			i++;
+		}
+
+		ADAPTERS.add(i, adapter);
+	}
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/MarkerToTextLocationDescriptor.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/MarkerToTextLocationDescriptor.java
new file mode 100644
index 0000000..a4487dd
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/MarkerToTextLocationDescriptor.java
@@ -0,0 +1,63 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.adapter;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.Activator;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.text.TextRegion;
+
+/**
+ * Marker to {@link ILocationDescriptor} descriptor.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class MarkerToTextLocationDescriptor implements IMarkerToLocationDescriptor {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.adapter.IMarkerToLocationDescriptor#getAdapter(org.eclipse.core.resources.IMarker)
+	 */
+	public ILocationDescriptor getAdapter(IMarker marker) {
+		ILocationDescriptor res = null;
+
+		try {
+			if (marker.isSubtypeOf(IMarker.TEXT)) {
+				final int start = (Integer)marker.getAttribute(IMarker.CHAR_START);
+				final Integer end = (Integer)marker.getAttribute(IMarker.CHAR_END);
+				final String content = MappingUtils.getContent((int)marker.getResource().getLocation()
+						.toFile().length(), ((IFile)marker.getResource()).getContents());
+				// TODO find a way to provide more dynamic container
+				final TextRegion region = new TextRegion(marker.getResource(), content.substring(start, end),
+						start, end);
+				res = IdeMappingUtils.adapt(region, ILocationDescriptor.class);
+			}
+		} catch (CoreException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
+					e));
+		} catch (IOException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
+					e));
+		}
+
+		return res;
+	}
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/TextLocationToMarkerAdapterFactory.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/TextLocationToMarkerAdapterFactory.java
new file mode 100644
index 0000000..72f241b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/adapter/TextLocationToMarkerAdapterFactory.java
@@ -0,0 +1,78 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.adapter;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IAdapterFactory;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.ide.Activator;
+import org.eclipse.intent.mapping.ide.ILocationMarker;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+import org.eclipse.intent.mapping.text.ITextLocation;
+
+/**
+ * {@link ITextLocation} to Marker {@link IAdapterFactory}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class TextLocationToMarkerAdapterFactory implements IAdapterFactory {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
+	 */
+	@SuppressWarnings("unchecked")
+	public Object getAdapter(Object adaptableObject, @SuppressWarnings("rawtypes") Class adapterType) {
+		IMarker res;
+
+		if (adaptableObject instanceof ITextLocation) {
+			final ITextLocation textLocation = (ITextLocation)adaptableObject;
+			final IMarker existingMarker = IdeMappingUtils.getMarker(textLocation);
+			if (existingMarker != null) {
+				res = existingMarker;
+			} else {
+				final IFileLocation fileLocation = IdeMappingUtils.getContainingFileLocation(textLocation);
+				final IFile file = (IFile)MappingUtils.getConnectorRegistry().getElement(fileLocation);
+				try {
+					res = file.createMarker(ILocationMarker.TEXT_LOCATION_ID);
+					res.setAttribute(IMarker.CHAR_START, textLocation.getStartOffset());
+					res.setAttribute(IMarker.CHAR_END, textLocation.getEndOffset());
+					res.setAttribute(ILocationMarker.LOCATION_ATTRIBUTE, textLocation);
+				} catch (CoreException e) {
+					res = null;
+					Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+							.getMessage(), e));
+				}
+			}
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
+	 */
+	public Class<?>[] getAdapterList() {
+		return new Class[] {IMarker.class };
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/AbstractFileConnectorDelegate.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/AbstractFileConnectorDelegate.java
new file mode 100644
index 0000000..ce1d07d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/AbstractFileConnectorDelegate.java
@@ -0,0 +1,47 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.connector;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+
+/**
+ * Abstract {@link IFileConnectorDelegate}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractFileConnectorDelegate implements IFileConnectorDelegate {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate#update(org.eclipse.intent.mapping.ide.resource.IFileLocation,
+	 *      org.eclipse.core.resources.IFile)
+	 */
+	public void update(IFileLocation location, IFile element) {
+		initLocation(location.getContainer(), location, element);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate#getElement(org.eclipse.intent.mapping.ide.resource.IFileLocation)
+	 */
+	public Object getElement(IFileLocation location) {
+		final IFile res = ResourcesPlugin.getWorkspace().getRoot().getFile(Path.fromPortableString(location
+				.getFullPath()));
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/IFileConnectorDelegate.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/IFileConnectorDelegate.java
new file mode 100644
index 0000000..123f107
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/IFileConnectorDelegate.java
@@ -0,0 +1,73 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.connector;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.content.IFileType;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+
+/**
+ * {@link org.eclipse.core.resources.IFile IFile} connector delegate used by {@link ResourceConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IFileConnectorDelegate {
+
+	/**
+	 * Gets the handled {@link IFileType}.
+	 * 
+	 * @return the handled {@link IFileType}
+	 */
+	IFileType getFileType();
+
+	/**
+	 * Gets the {@link IFileLocation} type.
+	 * 
+	 * @return the {@link IFileLocation} type
+	 */
+	Class<? extends IFileLocation> getFileLocationType();
+
+	/**
+	 * Initializes the given {@link IFileLocation} with the given {@link IFile}.
+	 * 
+	 * @param container
+	 *            the {@link ILocationContainer}
+	 * @param location
+	 *            the {@link IFileLocation}
+	 * @param element
+	 *            the {@link IFile}
+	 */
+	void initLocation(ILocationContainer container, IFileLocation location, IFile element);
+
+	/**
+	 * Updates the given {@link IFileLocation} with the given {@link IFile}.
+	 * 
+	 * @param location
+	 *            the {@link IFileLocation}
+	 * @param element
+	 *            the {@link IFile}
+	 */
+	void update(IFileLocation location, IFile element);
+
+	/**
+	 * Gets the {@link Object element} located by the given {@link IFileLocation}.
+	 * 
+	 * @param location
+	 *            the {@link IFileLocation}
+	 * @return the {@link Object element} located by the given {@link IFileLocation} if the given
+	 *         {@link IFileLocation} if handled by this {@link IFileConnectorDelegate}, <code>null</code>
+	 *         otherwise
+	 */
+	Object getElement(IFileLocation location);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/IFileDelegateRegistry.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/IFileDelegateRegistry.java
new file mode 100644
index 0000000..d10176b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/IFileDelegateRegistry.java
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.connector;
+
+import java.util.List;
+
+/**
+ * The {@link IFileConnectorDelegate} registry maintains a {@link List} of active
+ * {@link IFileConnectorDelegate}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IFileDelegateRegistry {
+
+	/**
+	 * Registers the given {@link IFileConnectorDelegate}.
+	 * 
+	 * @param delegate
+	 *            the {@link IFileConnectorDelegate} to register
+	 */
+	void register(IFileConnectorDelegate delegate);
+
+	/**
+	 * Unregisters the given {@link IFileConnectorDelegate}.
+	 * 
+	 * @param delegate
+	 *            the {@link IFileConnectorDelegate} to register
+	 */
+	void unregister(IFileConnectorDelegate delegate);
+
+	/**
+	 * Gets the {@link List} of {@link IFileDelegateRegistry#register(IFileConnectorDelegate) registered}
+	 * {@link IFileConnectorDelegate}.
+	 * 
+	 * @return the {@link List} of {@link IFileDelegateRegistry#register(IFileConnectorDelegate) registered}
+	 *         {@link IFileConnectorDelegate}
+	 */
+	List<IFileConnectorDelegate> getConnectorDelegates();
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/IdeTextConnector.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/IdeTextConnector.java
new file mode 100644
index 0000000..4c0c9af
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/IdeTextConnector.java
@@ -0,0 +1,23 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.connector;
+
+import org.eclipse.intent.mapping.text.TextConnector;
+
+/**
+ * Ide {@link TextConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeTextConnector extends TextConnector {
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/ResourceConnector.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/ResourceConnector.java
new file mode 100644
index 0000000..29c98e6
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/ResourceConnector.java
@@ -0,0 +1,269 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.connector;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.connector.AbstractConnector;
+import org.eclipse.intent.mapping.content.IFileType;
+import org.eclipse.intent.mapping.ide.Activator;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+import org.eclipse.intent.mapping.ide.resource.IResourceLocation;
+
+/**
+ * An {@link IResource} {@link org.eclipse.intent.mapping.connector.IConnector IConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ResourceConnector extends AbstractConnector {
+
+	/**
+	 * The {@link ResourceLocationListener} reacting to workspace changes.
+	 */
+	private final ResourceLocationListener resourceLocationListener;
+
+	/**
+	 * Constructor.
+	 */
+	public ResourceConnector() {
+		resourceLocationListener = new ResourceLocationListener(true, this);
+		Activator.getDefault().setResourceLocationListener(resourceLocationListener);
+	}
+
+	@Override
+	public ILocation getLocation(ILocationContainer container, Object element) {
+		if (element instanceof IResource) {
+			for (ILocation child : container.getContents()) {
+				if (match(child, element)) {
+					return child;
+				}
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationType(java.lang.Class, java.lang.Object)
+	 */
+	public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+			Object element) {
+		final Class<? extends ILocation> res;
+
+		if (element instanceof IFile) {
+			res = getIFileLocationType((IFile)element);
+		} else if (element instanceof IResource) {
+			res = getType();
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Gets the {@link IFileLocation} for the given {@link IFile}.
+	 * 
+	 * @param file
+	 *            the {@link IFile}
+	 * @return the {@link IFileLocation} for the given {@link IFile} if any, <code>null</code> otherwise
+	 */
+	private Class<? extends IFileLocation> getIFileLocationType(IFile file) {
+		Class<? extends IFileLocation> res = null;
+
+		final IFileConnectorDelegate delegate = getDelegate(file);
+		if (delegate != null) {
+			res = delegate.getFileLocationType();
+		}
+
+		return res;
+	}
+
+	/**
+	 * Gets the {@link IFileConnectorDelegate} for the given {@link IFile}.
+	 * 
+	 * @param file
+	 *            the {@link IFile}
+	 * @return the {@link IFileConnectorDelegate} for the given {@link IFile} if any, <code>null</code>
+	 *         otherwise
+	 */
+	private IFileConnectorDelegate getDelegate(IFile file) {
+		IFileConnectorDelegate res = null;
+
+		if (file.exists()) {
+			try {
+				InputStream contents = file.getContents();
+				final IFileType fileType = MappingUtils.getFileTypeRegistry().getFileTypeFor(contents, file
+						.getName());
+				contents.close();
+
+				if (fileType != null) {
+					for (IFileConnectorDelegate delegate : IdeMappingUtils.getFileConectorDelegateRegistry()
+							.getConnectorDelegates()) {
+						if (fileType.isKindOf(delegate.getFileType().getID())) {
+							res = delegate;
+							break;
+						}
+					}
+				}
+			} catch (CoreException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			} catch (IOException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			}
+		}
+
+		return res;
+	}
+
+	@Override
+	protected boolean canUpdate(Object element) {
+		final boolean res;
+
+		if (element instanceof IFile) {
+			final IFileConnectorDelegate delegate = getDelegate((IFile)element);
+			res = delegate != null;
+		} else if (element instanceof IResource) {
+			res = true;
+		} else {
+			res = false;
+		}
+
+		return res;
+	}
+
+	@Override
+	protected void update(ILocation location, Object element) {
+		final IResourceLocation toUpdate = (IResourceLocation)location;
+
+		toUpdate.setFullPath(((IResource)element).getFullPath().toPortableString());
+		if (element instanceof IFile) {
+			final IFileConnectorDelegate delegate = getDelegate((IFile)element);
+			if (delegate != null) {
+				delegate.update((IFileLocation)location, (IFile)element);
+			}
+		}
+	}
+
+	@Override
+	protected void initLocation(ILocationContainer container, ILocation location, Object element) {
+		final IResourceLocation toInit = (IResourceLocation)location;
+
+		toInit.setFullPath(((IResource)element).getFullPath().toPortableString());
+		if (element instanceof IFile) {
+			final IFileConnectorDelegate delegate = getDelegate((IFile)element);
+			if (delegate != null) {
+				delegate.initLocation(container, (IFileLocation)location, (IFile)element);
+			}
+		}
+	}
+
+	@Override
+	protected boolean match(ILocation location, Object element) {
+		final IResourceLocation resourceLocation = (IResourceLocation)location;
+		final IResource resource = (IResource)element;
+
+		return resourceLocation.getFullPath().equals(resource.getFullPath().toPortableString());
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getName(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public String getName(ILocation location) {
+		final String res;
+
+		res = ((IResourceLocation)location).getFullPath();
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationDescriptor(org.eclipse.intent.mapping.base.IBase,
+	 *      java.lang.Object)
+	 */
+	public ILocationDescriptor getLocationDescriptor(IBase base, Object element) {
+		final ILocationDescriptor res;
+
+		final Object adapted = adapt(element);
+		if (adapted instanceof IResource) {
+			res = new ObjectLocationDescriptor(base, adapted, ((IResource)adapted).getFullPath().toString());
+			resourceLocationListener.addKnownDescriptor(res);
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	@Override
+	public void dispose(ILocationDescriptor locationDescriptor) {
+		super.dispose(locationDescriptor);
+		resourceLocationListener.removeKnownDescriptor(locationDescriptor);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getElement(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public Object getElement(ILocation location) {
+		final Object res;
+
+		if (location instanceof IFileLocation) {
+			final IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(Path.fromPortableString(
+					((IFileLocation)location).getFullPath()));
+			final IFileConnectorDelegate delegate = getDelegate(file);
+			if (delegate != null) {
+				res = delegate.getElement((IFileLocation)location);
+			} else {
+				res = null;
+			}
+		} else {
+			res = ResourcesPlugin.getWorkspace().getRoot().getContainerForLocation(Path.fromPortableString(
+					((IResourceLocation)location).getFullPath()));
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getType()
+	 */
+	public Class<? extends ILocation> getType() {
+		return IResourceLocation.class;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/ResourceLocationListener.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/ResourceLocationListener.java
new file mode 100644
index 0000000..3bcc42a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/ResourceLocationListener.java
@@ -0,0 +1,374 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.connector;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IResourceChangeEvent;
+import org.eclipse.core.resources.IResourceChangeListener;
+import org.eclipse.core.resources.IResourceDelta;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.Activator;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+
+/**
+ * An {@link IResourceChangeListener} that update
+ * {@link org.eclipse.intent.mapping.ide.resource.IResourceLocation IResourceLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ResourceLocationListener implements IResourceChangeListener {
+
+	/**
+	 * The "Unable to load mapping base from " message.
+	 */
+	private static final String UNABLE_LISTEN_TO_RESOURCE_LOCATION = "Unable listen to resource location: ";
+
+	/**
+	 * The {@link List} of known {@link ILocationDescriptor}.
+	 */
+	private final List<ILocationDescriptor> knownDescriptors = new ArrayList<ILocationDescriptor>();
+
+	/**
+	 * The
+	 * {@link org.eclipse.intent.mapping.connector.IConnectorRegistry#register(org.eclipse.intent.mapping.connector.IConnector)
+	 * registered} {@link ResourceConnector}.
+	 */
+	private final ResourceConnector resourceConnector;
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param scan
+	 *            tells if we should scan the workspace
+	 * @param resourceConnector
+	 *            the
+	 *            {@link org.eclipse.intent.mapping.connector.IConnectorRegistry#register(org.eclipse.intent.mapping.connector.IConnector)
+	 *            registered} {@link ResourceConnector}
+	 */
+	public ResourceLocationListener(boolean scan, ResourceConnector resourceConnector) {
+		if (scan) {
+			scan(ResourcesPlugin.getWorkspace().getRoot());
+		}
+		this.resourceConnector = resourceConnector;
+	}
+
+	/**
+	 * Scans the given {@link IContainer} for bases.
+	 * 
+	 * @param container
+	 *            the {@link IContainer}
+	 */
+	private void scan(IContainer container) {
+		IResource[] members;
+		final IBase base = IdeMappingUtils.getCurrentBase();
+		if (base != null) {
+			try {
+				members = container.members();
+				for (IResource member : members) {
+					updateLocation(base, member);
+				}
+			} catch (CoreException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID,
+						UNABLE_LISTEN_TO_RESOURCE_LOCATION + e.getMessage(), e));
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.core.resources.IResourceChangeListener#resourceChanged(org.eclipse.core.resources.IResourceChangeEvent)
+	 */
+	public void resourceChanged(IResourceChangeEvent event) {
+		final IBase base = IdeMappingUtils.getCurrentBase();
+		if (event.getDelta() != null && base != null) {
+			walkDelta(event.getDelta(), new HashMap<IPath, IResource>(), base);
+		}
+	}
+
+	/**
+	 * Walks the {@link IResourceDelta} tree.
+	 * 
+	 * @param delta
+	 *            the root {@link IResourceDelta}
+	 * @param movedResources
+	 *            mapping of moved {@link IResource}
+	 * @param base
+	 *            the current {@link IBase}
+	 */
+	private void walkDelta(IResourceDelta delta, HashMap<IPath, IResource> movedResources, IBase base) {
+		processDelta(delta, movedResources, base);
+		for (IResourceDelta child : delta.getAffectedChildren()) {
+			walkDelta(child, movedResources, base);
+		}
+	}
+
+	/**
+	 * Processes the given {@link IResourceDelta} by
+	 * {@link WorkspaceListener#fireChange(fr.obeo.dsl.workspace.listener.change.IChange) firing}
+	 * {@link fr.obeo.dsl.workspace.listener.change.IChange IChange}.
+	 * 
+	 * @param delta
+	 *            the {@link IResourceDelta} to process
+	 * @param movedResources
+	 *            mapping of moved {@link IResource}
+	 * @param base
+	 *            the current {@link IBase}
+	 */
+	private void processDelta(IResourceDelta delta, HashMap<IPath, IResource> movedResources, IBase base) {
+		switch (delta.getKind()) {
+			case IResourceDelta.ADDED:
+				processAddedDelta(delta, movedResources, base);
+				break;
+
+			case IResourceDelta.REMOVED:
+				processRemovedDelta(delta, movedResources, base);
+				break;
+
+			case IResourceDelta.CHANGED:
+				processChangedDelta(delta, base);
+				break;
+
+			default:
+				break;
+		}
+	}
+
+	/**
+	 * Process {@link IResourceDelta} with {@link IResourceDelta#CHANGED changed}
+	 * {@link IResourceDelta#getKind() kind}.
+	 * 
+	 * @param delta
+	 *            the {@link IResourceDelta} with {@link IResourceDelta#CHANGED changed}
+	 *            {@link IResourceDelta#getKind() kind}
+	 * @param base
+	 *            the current {@link IBase}
+	 */
+	private void processChangedDelta(IResourceDelta delta, IBase base) {
+		if ((delta.getFlags() & IResourceDelta.OPEN) != 0) {
+			if (delta.getResource().isAccessible()) {
+				updateLocation(base, delta.getResource());
+			} else {
+				// we can't track changes but the location is still valid for the moment
+			}
+		} else if ((delta.getFlags() & IResourceDelta.DESCRIPTION) != 0) {
+			// nothing to do here
+		} else if ((delta.getFlags() & IResourceDelta.CONTENT) != 0) {
+			updateLocation(base, delta.getResource());
+		}
+	}
+
+	/**
+	 * Process {@link IResourceDelta} with {@link IResourceDelta#REMOVED removed}
+	 * {@link IResourceDelta#getKind() kind}.
+	 * 
+	 * @param delta
+	 *            the {@link IResourceDelta} with {@link IResourceDelta#REMOVED removed}
+	 *            {@link IResourceDelta#getKind() kind}
+	 * @param movedResources
+	 *            mapping of moved {@link IResource}
+	 * @param base
+	 *            the current {@link IBase}
+	 */
+	private void processRemovedDelta(IResourceDelta delta, HashMap<IPath, IResource> movedResources,
+			IBase base) {
+		if ((delta.getFlags() & IResourceDelta.MOVED_TO) != 0) {
+			final IResource target = movedResources.get(delta.getMovedToPath());
+			if (target != null) {
+				moveResource(base, delta.getResource(), target);
+			} else {
+				movedResources.put(delta.getResource().getFullPath(), delta.getResource());
+			}
+		} else {
+			// TODO we implicitly decide to have a flat structure of location here... we probably don't want
+			// to do
+			// that
+			final ILocation location = resourceConnector.getLocation(base, delta.getResource());
+			if (location != null) {
+				try {
+					MappingUtils.markAsDeletedOrDelete(location, "the resource " + delta.getResource()
+							.getFullPath().toString() + " has been deleted.");
+				} catch (InstantiationException e) {
+					Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, e
+							.getMessage(), e));
+				} catch (IllegalAccessException e) {
+					Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, e
+							.getMessage(), e));
+				} catch (ClassNotFoundException e) {
+					Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, e
+							.getMessage(), e));
+				}
+			}
+		}
+	}
+
+	/**
+	 * Process {@link IResourceDelta} with {@link IResourceDelta#ADDED added} {@link IResourceDelta#getKind()
+	 * kind}.
+	 * 
+	 * @param delta
+	 *            the {@link IResourceDelta} with {@link IResourceDelta#ADDED added}
+	 *            {@link IResourceDelta#getKind() kind}
+	 * @param movedResources
+	 *            mapping of moved {@link IResource}
+	 * @param base
+	 *            the current {@link IBase}
+	 */
+	private void processAddedDelta(IResourceDelta delta, HashMap<IPath, IResource> movedResources,
+			IBase base) {
+		if ((delta.getFlags() & IResourceDelta.MOVED_FROM) != 0) {
+			final IResource source = movedResources.get(delta.getMovedFromPath());
+			if (source != null) {
+				moveResource(base, source, delta.getResource());
+			} else {
+				movedResources.put(delta.getResource().getFullPath(), delta.getResource());
+			}
+		} else {
+			updateLocation(base, delta.getResource());
+		}
+	}
+
+	/**
+	 * Updates the given {@link IResource}.
+	 * 
+	 * @param base
+	 *            the current {@link IBase}
+	 * @param resource
+	 *            the changed {@link IResource}
+	 */
+	private void updateLocation(IBase base, IResource resource) {
+		// TODO we implicitly decide to have a flat structure of location here... we probably don't want to do
+		// that
+		final ILocation location = resourceConnector.getLocation(base, resource);
+		if (location != null && !location.isMarkedAsDeleted()) {
+			resourceConnector.updateLocation(location, resource);
+			try {
+				MappingUtils.markAsChanged(location, "Content changed.");
+			} catch (InstantiationException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			} catch (IllegalAccessException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			} catch (ClassNotFoundException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			}
+		}
+		updateKnownDescriptors(resource);
+	}
+
+	/**
+	 * Handles a {@link IResource} move.
+	 * 
+	 * @param base
+	 *            the current {@link IBase}
+	 * @param source
+	 *            the source {@link IResource}
+	 * @param target
+	 *            the target {@link IResource}
+	 */
+	private void moveResource(IBase base, IResource source, IResource target) {
+		// TODO we implicitly decide to have a flat structure of location here... we probably don't want to do
+		// that
+		final ILocation location = resourceConnector.getLocation(base, source);
+		if (location != null && !location.isMarkedAsDeleted()) {
+			resourceConnector.updateLocation(location, target);
+			try {
+				MappingUtils.markAsChanged(location, String.format("%s moved to %s", source.getFullPath()
+						.toPortableString(), target.getFullPath().toPortableString()));
+			} catch (InstantiationException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			} catch (IllegalAccessException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			} catch (ClassNotFoundException e) {
+				Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, e
+						.getMessage(), e));
+			}
+		}
+		moveKnownDescriptor(source, target);
+	}
+
+	/**
+	 * Updates known {@link ILocationDescriptor} for the given {@link IResource}.
+	 * 
+	 * @param resource
+	 *            the {@link IResource}
+	 */
+	private void updateKnownDescriptors(IResource resource) {
+		synchronized(knownDescriptors) {
+			for (ILocationDescriptor descriptor : knownDescriptors) {
+				if (resource.equals(descriptor.getElement())) {
+					descriptor.update(resource);
+				}
+			}
+		}
+	}
+
+	/**
+	 * Move known {@link ILocationDescriptor} from the given source to the given target.
+	 * 
+	 * @param source
+	 *            the source
+	 * @param target
+	 *            the target
+	 */
+	private void moveKnownDescriptor(IResource source, IResource target) {
+		synchronized(knownDescriptors) {
+			for (ILocationDescriptor descriptor : knownDescriptors) {
+				if (source.equals(descriptor.getElement())) {
+					descriptor.update(target);
+				}
+			}
+		}
+	}
+
+	/**
+	 * Adds the given {@link ILocationDescriptor}.
+	 * 
+	 * @param descriptor
+	 *            the {@link ILocationDescriptor} to add
+	 */
+	public void addKnownDescriptor(ILocationDescriptor descriptor) {
+		synchronized(knownDescriptors) {
+			knownDescriptors.add(descriptor);
+		}
+	}
+
+	/**
+	 * Removes the given {@link ILocationDescriptor}.
+	 * 
+	 * @param descriptor
+	 *            the {@link ILocationDescriptor} to remove
+	 */
+	public void removeKnownDescriptor(ILocationDescriptor descriptor) {
+		synchronized(knownDescriptors) {
+			knownDescriptors.remove(descriptor);
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/TextFileConnectorDelegate.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/TextFileConnectorDelegate.java
new file mode 100644
index 0000000..ca99e99
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/connector/TextFileConnectorDelegate.java
@@ -0,0 +1,93 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.connector;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.content.IContentTypeManager;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.content.IFileType;
+import org.eclipse.intent.mapping.ide.Activator;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+import org.eclipse.intent.mapping.ide.resource.ITextFileLocation;
+import org.eclipse.intent.mapping.text.TextConnector.TextContainerHelper;
+
+/**
+ * {@link ITextFileLocation} delegate.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class TextFileConnectorDelegate extends AbstractFileConnectorDelegate {
+
+	/**
+	 * The {@link IFileType}.
+	 */
+	private static final IFileType FILE_TYPE = MappingUtils.getFileTypeRegistry().getFileType(
+			IContentTypeManager.CT_TEXT);
+
+	/**
+	 * The {@link TextContainerHelper}.
+	 */
+	private final TextContainerHelper textContainerHelper = new TextContainerHelper();
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate#getFileType()
+	 */
+	public IFileType getFileType() {
+		return FILE_TYPE;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate#getFileLocationType()
+	 */
+	public Class<? extends IFileLocation> getFileLocationType() {
+		return ITextFileLocation.class;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate#initLocation(org.eclipse.intent.mapping.base.ILocationContainer,
+	 *      org.eclipse.intent.mapping.ide.resource.IFileLocation, org.eclipse.core.resources.IFile)
+	 */
+	public void initLocation(ILocationContainer container, IFileLocation location, IFile element) {
+		try {
+			final String text = MappingUtils.getContent(element.getLocation().toFile(), element.getCharset());
+			textContainerHelper.updateTextContainer(container, (ITextFileLocation)location, text);
+		} catch (CoreException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
+					e));
+		} catch (IOException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
+					e));
+		} catch (InstantiationException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
+					e));
+		} catch (IllegalAccessException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
+					e));
+		} catch (ClassNotFoundException e) {
+			Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
+					e));
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/internal/connector/FileDelegateRegistry.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/internal/connector/FileDelegateRegistry.java
new file mode 100644
index 0000000..dac7f92
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/internal/connector/FileDelegateRegistry.java
@@ -0,0 +1,83 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.internal.connector;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate;
+import org.eclipse.intent.mapping.ide.connector.IFileDelegateRegistry;
+
+/**
+ * The default implementation of {@link IFileDelegateRegistry}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class FileDelegateRegistry implements IFileDelegateRegistry {
+
+	/**
+	 * The {@link List} of {@link FileDelegateRegistry#register(IFileConnectorDelegate) registered}
+	 * {@link IFileConnectorDelegate}.
+	 */
+	private final List<IFileConnectorDelegate> connectorDelegates = Collections.synchronizedList(
+			new ArrayList<IFileConnectorDelegate>());
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileDelegateRegistry#register(org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate)
+	 */
+	public void register(IFileConnectorDelegate delegate) {
+		if (delegate != null) {
+			synchronized(connectorDelegates) {
+				int index = 0;
+				boolean added = false;
+				for (IFileConnectorDelegate connectorDelegate : connectorDelegates) {
+					if (delegate.getFileType().isKindOf(connectorDelegate.getFileType().getID())) {
+						connectorDelegates.add(index, delegate);
+						added = true;
+						break;
+					} else {
+						index++;
+					}
+				}
+				if (!added) {
+					connectorDelegates.add(index, delegate);
+				}
+			}
+		} else {
+			throw new IllegalArgumentException("IFileConnectorDelegate can't be null.");
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileDelegateRegistry#unregister(org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate)
+	 */
+	public void unregister(IFileConnectorDelegate delegate) {
+		connectorDelegates.remove(delegate);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.ide.connector.IFileDelegateRegistry#getConnectorDelegates()
+	 */
+	public List<IFileConnectorDelegate> getConnectorDelegates() {
+		synchronized(connectorDelegates) {
+			return Collections.unmodifiableList(connectorDelegates);
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/internal/content/IdeFileTypeRegistry.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/internal/content/IdeFileTypeRegistry.java
new file mode 100644
index 0000000..9314443
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/internal/content/IdeFileTypeRegistry.java
@@ -0,0 +1,157 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.internal.content;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.content.IContentType;
+import org.eclipse.core.runtime.content.IContentTypeManager;
+import org.eclipse.intent.mapping.content.IFileType;
+import org.eclipse.intent.mapping.content.IFileTypeProvider;
+import org.eclipse.intent.mapping.content.IFileTypeRegistry;
+import org.eclipse.intent.mapping.internal.content.FileType;
+import org.eclipse.intent.mapping.internal.content.FileTypeRegistry;
+
+/**
+ * Ide implementation of {@link FileTypeRegistry}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeFileTypeRegistry implements IFileTypeRegistry {
+
+	/**
+	 * Delegating {@link IFileTypeRegistry}.
+	 */
+	private final IFileTypeRegistry registry;
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param registry
+	 *            the delegating {@link IFileTypeRegistry}
+	 */
+	public IdeFileTypeRegistry(IFileTypeRegistry registry) {
+		this.registry = registry;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#getFileTypeProviders()
+	 */
+	public List<IFileTypeProvider> getFileTypeProviders() {
+		return registry.getFileTypeProviders();
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#registerFileType(java.lang.String,
+	 *      java.util.Set)
+	 */
+	public void registerFileType(String typeID, Set<String> suprTypeIDs) {
+		registry.registerFileType(typeID, suprTypeIDs);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#unregisterFileType(java.lang.String)
+	 */
+	public void unregisterFileType(String typeID) {
+		registry.unregisterFileType(typeID);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#getFileType(java.lang.String)
+	 */
+	public IFileType getFileType(String typeID) {
+		final IFileType res;
+
+		final IFileType delegateFileType = registry.getFileType(typeID);
+		if (delegateFileType == null) {
+			final IContentTypeManager contentTypeManager = Platform.getContentTypeManager();
+			final IContentType contentType = contentTypeManager.getContentType(typeID);
+			if (contentType != null) {
+				res = new FileType(contentType.getId());
+			} else {
+				res = null;
+			}
+		} else {
+			res = delegateFileType;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @throws IOException
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#getFileTypeFor(java.io.InputStream,
+	 *      java.lang.String)
+	 */
+	public IFileType getFileTypeFor(InputStream contents, String name) throws IOException {
+		final IFileType res;
+
+		final IFileType delegateFileType = registry.getFileTypeFor(contents, name);
+		if (delegateFileType == null) {
+			final IContentType contentType = Platform.getContentTypeManager().findContentTypeFor(contents,
+					name);
+			if (contentType != null) {
+				res = new FileType(contentType.getId());
+			} else {
+				res = null;
+			}
+		} else {
+			res = delegateFileType;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#isKindOf(java.lang.String, java.lang.String)
+	 */
+	public boolean isKindOf(String typeID, String superTypeID) {
+		final boolean res;
+
+		if (registry.isKindOf(typeID, superTypeID)) {
+			res = true;
+		} else {
+			final IContentTypeManager contentTypeManager = Platform.getContentTypeManager();
+			final IContentType contentType = contentTypeManager.getContentType(typeID);
+			final IContentType superContentType = contentTypeManager.getContentType(superTypeID);
+			res = contentType != null && contentType.isKindOf(superContentType);
+		}
+
+		return res;
+	}
+
+	/**
+	 * Gets the delegating {@link IFileTypeRegistry}.
+	 * 
+	 * @return the delegating {@link IFileTypeRegistry}
+	 */
+	public IFileTypeRegistry getDelegate() {
+		return registry;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/resource/IFileLocation.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/resource/IFileLocation.java
new file mode 100644
index 0000000..00e18df
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/resource/IFileLocation.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.resource;
+
+/**
+ * An {@link org.eclipse.core.resources.IFile IFile} {@link org.eclipse.intent.mapping.base.ILocation
+ * ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IFileLocation extends IResourceLocation {
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/resource/IResourceLocation.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/resource/IResourceLocation.java
new file mode 100644
index 0000000..70c9df6
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/resource/IResourceLocation.java
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.resource;
+
+import org.eclipse.intent.mapping.base.ILocation;
+
+/**
+ * An {@link org.eclipse.core.resources.IResource IResource} {@link ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IResourceLocation extends ILocation {
+
+	/**
+	 * Get the {@link org.eclipse.core.resources.IResource#getFullPath() full path}
+	 * {@link org.eclipse.core.runtime.IPath#toPortableString() portable string} of the located
+	 * {@link org.eclipse.core.resources.IResource IResource}.
+	 * 
+	 * @return the {@link org.eclipse.core.resources.IResource#getFullPath() full path}
+	 *         {@link org.eclipse.core.runtime.IPath#toPortableString() portable string} of the located
+	 *         {@link org.eclipse.core.resources.IResource IResource}
+	 */
+	String getFullPath();
+
+	/**
+	 * Set the {@link org.eclipse.core.resources.IResource#getFullPath() full path}
+	 * {@link org.eclipse.core.runtime.IPath#toPortableString() portable string} of the located
+	 * {@link org.eclipse.core.resources.IResource IResource}.
+	 * 
+	 * @param path
+	 *            the {@link org.eclipse.core.resources.IResource#getFullPath() full path}
+	 *            {@link org.eclipse.core.runtime.IPath#toPortableString() portable string} of the
+	 *            {@link org.eclipse.core.resources.IResource IResource} to locate
+	 */
+	void setFullPath(String path);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/resource/ITextFileLocation.java b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/resource/ITextFileLocation.java
new file mode 100644
index 0000000..c16a443
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.ide/src/org/eclipse/intent/mapping/ide/resource/ITextFileLocation.java
@@ -0,0 +1,23 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.resource;
+
+import org.eclipse.intent.mapping.text.ITextContainer;
+
+/**
+ * Text {@link IFileLocation}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ITextFileLocation extends IFileLocation, ITextContainer {
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.checkstyle b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.checkstyle
new file mode 100644
index 0000000..b3e8ea9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.checkstyle
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6Configuration.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+  <filter name="FilesFromPackage" enabled="true">
+    <filter-data value="google-diff-match-patch"/>
+  </filter>
+</fileset-config>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.classpath b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.classpath
new file mode 100644
index 0000000..098194c
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.project b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.project
new file mode 100644
index 0000000..59fa0e9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.sirius.ide.ui</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.settings/org.eclipse.jdt.core.prefs b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..8b92e11
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,315 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.7
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.settings/org.eclipse.jdt.ui.prefs b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..08338a7
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=com;fr;java;javax;org;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/META-INF/MANIFEST.MF b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..2303721
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,16 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Mapping Sirius Integartion
+Bundle-SymbolicName: org.eclipse.intent.mapping.sirius.ide.ui;singleton:=true
+Bundle-Version: 0.10.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.ui,
+ org.eclipse.core.expressions,
+ org.eclipse.core.contenttype,
+ org.eclipse.emf.ecore,
+ org.eclipse.sirius,
+ org.eclipse.intent.mapping.ide.ui,
+ org.eclipse.intent.mapping.ide,
+ org.eclipse.intent.mapping
+Export-Package: org.eclipse.intent.mapping.sirius.ide.ui.command
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/build.properties b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/build.properties
new file mode 100644
index 0000000..cc91072
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/build.properties
@@ -0,0 +1,4 @@
+source.. = src/
+bin.includes = META-INF/,\
+               .,\
+               plugin.xml
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/plugin.xml b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/plugin.xml
new file mode 100644
index 0000000..37e9293
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/plugin.xml
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+   <extension
+         point="org.eclipse.ui.menus">
+      <menuContribution
+            allPopups="false"
+            locationURI="popup:org.eclipse.intent.mapping.ide.ui.menu?after=additions">
+         <command
+               commandId="org.eclipse.intent.mapping.sirius.ide.ui.linkSemanticElementAsSource"
+               label="Link semantic element location as master source"
+               style="push"
+               tooltip="Links the current location as master source with activated locations from the synchronization palette">
+            <visibleWhen
+                  checkEnabled="false">
+               <with
+                     variable="selection">
+                  <iterate
+                        ifEmpty="false"
+                        operator="and">
+                     <adapt
+                           type="org.eclipse.emf.ecore.EObject">
+                        <and>
+                           <instanceof
+                                 value="org.eclipse.sirius.viewpoint.DSemanticDecorator">
+                           </instanceof>
+                           <test
+                                 forcePluginActivation="true"
+                                 property="org.eclipse.intent.mapping.sirius.ide.ui.semanticElementIsLocation">
+                           </test>
+                        </and>
+                     </adapt>
+                  </iterate>
+               </with>
+            </visibleWhen>
+         </command>
+         <command
+               commandId="org.eclipse.intent.mapping.sirius.ide.ui.linkSemanticElementAsTarget"
+               label="Link semantic element location as slave target"
+               style="push"
+               tooltip="Links the current location as slave target with activated locations from the synchronization palette">
+            <visibleWhen
+                  checkEnabled="false">
+               <with
+                     variable="selection">
+                  <iterate
+                        ifEmpty="false"
+                        operator="and">
+                     <adapt
+                           type="org.eclipse.emf.ecore.EObject">
+                        <and>
+                           <instanceof
+                                 value="org.eclipse.sirius.viewpoint.DSemanticDecorator">
+                           </instanceof>
+                           <test
+                                 forcePluginActivation="true"
+                                 property="org.eclipse.intent.mapping.sirius.ide.ui.semanticElementIsLocation">
+                           </test>
+                        </and>
+                     </adapt>
+                  </iterate>
+               </with>
+            </visibleWhen>
+         </command>
+         <command
+               commandId="org.eclipse.intent.mapping.sirius.ide.ui.addSemanticElementToSynchronizationPalette"
+               label="Add semantic element location to synchronization palette"
+               style="push"
+               tooltip="Adds the selected location to synchronization palette">
+            <visibleWhen
+                  checkEnabled="false">
+               <with
+                     variable="selection">
+                  <iterate
+                        ifEmpty="false"
+                        operator="and">
+                     <adapt
+                           type="org.eclipse.emf.ecore.EObject">
+                        <and>
+                           <instanceof
+                                 value="org.eclipse.sirius.viewpoint.DSemanticDecorator">
+                           </instanceof>
+                           <test
+                                 forcePluginActivation="true"
+                                 property="org.eclipse.intent.mapping.sirius.ide.ui.semanticElementIsLocation">
+                           </test>
+                        </and>
+                     </adapt>
+                  </iterate>
+               </with>
+            </visibleWhen>
+         </command>
+         <command
+               commandId="org.eclipse.intent.mapping.sirius.ide.ui.removeSemanticElementFromSynchronizationPalette"
+               label="Remove semantic element location from synchronization palette"
+               style="push"
+               tooltip="Removes the selected location from the synchronization palette">
+            <visibleWhen
+                  checkEnabled="false">
+               <with
+                     variable="selection">
+                  <iterate
+                        ifEmpty="false"
+                        operator="and">
+                     <adapt
+                           type="org.eclipse.emf.ecore.EObject">
+                        <and>
+                           <instanceof
+                                 value="org.eclipse.sirius.viewpoint.DSemanticDecorator">
+                           </instanceof>
+                           <test
+                                 forcePluginActivation="true"
+                                 property="org.eclipse.intent.mapping.sirius.ide.ui.semanticElementIsLocation">
+                           </test>
+                        </and>
+                     </adapt>
+                  </iterate>
+               </with>
+            </visibleWhen>
+         </command>
+      </menuContribution>
+   </extension>
+   <extension
+         point="org.eclipse.ui.handlers">
+      <handler
+            class="org.eclipse.intent.mapping.sirius.ide.ui.command.AddSemanticElementToSynchronizationPaletteHandler"
+            commandId="org.eclipse.intent.mapping.sirius.ide.ui.addSemanticElementToSynchronizationPalette">
+      </handler>
+      <handler
+            class="org.eclipse.intent.mapping.sirius.ide.ui.command.RemoveSemanticElementFromSynchronizationPaletteHandler"
+            commandId="org.eclipse.intent.mapping.sirius.ide.ui.removeSemanticElementFromSynchronizationPalette">
+      </handler>
+      <handler
+            class="org.eclipse.intent.mapping.sirius.ide.ui.command.LinkSemanticElementAsSource"
+            commandId="org.eclipse.intent.mapping.sirius.ide.ui.linkSemanticElementAsSource">
+      </handler>
+      <handler
+            class="org.eclipse.intent.mapping.sirius.ide.ui.command.LinkSemanticElementAsTarget"
+            commandId="org.eclipse.intent.mapping.sirius.ide.ui.linkSemanticElementAsTarget">
+      </handler>
+   </extension>
+   <extension
+         point="org.eclipse.ui.commands">
+      <command
+            description="Adds the selected semantic element location to synchronization palette"
+            id="org.eclipse.intent.mapping.sirius.ide.ui.addSemanticElementToSynchronizationPalette"
+            name="Add semantic element location to synchronization palette">
+      </command>
+      <command
+            description="Removes the selected semantic element location from the synchronization palette"
+            id="org.eclipse.intent.mapping.sirius.ide.ui.removeSemanticElementFromSynchronizationPalette"
+            name="Remove semantic element location from synchronization palette">
+      </command>
+      <command
+            description="Links the selected semantic element location as master source with activated locations from the synchronization palette"
+            id="org.eclipse.intent.mapping.sirius.ide.ui.linkSemanticElementAsSource"
+            name="Link semantic element as master source">
+      </command>
+      <command
+            description="Links the selected semantic element location as slave target with activated locations from the synchronization palette"
+            id="org.eclipse.intent.mapping.sirius.ide.ui.linkSemanticElementAsTarget"
+            name="Link semantic element as slave target">
+      </command>
+   </extension>
+   <extension
+         point="org.eclipse.core.contenttype.contentTypes">
+      <file-association
+            content-type="org.eclipse.emf.ecore.xmi"
+            file-extensions="aird">
+      </file-association>
+   </extension>
+   <extension
+         point="org.eclipse.core.expressions.propertyTesters">
+      <propertyTester
+            class="org.eclipse.intent.mapping.sirius.ide.ui.command.SemanticElementIsLocationPropertyTester"
+            id="org.eclipse.intent.mapping.sirius.ide.ui.semanticElementIsLocation"
+            namespace="org.eclipse.intent.mapping.sirius.ide.ui"
+            properties="semanticElementIsLocation"
+            type="java.lang.Object">
+      </propertyTester>
+   </extension>
+</plugin>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/pom.xml b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/pom.xml
new file mode 100644
index 0000000..a78f6f0
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/pom.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping.sirius.ide.ui</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-plugin</packaging>
+
+  <name>Mapping IDE UI</name>
+
+  <build>
+   <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-source-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+  
+</project>
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/AddSemanticElementToSynchronizationPaletteHandler.java b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/AddSemanticElementToSynchronizationPaletteHandler.java
new file mode 100644
index 0000000..4269430
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/AddSemanticElementToSynchronizationPaletteHandler.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.sirius.ide.ui.command;
+
+import org.eclipse.intent.mapping.ide.ui.command.AddToSynchronizationPaletteHandler;
+
+/**
+ * Adds selected semantic {@link org.eclipse.intent.mapping.base.ILocationDescriptor ILocationDescriptor} to
+ * the {@link org.eclipse.intent.mapping.ide.IdeMappingUtils#getSynchronizationPalette() synchronization
+ * palette}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class AddSemanticElementToSynchronizationPaletteHandler extends AddToSynchronizationPaletteHandler {
+
+	@Override
+	protected Object getElementFromSelectedObject(Object selected) {
+		return SiriusMappingUtils.getSemanticElementFromSelectedObject(selected);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/LinkSemanticElementAsSource.java b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/LinkSemanticElementAsSource.java
new file mode 100644
index 0000000..59dfa5f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/LinkSemanticElementAsSource.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.sirius.ide.ui.command;
+
+import org.eclipse.intent.mapping.ide.ui.command.LinkAsSource;
+
+/**
+ * Links the selection semantic elements as {@link org.eclipse.intent.mapping.base.ILink#getSource() source}
+ * of the active synchronization palette.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class LinkSemanticElementAsSource extends LinkAsSource {
+
+	@Override
+	protected Object getElementFromSelectedObject(Object selected) {
+		return SiriusMappingUtils.getSemanticElementFromSelectedObject(selected);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/LinkSemanticElementAsTarget.java b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/LinkSemanticElementAsTarget.java
new file mode 100644
index 0000000..5edde9f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/LinkSemanticElementAsTarget.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.sirius.ide.ui.command;
+
+import org.eclipse.intent.mapping.ide.ui.command.LinkAsTarget;
+
+/**
+ * Links the selection semantic elements as {@link org.eclipse.intent.mapping.base.ILink#getTarget() target}
+ * of the active synchronization palette.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class LinkSemanticElementAsTarget extends LinkAsTarget {
+
+	@Override
+	protected Object getElementFromSelectedObject(Object selected) {
+		return SiriusMappingUtils.getSemanticElementFromSelectedObject(selected);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/RemoveSemanticElementFromSynchronizationPaletteHandler.java b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/RemoveSemanticElementFromSynchronizationPaletteHandler.java
new file mode 100644
index 0000000..b70eec7
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/RemoveSemanticElementFromSynchronizationPaletteHandler.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.sirius.ide.ui.command;
+
+import org.eclipse.intent.mapping.ide.ui.command.RemoveFromSynchronizationPaletteHandler;
+
+/**
+ * Removes selected semantic elements {@link org.eclipse.intent.mapping.base.ILocationDescriptor
+ * ILocationDescriptor} from the
+ * {@link org.eclipse.intent.mapping.ide.IdeMappingUtils#getSynchronizationPalette() synchronization palette}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class RemoveSemanticElementFromSynchronizationPaletteHandler extends RemoveFromSynchronizationPaletteHandler {
+
+	@Override
+	protected Object getElementFromSelectedObject(Object selected) {
+		return SiriusMappingUtils.getSemanticElementFromSelectedObject(selected);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/SemanticElementIsLocationPropertyTester.java b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/SemanticElementIsLocationPropertyTester.java
new file mode 100644
index 0000000..62af12a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/SemanticElementIsLocationPropertyTester.java
@@ -0,0 +1,48 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.sirius.ide.ui.command;
+
+import org.eclipse.core.expressions.PropertyTester;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.sirius.viewpoint.DSemanticDecorator;
+
+/**
+ * Tests if the {@link DSemanticDecorator}'s {@link DSemanticDecorator#getTarget() semantic element} can be
+ * located.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class SemanticElementIsLocationPropertyTester extends PropertyTester {
+
+	@Override
+	public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
+		final boolean res;
+
+		if (receiver instanceof DSemanticDecorator) {
+			final EObject element = ((DSemanticDecorator)receiver).getTarget();
+			final ILocationDescriptor locationDescriptor = IdeMappingUtils.adapt(element,
+					ILocationDescriptor.class);
+			if (locationDescriptor != null) {
+				locationDescriptor.dispose();
+				res = true;
+			} else {
+				res = false;
+			}
+		} else {
+			res = false;
+		}
+
+		return res;
+	}
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/SiriusMappingUtils.java b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/SiriusMappingUtils.java
new file mode 100644
index 0000000..e5b4043
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping.sirius.ide.ui/src/org/eclipse/intent/mapping/sirius/ide/ui/command/SiriusMappingUtils.java
@@ -0,0 +1,53 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.sirius.ide.ui.command;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.sirius.viewpoint.DSemanticDecorator;
+
+/**
+ * Utility class for Sirius mapping.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public final class SiriusMappingUtils {
+
+	/**
+	 * Constructor.
+	 */
+	private SiriusMappingUtils() {
+		// nothing to do here
+	}
+
+	/**
+	 * Gets the {@link DSemanticDecorator#getTarget() semantic element} from the given selected {@link Object}
+	 * .
+	 * 
+	 * @param selected
+	 *            the selected {@link Object}
+	 * @return the {@link DSemanticDecorator#getTarget() semantic element} from the given selected
+	 *         {@link Object} if any, <code>null</code> otherwise
+	 */
+	public static Object getSemanticElementFromSelectedObject(Object selected) {
+		final Object res;
+
+		final EObject eObject = IdeMappingUtils.adapt(selected, EObject.class);
+		if (eObject instanceof DSemanticDecorator) {
+			res = ((DSemanticDecorator)eObject).getTarget();
+		} else {
+			res = null;
+		}
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/.checkstyle b/mapping/plugins/org.eclipse.intent.mapping/.checkstyle
new file mode 100644
index 0000000..b3e8ea9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/.checkstyle
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6Configuration.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+  <filter name="FilesFromPackage" enabled="true">
+    <filter-data value="google-diff-match-patch"/>
+  </filter>
+</fileset-config>
diff --git a/mapping/plugins/org.eclipse.intent.mapping/.classpath b/mapping/plugins/org.eclipse.intent.mapping/.classpath
new file mode 100644
index 0000000..530efee
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="src" path="google-diff-match-patch"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/plugins/org.eclipse.intent.mapping/.project b/mapping/plugins/org.eclipse.intent.mapping/.project
new file mode 100644
index 0000000..3f83280
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/plugins/org.eclipse.intent.mapping/.settings/org.eclipse.jdt.core.prefs b/mapping/plugins/org.eclipse.intent.mapping/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3433b02
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,315 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/plugins/org.eclipse.intent.mapping/.settings/org.eclipse.jdt.ui.prefs b/mapping/plugins/org.eclipse.intent.mapping/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..9c9d139
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=com;eu;fr;java;javax;name;org;\#org.junit;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/plugins/org.eclipse.intent.mapping/META-INF/MANIFEST.MF b/mapping/plugins/org.eclipse.intent.mapping/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..c5d76ee
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/META-INF/MANIFEST.MF
@@ -0,0 +1,14 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Mapper
+Bundle-SymbolicName: org.eclipse.intent.mapping
+Bundle-Version: 0.10.0.qualifier
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.intent.mapping,
+ org.eclipse.intent.mapping.base,
+ org.eclipse.intent.mapping.connector,
+ org.eclipse.intent.mapping.content,
+ org.eclipse.intent.mapping.internal.base;x-friends:="org.eclipse.intent.mapping.tests",
+ org.eclipse.intent.mapping.internal.connector,
+ org.eclipse.intent.mapping.internal.content,
+ org.eclipse.intent.mapping.text
diff --git a/mapping/plugins/org.eclipse.intent.mapping/build.properties b/mapping/plugins/org.eclipse.intent.mapping/build.properties
new file mode 100644
index 0000000..5992857
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/build.properties
@@ -0,0 +1,4 @@
+source.. = src/,\
+           google-diff-match-patch/
+bin.includes = META-INF/,\
+               .
diff --git a/mapping/plugins/org.eclipse.intent.mapping/google-diff-match-patch/name/fraser/neil/plaintext/diff_match_patch.java b/mapping/plugins/org.eclipse.intent.mapping/google-diff-match-patch/name/fraser/neil/plaintext/diff_match_patch.java
new file mode 100644
index 0000000..753de1f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/google-diff-match-patch/name/fraser/neil/plaintext/diff_match_patch.java
@@ -0,0 +1,2514 @@
+/*
+ * Diff Match and Patch
+ *
+ * Copyright 2006 Google Inc.
+ * http://code.google.com/p/google-diff-match-patch/
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package name.fraser.neil.plaintext;
+
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
+import java.net.URLEncoder;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.ListIterator;
+import java.util.Map;
+import java.util.Stack;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/*
+ * Functions for diff, match and patch.
+ * Computes the difference between two texts to create a patch.
+ * Applies the patch onto another text, allowing for errors.
+ *
+ * @author fraser@google.com (Neil Fraser)
+ */
+
+/**
+ * Class containing the diff, match and patch methods. Also contains the behavior settings.
+ * <p>
+ * <b>Note :</b> This is a copy of the diff_match_patch class
+ * https://code.google.com/p/google-diff-match-patch
+ * /source/browse/trunk/java/name/fraser/neil/plaintext/diff_match_patch.java?spec=svn89&r=106
+ * </p>
+ * Related CQ: https://dev.eclipse.org/ipzilla/show_bug.cgi?id=7404
+ */
+// CHECKSTYLE:OFF
+public class diff_match_patch {
+
+	// Defaults.
+	// Set these on your diff_match_patch instance to override the defaults.
+
+	/**
+	 * Number of seconds to map a diff before giving up (0 for infinity).
+	 */
+	public float Diff_Timeout = 1.0f;
+
+	/**
+	 * Cost of an empty edit operation in terms of edit characters.
+	 */
+	public short Diff_EditCost = 4;
+
+	/**
+	 * At what point is no match declared (0.0 = perfection, 1.0 = very loose).
+	 */
+	public float Match_Threshold = 0.5f;
+
+	/**
+	 * How far to search for a match (0 = exact location, 1000+ = broad match). A match this many characters
+	 * away from the expected location will add 1.0 to the score (0.0 is a perfect match).
+	 */
+	public int Match_Distance = 1000;
+
+	/**
+	 * When deleting a large block of text (over ~64 characters), how close do the contents have to be to
+	 * match the expected contents. (0.0 = perfection, 1.0 = very loose). Note that Match_Threshold controls
+	 * how closely the end points of a delete need to match.
+	 */
+	public float Patch_DeleteThreshold = 0.5f;
+
+	/**
+	 * Chunk size for context length.
+	 */
+	public short Patch_Margin = 4;
+
+	/**
+	 * The number of bits in an int.
+	 */
+	private short Match_MaxBits = 32;
+
+	/**
+	 * Internal class for returning results from diff_linesToChars(). Other less paranoid languages just use a
+	 * three-element array.
+	 */
+	protected static class LinesToCharsResult {
+		protected String chars1;
+
+		protected String chars2;
+
+		protected List<String> lineArray;
+
+		protected LinesToCharsResult(String chars1, String chars2, List<String> lineArray) {
+			this.chars1 = chars1;
+			this.chars2 = chars2;
+			this.lineArray = lineArray;
+		}
+	}
+
+	// DIFF FUNCTIONS
+
+	/**
+	 * The data structure representing a diff is a Linked list of Diff objects: {Diff(Operation.DELETE,
+	 * "Hello"), Diff(Operation.INSERT, "Goodbye"), Diff(Operation.EQUAL, " world.")} which means: delete
+	 * "Hello", add "Goodbye" and keep " world."
+	 */
+	public enum Operation {
+		DELETE, INSERT, EQUAL
+	}
+
+	/**
+	 * Find the differences between two texts. Run a faster, slightly less optimal diff. This method allows
+	 * the 'checklines' of diff_main() to be optional. Most of the time checklines is wanted, so default to
+	 * true.
+	 * 
+	 * @param text1
+	 *            Old string to be diffed.
+	 * @param text2
+	 *            New string to be diffed.
+	 * @return Linked List of Diff objects.
+	 */
+	public LinkedList<Diff> diff_main(String text1, String text2) {
+		return diff_main(text1, text2, true);
+	}
+
+	/**
+	 * Find the differences between two texts.
+	 * 
+	 * @param text1
+	 *            Old string to be diffed.
+	 * @param text2
+	 *            New string to be diffed.
+	 * @param checklines
+	 *            Speedup flag. If false, then don't run a line-level diff first to identify the changed
+	 *            areas. If true, then run a faster slightly less optimal diff.
+	 * @return Linked List of Diff objects.
+	 */
+	public LinkedList<Diff> diff_main(String text1, String text2, boolean checklines) {
+		// Set a deadline by which time the diff must be complete.
+		long deadline;
+		if (Diff_Timeout <= 0) {
+			deadline = Long.MAX_VALUE;
+		} else {
+			deadline = System.currentTimeMillis() + (long)(Diff_Timeout * 1000);
+		}
+		return diff_main(text1, text2, checklines, deadline);
+	}
+
+	/**
+	 * Find the differences between two texts. Simplifies the problem by stripping any common prefix or suffix
+	 * off the texts before diffing.
+	 * 
+	 * @param text1
+	 *            Old string to be diffed.
+	 * @param text2
+	 *            New string to be diffed.
+	 * @param checklines
+	 *            Speedup flag. If false, then don't run a line-level diff first to identify the changed
+	 *            areas. If true, then run a faster slightly less optimal diff.
+	 * @param deadline
+	 *            Time when the diff should be complete by. Used internally for recursive calls. Users should
+	 *            set DiffTimeout instead.
+	 * @return Linked List of Diff objects.
+	 */
+	private LinkedList<Diff> diff_main(String text1, String text2, boolean checklines, long deadline) {
+		// Check for null inputs.
+		if (text1 == null || text2 == null) {
+			throw new IllegalArgumentException("Null inputs. (diff_main)");
+		}
+
+		// Check for equality (speedup).
+		LinkedList<Diff> diffs;
+		if (text1.equals(text2)) {
+			diffs = new LinkedList<Diff>();
+			if (text1.length() != 0) {
+				diffs.add(new Diff(Operation.EQUAL, text1));
+			}
+			return diffs;
+		}
+
+		// Trim off common prefix (speedup).
+		int commonlength = diff_commonPrefix(text1, text2);
+		String commonprefix = text1.substring(0, commonlength);
+		text1 = text1.substring(commonlength);
+		text2 = text2.substring(commonlength);
+
+		// Trim off common suffix (speedup).
+		commonlength = diff_commonSuffix(text1, text2);
+		String commonsuffix = text1.substring(text1.length() - commonlength);
+		text1 = text1.substring(0, text1.length() - commonlength);
+		text2 = text2.substring(0, text2.length() - commonlength);
+
+		// Compute the diff on the middle block.
+		diffs = diff_compute(text1, text2, checklines, deadline);
+
+		// Restore the prefix and suffix.
+		if (commonprefix.length() != 0) {
+			diffs.addFirst(new Diff(Operation.EQUAL, commonprefix));
+		}
+		if (commonsuffix.length() != 0) {
+			diffs.addLast(new Diff(Operation.EQUAL, commonsuffix));
+		}
+
+		diff_cleanupMerge(diffs);
+		return diffs;
+	}
+
+	/**
+	 * Find the differences between two texts. Assumes that the texts do not have any common prefix or suffix.
+	 * 
+	 * @param text1
+	 *            Old string to be diffed.
+	 * @param text2
+	 *            New string to be diffed.
+	 * @param checklines
+	 *            Speedup flag. If false, then don't run a line-level diff first to identify the changed
+	 *            areas. If true, then run a faster slightly less optimal diff.
+	 * @param deadline
+	 *            Time when the diff should be complete by.
+	 * @return Linked List of Diff objects.
+	 */
+	private LinkedList<Diff> diff_compute(String text1, String text2, boolean checklines, long deadline) {
+		LinkedList<Diff> diffs = new LinkedList<Diff>();
+
+		if (text1.length() == 0) {
+			// Just add some text (speedup).
+			diffs.add(new Diff(Operation.INSERT, text2));
+			return diffs;
+		}
+
+		if (text2.length() == 0) {
+			// Just delete some text (speedup).
+			diffs.add(new Diff(Operation.DELETE, text1));
+			return diffs;
+		}
+
+		String longtext = text1.length() > text2.length() ? text1 : text2;
+		String shorttext = text1.length() > text2.length() ? text2 : text1;
+		int i = longtext.indexOf(shorttext);
+		if (i != -1) {
+			// Shorter text is inside the longer text (speedup).
+			Operation op = (text1.length() > text2.length()) ? Operation.DELETE : Operation.INSERT;
+			diffs.add(new Diff(op, longtext.substring(0, i)));
+			diffs.add(new Diff(Operation.EQUAL, shorttext));
+			diffs.add(new Diff(op, longtext.substring(i + shorttext.length())));
+			return diffs;
+		}
+
+		if (shorttext.length() == 1) {
+			// Single character string.
+			// After the previous speedup, the character can't be an equality.
+			diffs.add(new Diff(Operation.DELETE, text1));
+			diffs.add(new Diff(Operation.INSERT, text2));
+			return diffs;
+		}
+
+		// Check to see if the problem can be split in two.
+		String[] hm = diff_halfMatch(text1, text2);
+		if (hm != null) {
+			// A half-match was found, sort out the return data.
+			String text1_a = hm[0];
+			String text1_b = hm[1];
+			String text2_a = hm[2];
+			String text2_b = hm[3];
+			String mid_common = hm[4];
+			// Send both pairs off for separate processing.
+			LinkedList<Diff> diffs_a = diff_main(text1_a, text2_a, checklines, deadline);
+			LinkedList<Diff> diffs_b = diff_main(text1_b, text2_b, checklines, deadline);
+			// Merge the results.
+			diffs = diffs_a;
+			diffs.add(new Diff(Operation.EQUAL, mid_common));
+			diffs.addAll(diffs_b);
+			return diffs;
+		}
+
+		if (checklines && text1.length() > 100 && text2.length() > 100) {
+			return diff_lineMode(text1, text2, deadline);
+		}
+
+		return diff_bisect(text1, text2, deadline);
+	}
+
+	/**
+	 * Do a quick line-level diff on both strings, then rediff the parts for greater accuracy. This speedup
+	 * can produce non-minimal diffs.
+	 * 
+	 * @param text1
+	 *            Old string to be diffed.
+	 * @param text2
+	 *            New string to be diffed.
+	 * @param deadline
+	 *            Time when the diff should be complete by.
+	 * @return Linked List of Diff objects.
+	 */
+	private LinkedList<Diff> diff_lineMode(String text1, String text2, long deadline) {
+		// Scan the text on a line-by-line basis first.
+		LinesToCharsResult b = diff_linesToChars(text1, text2);
+		text1 = b.chars1;
+		text2 = b.chars2;
+		List<String> linearray = b.lineArray;
+
+		LinkedList<Diff> diffs = diff_main(text1, text2, false, deadline);
+
+		// Convert the diff back to original text.
+		diff_charsToLines(diffs, linearray);
+		// Eliminate freak matches (e.g. blank lines)
+		diff_cleanupSemantic(diffs);
+
+		// Rediff any replacement blocks, this time character-by-character.
+		// Add a dummy entry at the end.
+		diffs.add(new Diff(Operation.EQUAL, ""));
+		int count_delete = 0;
+		int count_insert = 0;
+		String text_delete = "";
+		String text_insert = "";
+		ListIterator<Diff> pointer = diffs.listIterator();
+		Diff thisDiff = pointer.next();
+		while (thisDiff != null) {
+			switch (thisDiff.operation) {
+				case INSERT:
+					count_insert++;
+					text_insert += thisDiff.text;
+					break;
+				case DELETE:
+					count_delete++;
+					text_delete += thisDiff.text;
+					break;
+				case EQUAL:
+					// Upon reaching an equality, check for prior redundancies.
+					if (count_delete >= 1 && count_insert >= 1) {
+						// Delete the offending records and add the merged ones.
+						pointer.previous();
+						for (int j = 0; j < count_delete + count_insert; j++) {
+							pointer.previous();
+							pointer.remove();
+						}
+						for (Diff newDiff : diff_main(text_delete, text_insert, false, deadline)) {
+							pointer.add(newDiff);
+						}
+					}
+					count_insert = 0;
+					count_delete = 0;
+					text_delete = "";
+					text_insert = "";
+					break;
+			}
+			thisDiff = pointer.hasNext() ? pointer.next() : null;
+		}
+		diffs.removeLast(); // Remove the dummy entry at the end.
+
+		return diffs;
+	}
+
+	/**
+	 * Find the 'middle snake' of a diff, split the problem in two and return the recursively constructed
+	 * diff. See Myers 1986 paper: An O(ND) Difference Algorithm and Its Variations.
+	 * 
+	 * @param text1
+	 *            Old string to be diffed.
+	 * @param text2
+	 *            New string to be diffed.
+	 * @param deadline
+	 *            Time at which to bail if not yet complete.
+	 * @return LinkedList of Diff objects.
+	 */
+	protected LinkedList<Diff> diff_bisect(String text1, String text2, long deadline) {
+		// Cache the text lengths to prevent multiple calls.
+		int text1_length = text1.length();
+		int text2_length = text2.length();
+		int max_d = (text1_length + text2_length + 1) / 2;
+		int v_offset = max_d;
+		int v_length = 2 * max_d;
+		int[] v1 = new int[v_length];
+		int[] v2 = new int[v_length];
+		for (int x = 0; x < v_length; x++) {
+			v1[x] = -1;
+			v2[x] = -1;
+		}
+		v1[v_offset + 1] = 0;
+		v2[v_offset + 1] = 0;
+		int delta = text1_length - text2_length;
+		// If the total number of characters is odd, then the front path will
+		// collide with the reverse path.
+		boolean front = (delta % 2 != 0);
+		// Offsets for start and end of k loop.
+		// Prevents mapping of space beyond the grid.
+		int k1start = 0;
+		int k1end = 0;
+		int k2start = 0;
+		int k2end = 0;
+		for (int d = 0; d < max_d; d++) {
+			// Bail out if deadline is reached.
+			if (System.currentTimeMillis() > deadline) {
+				break;
+			}
+
+			// Walk the front path one step.
+			for (int k1 = -d + k1start; k1 <= d - k1end; k1 += 2) {
+				int k1_offset = v_offset + k1;
+				int x1;
+				if (k1 == -d || (k1 != d && v1[k1_offset - 1] < v1[k1_offset + 1])) {
+					x1 = v1[k1_offset + 1];
+				} else {
+					x1 = v1[k1_offset - 1] + 1;
+				}
+				int y1 = x1 - k1;
+				while (x1 < text1_length && y1 < text2_length && text1.charAt(x1) == text2.charAt(y1)) {
+					x1++;
+					y1++;
+				}
+				v1[k1_offset] = x1;
+				if (x1 > text1_length) {
+					// Ran off the right of the graph.
+					k1end += 2;
+				} else if (y1 > text2_length) {
+					// Ran off the bottom of the graph.
+					k1start += 2;
+				} else if (front) {
+					int k2_offset = v_offset + delta - k1;
+					if (k2_offset >= 0 && k2_offset < v_length && v2[k2_offset] != -1) {
+						// Mirror x2 onto top-left coordinate system.
+						int x2 = text1_length - v2[k2_offset];
+						if (x1 >= x2) {
+							// Overlap detected.
+							return diff_bisectSplit(text1, text2, x1, y1, deadline);
+						}
+					}
+				}
+			}
+
+			// Walk the reverse path one step.
+			for (int k2 = -d + k2start; k2 <= d - k2end; k2 += 2) {
+				int k2_offset = v_offset + k2;
+				int x2;
+				if (k2 == -d || (k2 != d && v2[k2_offset - 1] < v2[k2_offset + 1])) {
+					x2 = v2[k2_offset + 1];
+				} else {
+					x2 = v2[k2_offset - 1] + 1;
+				}
+				int y2 = x2 - k2;
+				while (x2 < text1_length && y2 < text2_length && text1.charAt(text1_length - x2 - 1) == text2
+						.charAt(text2_length - y2 - 1)) {
+					x2++;
+					y2++;
+				}
+				v2[k2_offset] = x2;
+				if (x2 > text1_length) {
+					// Ran off the left of the graph.
+					k2end += 2;
+				} else if (y2 > text2_length) {
+					// Ran off the top of the graph.
+					k2start += 2;
+				} else if (!front) {
+					int k1_offset = v_offset + delta - k2;
+					if (k1_offset >= 0 && k1_offset < v_length && v1[k1_offset] != -1) {
+						int x1 = v1[k1_offset];
+						int y1 = v_offset + x1 - k1_offset;
+						// Mirror x2 onto top-left coordinate system.
+						x2 = text1_length - x2;
+						if (x1 >= x2) {
+							// Overlap detected.
+							return diff_bisectSplit(text1, text2, x1, y1, deadline);
+						}
+					}
+				}
+			}
+		}
+		// Diff took too long and hit the deadline or
+		// number of diffs equals number of characters, no commonality at all.
+		LinkedList<Diff> diffs = new LinkedList<Diff>();
+		diffs.add(new Diff(Operation.DELETE, text1));
+		diffs.add(new Diff(Operation.INSERT, text2));
+		return diffs;
+	}
+
+	/**
+	 * Given the location of the 'middle snake', split the diff in two parts and recurse.
+	 * 
+	 * @param text1
+	 *            Old string to be diffed.
+	 * @param text2
+	 *            New string to be diffed.
+	 * @param x
+	 *            Index of split point in text1.
+	 * @param y
+	 *            Index of split point in text2.
+	 * @param deadline
+	 *            Time at which to bail if not yet complete.
+	 * @return LinkedList of Diff objects.
+	 */
+	private LinkedList<Diff> diff_bisectSplit(String text1, String text2, int x, int y, long deadline) {
+		String text1a = text1.substring(0, x);
+		String text2a = text2.substring(0, y);
+		String text1b = text1.substring(x);
+		String text2b = text2.substring(y);
+
+		// Compute both diffs serially.
+		LinkedList<Diff> diffs = diff_main(text1a, text2a, false, deadline);
+		LinkedList<Diff> diffsb = diff_main(text1b, text2b, false, deadline);
+
+		diffs.addAll(diffsb);
+		return diffs;
+	}
+
+	/**
+	 * Split two texts into a list of strings. Reduce the texts to a string of hashes where each Unicode
+	 * character represents one line.
+	 * 
+	 * @param text1
+	 *            First string.
+	 * @param text2
+	 *            Second string.
+	 * @return An object containing the encoded text1, the encoded text2 and the List of unique strings. The
+	 *         zeroth element of the List of unique strings is intentionally blank.
+	 */
+	protected LinesToCharsResult diff_linesToChars(String text1, String text2) {
+		List<String> lineArray = new ArrayList<String>();
+		Map<String, Integer> lineHash = new HashMap<String, Integer>();
+		// e.g. linearray[4] == "Hello\n"
+		// e.g. linehash.get("Hello\n") == 4
+
+		// "\x00" is a valid character, but various debuggers don't like it.
+		// So we'll insert a junk entry to avoid generating a null character.
+		lineArray.add("");
+
+		String chars1 = diff_linesToCharsMunge(text1, lineArray, lineHash);
+		String chars2 = diff_linesToCharsMunge(text2, lineArray, lineHash);
+		return new LinesToCharsResult(chars1, chars2, lineArray);
+	}
+
+	/**
+	 * Split a text into a list of strings. Reduce the texts to a string of hashes where each Unicode
+	 * character represents one line.
+	 * 
+	 * @param text
+	 *            String to encode.
+	 * @param lineArray
+	 *            List of unique strings.
+	 * @param lineHash
+	 *            Map of strings to indices.
+	 * @return Encoded string.
+	 */
+	private String diff_linesToCharsMunge(String text, List<String> lineArray,
+			Map<String, Integer> lineHash) {
+		int lineStart = 0;
+		int lineEnd = -1;
+		String line;
+		StringBuilder chars = new StringBuilder();
+		// Walk the text, pulling out a substring for each line.
+		// text.split('\n') would would temporarily double our memory footprint.
+		// Modifying text would create many large strings to garbage collect.
+		while (lineEnd < text.length() - 1) {
+			lineEnd = text.indexOf('\n', lineStart);
+			if (lineEnd == -1) {
+				lineEnd = text.length() - 1;
+			}
+			line = text.substring(lineStart, lineEnd + 1);
+			lineStart = lineEnd + 1;
+
+			if (lineHash.containsKey(line)) {
+				chars.append(String.valueOf((char)(int)lineHash.get(line)));
+			} else {
+				lineArray.add(line);
+				lineHash.put(line, lineArray.size() - 1);
+				chars.append(String.valueOf((char)(lineArray.size() - 1)));
+			}
+		}
+		return chars.toString();
+	}
+
+	/**
+	 * Rehydrate the text in a diff from a string of line hashes to real lines of text.
+	 * 
+	 * @param diffs
+	 *            LinkedList of Diff objects.
+	 * @param lineArray
+	 *            List of unique strings.
+	 */
+	protected void diff_charsToLines(LinkedList<Diff> diffs, List<String> lineArray) {
+		StringBuilder text;
+		for (Diff diff : diffs) {
+			text = new StringBuilder();
+			for (int y = 0; y < diff.text.length(); y++) {
+				text.append(lineArray.get(diff.text.charAt(y)));
+			}
+			diff.text = text.toString();
+		}
+	}
+
+	/**
+	 * Determine the common prefix of two strings
+	 * 
+	 * @param text1
+	 *            First string.
+	 * @param text2
+	 *            Second string.
+	 * @return The number of characters common to the start of each string.
+	 */
+	public int diff_commonPrefix(String text1, String text2) {
+		// Performance analysis: http://neil.fraser.name/news/2007/10/09/
+		int n = Math.min(text1.length(), text2.length());
+		for (int i = 0; i < n; i++) {
+			if (text1.charAt(i) != text2.charAt(i)) {
+				return i;
+			}
+		}
+		return n;
+	}
+
+	/**
+	 * Determine the common suffix of two strings
+	 * 
+	 * @param text1
+	 *            First string.
+	 * @param text2
+	 *            Second string.
+	 * @return The number of characters common to the end of each string.
+	 */
+	public int diff_commonSuffix(String text1, String text2) {
+		// Performance analysis: http://neil.fraser.name/news/2007/10/09/
+		int text1_length = text1.length();
+		int text2_length = text2.length();
+		int n = Math.min(text1_length, text2_length);
+		for (int i = 1; i <= n; i++) {
+			if (text1.charAt(text1_length - i) != text2.charAt(text2_length - i)) {
+				return i - 1;
+			}
+		}
+		return n;
+	}
+
+	/**
+	 * Determine if the suffix of one string is the prefix of another.
+	 * 
+	 * @param text1
+	 *            First string.
+	 * @param text2
+	 *            Second string.
+	 * @return The number of characters common to the end of the first string and the start of the second
+	 *         string.
+	 */
+	protected int diff_commonOverlap(String text1, String text2) {
+		// Cache the text lengths to prevent multiple calls.
+		int text1_length = text1.length();
+		int text2_length = text2.length();
+		// Eliminate the null case.
+		if (text1_length == 0 || text2_length == 0) {
+			return 0;
+		}
+		// Truncate the longer string.
+		if (text1_length > text2_length) {
+			text1 = text1.substring(text1_length - text2_length);
+		} else if (text1_length < text2_length) {
+			text2 = text2.substring(0, text1_length);
+		}
+		int text_length = Math.min(text1_length, text2_length);
+		// Quick check for the worst case.
+		if (text1.equals(text2)) {
+			return text_length;
+		}
+
+		// Start by looking for a single character match
+		// and increase length until no match is found.
+		// Performance analysis: http://neil.fraser.name/news/2010/11/04/
+		int best = 0;
+		int length = 1;
+		while (true) {
+			String pattern = text1.substring(text_length - length);
+			int found = text2.indexOf(pattern);
+			if (found == -1) {
+				return best;
+			}
+			length += found;
+			if (found == 0 || text1.substring(text_length - length).equals(text2.substring(0, length))) {
+				best = length;
+				length++;
+			}
+		}
+	}
+
+	/**
+	 * Do the two texts share a substring which is at least half the length of the longer text? This speedup
+	 * can produce non-minimal diffs.
+	 * 
+	 * @param text1
+	 *            First string.
+	 * @param text2
+	 *            Second string.
+	 * @return Five element String array, containing the prefix of text1, the suffix of text1, the prefix of
+	 *         text2, the suffix of text2 and the common middle. Or null if there was no match.
+	 */
+	protected String[] diff_halfMatch(String text1, String text2) {
+		if (Diff_Timeout <= 0) {
+			// Don't risk returning a non-optimal diff if we have unlimited time.
+			return null;
+		}
+		String longtext = text1.length() > text2.length() ? text1 : text2;
+		String shorttext = text1.length() > text2.length() ? text2 : text1;
+		if (longtext.length() < 4 || shorttext.length() * 2 < longtext.length()) {
+			return null; // Pointless.
+		}
+
+		// First check if the second quarter is the seed for a half-match.
+		String[] hm1 = diff_halfMatchI(longtext, shorttext, (longtext.length() + 3) / 4);
+		// Check again based on the third quarter.
+		String[] hm2 = diff_halfMatchI(longtext, shorttext, (longtext.length() + 1) / 2);
+		String[] hm;
+		if (hm1 == null && hm2 == null) {
+			return null;
+		} else if (hm2 == null) {
+			hm = hm1;
+		} else if (hm1 == null) {
+			hm = hm2;
+		} else {
+			// Both matched. Select the longest.
+			hm = hm1[4].length() > hm2[4].length() ? hm1 : hm2;
+		}
+
+		// A half-match was found, sort out the return data.
+		if (text1.length() > text2.length()) {
+			return hm;
+			// return new String[]{hm[0], hm[1], hm[2], hm[3], hm[4]};
+		} else {
+			return new String[] {hm[2], hm[3], hm[0], hm[1], hm[4] };
+		}
+	}
+
+	/**
+	 * Does a substring of shorttext exist within longtext such that the substring is at least half the length
+	 * of longtext?
+	 * 
+	 * @param longtext
+	 *            Longer string.
+	 * @param shorttext
+	 *            Shorter string.
+	 * @param i
+	 *            Start index of quarter length substring within longtext.
+	 * @return Five element String array, containing the prefix of longtext, the suffix of longtext, the
+	 *         prefix of shorttext, the suffix of shorttext and the common middle. Or null if there was no
+	 *         match.
+	 */
+	private String[] diff_halfMatchI(String longtext, String shorttext, int i) {
+		// Start with a 1/4 length substring at position i as a seed.
+		String seed = longtext.substring(i, i + longtext.length() / 4);
+		int j = -1;
+		String best_common = "";
+		String best_longtext_a = "", best_longtext_b = "";
+		String best_shorttext_a = "", best_shorttext_b = "";
+		while ((j = shorttext.indexOf(seed, j + 1)) != -1) {
+			int prefixLength = diff_commonPrefix(longtext.substring(i), shorttext.substring(j));
+			int suffixLength = diff_commonSuffix(longtext.substring(0, i), shorttext.substring(0, j));
+			if (best_common.length() < suffixLength + prefixLength) {
+				best_common = shorttext.substring(j - suffixLength, j) + shorttext.substring(j, j
+						+ prefixLength);
+				best_longtext_a = longtext.substring(0, i - suffixLength);
+				best_longtext_b = longtext.substring(i + prefixLength);
+				best_shorttext_a = shorttext.substring(0, j - suffixLength);
+				best_shorttext_b = shorttext.substring(j + prefixLength);
+			}
+		}
+		if (best_common.length() * 2 >= longtext.length()) {
+			return new String[] {best_longtext_a, best_longtext_b, best_shorttext_a, best_shorttext_b,
+					best_common };
+		} else {
+			return null;
+		}
+	}
+
+	/**
+	 * Reduce the number of edits by eliminating semantically trivial equalities.
+	 * 
+	 * @param diffs
+	 *            LinkedList of Diff objects.
+	 */
+	public void diff_cleanupSemantic(LinkedList<Diff> diffs) {
+		if (diffs.isEmpty()) {
+			return;
+		}
+		boolean changes = false;
+		Stack<Diff> equalities = new Stack<Diff>(); // Stack of qualities.
+		String lastequality = null; // Always equal to equalities.lastElement().text
+		ListIterator<Diff> pointer = diffs.listIterator();
+		// Number of characters that changed prior to the equality.
+		int length_insertions1 = 0;
+		int length_deletions1 = 0;
+		// Number of characters that changed after the equality.
+		int length_insertions2 = 0;
+		int length_deletions2 = 0;
+		Diff thisDiff = pointer.next();
+		while (thisDiff != null) {
+			if (thisDiff.operation == Operation.EQUAL) {
+				// Equality found.
+				equalities.push(thisDiff);
+				length_insertions1 = length_insertions2;
+				length_deletions1 = length_deletions2;
+				length_insertions2 = 0;
+				length_deletions2 = 0;
+				lastequality = thisDiff.text;
+			} else {
+				// An insertion or deletion.
+				if (thisDiff.operation == Operation.INSERT) {
+					length_insertions2 += thisDiff.text.length();
+				} else {
+					length_deletions2 += thisDiff.text.length();
+				}
+				// Eliminate an equality that is smaller or equal to the edits on both
+				// sides of it.
+				if (lastequality != null && (lastequality.length() <= Math.max(length_insertions1,
+						length_deletions1)) && (lastequality.length() <= Math.max(length_insertions2,
+								length_deletions2))) {
+					// System.out.println("Splitting: '" + lastequality + "'");
+					// Walk back to offending equality.
+					while (thisDiff != equalities.lastElement()) {
+						thisDiff = pointer.previous();
+					}
+					pointer.next();
+
+					// Replace equality with a delete.
+					pointer.set(new Diff(Operation.DELETE, lastequality));
+					// Insert a corresponding an insert.
+					pointer.add(new Diff(Operation.INSERT, lastequality));
+
+					equalities.pop(); // Throw away the equality we just deleted.
+					if (!equalities.empty()) {
+						// Throw away the previous equality (it needs to be reevaluated).
+						equalities.pop();
+					}
+					if (equalities.empty()) {
+						// There are no previous equalities, walk back to the start.
+						while (pointer.hasPrevious()) {
+							pointer.previous();
+						}
+					} else {
+						// There is a safe equality we can fall back to.
+						thisDiff = equalities.lastElement();
+						while (thisDiff != pointer.previous()) {
+							// Intentionally empty loop.
+						}
+					}
+
+					length_insertions1 = 0; // Reset the counters.
+					length_insertions2 = 0;
+					length_deletions1 = 0;
+					length_deletions2 = 0;
+					lastequality = null;
+					changes = true;
+				}
+			}
+			thisDiff = pointer.hasNext() ? pointer.next() : null;
+		}
+
+		// Normalize the diff.
+		if (changes) {
+			diff_cleanupMerge(diffs);
+		}
+		diff_cleanupSemanticLossless(diffs);
+
+		// Find any overlaps between deletions and insertions.
+		// e.g: <del>abcxxx</del><ins>xxxdef</ins>
+		// -> <del>abc</del>xxx<ins>def</ins>
+		// e.g: <del>xxxabc</del><ins>defxxx</ins>
+		// -> <ins>def</ins>xxx<del>abc</del>
+		// Only extract an overlap if it is as big as the edit ahead or behind it.
+		pointer = diffs.listIterator();
+		Diff prevDiff = null;
+		thisDiff = null;
+		if (pointer.hasNext()) {
+			prevDiff = pointer.next();
+			if (pointer.hasNext()) {
+				thisDiff = pointer.next();
+			}
+		}
+		while (thisDiff != null) {
+			if (prevDiff.operation == Operation.DELETE && thisDiff.operation == Operation.INSERT) {
+				String deletion = prevDiff.text;
+				String insertion = thisDiff.text;
+				int overlap_length1 = this.diff_commonOverlap(deletion, insertion);
+				int overlap_length2 = this.diff_commonOverlap(insertion, deletion);
+				if (overlap_length1 >= overlap_length2) {
+					if (overlap_length1 >= deletion.length() / 2.0 || overlap_length1 >= insertion.length()
+							/ 2.0) {
+						// Overlap found. Insert an equality and trim the surrounding edits.
+						pointer.previous();
+						pointer.add(new Diff(Operation.EQUAL, insertion.substring(0, overlap_length1)));
+						prevDiff.text = deletion.substring(0, deletion.length() - overlap_length1);
+						thisDiff.text = insertion.substring(overlap_length1);
+						// pointer.add inserts the element before the cursor, so there is
+						// no need to step past the new element.
+					}
+				} else {
+					if (overlap_length2 >= deletion.length() / 2.0 || overlap_length2 >= insertion.length()
+							/ 2.0) {
+						// Reverse overlap found.
+						// Insert an equality and swap and trim the surrounding edits.
+						pointer.previous();
+						pointer.add(new Diff(Operation.EQUAL, deletion.substring(0, overlap_length2)));
+						prevDiff.operation = Operation.INSERT;
+						prevDiff.text = insertion.substring(0, insertion.length() - overlap_length2);
+						thisDiff.operation = Operation.DELETE;
+						thisDiff.text = deletion.substring(overlap_length2);
+						// pointer.add inserts the element before the cursor, so there is
+						// no need to step past the new element.
+					}
+				}
+				thisDiff = pointer.hasNext() ? pointer.next() : null;
+			}
+			prevDiff = thisDiff;
+			thisDiff = pointer.hasNext() ? pointer.next() : null;
+		}
+	}
+
+	/**
+	 * Look for single edits surrounded on both sides by equalities which can be shifted sideways to align the
+	 * edit to a word boundary. e.g: The c<ins>at c</ins>ame. -> The <ins>cat </ins>came.
+	 * 
+	 * @param diffs
+	 *            LinkedList of Diff objects.
+	 */
+	public void diff_cleanupSemanticLossless(LinkedList<Diff> diffs) {
+		String equality1, edit, equality2;
+		String commonString;
+		int commonOffset;
+		int score, bestScore;
+		String bestEquality1, bestEdit, bestEquality2;
+		// Create a new iterator at the start.
+		ListIterator<Diff> pointer = diffs.listIterator();
+		Diff prevDiff = pointer.hasNext() ? pointer.next() : null;
+		Diff thisDiff = pointer.hasNext() ? pointer.next() : null;
+		Diff nextDiff = pointer.hasNext() ? pointer.next() : null;
+		// Intentionally ignore the first and last element (don't need checking).
+		while (nextDiff != null) {
+			if (prevDiff.operation == Operation.EQUAL && nextDiff.operation == Operation.EQUAL) {
+				// This is a single edit surrounded by equalities.
+				equality1 = prevDiff.text;
+				edit = thisDiff.text;
+				equality2 = nextDiff.text;
+
+				// First, shift the edit as far left as possible.
+				commonOffset = diff_commonSuffix(equality1, edit);
+				if (commonOffset != 0) {
+					commonString = edit.substring(edit.length() - commonOffset);
+					equality1 = equality1.substring(0, equality1.length() - commonOffset);
+					edit = commonString + edit.substring(0, edit.length() - commonOffset);
+					equality2 = commonString + equality2;
+				}
+
+				// Second, step character by character right, looking for the best fit.
+				bestEquality1 = equality1;
+				bestEdit = edit;
+				bestEquality2 = equality2;
+				bestScore = diff_cleanupSemanticScore(equality1, edit) + diff_cleanupSemanticScore(edit,
+						equality2);
+				while (edit.length() != 0 && equality2.length() != 0 && edit.charAt(0) == equality2.charAt(
+						0)) {
+					equality1 += edit.charAt(0);
+					edit = edit.substring(1) + equality2.charAt(0);
+					equality2 = equality2.substring(1);
+					score = diff_cleanupSemanticScore(equality1, edit) + diff_cleanupSemanticScore(edit,
+							equality2);
+					// The >= encourages trailing rather than leading whitespace on edits.
+					if (score >= bestScore) {
+						bestScore = score;
+						bestEquality1 = equality1;
+						bestEdit = edit;
+						bestEquality2 = equality2;
+					}
+				}
+
+				if (!prevDiff.text.equals(bestEquality1)) {
+					// We have an improvement, save it back to the diff.
+					if (bestEquality1.length() != 0) {
+						prevDiff.text = bestEquality1;
+					} else {
+						pointer.previous(); // Walk past nextDiff.
+						pointer.previous(); // Walk past thisDiff.
+						pointer.previous(); // Walk past prevDiff.
+						pointer.remove(); // Delete prevDiff.
+						pointer.next(); // Walk past thisDiff.
+						pointer.next(); // Walk past nextDiff.
+					}
+					thisDiff.text = bestEdit;
+					if (bestEquality2.length() != 0) {
+						nextDiff.text = bestEquality2;
+					} else {
+						pointer.remove(); // Delete nextDiff.
+						nextDiff = thisDiff;
+						thisDiff = prevDiff;
+					}
+				}
+			}
+			prevDiff = thisDiff;
+			thisDiff = nextDiff;
+			nextDiff = pointer.hasNext() ? pointer.next() : null;
+		}
+	}
+
+	/**
+	 * Given two strings, compute a score representing whether the internal boundary falls on logical
+	 * boundaries. Scores range from 6 (best) to 0 (worst).
+	 * 
+	 * @param one
+	 *            First string.
+	 * @param two
+	 *            Second string.
+	 * @return The score.
+	 */
+	private int diff_cleanupSemanticScore(String one, String two) {
+		if (one.length() == 0 || two.length() == 0) {
+			// Edges are the best.
+			return 6;
+		}
+
+		// Each port of this function behaves slightly differently due to
+		// subtle differences in each language's definition of things like
+		// 'whitespace'. Since this function's purpose is largely cosmetic,
+		// the choice has been made to use each language's native features
+		// rather than force total conformity.
+		char char1 = one.charAt(one.length() - 1);
+		char char2 = two.charAt(0);
+		boolean nonAlphaNumeric1 = !Character.isLetterOrDigit(char1);
+		boolean nonAlphaNumeric2 = !Character.isLetterOrDigit(char2);
+		boolean whitespace1 = nonAlphaNumeric1 && Character.isWhitespace(char1);
+		boolean whitespace2 = nonAlphaNumeric2 && Character.isWhitespace(char2);
+		boolean lineBreak1 = whitespace1 && Character.getType(char1) == Character.CONTROL;
+		boolean lineBreak2 = whitespace2 && Character.getType(char2) == Character.CONTROL;
+		boolean blankLine1 = lineBreak1 && BLANKLINEEND.matcher(one).find();
+		boolean blankLine2 = lineBreak2 && BLANKLINESTART.matcher(two).find();
+
+		if (blankLine1 || blankLine2) {
+			// Five points for blank lines.
+			return 5;
+		} else if (lineBreak1 || lineBreak2) {
+			// Four points for line breaks.
+			return 4;
+		} else if (nonAlphaNumeric1 && !whitespace1 && whitespace2) {
+			// Three points for end of sentences.
+			return 3;
+		} else if (whitespace1 || whitespace2) {
+			// Two points for whitespace.
+			return 2;
+		} else if (nonAlphaNumeric1 || nonAlphaNumeric2) {
+			// One point for non-alphanumeric.
+			return 1;
+		}
+		return 0;
+	}
+
+	// Define some regex patterns for matching boundaries.
+	private Pattern BLANKLINEEND = Pattern.compile("\\n\\r?\\n\\Z", Pattern.DOTALL);
+
+	private Pattern BLANKLINESTART = Pattern.compile("\\A\\r?\\n\\r?\\n", Pattern.DOTALL);
+
+	/**
+	 * Reduce the number of edits by eliminating operationally trivial equalities.
+	 * 
+	 * @param diffs
+	 *            LinkedList of Diff objects.
+	 */
+	public void diff_cleanupEfficiency(LinkedList<Diff> diffs) {
+		if (diffs.isEmpty()) {
+			return;
+		}
+		boolean changes = false;
+		Stack<Diff> equalities = new Stack<Diff>(); // Stack of equalities.
+		String lastequality = null; // Always equal to equalities.lastElement().text
+		ListIterator<Diff> pointer = diffs.listIterator();
+		// Is there an insertion operation before the last equality.
+		boolean pre_ins = false;
+		// Is there a deletion operation before the last equality.
+		boolean pre_del = false;
+		// Is there an insertion operation after the last equality.
+		boolean post_ins = false;
+		// Is there a deletion operation after the last equality.
+		boolean post_del = false;
+		Diff thisDiff = pointer.next();
+		Diff safeDiff = thisDiff; // The last Diff that is known to be unsplitable.
+		while (thisDiff != null) {
+			if (thisDiff.operation == Operation.EQUAL) {
+				// Equality found.
+				if (thisDiff.text.length() < Diff_EditCost && (post_ins || post_del)) {
+					// Candidate found.
+					equalities.push(thisDiff);
+					pre_ins = post_ins;
+					pre_del = post_del;
+					lastequality = thisDiff.text;
+				} else {
+					// Not a candidate, and can never become one.
+					equalities.clear();
+					lastequality = null;
+					safeDiff = thisDiff;
+				}
+				post_ins = post_del = false;
+			} else {
+				// An insertion or deletion.
+				if (thisDiff.operation == Operation.DELETE) {
+					post_del = true;
+				} else {
+					post_ins = true;
+				}
+				/*
+				 * Five types to be split: <ins>A</ins><del>B</del>XY<ins>C</ins><del>D</del>
+				 * <ins>A</ins>X<ins>C</ins><del>D</del> <ins>A</ins><del>B</del>X<ins>C</ins>
+				 * <ins>A</del>X<ins>C</ins><del>D</del> <ins>A</ins><del>B</del>X<del>C</del>
+				 */
+				if (lastequality != null && ((pre_ins && pre_del && post_ins && post_del) || ((lastequality
+						.length() < Diff_EditCost / 2) && ((pre_ins ? 1 : 0) + (pre_del ? 1 : 0) + (post_ins
+								? 1
+								: 0) + (post_del ? 1 : 0)) == 3))) {
+					// System.out.println("Splitting: '" + lastequality + "'");
+					// Walk back to offending equality.
+					while (thisDiff != equalities.lastElement()) {
+						thisDiff = pointer.previous();
+					}
+					pointer.next();
+
+					// Replace equality with a delete.
+					pointer.set(new Diff(Operation.DELETE, lastequality));
+					// Insert a corresponding an insert.
+					pointer.add(thisDiff = new Diff(Operation.INSERT, lastequality));
+
+					equalities.pop(); // Throw away the equality we just deleted.
+					lastequality = null;
+					if (pre_ins && pre_del) {
+						// No changes made which could affect previous entry, keep going.
+						post_ins = post_del = true;
+						equalities.clear();
+						safeDiff = thisDiff;
+					} else {
+						if (!equalities.empty()) {
+							// Throw away the previous equality (it needs to be reevaluated).
+							equalities.pop();
+						}
+						if (equalities.empty()) {
+							// There are no previous questionable equalities,
+							// walk back to the last known safe diff.
+							thisDiff = safeDiff;
+						} else {
+							// There is an equality we can fall back to.
+							thisDiff = equalities.lastElement();
+						}
+						while (thisDiff != pointer.previous()) {
+							// Intentionally empty loop.
+						}
+						post_ins = post_del = false;
+					}
+
+					changes = true;
+				}
+			}
+			thisDiff = pointer.hasNext() ? pointer.next() : null;
+		}
+
+		if (changes) {
+			diff_cleanupMerge(diffs);
+		}
+	}
+
+	/**
+	 * Reorder and merge like edit sections. Merge equalities. Any edit section can move as long as it doesn't
+	 * cross an equality.
+	 * 
+	 * @param diffs
+	 *            LinkedList of Diff objects.
+	 */
+	public void diff_cleanupMerge(LinkedList<Diff> diffs) {
+		diffs.add(new Diff(Operation.EQUAL, "")); // Add a dummy entry at the end.
+		ListIterator<Diff> pointer = diffs.listIterator();
+		int count_delete = 0;
+		int count_insert = 0;
+		String text_delete = "";
+		String text_insert = "";
+		Diff thisDiff = pointer.next();
+		Diff prevEqual = null;
+		int commonlength;
+		while (thisDiff != null) {
+			switch (thisDiff.operation) {
+				case INSERT:
+					count_insert++;
+					text_insert += thisDiff.text;
+					prevEqual = null;
+					break;
+				case DELETE:
+					count_delete++;
+					text_delete += thisDiff.text;
+					prevEqual = null;
+					break;
+				case EQUAL:
+					if (count_delete + count_insert > 1) {
+						boolean both_types = count_delete != 0 && count_insert != 0;
+						// Delete the offending records.
+						pointer.previous(); // Reverse direction.
+						while (count_delete-- > 0) {
+							pointer.previous();
+							pointer.remove();
+						}
+						while (count_insert-- > 0) {
+							pointer.previous();
+							pointer.remove();
+						}
+						if (both_types) {
+							// Factor out any common prefixies.
+							commonlength = diff_commonPrefix(text_insert, text_delete);
+							if (commonlength != 0) {
+								if (pointer.hasPrevious()) {
+									thisDiff = pointer.previous();
+									assert thisDiff.operation == Operation.EQUAL : "Previous diff should have been an equality.";
+									thisDiff.text += text_insert.substring(0, commonlength);
+									pointer.next();
+								} else {
+									pointer.add(new Diff(Operation.EQUAL, text_insert.substring(0,
+											commonlength)));
+								}
+								text_insert = text_insert.substring(commonlength);
+								text_delete = text_delete.substring(commonlength);
+							}
+							// Factor out any common suffixies.
+							commonlength = diff_commonSuffix(text_insert, text_delete);
+							if (commonlength != 0) {
+								thisDiff = pointer.next();
+								thisDiff.text = text_insert.substring(text_insert.length() - commonlength)
+										+ thisDiff.text;
+								text_insert = text_insert.substring(0, text_insert.length() - commonlength);
+								text_delete = text_delete.substring(0, text_delete.length() - commonlength);
+								pointer.previous();
+							}
+						}
+						// Insert the merged records.
+						if (text_delete.length() != 0) {
+							pointer.add(new Diff(Operation.DELETE, text_delete));
+						}
+						if (text_insert.length() != 0) {
+							pointer.add(new Diff(Operation.INSERT, text_insert));
+						}
+						// Step forward to the equality.
+						thisDiff = pointer.hasNext() ? pointer.next() : null;
+					} else if (prevEqual != null) {
+						// Merge this equality with the previous one.
+						prevEqual.text += thisDiff.text;
+						pointer.remove();
+						thisDiff = pointer.previous();
+						pointer.next(); // Forward direction
+					}
+					count_insert = 0;
+					count_delete = 0;
+					text_delete = "";
+					text_insert = "";
+					prevEqual = thisDiff;
+					break;
+			}
+			thisDiff = pointer.hasNext() ? pointer.next() : null;
+		}
+		if (diffs.getLast().text.length() == 0) {
+			diffs.removeLast(); // Remove the dummy entry at the end.
+		}
+
+		/*
+		 * Second pass: look for single edits surrounded on both sides by equalities which can be shifted
+		 * sideways to eliminate an equality. e.g: A<ins>BA</ins>C -> <ins>AB</ins>AC
+		 */
+		boolean changes = false;
+		// Create a new iterator at the start.
+		// (As opposed to walking the current one back.)
+		pointer = diffs.listIterator();
+		Diff prevDiff = pointer.hasNext() ? pointer.next() : null;
+		thisDiff = pointer.hasNext() ? pointer.next() : null;
+		Diff nextDiff = pointer.hasNext() ? pointer.next() : null;
+		// Intentionally ignore the first and last element (don't need checking).
+		while (nextDiff != null) {
+			if (prevDiff.operation == Operation.EQUAL && nextDiff.operation == Operation.EQUAL) {
+				// This is a single edit surrounded by equalities.
+				if (thisDiff.text.endsWith(prevDiff.text)) {
+					// Shift the edit over the previous equality.
+					thisDiff.text = prevDiff.text + thisDiff.text.substring(0, thisDiff.text.length()
+							- prevDiff.text.length());
+					nextDiff.text = prevDiff.text + nextDiff.text;
+					pointer.previous(); // Walk past nextDiff.
+					pointer.previous(); // Walk past thisDiff.
+					pointer.previous(); // Walk past prevDiff.
+					pointer.remove(); // Delete prevDiff.
+					pointer.next(); // Walk past thisDiff.
+					thisDiff = pointer.next(); // Walk past nextDiff.
+					nextDiff = pointer.hasNext() ? pointer.next() : null;
+					changes = true;
+				} else if (thisDiff.text.startsWith(nextDiff.text)) {
+					// Shift the edit over the next equality.
+					prevDiff.text += nextDiff.text;
+					thisDiff.text = thisDiff.text.substring(nextDiff.text.length()) + nextDiff.text;
+					pointer.remove(); // Delete nextDiff.
+					nextDiff = pointer.hasNext() ? pointer.next() : null;
+					changes = true;
+				}
+			}
+			prevDiff = thisDiff;
+			thisDiff = nextDiff;
+			nextDiff = pointer.hasNext() ? pointer.next() : null;
+		}
+		// If shifts were made, the diff needs reordering and another shift sweep.
+		if (changes) {
+			diff_cleanupMerge(diffs);
+		}
+	}
+
+	/**
+	 * loc is a location in text1, compute and return the equivalent location in text2. e.g. "The cat" vs "The
+	 * big cat", 1->1, 5->8
+	 * 
+	 * @param diffs
+	 *            LinkedList of Diff objects.
+	 * @param loc
+	 *            Location within text1.
+	 * @return Location within text2.
+	 */
+	public int diff_xIndex(LinkedList<Diff> diffs, int loc) {
+		int chars1 = 0;
+		int chars2 = 0;
+		int last_chars1 = 0;
+		int last_chars2 = 0;
+		Diff lastDiff = null;
+		for (Diff aDiff : diffs) {
+			if (aDiff.operation != Operation.INSERT) {
+				// Equality or deletion.
+				chars1 += aDiff.text.length();
+			}
+			if (aDiff.operation != Operation.DELETE) {
+				// Equality or insertion.
+				chars2 += aDiff.text.length();
+			}
+			if (chars1 > loc) {
+				// Overshot the location.
+				lastDiff = aDiff;
+				break;
+			}
+			last_chars1 = chars1;
+			last_chars2 = chars2;
+		}
+		if (lastDiff != null && lastDiff.operation == Operation.DELETE) {
+			// The location was deleted.
+			return last_chars2;
+		}
+		// Add the remaining character length.
+		return last_chars2 + (loc - last_chars1);
+	}
+
+	/**
+	 * Convert a Diff list into a pretty HTML report.
+	 * 
+	 * @param diffs
+	 *            LinkedList of Diff objects.
+	 * @return HTML representation.
+	 */
+	public String diff_prettyHtml(LinkedList<Diff> diffs) {
+		StringBuilder html = new StringBuilder();
+		for (Diff aDiff : diffs) {
+			String text = aDiff.text.replace("&", "&amp;").replace("<", "&lt;").replace(">", "&gt;").replace(
+					"\n", "&para;<br>");
+			switch (aDiff.operation) {
+				case INSERT:
+					html.append("<ins style=\"background:#e6ffe6;\">").append(text).append("</ins>");
+					break;
+				case DELETE:
+					html.append("<del style=\"background:#ffe6e6;\">").append(text).append("</del>");
+					break;
+				case EQUAL:
+					html.append("<span>").append(text).append("</span>");
+					break;
+			}
+		}
+		return html.toString();
+	}
+
+	/**
+	 * Compute and return the source text (all equalities and deletions).
+	 * 
+	 * @param diffs
+	 *            LinkedList of Diff objects.
+	 * @return Source text.
+	 */
+	public String diff_text1(LinkedList<Diff> diffs) {
+		StringBuilder text = new StringBuilder();
+		for (Diff aDiff : diffs) {
+			if (aDiff.operation != Operation.INSERT) {
+				text.append(aDiff.text);
+			}
+		}
+		return text.toString();
+	}
+
+	/**
+	 * Compute and return the destination text (all equalities and insertions).
+	 * 
+	 * @param diffs
+	 *            LinkedList of Diff objects.
+	 * @return Destination text.
+	 */
+	public String diff_text2(LinkedList<Diff> diffs) {
+		StringBuilder text = new StringBuilder();
+		for (Diff aDiff : diffs) {
+			if (aDiff.operation != Operation.DELETE) {
+				text.append(aDiff.text);
+			}
+		}
+		return text.toString();
+	}
+
+	/**
+	 * Compute the Levenshtein distance; the number of inserted, deleted or substituted characters.
+	 * 
+	 * @param diffs
+	 *            LinkedList of Diff objects.
+	 * @return Number of changes.
+	 */
+	public int diff_levenshtein(LinkedList<Diff> diffs) {
+		int levenshtein = 0;
+		int insertions = 0;
+		int deletions = 0;
+		for (Diff aDiff : diffs) {
+			switch (aDiff.operation) {
+				case INSERT:
+					insertions += aDiff.text.length();
+					break;
+				case DELETE:
+					deletions += aDiff.text.length();
+					break;
+				case EQUAL:
+					// A deletion and an insertion is one substitution.
+					levenshtein += Math.max(insertions, deletions);
+					insertions = 0;
+					deletions = 0;
+					break;
+			}
+		}
+		levenshtein += Math.max(insertions, deletions);
+		return levenshtein;
+	}
+
+	/**
+	 * Crush the diff into an encoded string which describes the operations required to transform text1 into
+	 * text2. E.g. =3\t-2\t+ing -> Keep 3 chars, delete 2 chars, insert 'ing'. Operations are tab-separated.
+	 * Inserted text is escaped using %xx notation.
+	 * 
+	 * @param diffs
+	 *            Array of Diff objects.
+	 * @return Delta text.
+	 */
+	public String diff_toDelta(LinkedList<Diff> diffs) {
+		StringBuilder text = new StringBuilder();
+		for (Diff aDiff : diffs) {
+			switch (aDiff.operation) {
+				case INSERT:
+					try {
+						text.append("+").append(URLEncoder.encode(aDiff.text, "UTF-8").replace('+', ' '))
+								.append("\t");
+					} catch (UnsupportedEncodingException e) {
+						// Not likely on modern system.
+						throw new Error("This system does not support UTF-8.", e);
+					}
+					break;
+				case DELETE:
+					text.append("-").append(aDiff.text.length()).append("\t");
+					break;
+				case EQUAL:
+					text.append("=").append(aDiff.text.length()).append("\t");
+					break;
+			}
+		}
+		String delta = text.toString();
+		if (delta.length() != 0) {
+			// Strip off trailing tab character.
+			delta = delta.substring(0, delta.length() - 1);
+			delta = unescapeForEncodeUriCompatability(delta);
+		}
+		return delta;
+	}
+
+	/**
+	 * Given the original text1, and an encoded string which describes the operations required to transform
+	 * text1 into text2, compute the full diff.
+	 * 
+	 * @param text1
+	 *            Source string for the diff.
+	 * @param delta
+	 *            Delta text.
+	 * @return Array of Diff objects or null if invalid.
+	 * @throws IllegalArgumentException
+	 *             If invalid input.
+	 */
+	public LinkedList<Diff> diff_fromDelta(String text1, String delta) throws IllegalArgumentException {
+		LinkedList<Diff> diffs = new LinkedList<Diff>();
+		int pointer = 0; // Cursor in text1
+		String[] tokens = delta.split("\t");
+		for (String token : tokens) {
+			if (token.length() == 0) {
+				// Blank tokens are ok (from a trailing \t).
+				continue;
+			}
+			// Each token begins with a one character parameter which specifies the
+			// operation of this token (delete, insert, equality).
+			String param = token.substring(1);
+			switch (token.charAt(0)) {
+				case '+':
+					// decode would change all "+" to " "
+					param = param.replace("+", "%2B");
+					try {
+						param = URLDecoder.decode(param, "UTF-8");
+					} catch (UnsupportedEncodingException e) {
+						// Not likely on modern system.
+						throw new Error("This system does not support UTF-8.", e);
+					} catch (IllegalArgumentException e) {
+						// Malformed URI sequence.
+						throw new IllegalArgumentException("Illegal escape in diff_fromDelta: " + param, e);
+					}
+					diffs.add(new Diff(Operation.INSERT, param));
+					break;
+				case '-':
+					// Fall through.
+				case '=':
+					int n;
+					try {
+						n = Integer.parseInt(param);
+					} catch (NumberFormatException e) {
+						throw new IllegalArgumentException("Invalid number in diff_fromDelta: " + param, e);
+					}
+					if (n < 0) {
+						throw new IllegalArgumentException("Negative number in diff_fromDelta: " + param);
+					}
+					String text;
+					try {
+						text = text1.substring(pointer, pointer += n);
+					} catch (StringIndexOutOfBoundsException e) {
+						throw new IllegalArgumentException("Delta length (" + pointer
+								+ ") larger than source text length (" + text1.length() + ").", e);
+					}
+					if (token.charAt(0) == '=') {
+						diffs.add(new Diff(Operation.EQUAL, text));
+					} else {
+						diffs.add(new Diff(Operation.DELETE, text));
+					}
+					break;
+				default:
+					// Anything else is an error.
+					throw new IllegalArgumentException("Invalid diff operation in diff_fromDelta: " + token
+							.charAt(0));
+			}
+		}
+		if (pointer != text1.length()) {
+			throw new IllegalArgumentException("Delta length (" + pointer
+					+ ") smaller than source text length (" + text1.length() + ").");
+		}
+		return diffs;
+	}
+
+	// MATCH FUNCTIONS
+
+	/**
+	 * Locate the best instance of 'pattern' in 'text' near 'loc'. Returns -1 if no match found.
+	 * 
+	 * @param text
+	 *            The text to search.
+	 * @param pattern
+	 *            The pattern to search for.
+	 * @param loc
+	 *            The location to search around.
+	 * @return Best match index or -1.
+	 */
+	public int match_main(String text, String pattern, int loc) {
+		// Check for null inputs.
+		if (text == null || pattern == null) {
+			throw new IllegalArgumentException("Null inputs. (match_main)");
+		}
+
+		loc = Math.max(0, Math.min(loc, text.length()));
+		if (text.equals(pattern)) {
+			// Shortcut (potentially not guaranteed by the algorithm)
+			return 0;
+		} else if (text.length() == 0) {
+			// Nothing to match.
+			return -1;
+		} else if (loc + pattern.length() <= text.length() && text.substring(loc, loc + pattern.length())
+				.equals(pattern)) {
+			// Perfect match at the perfect spot! (Includes case of null pattern)
+			return loc;
+		} else {
+			// Do a fuzzy compare.
+			return match_bitap(text, pattern, loc);
+		}
+	}
+
+	/**
+	 * Locate the best instance of 'pattern' in 'text' near 'loc' using the Bitap algorithm. Returns -1 if no
+	 * match found.
+	 * 
+	 * @param text
+	 *            The text to search.
+	 * @param pattern
+	 *            The pattern to search for.
+	 * @param loc
+	 *            The location to search around.
+	 * @return Best match index or -1.
+	 */
+	protected int match_bitap(String text, String pattern, int loc) {
+		assert (Match_MaxBits == 0 || pattern
+				.length() <= Match_MaxBits) : "Pattern too long for this application.";
+
+		// Initialise the alphabet.
+		Map<Character, Integer> s = match_alphabet(pattern);
+
+		// Highest score beyond which we give up.
+		double score_threshold = Match_Threshold;
+		// Is there a nearby exact match? (speedup)
+		int best_loc = text.indexOf(pattern, loc);
+		if (best_loc != -1) {
+			score_threshold = Math.min(match_bitapScore(0, best_loc, loc, pattern), score_threshold);
+			// What about in the other direction? (speedup)
+			best_loc = text.lastIndexOf(pattern, loc + pattern.length());
+			if (best_loc != -1) {
+				score_threshold = Math.min(match_bitapScore(0, best_loc, loc, pattern), score_threshold);
+			}
+		}
+
+		// Initialise the bit arrays.
+		int matchmask = 1 << (pattern.length() - 1);
+		best_loc = -1;
+
+		int bin_min, bin_mid;
+		int bin_max = pattern.length() + text.length();
+		// Empty initialization added to appease Java compiler.
+		int[] last_rd = new int[0];
+		for (int d = 0; d < pattern.length(); d++) {
+			// Scan for the best match; each iteration allows for one more error.
+			// Run a binary search to determine how far from 'loc' we can stray at
+			// this error level.
+			bin_min = 0;
+			bin_mid = bin_max;
+			while (bin_min < bin_mid) {
+				if (match_bitapScore(d, loc + bin_mid, loc, pattern) <= score_threshold) {
+					bin_min = bin_mid;
+				} else {
+					bin_max = bin_mid;
+				}
+				bin_mid = (bin_max - bin_min) / 2 + bin_min;
+			}
+			// Use the result from this iteration as the maximum for the next.
+			bin_max = bin_mid;
+			int start = Math.max(1, loc - bin_mid + 1);
+			int finish = Math.min(loc + bin_mid, text.length()) + pattern.length();
+
+			int[] rd = new int[finish + 2];
+			rd[finish + 1] = (1 << d) - 1;
+			for (int j = finish; j >= start; j--) {
+				int charMatch;
+				if (text.length() <= j - 1 || !s.containsKey(text.charAt(j - 1))) {
+					// Out of range.
+					charMatch = 0;
+				} else {
+					charMatch = s.get(text.charAt(j - 1));
+				}
+				if (d == 0) {
+					// First pass: exact match.
+					rd[j] = ((rd[j + 1] << 1) | 1) & charMatch;
+				} else {
+					// Subsequent passes: fuzzy match.
+					rd[j] = (((rd[j + 1] << 1) | 1) & charMatch) | (((last_rd[j + 1] | last_rd[j]) << 1) | 1)
+							| last_rd[j + 1];
+				}
+				if ((rd[j] & matchmask) != 0) {
+					double score = match_bitapScore(d, j - 1, loc, pattern);
+					// This match will almost certainly be better than any existing
+					// match. But check anyway.
+					if (score <= score_threshold) {
+						// Told you so.
+						score_threshold = score;
+						best_loc = j - 1;
+						if (best_loc > loc) {
+							// When passing loc, don't exceed our current distance from loc.
+							start = Math.max(1, 2 * loc - best_loc);
+						} else {
+							// Already passed loc, downhill from here on in.
+							break;
+						}
+					}
+				}
+			}
+			if (match_bitapScore(d + 1, loc, loc, pattern) > score_threshold) {
+				// No hope for a (better) match at greater error levels.
+				break;
+			}
+			last_rd = rd;
+		}
+		return best_loc;
+	}
+
+	/**
+	 * Compute and return the score for a match with e errors and x location.
+	 * 
+	 * @param e
+	 *            Number of errors in match.
+	 * @param x
+	 *            Location of match.
+	 * @param loc
+	 *            Expected location of match.
+	 * @param pattern
+	 *            Pattern being sought.
+	 * @return Overall score for match (0.0 = good, 1.0 = bad).
+	 */
+	private double match_bitapScore(int e, int x, int loc, String pattern) {
+		float accuracy = (float)e / pattern.length();
+		int proximity = Math.abs(loc - x);
+		if (Match_Distance == 0) {
+			// Dodge divide by zero error.
+			return proximity == 0 ? accuracy : 1.0;
+		}
+		return accuracy + (proximity / (float)Match_Distance);
+	}
+
+	/**
+	 * Initialise the alphabet for the Bitap algorithm.
+	 * 
+	 * @param pattern
+	 *            The text to encode.
+	 * @return Hash of character locations.
+	 */
+	protected Map<Character, Integer> match_alphabet(String pattern) {
+		Map<Character, Integer> s = new HashMap<Character, Integer>();
+		char[] char_pattern = pattern.toCharArray();
+		for (char c : char_pattern) {
+			s.put(c, 0);
+		}
+		int i = 0;
+		for (char c : char_pattern) {
+			s.put(c, s.get(c) | (1 << (pattern.length() - i - 1)));
+			i++;
+		}
+		return s;
+	}
+
+	// PATCH FUNCTIONS
+
+	/**
+	 * Increase the context until it is unique, but don't let the pattern expand beyond Match_MaxBits.
+	 * 
+	 * @param patch
+	 *            The patch to grow.
+	 * @param text
+	 *            Source text.
+	 */
+	protected void patch_addContext(Patch patch, String text) {
+		if (text.length() == 0) {
+			return;
+		}
+		String pattern = text.substring(patch.start2, patch.start2 + patch.length1);
+		int padding = 0;
+
+		// Look for the first and last matches of pattern in text. If two different
+		// matches are found, increase the pattern length.
+		while (text.indexOf(pattern) != text.lastIndexOf(pattern) && pattern.length() < Match_MaxBits
+				- Patch_Margin - Patch_Margin) {
+			padding += Patch_Margin;
+			pattern = text.substring(Math.max(0, patch.start2 - padding), Math.min(text.length(), patch.start2
+					+ patch.length1 + padding));
+		}
+		// Add one chunk for good luck.
+		padding += Patch_Margin;
+
+		// Add the prefix.
+		String prefix = text.substring(Math.max(0, patch.start2 - padding), patch.start2);
+		if (prefix.length() != 0) {
+			patch.diffs.addFirst(new Diff(Operation.EQUAL, prefix));
+		}
+		// Add the suffix.
+		String suffix = text.substring(patch.start2 + patch.length1, Math.min(text.length(), patch.start2
+				+ patch.length1 + padding));
+		if (suffix.length() != 0) {
+			patch.diffs.addLast(new Diff(Operation.EQUAL, suffix));
+		}
+
+		// Roll back the start points.
+		patch.start1 -= prefix.length();
+		patch.start2 -= prefix.length();
+		// Extend the lengths.
+		patch.length1 += prefix.length() + suffix.length();
+		patch.length2 += prefix.length() + suffix.length();
+	}
+
+	/**
+	 * Compute a list of patches to turn text1 into text2. A set of diffs will be computed.
+	 * 
+	 * @param text1
+	 *            Old text.
+	 * @param text2
+	 *            New text.
+	 * @return LinkedList of Patch objects.
+	 */
+	public LinkedList<Patch> patch_make(String text1, String text2) {
+		if (text1 == null || text2 == null) {
+			throw new IllegalArgumentException("Null inputs. (patch_make)");
+		}
+		// No diffs provided, compute our own.
+		LinkedList<Diff> diffs = diff_main(text1, text2, true);
+		if (diffs.size() > 2) {
+			diff_cleanupSemantic(diffs);
+			diff_cleanupEfficiency(diffs);
+		}
+		return patch_make(text1, diffs);
+	}
+
+	/**
+	 * Compute a list of patches to turn text1 into text2. text1 will be derived from the provided diffs.
+	 * 
+	 * @param diffs
+	 *            Array of Diff objects for text1 to text2.
+	 * @return LinkedList of Patch objects.
+	 */
+	public LinkedList<Patch> patch_make(LinkedList<Diff> diffs) {
+		if (diffs == null) {
+			throw new IllegalArgumentException("Null inputs. (patch_make)");
+		}
+		// No origin string provided, compute our own.
+		String text1 = diff_text1(diffs);
+		return patch_make(text1, diffs);
+	}
+
+	/**
+	 * Compute a list of patches to turn text1 into text2. text2 is ignored, diffs are the delta between text1
+	 * and text2.
+	 * 
+	 * @param text1
+	 *            Old text
+	 * @param text2
+	 *            Ignored.
+	 * @param diffs
+	 *            Array of Diff objects for text1 to text2.
+	 * @return LinkedList of Patch objects.
+	 * @deprecated Prefer patch_make(String text1, LinkedList<Diff> diffs).
+	 */
+	public LinkedList<Patch> patch_make(String text1, String text2, LinkedList<Diff> diffs) {
+		return patch_make(text1, diffs);
+	}
+
+	/**
+	 * Compute a list of patches to turn text1 into text2. text2 is not provided, diffs are the delta between
+	 * text1 and text2.
+	 * 
+	 * @param text1
+	 *            Old text.
+	 * @param diffs
+	 *            Array of Diff objects for text1 to text2.
+	 * @return LinkedList of Patch objects.
+	 */
+	public LinkedList<Patch> patch_make(String text1, LinkedList<Diff> diffs) {
+		if (text1 == null || diffs == null) {
+			throw new IllegalArgumentException("Null inputs. (patch_make)");
+		}
+
+		LinkedList<Patch> patches = new LinkedList<Patch>();
+		if (diffs.isEmpty()) {
+			return patches; // Get rid of the null case.
+		}
+		Patch patch = new Patch();
+		int char_count1 = 0; // Number of characters into the text1 string.
+		int char_count2 = 0; // Number of characters into the text2 string.
+		// Start with text1 (prepatch_text) and apply the diffs until we arrive at
+		// text2 (postpatch_text). We recreate the patches one by one to determine
+		// context info.
+		String prepatch_text = text1;
+		String postpatch_text = text1;
+		for (Diff aDiff : diffs) {
+			if (patch.diffs.isEmpty() && aDiff.operation != Operation.EQUAL) {
+				// A new patch starts here.
+				patch.start1 = char_count1;
+				patch.start2 = char_count2;
+			}
+
+			switch (aDiff.operation) {
+				case INSERT:
+					patch.diffs.add(aDiff);
+					patch.length2 += aDiff.text.length();
+					postpatch_text = postpatch_text.substring(0, char_count2) + aDiff.text + postpatch_text
+							.substring(char_count2);
+					break;
+				case DELETE:
+					patch.length1 += aDiff.text.length();
+					patch.diffs.add(aDiff);
+					postpatch_text = postpatch_text.substring(0, char_count2) + postpatch_text.substring(
+							char_count2 + aDiff.text.length());
+					break;
+				case EQUAL:
+					if (aDiff.text.length() <= 2 * Patch_Margin && !patch.diffs.isEmpty() && aDiff != diffs
+							.getLast()) {
+						// Small equality inside a patch.
+						patch.diffs.add(aDiff);
+						patch.length1 += aDiff.text.length();
+						patch.length2 += aDiff.text.length();
+					}
+
+					if (aDiff.text.length() >= 2 * Patch_Margin) {
+						// Time for a new patch.
+						if (!patch.diffs.isEmpty()) {
+							patch_addContext(patch, prepatch_text);
+							patches.add(patch);
+							patch = new Patch();
+							// Unlike Unidiff, our patch lists have a rolling context.
+							// http://code.google.com/p/google-diff-match-patch/wiki/Unidiff
+							// Update prepatch text & pos to reflect the application of the
+							// just completed patch.
+							prepatch_text = postpatch_text;
+							char_count1 = char_count2;
+						}
+					}
+					break;
+			}
+
+			// Update the current character count.
+			if (aDiff.operation != Operation.INSERT) {
+				char_count1 += aDiff.text.length();
+			}
+			if (aDiff.operation != Operation.DELETE) {
+				char_count2 += aDiff.text.length();
+			}
+		}
+		// Pick up the leftover patch if not empty.
+		if (!patch.diffs.isEmpty()) {
+			patch_addContext(patch, prepatch_text);
+			patches.add(patch);
+		}
+
+		return patches;
+	}
+
+	/**
+	 * Given an array of patches, return another array that is identical.
+	 * 
+	 * @param patches
+	 *            Array of Patch objects.
+	 * @return Array of Patch objects.
+	 */
+	public LinkedList<Patch> patch_deepCopy(LinkedList<Patch> patches) {
+		LinkedList<Patch> patchesCopy = new LinkedList<Patch>();
+		for (Patch aPatch : patches) {
+			Patch patchCopy = new Patch();
+			for (Diff aDiff : aPatch.diffs) {
+				Diff diffCopy = new Diff(aDiff.operation, aDiff.text);
+				patchCopy.diffs.add(diffCopy);
+			}
+			patchCopy.start1 = aPatch.start1;
+			patchCopy.start2 = aPatch.start2;
+			patchCopy.length1 = aPatch.length1;
+			patchCopy.length2 = aPatch.length2;
+			patchesCopy.add(patchCopy);
+		}
+		return patchesCopy;
+	}
+
+	/**
+	 * Merge a set of patches onto the text. Return a patched text, as well as an array of true/false values
+	 * indicating which patches were applied.
+	 * 
+	 * @param patches
+	 *            Array of Patch objects
+	 * @param text
+	 *            Old text.
+	 * @return Two element Object array, containing the new text and an array of boolean values.
+	 */
+	public Object[] patch_apply(LinkedList<Patch> patches, String text) {
+		if (patches.isEmpty()) {
+			return new Object[] {text, new boolean[0] };
+		}
+
+		// Deep copy the patches so that no changes are made to originals.
+		patches = patch_deepCopy(patches);
+
+		String nullPadding = patch_addPadding(patches);
+		text = nullPadding + text + nullPadding;
+		patch_splitMax(patches);
+
+		int x = 0;
+		// delta keeps track of the offset between the expected and actual location
+		// of the previous patch. If there are patches expected at positions 10 and
+		// 20, but the first patch was found at 12, delta is 2 and the second patch
+		// has an effective expected position of 22.
+		int delta = 0;
+		boolean[] results = new boolean[patches.size()];
+		for (Patch aPatch : patches) {
+			int expected_loc = aPatch.start2 + delta;
+			String text1 = diff_text1(aPatch.diffs);
+			int start_loc;
+			int end_loc = -1;
+			if (text1.length() > this.Match_MaxBits) {
+				// patch_splitMax will only provide an oversized pattern in the case of
+				// a monster delete.
+				start_loc = match_main(text, text1.substring(0, this.Match_MaxBits), expected_loc);
+				if (start_loc != -1) {
+					end_loc = match_main(text, text1.substring(text1.length() - this.Match_MaxBits),
+							expected_loc + text1.length() - this.Match_MaxBits);
+					if (end_loc == -1 || start_loc >= end_loc) {
+						// Can't find valid trailing context. Drop this patch.
+						start_loc = -1;
+					}
+				}
+			} else {
+				start_loc = match_main(text, text1, expected_loc);
+			}
+			if (start_loc == -1) {
+				// No match found. :(
+				results[x] = false;
+				// Subtract the delta for this failed patch from subsequent patches.
+				delta -= aPatch.length2 - aPatch.length1;
+			} else {
+				// Found a match. :)
+				results[x] = true;
+				delta = start_loc - expected_loc;
+				String text2;
+				if (end_loc == -1) {
+					text2 = text.substring(start_loc, Math.min(start_loc + text1.length(), text.length()));
+				} else {
+					text2 = text.substring(start_loc, Math.min(end_loc + this.Match_MaxBits, text.length()));
+				}
+				if (text1.equals(text2)) {
+					// Perfect match, just shove the replacement text in.
+					text = text.substring(0, start_loc) + diff_text2(aPatch.diffs) + text.substring(start_loc
+							+ text1.length());
+				} else {
+					// Imperfect match. Run a diff to get a framework of equivalent
+					// indices.
+					LinkedList<Diff> diffs = diff_main(text1, text2, false);
+					if (text1.length() > this.Match_MaxBits && diff_levenshtein(diffs) / (float)text1
+							.length() > this.Patch_DeleteThreshold) {
+						// The end points match, but the content is unacceptably bad.
+						results[x] = false;
+					} else {
+						diff_cleanupSemanticLossless(diffs);
+						int index1 = 0;
+						for (Diff aDiff : aPatch.diffs) {
+							if (aDiff.operation != Operation.EQUAL) {
+								int index2 = diff_xIndex(diffs, index1);
+								if (aDiff.operation == Operation.INSERT) {
+									// Insertion
+									text = text.substring(0, start_loc + index2) + aDiff.text + text
+											.substring(start_loc + index2);
+								} else if (aDiff.operation == Operation.DELETE) {
+									// Deletion
+									text = text.substring(0, start_loc + index2) + text.substring(start_loc
+											+ diff_xIndex(diffs, index1 + aDiff.text.length()));
+								}
+							}
+							if (aDiff.operation != Operation.DELETE) {
+								index1 += aDiff.text.length();
+							}
+						}
+					}
+				}
+			}
+			x++;
+		}
+		// Strip the padding off.
+		text = text.substring(nullPadding.length(), text.length() - nullPadding.length());
+		return new Object[] {text, results };
+	}
+
+	/**
+	 * Add some padding on text start and end so that edges can match something. Intended to be called only
+	 * from within patch_apply.
+	 * 
+	 * @param patches
+	 *            Array of Patch objects.
+	 * @return The padding string added to each side.
+	 */
+	public String patch_addPadding(LinkedList<Patch> patches) {
+		short paddingLength = this.Patch_Margin;
+		String nullPadding = "";
+		for (short x = 1; x <= paddingLength; x++) {
+			nullPadding += String.valueOf((char)x);
+		}
+
+		// Bump all the patches forward.
+		for (Patch aPatch : patches) {
+			aPatch.start1 += paddingLength;
+			aPatch.start2 += paddingLength;
+		}
+
+		// Add some padding on start of first diff.
+		Patch patch = patches.getFirst();
+		LinkedList<Diff> diffs = patch.diffs;
+		if (diffs.isEmpty() || diffs.getFirst().operation != Operation.EQUAL) {
+			// Add nullPadding equality.
+			diffs.addFirst(new Diff(Operation.EQUAL, nullPadding));
+			patch.start1 -= paddingLength; // Should be 0.
+			patch.start2 -= paddingLength; // Should be 0.
+			patch.length1 += paddingLength;
+			patch.length2 += paddingLength;
+		} else if (paddingLength > diffs.getFirst().text.length()) {
+			// Grow first equality.
+			Diff firstDiff = diffs.getFirst();
+			int extraLength = paddingLength - firstDiff.text.length();
+			firstDiff.text = nullPadding.substring(firstDiff.text.length()) + firstDiff.text;
+			patch.start1 -= extraLength;
+			patch.start2 -= extraLength;
+			patch.length1 += extraLength;
+			patch.length2 += extraLength;
+		}
+
+		// Add some padding on end of last diff.
+		patch = patches.getLast();
+		diffs = patch.diffs;
+		if (diffs.isEmpty() || diffs.getLast().operation != Operation.EQUAL) {
+			// Add nullPadding equality.
+			diffs.addLast(new Diff(Operation.EQUAL, nullPadding));
+			patch.length1 += paddingLength;
+			patch.length2 += paddingLength;
+		} else if (paddingLength > diffs.getLast().text.length()) {
+			// Grow last equality.
+			Diff lastDiff = diffs.getLast();
+			int extraLength = paddingLength - lastDiff.text.length();
+			lastDiff.text += nullPadding.substring(0, extraLength);
+			patch.length1 += extraLength;
+			patch.length2 += extraLength;
+		}
+
+		return nullPadding;
+	}
+
+	/**
+	 * Look through the patches and break up any which are longer than the maximum limit of the match
+	 * algorithm. Intended to be called only from within patch_apply.
+	 * 
+	 * @param patches
+	 *            LinkedList of Patch objects.
+	 */
+	public void patch_splitMax(LinkedList<Patch> patches) {
+		short patch_size = Match_MaxBits;
+		String precontext, postcontext;
+		Patch patch;
+		int start1, start2;
+		boolean empty;
+		Operation diff_type;
+		String diff_text;
+		ListIterator<Patch> pointer = patches.listIterator();
+		Patch bigpatch = pointer.hasNext() ? pointer.next() : null;
+		while (bigpatch != null) {
+			if (bigpatch.length1 <= Match_MaxBits) {
+				bigpatch = pointer.hasNext() ? pointer.next() : null;
+				continue;
+			}
+			// Remove the big old patch.
+			pointer.remove();
+			start1 = bigpatch.start1;
+			start2 = bigpatch.start2;
+			precontext = "";
+			while (!bigpatch.diffs.isEmpty()) {
+				// Create one of several smaller patches.
+				patch = new Patch();
+				empty = true;
+				patch.start1 = start1 - precontext.length();
+				patch.start2 = start2 - precontext.length();
+				if (precontext.length() != 0) {
+					patch.length1 = patch.length2 = precontext.length();
+					patch.diffs.add(new Diff(Operation.EQUAL, precontext));
+				}
+				while (!bigpatch.diffs.isEmpty() && patch.length1 < patch_size - Patch_Margin) {
+					diff_type = bigpatch.diffs.getFirst().operation;
+					diff_text = bigpatch.diffs.getFirst().text;
+					if (diff_type == Operation.INSERT) {
+						// Insertions are harmless.
+						patch.length2 += diff_text.length();
+						start2 += diff_text.length();
+						patch.diffs.addLast(bigpatch.diffs.removeFirst());
+						empty = false;
+					} else if (diff_type == Operation.DELETE && patch.diffs.size() == 1 && patch.diffs
+							.getFirst().operation == Operation.EQUAL && diff_text.length() > 2 * patch_size) {
+						// This is a large deletion. Let it pass in one chunk.
+						patch.length1 += diff_text.length();
+						start1 += diff_text.length();
+						empty = false;
+						patch.diffs.add(new Diff(diff_type, diff_text));
+						bigpatch.diffs.removeFirst();
+					} else {
+						// Deletion or equality. Only take as much as we can stomach.
+						diff_text = diff_text.substring(0, Math.min(diff_text.length(), patch_size
+								- patch.length1 - Patch_Margin));
+						patch.length1 += diff_text.length();
+						start1 += diff_text.length();
+						if (diff_type == Operation.EQUAL) {
+							patch.length2 += diff_text.length();
+							start2 += diff_text.length();
+						} else {
+							empty = false;
+						}
+						patch.diffs.add(new Diff(diff_type, diff_text));
+						if (diff_text.equals(bigpatch.diffs.getFirst().text)) {
+							bigpatch.diffs.removeFirst();
+						} else {
+							bigpatch.diffs.getFirst().text = bigpatch.diffs.getFirst().text.substring(
+									diff_text.length());
+						}
+					}
+				}
+				// Compute the head context for the next patch.
+				precontext = diff_text2(patch.diffs);
+				precontext = precontext.substring(Math.max(0, precontext.length() - Patch_Margin));
+				// Append the end context for this patch.
+				if (diff_text1(bigpatch.diffs).length() > Patch_Margin) {
+					postcontext = diff_text1(bigpatch.diffs).substring(0, Patch_Margin);
+				} else {
+					postcontext = diff_text1(bigpatch.diffs);
+				}
+				if (postcontext.length() != 0) {
+					patch.length1 += postcontext.length();
+					patch.length2 += postcontext.length();
+					if (!patch.diffs.isEmpty() && patch.diffs.getLast().operation == Operation.EQUAL) {
+						patch.diffs.getLast().text += postcontext;
+					} else {
+						patch.diffs.add(new Diff(Operation.EQUAL, postcontext));
+					}
+				}
+				if (!empty) {
+					pointer.add(patch);
+				}
+			}
+			bigpatch = pointer.hasNext() ? pointer.next() : null;
+		}
+	}
+
+	/**
+	 * Take a list of patches and return a textual representation.
+	 * 
+	 * @param patches
+	 *            List of Patch objects.
+	 * @return Text representation of patches.
+	 */
+	public String patch_toText(List<Patch> patches) {
+		StringBuilder text = new StringBuilder();
+		for (Patch aPatch : patches) {
+			text.append(aPatch);
+		}
+		return text.toString();
+	}
+
+	/**
+	 * Parse a textual representation of patches and return a List of Patch objects.
+	 * 
+	 * @param textline
+	 *            Text representation of patches.
+	 * @return List of Patch objects.
+	 * @throws IllegalArgumentException
+	 *             If invalid input.
+	 */
+	public List<Patch> patch_fromText(String textline) throws IllegalArgumentException {
+		List<Patch> patches = new LinkedList<Patch>();
+		if (textline.length() == 0) {
+			return patches;
+		}
+		List<String> textList = Arrays.asList(textline.split("\n"));
+		LinkedList<String> text = new LinkedList<String>(textList);
+		Patch patch;
+		Pattern patchHeader = Pattern.compile("^@@ -(\\d+),?(\\d*) \\+(\\d+),?(\\d*) @@$");
+		Matcher m;
+		char sign;
+		String line;
+		while (!text.isEmpty()) {
+			m = patchHeader.matcher(text.getFirst());
+			if (!m.matches()) {
+				throw new IllegalArgumentException("Invalid patch string: " + text.getFirst());
+			}
+			patch = new Patch();
+			patches.add(patch);
+			patch.start1 = Integer.parseInt(m.group(1));
+			if (m.group(2).length() == 0) {
+				patch.start1--;
+				patch.length1 = 1;
+			} else if (m.group(2).equals("0")) {
+				patch.length1 = 0;
+			} else {
+				patch.start1--;
+				patch.length1 = Integer.parseInt(m.group(2));
+			}
+
+			patch.start2 = Integer.parseInt(m.group(3));
+			if (m.group(4).length() == 0) {
+				patch.start2--;
+				patch.length2 = 1;
+			} else if (m.group(4).equals("0")) {
+				patch.length2 = 0;
+			} else {
+				patch.start2--;
+				patch.length2 = Integer.parseInt(m.group(4));
+			}
+			text.removeFirst();
+
+			while (!text.isEmpty()) {
+				try {
+					sign = text.getFirst().charAt(0);
+				} catch (IndexOutOfBoundsException e) {
+					// Blank line? Whatever.
+					text.removeFirst();
+					continue;
+				}
+				line = text.getFirst().substring(1);
+				line = line.replace("+", "%2B"); // decode would change all "+" to " "
+				try {
+					line = URLDecoder.decode(line, "UTF-8");
+				} catch (UnsupportedEncodingException e) {
+					// Not likely on modern system.
+					throw new Error("This system does not support UTF-8.", e);
+				} catch (IllegalArgumentException e) {
+					// Malformed URI sequence.
+					throw new IllegalArgumentException("Illegal escape in patch_fromText: " + line, e);
+				}
+				if (sign == '-') {
+					// Deletion.
+					patch.diffs.add(new Diff(Operation.DELETE, line));
+				} else if (sign == '+') {
+					// Insertion.
+					patch.diffs.add(new Diff(Operation.INSERT, line));
+				} else if (sign == ' ') {
+					// Minor equality.
+					patch.diffs.add(new Diff(Operation.EQUAL, line));
+				} else if (sign == '@') {
+					// Start of next patch.
+					break;
+				} else {
+					// WTF?
+					throw new IllegalArgumentException("Invalid patch mode '" + sign + "' in: " + line);
+				}
+				text.removeFirst();
+			}
+		}
+		return patches;
+	}
+
+	/**
+	 * Class representing one diff operation.
+	 */
+	public static class Diff {
+		/**
+		 * One of: INSERT, DELETE or EQUAL.
+		 */
+		public Operation operation;
+
+		/**
+		 * The text associated with this diff operation.
+		 */
+		public String text;
+
+		/**
+		 * Constructor. Initializes the diff with the provided values.
+		 * 
+		 * @param operation
+		 *            One of INSERT, DELETE or EQUAL.
+		 * @param text
+		 *            The text being applied.
+		 */
+		public Diff(Operation operation, String text) {
+			// Construct a diff with the specified operation and text.
+			this.operation = operation;
+			this.text = text;
+		}
+
+		/**
+		 * Display a human-readable version of this Diff.
+		 * 
+		 * @return text version.
+		 */
+		public String toString() {
+			String prettyText = this.text.replace('\n', '\u00b6');
+			return "Diff(" + this.operation + ",\"" + prettyText + "\")";
+		}
+
+		/**
+		 * Create a numeric hash value for a Diff. This function is not used by DMP.
+		 * 
+		 * @return Hash value.
+		 */
+		@Override
+		public int hashCode() {
+			final int prime = 31;
+			int result = (operation == null) ? 0 : operation.hashCode();
+			result += prime * ((text == null) ? 0 : text.hashCode());
+			return result;
+		}
+
+		/**
+		 * Is this Diff equivalent to another Diff?
+		 * 
+		 * @param obj
+		 *            Another Diff to compare against.
+		 * @return true or false.
+		 */
+		@Override
+		public boolean equals(Object obj) {
+			if (this == obj) {
+				return true;
+			}
+			if (obj == null) {
+				return false;
+			}
+			if (getClass() != obj.getClass()) {
+				return false;
+			}
+			Diff other = (Diff)obj;
+			if (operation != other.operation) {
+				return false;
+			}
+			if (text == null) {
+				if (other.text != null) {
+					return false;
+				}
+			} else if (!text.equals(other.text)) {
+				return false;
+			}
+			return true;
+		}
+	}
+
+	/**
+	 * Class representing one patch operation.
+	 */
+	public static class Patch {
+		public LinkedList<Diff> diffs;
+
+		public int start1;
+
+		public int start2;
+
+		public int length1;
+
+		public int length2;
+
+		/**
+		 * Constructor. Initializes with an empty list of diffs.
+		 */
+		public Patch() {
+			this.diffs = new LinkedList<Diff>();
+		}
+
+		/**
+		 * Emmulate GNU diff's format. Header: @@ -382,8 +481,9 @@ Indicies are printed as 1-based, not
+		 * 0-based.
+		 * 
+		 * @return The GNU diff string.
+		 */
+		public String toString() {
+			String coords1, coords2;
+			if (this.length1 == 0) {
+				coords1 = this.start1 + ",0";
+			} else if (this.length1 == 1) {
+				coords1 = Integer.toString(this.start1 + 1);
+			} else {
+				coords1 = (this.start1 + 1) + "," + this.length1;
+			}
+			if (this.length2 == 0) {
+				coords2 = this.start2 + ",0";
+			} else if (this.length2 == 1) {
+				coords2 = Integer.toString(this.start2 + 1);
+			} else {
+				coords2 = (this.start2 + 1) + "," + this.length2;
+			}
+			StringBuilder text = new StringBuilder();
+			text.append("@@ -").append(coords1).append(" +").append(coords2).append(" @@\n");
+			// Escape the body of the patch with %xx notation.
+			for (Diff aDiff : this.diffs) {
+				switch (aDiff.operation) {
+					case INSERT:
+						text.append('+');
+						break;
+					case DELETE:
+						text.append('-');
+						break;
+					case EQUAL:
+						text.append(' ');
+						break;
+				}
+				try {
+					text.append(URLEncoder.encode(aDiff.text, "UTF-8").replace('+', ' ')).append("\n");
+				} catch (UnsupportedEncodingException e) {
+					// Not likely on modern system.
+					throw new Error("This system does not support UTF-8.", e);
+				}
+			}
+			return unescapeForEncodeUriCompatability(text.toString());
+		}
+	}
+
+	/**
+	 * Unescape selected chars for compatability with JavaScript's encodeURI. In speed critical applications
+	 * this could be dropped since the receiving application will certainly decode these fine. Note that this
+	 * function is case-sensitive. Thus "%3f" would not be unescaped. But this is ok because it is only called
+	 * with the output of URLEncoder.encode which returns uppercase hex. Example: "%3F" -> "?", "%24" -> "$",
+	 * etc.
+	 * 
+	 * @param str
+	 *            The string to escape.
+	 * @return The escaped string.
+	 */
+	private static String unescapeForEncodeUriCompatability(String str) {
+		return str.replace("%21", "!").replace("%7E", "~").replace("%27", "'").replace("%28", "(").replace(
+				"%29", ")").replace("%3B", ";").replace("%2F", "/").replace("%3F", "?").replace("%3A", ":")
+				.replace("%40", "@").replace("%26", "&").replace("%3D", "=").replace("%2B", "+").replace(
+						"%24", "$").replace("%2C", ",").replace("%23", "#");
+	}
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/pom.xml b/mapping/plugins/org.eclipse.intent.mapping/pom.xml
new file mode 100644
index 0000000..9ead52a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/pom.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-plugin</packaging>
+
+  <name>Mapping</name>
+
+  <build>
+   <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-source-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+  
+</project>
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/MappingUtils.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/MappingUtils.java
new file mode 100644
index 0000000..1fbbf47
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/MappingUtils.java
@@ -0,0 +1,769 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping;
+
+import java.io.BufferedInputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+
+import name.fraser.neil.plaintext.diff_match_patch;
+import name.fraser.neil.plaintext.diff_match_patch.Diff;
+
+import org.eclipse.intent.mapping.base.BaseElementFactory.IFactoryDescriptor;
+import org.eclipse.intent.mapping.base.ContainerProviderFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.IBaseRegistry;
+import org.eclipse.intent.mapping.base.IBaseRegistryListener;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.connector.IConnectorRegistry;
+import org.eclipse.intent.mapping.content.IFileTypeRegistry;
+import org.eclipse.intent.mapping.internal.base.BaseRegistry;
+import org.eclipse.intent.mapping.internal.connector.ConnectorRegistry;
+import org.eclipse.intent.mapping.internal.content.FileTypeRegistry;
+
+/**
+ * Mapping utility class.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public final class MappingUtils {
+
+	/**
+	 * Diff and match wrapping class.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static final class DiffMatch {
+
+		/**
+		 * The list of differences.
+		 */
+		final LinkedList<Diff> diffs;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param txt1
+		 *            the first text
+		 * @param txt2
+		 *            the second text
+		 */
+		private DiffMatch(String txt1, String txt2) {
+			diffs = DIFF_MATCH_PATCH.diff_main(txt1, txt2);
+		}
+
+		/**
+		 * Reduce the number of edits by eliminating operationally trivial equalities.
+		 */
+		public void cleanupEfficdiency() {
+			DIFF_MATCH_PATCH.diff_cleanupEfficiency(diffs);
+		}
+
+		/**
+		 * Reorder and merge like edit sections. Merge equalities. Any edit section can move as long as it
+		 * doesn't cross an equality.
+		 */
+		public void cleanupMerge() {
+			DIFF_MATCH_PATCH.diff_cleanupMerge(diffs);
+		}
+
+		/**
+		 * Reduce the number of edits by eliminating semantically trivial equalities.
+		 */
+		public void cleanupSemantic() {
+			DIFF_MATCH_PATCH.diff_cleanupSemantic(diffs);
+		}
+
+		/**
+		 * Look for single edits surrounded on both sides by equalities which can be shifted sideways to align
+		 * the edit to a word boundary. e.g: "The c<ins>at c</ins>ame." -> "The <ins>cat </ins>came".
+		 */
+		public void cleanupSemanticLossless() {
+			DIFF_MATCH_PATCH.diff_cleanupSemanticLossless(diffs);
+		}
+
+		/**
+		 * Gets the <a href="https://en.wikipedia.org/wiki/Levenshtein_distance">Levenshtein Distance</a>.
+		 * 
+		 * @return the <a href="https://en.wikipedia.org/wiki/Levenshtein_distance">Levenshtein Distance</a>
+		 */
+		public int getLevenshteinDistance() {
+			return DIFF_MATCH_PATCH.diff_levenshtein(diffs);
+		}
+
+		/**
+		 * Gets the index in text2 from corresponding to the index in text1.
+		 * 
+		 * @param index
+		 *            the index in text1
+		 * @return the index in text2 from corresponding to the index in text1
+		 */
+		public int getIndex(int index) {
+			return DIFF_MATCH_PATCH.diff_xIndex(diffs, index);
+		}
+
+	}
+
+	/**
+	 * The {@link IBaseRegistry}.
+	 */
+	private static final BaseRegistry BASE_REGISTRY = initBaseRegistry();
+
+	/**
+	 * The {@link IConnectorRegistry}.
+	 */
+	private static final ConnectorRegistry CONNECTOR_REGISTRY = new ConnectorRegistry();
+
+	/**
+	 * {@link IBase} kind to {@link ILocation} interface/implementation mapping.
+	 */
+	private static final Map<Class<? extends IBase>, Map<Class<? extends ILocation>, IFactoryDescriptor<? extends ILocation>>> LOCATION_IMPLEMENTATIONS = new HashMap<Class<? extends IBase>, Map<Class<? extends ILocation>, IFactoryDescriptor<? extends ILocation>>>();
+
+	/**
+	 * Diff match patch instance.
+	 */
+	private static final diff_match_patch DIFF_MATCH_PATCH = new diff_match_patch();
+
+	/**
+	 * The {@link ContainerProviderFactory}.
+	 */
+	private static final ContainerProviderFactory CONTAINER_PROVIDER_FACTORY = new ContainerProviderFactory();
+
+	/**
+	 * The {@link IFileTypeRegistry}.
+	 */
+	private static IFileTypeRegistry fileTypeRegistry = new FileTypeRegistry();
+
+	/**
+	 * Constructor.
+	 */
+	private MappingUtils() {
+		// nothing to do here
+	}
+
+	/**
+	 * Initialize the {@link BaseRegistry}.
+	 * 
+	 * @return the {@link BaseRegistry}
+	 */
+	private static BaseRegistry initBaseRegistry() {
+		final BaseRegistry res = new BaseRegistry();
+
+		res.addListener(new IBaseRegistryListener.Stub() {
+
+			@Override
+			@SuppressWarnings("unchecked")
+			public void baseRegistred(IBase base) {
+				for (Entry<Class<? extends IBase>, Map<Class<? extends ILocation>, IFactoryDescriptor<? extends ILocation>>> entry : LOCATION_IMPLEMENTATIONS
+						.entrySet()) {
+					if (entry.getKey().isAssignableFrom(base.getClass())) {
+						for (Entry<Class<? extends ILocation>, IFactoryDescriptor<? extends ILocation>> locationEntry : entry
+								.getValue().entrySet()) {
+							base.getFactory().addDescriptor((Class<ILocation>)locationEntry.getKey(),
+									locationEntry.getValue());
+						}
+					}
+				}
+			}
+
+		});
+
+		return res;
+	}
+
+	/**
+	 * Gets a {@link DiffMatch} for the two given {@link String}.
+	 * 
+	 * @param txt1
+	 *            the first text
+	 * @param txt2
+	 *            the second text
+	 * @return a {@link DiffMatch} for the two given {@link String}
+	 */
+	public static DiffMatch getDiffMatch(String txt1, String txt2) {
+		return new DiffMatch(txt1, txt2);
+	}
+
+	/**
+	 * Gets the {@link IBaseRegistry}.
+	 * 
+	 * @return the {@link IBaseRegistry}
+	 */
+	public static IBaseRegistry getMappingRegistry() {
+		return BASE_REGISTRY;
+	}
+
+	/**
+	 * Gets the {@link IConnectorRegistry}.
+	 * 
+	 * @return the {@link IConnectorRegistry}
+	 */
+	public static IConnectorRegistry getConnectorRegistry() {
+		return CONNECTOR_REGISTRY;
+	}
+
+	/**
+	 * Registers the given {@link ILocation} implementation to instantiate the given {@link ILocation}
+	 * interface for the given {@link IBase} kind.
+	 * 
+	 * @param baseClass
+	 *            the {@link IBase} kind
+	 * @param locationInterface
+	 *            the {@link ILocation} interface
+	 * @param descriptor
+	 *            the {@link ILocation} implementation for the {@link IBase} kind
+	 * @param <L>
+	 *            the {@link ILocation} interface kind
+	 */
+	public static <L extends ILocation> void registerLocationImplementation(Class<? extends IBase> baseClass,
+			Class<L> locationInterface, IFactoryDescriptor<? extends L> descriptor) {
+		synchronized(getMappingRegistry()) {
+			Map<Class<? extends ILocation>, IFactoryDescriptor<? extends ILocation>> implementations = LOCATION_IMPLEMENTATIONS
+					.get(baseClass);
+			if (implementations == null) {
+				implementations = new HashMap<Class<? extends ILocation>, IFactoryDescriptor<? extends ILocation>>();
+				LOCATION_IMPLEMENTATIONS.put(baseClass, implementations);
+			}
+			implementations.put(locationInterface, descriptor);
+			for (IBase base : getMappingRegistry().getBases()) {
+				if (baseClass.isAssignableFrom(base.getClass())) {
+					base.getFactory().addDescriptor(locationInterface, descriptor);
+				}
+			}
+		}
+	}
+
+	/**
+	 * Removes the given {@link ILocation} interface instantiation {@link Class} for the given {@link IBase}.
+	 * 
+	 * @param baseClass
+	 *            the {@link IBase} kind
+	 * @param locationInterface
+	 *            the {@link ILocation} interface
+	 */
+	public static void unregisterLocationImplementation(Class<? extends IBase> baseClass,
+			Class<? extends ILocation> locationInterface) {
+		synchronized(getMappingRegistry()) {
+			Map<Class<? extends ILocation>, IFactoryDescriptor<? extends ILocation>> implementations = LOCATION_IMPLEMENTATIONS
+					.get(baseClass);
+			if (implementations != null) {
+				implementations.remove(locationInterface);
+			}
+			for (IBase base : getMappingRegistry().getBases()) {
+				if (baseClass.isAssignableFrom(base.getClass())) {
+					base.getFactory().removeDescriptor(locationInterface);
+				}
+			}
+		}
+	}
+
+	/**
+	 * Gets the {@link IBase} containing the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @return the {@link IBase} containing the given {@link ILocation} if nay, <code>null</code> otherwise
+	 */
+	public static IBase getBase(ILocation location) {
+		IBase res = null;
+
+		ILocationContainer conainer = location.getContainer();
+		while (conainer != null) {
+			if (conainer instanceof IBase) {
+				res = (IBase)conainer;
+				break;
+			} else if (conainer instanceof ILocation) {
+				conainer = ((ILocation)conainer).getContainer();
+			} else {
+				break;
+			}
+		}
+
+		return res;
+	}
+
+	/**
+	 * Gets the containing {@link IBase} of the given {@link ILocationContainer}.
+	 * 
+	 * @param container
+	 *            the {@link ILocationContainer}
+	 * @return the containing {@link IBase} of the given {@link ILocationContainer} if any, <code>null</code>
+	 *         otherwise
+	 */
+	public static IBase getBase(ILocationContainer container) {
+		final IBase res;
+
+		if (container instanceof IBase) {
+			res = (IBase)container;
+		} else if (container instanceof ILocation) {
+			res = getBase((ILocation)container);
+		} else {
+			throw new IllegalStateException("new ILocationContainer sub type ?");
+		}
+
+		return res;
+	}
+
+	/**
+	 * Gets the {@link ILink} between {@link ILocation source} and {@link ILocation target}.
+	 * 
+	 * @param source
+	 *            the {@link ILocation source}
+	 * @param target
+	 *            the {@link ILocation target}
+	 * @return the {@link ILink} between {@link ILocation source} and {@link ILocation target} if any,
+	 *         <code>null</code> otherwise
+	 */
+	public static ILink getLink(ILocation source, ILocation target) {
+		ILink res = null;
+
+		if (source.getTargetLinks().size() > target.getSourceLinks().size()) {
+			for (ILink link : target.getSourceLinks()) {
+				if (source.equals(link.getSource())) {
+					res = link;
+					break;
+				}
+			}
+		} else {
+			for (ILink link : source.getTargetLinks()) {
+				if (target.equals(link.getTarget())) {
+					res = link;
+					break;
+				}
+			}
+		}
+
+		return res;
+	}
+
+	/**
+	 * Tells if an {@link ILink} can be {@link MappingUtils#createLink(ILocation, ILocation) created} between
+	 * the given {@link ILocation source} and {@link ILocation target}.
+	 * 
+	 * @param source
+	 *            the source {@link ILocation}
+	 * @param target
+	 *            the target {@link ILocation}
+	 * @return <code>true</code> if an {@link ILink} can be
+	 *         {@link MappingUtils#createLink(ILocation, ILocation) created} between the given
+	 *         {@link ILocation source} and {@link ILocation target}, <code>false</code> otherwise
+	 */
+	public static boolean canCreateLink(ILocation source, ILocation target) {
+		return !source.isMarkedAsDeleted() && !target.isMarkedAsDeleted() && !source.equals(target)
+				&& MappingUtils.getLink(source, target) == null;
+	}
+
+	/**
+	 * Tells if an {@link ILink} can be
+	 * {@link MappingUtils#createLink(ILocationDescriptor, ILocationDescriptor) created} between the given
+	 * {@link ILocationDescriptor sourceDescriptor} and {@link ILocationDescriptor targetDescriptor}.
+	 * 
+	 * @param sourceDescriptor
+	 *            the source {@link ILocationDescriptor}
+	 * @param targetDescriptor
+	 *            the target {@link ILocationDescriptor}
+	 * @return <code>true</code> if an {@link ILink} can be
+	 *         {@link MappingUtils#createLink(ILocationDescriptor, ILocationDescriptor) created} between the
+	 *         given {@link ILocationDescriptor sourceDescriptor} and {@link ILocationDescriptor
+	 *         targetDescriptor}, <code>false</code> otherwise
+	 */
+	public static boolean canCreateLink(ILocationDescriptor sourceDescriptor,
+			ILocationDescriptor targetDescriptor) {
+		return !sourceDescriptor.exists() || !targetDescriptor.exists() || MappingUtils.canCreateLink(
+				sourceDescriptor.getLocation(), targetDescriptor.getLocation());
+	}
+
+	/**
+	 * Creates an {@link ILink} between the given {@link ILink#getSource() source} and
+	 * {@link ILink#getTarget() target}.
+	 * 
+	 * @param source
+	 *            the {@link ILink#getSource() source} {@link ILocation}
+	 * @param target
+	 *            the {@link ILink#getTarget() target} {@link ILocation}
+	 * @return the created {@link ILink}
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	public static ILink createLink(ILocation source, ILocation target) throws InstantiationException,
+			IllegalAccessException, ClassNotFoundException {
+		final ILink res;
+
+		if (canCreateLink(source, target)) {
+			final IBase base = getBase(source);
+			res = base.getFactory().createElement(ILink.class);
+			res.setSource(source);
+			res.setTarget(target);
+		} else {
+			throw new IllegalStateException("can't create the Link.");
+		}
+
+		return res;
+	}
+
+	/**
+	 * Creates an {@link ILink} between the given {@link ILink#getSource() source} and
+	 * {@link ILink#getTarget() target}.
+	 * 
+	 * @param sourceDescriptor
+	 *            the {@link ILink#getSource() source} {@link ILocationDescriptor}
+	 * @param targetDescriptor
+	 *            the {@link ILink#getTarget() target} {@link ILocationDescriptor}
+	 * @return the created {@link ILink}
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	public static ILink createLink(ILocationDescriptor sourceDescriptor, ILocationDescriptor targetDescriptor)
+			throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final ILink res;
+
+		if (canCreateLink(sourceDescriptor, targetDescriptor)) {
+			res = MappingUtils.createLink(sourceDescriptor.getOrCreate(), targetDescriptor.getOrCreate());
+		} else {
+			throw new IllegalStateException("can't create the Link.");
+		}
+
+		return res;
+	}
+
+	/**
+	 * Gets the content of the given {@link File}.
+	 * 
+	 * @param file
+	 *            the {@link File}
+	 * @param charsetName
+	 *            The name of a supported {@link java.nio.charset.Charset </code>charset<code>}
+	 * @return a {@link String} of the content of the given {@link File}
+	 * @throws IOException
+	 *             if the {@link File} can't be read
+	 */
+	public static String getContent(File file, String charsetName) throws IOException {
+		if (!file.exists()) {
+			throw new IOException(file.getAbsolutePath() + " doesn't exists.");
+		} else if (file.isDirectory()) {
+			throw new IOException(file.getAbsolutePath() + " is a directory.");
+		} else if (!file.canRead()) {
+			throw new IOException(file.getAbsolutePath() + " is not readable.");
+		}
+		int len = (int)file.length();
+		final String res;
+		if (len != 0) {
+			res = getContent(len, new FileInputStream(file));
+		} else {
+			res = "";
+		}
+		return res;
+	}
+
+	/**
+	 * Gets the content of the given {@link File}.
+	 * 
+	 * @param length
+	 *            the {@link InputStream} size
+	 * @param inputStream
+	 *            the {@link InputStream}
+	 * @return a {@link String} of the content of the given {@link File}
+	 * @throws IOException
+	 *             if the {@link InputStream} can't be read
+	 */
+	public static String getContent(int length, InputStream inputStream) throws IOException {
+		final StringBuilder res = new StringBuilder(length);
+		final InputStreamReader input = new InputStreamReader(new BufferedInputStream(inputStream));
+
+		final char[] buffer = new char[length];
+		int len = input.read(buffer);
+		while (len != -1) {
+			res.append(buffer, 0, len);
+			len = input.read(buffer);
+		}
+		input.close();
+
+		return res.toString();
+	}
+
+	/**
+	 * Tells if the given {@link ILink} can be deleted.
+	 * 
+	 * @param link
+	 *            the {@link ILink} to check
+	 * @return <code>true</code> if the given {@link ILink} can be deleted, <code>false</code> otherwise
+	 */
+	public static boolean canDeleteLink(ILink link) {
+		return link.getReports().isEmpty();
+	}
+
+	/**
+	 * Deletes the given {@link ILink}.
+	 * 
+	 * @param link
+	 *            the {@link ILink} to delete
+	 */
+	public static void deleteLink(ILink link) {
+		if (canDeleteLink(link)) {
+			final ILocation source = link.getSource();
+			link.setSource(null);
+			if (source != null && source.isMarkedAsDeleted() && canDeleteLocation(source)) {
+				deleteLocation(source);
+			}
+			final ILocation target = link.getTarget();
+			link.setTarget(null);
+			if (target != null && target.isMarkedAsDeleted() && canDeleteLocation(target)) {
+				deleteLocation(target);
+			}
+		} else {
+			throw new IllegalStateException("can't delete a link with report.");
+		}
+	}
+
+	/**
+	 * Tells if the given {@link ILocation} can be deleted.
+	 * 
+	 * @param location
+	 *            the {@link ILocation} to check
+	 * @return <code>true</code> if the given {@link ILocation} can be deleted, <code>false</code> otherwise
+	 */
+	public static boolean canDeleteLocation(ILocation location) {
+		return location.getSourceLinks().isEmpty() && location.getTargetLinks().isEmpty() && location
+				.getContents().isEmpty();
+	}
+
+	/**
+	 * Deletes the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation} to delete
+	 */
+	public static void deleteLocation(ILocation location) {
+		if (canDeleteLocation(location)) {
+			final ILocationContainer container = location.getContainer();
+			location.setContainer(null);
+			if (container instanceof ILocation && ((ILocation)container).isMarkedAsDeleted()
+					&& canDeleteLocation((ILocation)container)) {
+				deleteLocation((ILocation)container);
+			}
+		} else {
+			throw new IllegalStateException("can't delete a location with links or contained locations.");
+		}
+	}
+
+	/**
+	 * Deletes the given {@link IReport}.
+	 * 
+	 * @param report
+	 *            the {@link IReport} to delete
+	 */
+	public static void deleteReport(IReport report) {
+		final IBase base = getBase(report.getLink().getSource());
+		base.getReports().remove(report);
+		report.setLink(null);
+	}
+
+	/**
+	 * {@link MappingUtils#deleteLocation(ILocation) Deletes} if
+	 * {@link MappingUtils#canDeleteLocation(ILocation) possible} or
+	 * {@link ILocation#setMarkedAsDeleted(boolean) mark as deleted} the given location. In the latest case an
+	 * {@link IReport} is created with the given {@link IReport#getDescription() description}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @param reportDescription
+	 *            the {@link IReport} {@link IReport#getDescription() description}
+	 * @return the {@link List} of creates {@link IReport}
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible.
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason.
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	public static List<IReport> markAsDeletedOrDelete(ILocation location, String reportDescription)
+			throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final List<IReport> res;
+
+		if (MappingUtils.canDeleteLocation(location)) {
+			MappingUtils.deleteLocation(location);
+			res = Collections.emptyList();
+		} else {
+			location.setMarkedAsDeleted(true);
+			res = createReportsForLinks(location, reportDescription);
+		}
+
+		return res;
+	}
+
+	/**
+	 * Marks the given location as changed and {@link IReport} are created.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @param reportDescription
+	 *            the {@link IReport} {@link IReport#getDescription() description}
+	 * @return the {@link List} of creates {@link IReport}
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible.
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason.
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	public static List<IReport> markAsChanged(ILocation location, String reportDescription)
+			throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		location.change(reportDescription);
+		return createReportsForLinks(location, reportDescription);
+	}
+
+	/**
+	 * Creates {@link IReport} for the given {@link ILocation} with the given {@link IReport}
+	 * {@link IReport#getDescription() description}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @param reportDescription
+	 *            the {@link IReport} {@link IReport#getDescription() description}
+	 * @return the {@link List} of creates {@link IReport}
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible.
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason.
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	private static List<IReport> createReportsForLinks(ILocation location, String reportDescription)
+			throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final List<IReport> res = new ArrayList<IReport>();
+
+		final IBase base = MappingUtils.getBase(location);
+		for (ILink link : location.getSourceLinks()) {
+			res.add(createReport(base, link, reportDescription));
+		}
+		for (ILink link : location.getTargetLinks()) {
+			res.add(createReport(base, link, reportDescription));
+		}
+
+		return res;
+	}
+
+	/**
+	 * Creates an {@link IReport} for the given {@link ILink} with the given description.
+	 * 
+	 * @param link
+	 *            the {@link ILink}
+	 * @param reportDescription
+	 *            the {@link IReport} {@link IReport#getDescription() description}
+	 * @return the created {@link IReport}
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible.
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason.
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	public static IReport createReport(ILink link, String reportDescription) throws InstantiationException,
+			IllegalAccessException, ClassNotFoundException {
+		final IBase base = MappingUtils.getBase(link.getSource());
+
+		return createReport(base, link, reportDescription);
+	}
+
+	/**
+	 * Creates an {@link IReport} for the given {@link ILink} with the given description.
+	 * 
+	 * @param base
+	 *            the {@link IBase}
+	 * @param link
+	 *            the {@link ILink}
+	 * @param reportDescription
+	 *            the {@link IReport} {@link IReport#getDescription() description}
+	 * @return the created {@link IReport}
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible.
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason.
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	private static IReport createReport(final IBase base, ILink link, String reportDescription)
+			throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final IReport res = base.getFactory().createElement(IReport.class);
+
+		res.setLink(link);
+		res.setDescription(reportDescription);
+		base.getReports().add(res);
+
+		return res;
+	}
+
+	/**
+	 * Gets the {@link IFileTypeRegistry}.
+	 * 
+	 * @return the {@link IFileTypeRegistry}
+	 */
+	public static IFileTypeRegistry getFileTypeRegistry() {
+		return fileTypeRegistry;
+	}
+
+	/**
+	 * Sets the {@link IFileTypeRegistry}.
+	 * 
+	 * @param registry
+	 *            the new {@link IFileTypeRegistry}
+	 */
+	public static void setFileTypeRegistry(IFileTypeRegistry registry) {
+		fileTypeRegistry = registry;
+	}
+
+	/**
+	 * Gets the {@link ContainerProviderFactory}.
+	 * 
+	 * @return the {@link ContainerProviderFactory}
+	 */
+	public static ContainerProviderFactory getContainerProviderFactory() {
+		return CONTAINER_PROVIDER_FACTORY;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/BaseElementFactory.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/BaseElementFactory.java
new file mode 100644
index 0000000..45a702f
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/BaseElementFactory.java
@@ -0,0 +1,167 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Creates instances of {@link IBaseElement}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class BaseElementFactory {
+
+	/**
+	 * Describe creation of an {@link IBaseElement}.
+	 * 
+	 * @param <T>
+	 *            the kind of {@link IBaseElement} described.
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public interface IFactoryDescriptor<T extends IBaseElement> {
+
+		/**
+		 * Creates a new instance of {@link IBaseElement}.
+		 * 
+		 * @return the created instance of {@link IBaseElement}
+		 * @throws IllegalAccessException
+		 *             if the class or its nullary constructor is not accessible
+		 * @throws InstantiationException
+		 *             if this Class represents an abstract class, an interface, an array class, a primitive
+		 *             type, or void; or if the class has no nullary constructor; or if the instantiation
+		 *             fails for some other reason
+		 * @throws ClassNotFoundException
+		 *             if the {@link Class} can't be found in the {@link ClassLoader}
+		 */
+		T createElement() throws InstantiationException, IllegalAccessException, ClassNotFoundException;
+	}
+
+	/**
+	 * Describe creation of an {@link IBaseElement}.
+	 * 
+	 * @param <T>
+	 *            the kind of {@link IBaseElement} described.
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static final class FactoryDescriptor<T extends IBaseElement> implements IFactoryDescriptor<T> {
+
+		/**
+		 * The {@link Class}.
+		 */
+		private final Class<T> clazz;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param clazz
+		 *            the {@link Class}
+		 */
+		public FactoryDescriptor(Class<T> clazz) {
+			this.clazz = clazz;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.BaseElementFactory.IFactoryDescriptor#createElement()
+		 */
+		public T createElement() throws InstantiationException, IllegalAccessException,
+				ClassNotFoundException {
+			return clazz.newInstance();
+		}
+
+	}
+
+	/**
+	 * Mapping from interfaces to instance classes.
+	 */
+	private final Map<Class<? extends IBaseElement>, IFactoryDescriptor<?>> descriptorMapping = new HashMap<Class<? extends IBaseElement>, IFactoryDescriptor<?>>();
+
+	/**
+	 * Gets the instance {@link IFactoryDescriptor} for the given interface {@link Class} from the
+	 * {@link BaseElementFactory#descriptorMapping mapping}.
+	 * 
+	 * @param cls
+	 *            the interface class
+	 * @param <T>
+	 *            the {@link IBaseElement} kind
+	 * @return the instance {@link Class} of the given interface {@link Class} from the
+	 *         {@link BaseElementFactory#descriptorMapping mapping}
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	@SuppressWarnings("unchecked")
+	private <T extends IBaseElement> IFactoryDescriptor<T> getDescriptor(Class<T> cls)
+			throws ClassNotFoundException {
+		return (IFactoryDescriptor<T>)descriptorMapping.get(cls);
+	}
+
+	/**
+	 * Creates an instance of {@link IBaseElement} for the given interface {@link Class}.
+	 * 
+	 * @param interfaceCls
+	 *            the interface class
+	 * @param <T>
+	 *            the {@link IBaseElement} kind
+	 * @return the created instance of {@link IBaseElement} for the given interface {@link Class} if an
+	 *         instance {@link Class} has been {@link BaseElementFactory#addDescriptor(Class, Class) added}
+	 *         for the interface {@link Class}, <code>null</code> otherwise
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	public <T extends IBaseElement> T createElement(Class<T> interfaceCls) throws InstantiationException,
+			IllegalAccessException, ClassNotFoundException {
+		final T res;
+
+		final IFactoryDescriptor<T> descriptor = getDescriptor(interfaceCls);
+		if (descriptor != null) {
+			res = descriptor.createElement();
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Add an instance {@link Class} for the given interface {@link Class}.
+	 * 
+	 * @param interfaceCls
+	 *            the interface {@link Class}
+	 * @param descriptor
+	 *            the {@link IFactoryDescriptor}
+	 * @param <T>
+	 *            the {@link IBaseElement} kind
+	 */
+	public <T extends IBaseElement> void addDescriptor(Class<T> interfaceCls,
+			IFactoryDescriptor<? extends T> descriptor) {
+		descriptorMapping.put(interfaceCls, descriptor);
+	}
+
+	/**
+	 * Removes the instance {@link Class} of the given interface {@link Class}.
+	 * 
+	 * @param interfaceCls
+	 *            the interface {@link Class}
+	 */
+	public void removeDescriptor(Class<?> interfaceCls) {
+		descriptorMapping.remove(interfaceCls);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ContainerProviderFactory.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ContainerProviderFactory.java
new file mode 100644
index 0000000..e780688
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ContainerProviderFactory.java
@@ -0,0 +1,178 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+
+/**
+ * Creates instances of {@link IContainerProvider}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ContainerProviderFactory {
+
+	/**
+	 * Describe creation of an {@link IBaseElement}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public interface IFactoryDescriptor {
+
+		/**
+		 * Gets the {@link IContainerProvider} {@link Class#getCanonicalName() class name}.
+		 * 
+		 * @return the {@link IContainerProvider} {@link Class#getCanonicalName() class name}
+		 */
+		String getClassName();
+
+		/**
+		 * Creates a new instance of {@link IContainerProvider}.
+		 * 
+		 * @return the created instance of {@link IContainerProvider}
+		 * @throws IllegalAccessException
+		 *             if the class or its nullary constructor is not accessible
+		 * @throws InstantiationException
+		 *             if this Class represents an abstract class, an interface, an array class, a primitive
+		 *             type, or void; or if the class has no nullary constructor; or if the instantiation
+		 *             fails for some other reason
+		 * @throws ClassNotFoundException
+		 *             if the {@link Class} can't be found in the {@link ClassLoader}
+		 */
+		IContainerProvider createElement() throws InstantiationException, IllegalAccessException,
+				ClassNotFoundException;
+	}
+
+	/**
+	 * Describe creation of an {@link IContainerProvider}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static final class FactoryDescriptor implements IFactoryDescriptor {
+
+		/**
+		 * The {@link Class}.
+		 */
+		private final Class<? extends IContainerProvider> clazz;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param clazz
+		 *            the {@link Class}
+		 */
+		public FactoryDescriptor(Class<? extends IContainerProvider> clazz) {
+			this.clazz = clazz;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ContainerProviderFactory.IFactoryDescriptor#getClassName()
+		 */
+		public String getClassName() {
+			return clazz.getCanonicalName();
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ContainerProviderFactory.IFactoryDescriptor#createElement()
+		 */
+		public IContainerProvider createElement() throws InstantiationException, IllegalAccessException,
+				ClassNotFoundException {
+			return clazz.newInstance();
+		}
+
+	}
+
+	/**
+	 * Mapping from {@link IFactoryDescriptor#getClassName() class name} to {@link IFactoryDescriptor}.
+	 */
+	private final Map<String, IFactoryDescriptor> descriptorMapping = new LinkedHashMap<String, IFactoryDescriptor>();
+
+	/**
+	 * Gets the instance {@link IFactoryDescriptor} for the given {@link Class#getCanonicalName() class name}
+	 * from the {@link ContainerProviderFactory#descriptorMapping mapping}.
+	 * 
+	 * @param className
+	 *            the {@link Class#getCanonicalName() class name}
+	 * @return the instance {@link Class} of the given interface {@link Class} from the
+	 *         {@link ContainerProviderFactory#descriptorMapping mapping}
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	private IFactoryDescriptor getDescriptor(String className) throws ClassNotFoundException {
+		return descriptorMapping.get(className);
+	}
+
+	/**
+	 * Creates an instance of {@link IContainerProvider} for the given interface
+	 * {@link Class#getCanonicalName() class name}.
+	 * 
+	 * @param className
+	 *            the {@link Class#getCanonicalName() class name}
+	 * @return the created instance of {@link IContainerProvider} if the {@link Class#getCanonicalName() class
+	 *         name} has been {@link ContainerProviderFactory#addDescriptor(IFactoryDescriptor) added} for the
+	 *         {@link Class#getCanonicalName() class name}, <code>null</code> otherwise
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	public IContainerProvider createProvider(String className) throws InstantiationException,
+			IllegalAccessException, ClassNotFoundException {
+		final IContainerProvider res;
+
+		final IFactoryDescriptor descriptor = getDescriptor(className);
+		if (descriptor != null) {
+			res = descriptor.createElement();
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Add the given {@link IFactoryDescriptor}.
+	 * 
+	 * @param descriptor
+	 *            the {@link IFactoryDescriptor}
+	 */
+	public void addDescriptor(IFactoryDescriptor descriptor) {
+		descriptorMapping.put(descriptor.getClassName(), descriptor);
+	}
+
+	/**
+	 * Removes the {@link IFactoryDescriptor} for the given {@link Class#getCanonicalName() class name}.
+	 * 
+	 * @param className
+	 *            the {@link Class#getCanonicalName() class name}
+	 */
+	public void removeDescriptor(String className) {
+		descriptorMapping.remove(className);
+	}
+
+	public List<String> getProviderNames() {
+		return new ArrayList<String>(descriptorMapping.keySet());
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ContainerProviderRegistry.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ContainerProviderRegistry.java
new file mode 100644
index 0000000..3a7d575
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ContainerProviderRegistry.java
@@ -0,0 +1,167 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.connector.IConnectorRegistry;
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+import org.eclipse.intent.mapping.internal.connector.ConnectorRegistry;
+import org.eclipse.intent.mapping.text.TextRegionContainerProvider;
+
+/**
+ * The default implementation of {@link IContainerProviderRegistry}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ContainerProviderRegistry implements IContainerProviderRegistry {
+
+	/**
+	 * The {@link List} of {@link ConnectorRegistry#register(IContainerProvider) registered}
+	 * {@link IContainerProvider}.
+	 */
+	private final List<IContainerProvider> providers = Collections.synchronizedList(
+			new ArrayList<IContainerProvider>());
+
+	/**
+	 * Mapping of provider name to instance.
+	 */
+	private final Map<String, IContainerProvider> nameToProvider = new HashMap<String, IContainerProvider>();
+
+	/**
+	 * The {@link IBase} we are attached to.
+	 */
+	private final IBase base;
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param base
+	 *            the {@link IBase} to attach to
+	 */
+	public ContainerProviderRegistry(IBase base) {
+		this.base = base;
+		synchronized(providers) {
+			providers.add(new TextRegionContainerProvider());
+		}
+		for (String providerName : base.getContainerProviders()) {
+			try {
+				register(MappingUtils.getContainerProviderFactory().createProvider(providerName));
+			} catch (InstantiationException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			} catch (IllegalAccessException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			} catch (ClassNotFoundException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+		}
+
+		base.addListener(new IBaseListener.Stub() {
+			@Override
+			public void containerProviderAdded(String provider) {
+				try {
+					register(MappingUtils.getContainerProviderFactory().createProvider(provider));
+				} catch (InstantiationException e) {
+					// TODO Auto-generated catch block
+					e.printStackTrace();
+				} catch (IllegalAccessException e) {
+					// TODO Auto-generated catch block
+					e.printStackTrace();
+				} catch (ClassNotFoundException e) {
+					// TODO Auto-generated catch block
+					e.printStackTrace();
+				}
+			}
+
+			@Override
+			public void containerProviderRemoved(String provider) {
+				final IContainerProvider providerInstance = nameToProvider.get(provider);
+				if (providerInstance != null) {
+					unregister(providerInstance);
+				}
+			}
+		});
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#register(org.eclipse.intent.mapping.connector.IContainerProvider)
+	 */
+	public void register(IContainerProvider provider) {
+		if (provider != null) {
+			synchronized(providers) {
+				if (!nameToProvider.containsKey(provider.getClass().getCanonicalName())) {
+					providers.add(provider);
+					nameToProvider.put(provider.getClass().getCanonicalName(), provider);
+					base.getContainerProviders().add(provider.getClass().getCanonicalName());
+				}
+			}
+		} else {
+			throw new IllegalArgumentException("IContainerProvider can't be null.");
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#unregister(org.eclipse.intent.mapping.connector.IContainerProvider)
+	 */
+	public void unregister(IContainerProvider provider) {
+		synchronized(providers) {
+			final IContainerProvider providerInstance = nameToProvider.remove(provider.getClass()
+					.getCanonicalName());
+			if (providerInstance != null) {
+				providers.remove(provider);
+				base.getContainerProviders().remove(provider.getClass().getCanonicalName());
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#getContainer(java.lang.Object)
+	 */
+	public Object getContainer(Object element) {
+		for (IContainerProvider provider : getContainerProviders()) {
+			final Object container = provider.getContainer(element);
+			if (container != null) {
+				return container;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * Gets the {@link List} of {@link IConnectorRegistry#register(IContainerProvider) registered}
+	 * {@link IContainerProvider}.
+	 * 
+	 * @return the {@link List} of {@link IConnectorRegistry#register(IContainerProvider) registered}
+	 *         {@link IContainerProvider}
+	 */
+	protected List<IContainerProvider> getContainerProviders() {
+		synchronized(providers) {
+			return Collections.unmodifiableList(new ArrayList<IContainerProvider>(providers));
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBase.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBase.java
new file mode 100644
index 0000000..757eb10
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBase.java
@@ -0,0 +1,94 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+import java.io.IOException;
+import java.util.List;
+
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+
+/**
+ * A base stores root {@link ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IBase extends IMappingElement, ILocationContainer {
+
+	/**
+	 * Sets the {@link IBase#getName() name} of the {@link IBase}.
+	 * 
+	 * @param name
+	 *            the name of the IBase
+	 */
+	void setName(String name);
+
+	/**
+	 * Gets the name of the {@link IBase}.
+	 * 
+	 * @return the name of the {@link IBase}
+	 */
+	String getName();
+
+	/**
+	 * Adds a {@link IBaseListener}.
+	 * 
+	 * @param listener
+	 *            the {@link IBaseListener} to add
+	 */
+	void addListener(IBaseListener listener);
+
+	/**
+	 * Removes a {@link IBaseListener}.
+	 * 
+	 * @param listener
+	 *            the {@link IBaseListener} to remove
+	 */
+	void removeListener(IBaseListener listener);
+
+	/**
+	 * Gets the {@link BaseElementFactory} use to create instances of {@link ILocation} for this {@link IBase}
+	 * .
+	 * 
+	 * @return the {@link BaseElementFactory} use to create instances of {@link ILocation} for this
+	 *         {@link IBase}
+	 */
+	BaseElementFactory getFactory();
+
+	/**
+	 * Gets the {@link List} of {@link IReport}.
+	 * 
+	 * @return the {@link List} of {@link IReport}
+	 */
+	List<IReport> getReports();
+
+	/**
+	 * Gets the {@link List} of {@link IContainerProvider} {@link Class#getCanonicalName() class name}.
+	 * 
+	 * @return the {@link List} of {@link IContainerProvider} {@link Class#getCanonicalName() class name}
+	 */
+	List<String> getContainerProviders();
+
+	/**
+	 * Gets the {@link ContainerProviderRegistry}.
+	 * 
+	 * @return the {@link ContainerProviderRegistry}
+	 */
+	ContainerProviderRegistry getContainerProviderRegistry();
+
+	/**
+	 * Saves the base.
+	 * 
+	 * @throws IOException
+	 *             if serialization went wrong
+	 */
+	void save() throws IOException;
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseElement.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseElement.java
new file mode 100644
index 0000000..9e44b01
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseElement.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+/**
+ * Marks each elements of {@link IBase}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IBaseElement {
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseListener.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseListener.java
new file mode 100644
index 0000000..a338676
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseListener.java
@@ -0,0 +1,119 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+
+/**
+ * Listen to {@link IBase} changes.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IBaseListener extends ILocationContainerListener {
+
+	/**
+	 * Stub implementation.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	class Stub extends ILocationContainerListener.Stub implements IBaseListener {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#nameChanged(java.lang.String, java.lang.String)
+		 */
+		public void nameChanged(String oldName, String newName) {
+			// nothing to do here
+
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#reportAdded(org.eclipse.intent.mapping.base.IReport)
+		 */
+		public void reportAdded(IReport report) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#reportRemoved(org.eclipse.intent.mapping.base.IReport)
+		 */
+		public void reportRemoved(IReport report) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#containerProviderAdded(java.lang.String)
+		 */
+		public void containerProviderAdded(String provider) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#containerProviderRemoved(java.lang.String)
+		 */
+		public void containerProviderRemoved(String provider) {
+			// nothing to do here
+		}
+
+	}
+
+	/**
+	 * Notifies when the {@link IBase#getName() name} has been changed.
+	 * 
+	 * @param oldName
+	 *            the old {@link IBase#getName() name}
+	 * @param newName
+	 *            the new {@link IBase#getName() name}
+	 */
+	void nameChanged(String oldName, String newName);
+
+	/**
+	 * Notifies when the {@link IBase#getReports() reports} {@link IReport} is added.
+	 * 
+	 * @param report
+	 *            the added {@link IBase#getReports() reports} {@link IReport}
+	 */
+	void reportAdded(IReport report);
+
+	/**
+	 * Notifies when the {@link IBase#getReports() reports} {@link IReport} is removed.
+	 * 
+	 * @param report
+	 *            the removed {@link IBase#getReports() reports} {@link IReport}
+	 */
+	void reportRemoved(IReport report);
+
+	/**
+	 * Notifies when the {@link IBase#getContainerProviders() providers} is added.
+	 * 
+	 * @param provider
+	 *            the {@link IContainerProvider} {@link Class#getCanonicalName() class name}
+	 */
+	void containerProviderAdded(String provider);
+
+	/**
+	 * Notifies when the {@link IBase#getContainerProviders() provider} is removed.
+	 * 
+	 * @param provider
+	 *            the {@link IContainerProvider} {@link Class#getCanonicalName() class name}
+	 */
+	void containerProviderRemoved(String provider);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseRegistry.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseRegistry.java
new file mode 100644
index 0000000..547c293
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseRegistry.java
@@ -0,0 +1,60 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+import java.util.Set;
+
+/**
+ * The {@link IBase} registry maintains a set of active {@link IBase}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IBaseRegistry {
+
+	/**
+	 * Registers an {@link IBase}.
+	 * 
+	 * @param base
+	 *            the {@link IBase} to register
+	 */
+	void register(IBase base);
+
+	/**
+	 * Unregisters an {@link IBase}.
+	 * 
+	 * @param base
+	 *            the {@link IBase} to unregister
+	 */
+	void unregister(IBase base);
+
+	/**
+	 * Gets the {@link Set} of registered {@link IBase}.
+	 * 
+	 * @return the {@link Set} of registered {@link IBase}
+	 */
+	Set<IBase> getBases();
+
+	/**
+	 * Adds an {@link IBaseRegistryListener}.
+	 * 
+	 * @param listener
+	 *            the {@link IBaseRegistryListener} to add
+	 */
+	void addListener(IBaseRegistryListener listener);
+
+	/**
+	 * Removes an {@link IBaseRegistryListener}.
+	 * 
+	 * @param listener
+	 *            the {@link IBaseRegistryListener} to remove
+	 */
+	void removeListener(IBaseRegistryListener listener);
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseRegistryListener.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseRegistryListener.java
new file mode 100644
index 0000000..2c60100
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IBaseRegistryListener.java
@@ -0,0 +1,63 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+/**
+ * Listen to {@link IBaseRegistry} changes.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IBaseRegistryListener {
+
+	/**
+	 * Stub implementation.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	class Stub implements IBaseRegistryListener {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseRegistryListener#baseRegistred(org.eclipse.intent.mapping.base.IBase)
+		 */
+		public void baseRegistred(IBase base) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseRegistryListener#baseUnregistred(org.eclipse.intent.mapping.base.IBase)
+		 */
+		public void baseUnregistred(IBase base) {
+			// nothing to do here
+		}
+
+	}
+
+	/**
+	 * Notification when an {@link IBase} is {@link IBaseRegistry#register(IBase) registered}.
+	 * 
+	 * @param base
+	 *            the registered {@link IBase}
+	 */
+	void baseRegistred(IBase base);
+
+	/**
+	 * Notification when an {@link IBase} is {@link IBaseRegistry#unregister(IBase) unregistered}.
+	 * 
+	 * @param base
+	 *            the unregistered {@link IBase}
+	 */
+	void baseUnregistred(IBase base);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IContainerProviderRegistry.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IContainerProviderRegistry.java
new file mode 100644
index 0000000..848bc87
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IContainerProviderRegistry.java
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+import org.eclipse.intent.mapping.connector.IConnector;
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+
+/**
+ * A registry for {@link IContainerProvider}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IContainerProviderRegistry {
+
+	/**
+	 * Registers the given {@link IContainerProvider}.
+	 * 
+	 * @param provider
+	 *            the {@link IConnector} to register
+	 */
+	void register(IContainerProvider provider);
+
+	/**
+	 * Unregisters the given {@link IContainerProvider}.
+	 * 
+	 * @param provider
+	 *            the {@link IContainerProvider} to register
+	 */
+	void unregister(IContainerProvider provider);
+
+	/**
+	 * Gets the container of the given element.
+	 * 
+	 * @param element
+	 *            the element
+	 * @return the container of the given element if any, <code>null</code> otherwise
+	 */
+	Object getContainer(Object element);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILink.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILink.java
new file mode 100644
index 0000000..6e2d8df
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILink.java
@@ -0,0 +1,106 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * Connect two {@link ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ILink extends IMappingElement, IBaseElement {
+
+	/**
+	 * Sets the {@link ILink#getDescription(String) description} of the {@link ILink}.
+	 * 
+	 * @param description
+	 *            the {@link ILink#getDescription(String) description}
+	 */
+	void setDescription(String description);
+
+	/**
+	 * Gets the description of the {@link ILink}.
+	 * 
+	 * @return the description of the {@link ILink}
+	 */
+	String getDescription();
+
+	/**
+	 * Sets the {@link ILink#getSource() source} {@link ILocation} of the {@link ILink}.
+	 * 
+	 * @param location
+	 *            the {@link ILink#getSource() source} {@link ILocation}
+	 */
+	void setSource(ILocation location);
+
+	/**
+	 * Gets the source {@link ILocation}.
+	 * 
+	 * @return the source {@link ILocation}s
+	 */
+	ILocation getSource();
+
+	/**
+	 * Sets the {@link ILink#getTarget() target} {@link ILocation} of the {@link ILink}.
+	 * 
+	 * @param location
+	 *            the {@link ILink#getTarget() target} {@link ILocation}
+	 */
+	void setTarget(ILocation location);
+
+	/**
+	 * Gets the target {@link ILocation} if the {@link ILink}.
+	 * 
+	 * @return the target {@link ILocation} if the {@link ILink}
+	 */
+	ILocation getTarget();
+
+	/**
+	 * Adds a {@link ILinkListener}.
+	 * 
+	 * @param listener
+	 *            the {@link ILinkListener} to add
+	 */
+	void addListener(ILinkListener listener);
+
+	/**
+	 * Removes a {@link ILinkListener}.
+	 * 
+	 * @param listener
+	 *            the {@link ILinkListener} to remove
+	 */
+	void removeListener(ILinkListener listener);
+
+	/**
+	 * Gets the type.
+	 * 
+	 * @return the type
+	 */
+	Serializable getType();
+
+	/**
+	 * Sets the type.
+	 * 
+	 * @param type
+	 *            the type
+	 */
+	void setType(Serializable type);
+
+	/**
+	 * Gets the {@link List} of {@link IReport} for this {@link ILink}.
+	 * 
+	 * @return the {@link List} of {@link IReport} for this {@link ILink}
+	 */
+	List<IReport> getReports();
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILinkListener.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILinkListener.java
new file mode 100644
index 0000000..fc82bc0
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILinkListener.java
@@ -0,0 +1,123 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Oveo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+/**
+ * Listen to {@link ILink} changes.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ILinkListener {
+
+	/**
+	 * Stub implementation.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	class Stub implements ILinkListener {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILinkListener#descriptionChanged(java.lang.String,
+		 *      java.lang.String)
+		 */
+		public void descriptionChanged(String oldDescription, String newDescription) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILinkListener#sourceChanged(org.eclipse.intent.mapping.base.ILocation,
+		 *      org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public void sourceChanged(ILocation oldSource, ILocation newSource) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILinkListener#targetChanged(org.eclipse.intent.mapping.base.ILocation,
+		 *      org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public void targetChanged(ILocation oldTarget, ILocation newTarget) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILinkListener#reportAdded(org.eclipse.intent.mapping.base.IReport)
+		 */
+		public void reportAdded(IReport report) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILinkListener#reportRemoved(org.eclipse.intent.mapping.base.IReport)
+		 */
+		public void reportRemoved(IReport report) {
+			// nothing to do here
+		}
+	}
+
+	/**
+	 * Notifies when the {@link ILink#getDescription() description} is changed.
+	 * 
+	 * @param oldDescription
+	 *            the old {@link ILink#getDescription() description}
+	 * @param newDescription
+	 *            the new {@link ILink#getDescription() description}
+	 */
+	void descriptionChanged(String oldDescription, String newDescription);
+
+	/**
+	 * Notifies when the {@link ILink#getSource() source} is changed.
+	 * 
+	 * @param oldSource
+	 *            the old {@link ILink#getSource() source}
+	 * @param newSource
+	 *            the new {@link ILink#getSource() source}
+	 */
+	void sourceChanged(ILocation oldSource, ILocation newSource);
+
+	/**
+	 * Notifies when the {@link ILink#getTarget() target} is changed.
+	 * 
+	 * @param oldTarget
+	 *            the old {@link ILink#getTarget() target}
+	 * @param newTarget
+	 *            the new {@link ILink#getTarget() target}
+	 */
+	void targetChanged(ILocation oldTarget, ILocation newTarget);
+
+	/**
+	 * Notifies when the {@link ILink#getReports() reports} {@link IReport} is added.
+	 * 
+	 * @param report
+	 *            the added {@link ILink#getReports() reports} {@link IReport}
+	 */
+	void reportAdded(IReport report);
+
+	/**
+	 * Notifies when the {@link ILink#getReports() reports} {@link IReport} is removed.
+	 * 
+	 * @param report
+	 *            the removed {@link ILink#getReports() reports} {@link IReport}
+	 */
+	void reportRemoved(IReport report);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocation.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocation.java
new file mode 100644
index 0000000..cd25831
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocation.java
@@ -0,0 +1,110 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * Locate a part of a resource according to available {@link ILocationAdapter}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ILocation extends IMappingElement, ILocationContainer, IBaseElement {
+
+	/**
+	 * Gets the {@link List} of {@link ILink} that have this {@link ILocation} as {@link ILink#getTarget()
+	 * target}.
+	 * 
+	 * @return the {@link List} of {@link ILink} that have this {@link ILocation} as {@link ILink#getTarget()
+	 *         target}
+	 */
+	List<ILink> getSourceLinks();
+
+	/**
+	 * Gets the {@link List} of {@link ILink} that have this {@link ILocation} as {@link ILink#getSource()
+	 * source}.
+	 * 
+	 * @return the {@link List} of {@link ILink} that have this {@link ILocation} as {@link ILink#getSource()
+	 *         source}
+	 */
+	List<ILink> getTargetLinks();
+
+	/**
+	 * Sets the containing {@link ILocation}.
+	 * 
+	 * @param container
+	 *            the containing {@link ILocationContainer}
+	 */
+	void setContainer(ILocationContainer container);
+
+	/**
+	 * Gets the containing {@link ILocationContainer}.
+	 * 
+	 * @return the containing {@link ILocationContainer} if any, <code>null</code> otherwise
+	 */
+	ILocationContainer getContainer();
+
+	/**
+	 * Adds a {@link ILocationListener}.
+	 * 
+	 * @param listener
+	 *            the {@link ILocationListener} to add
+	 */
+	void addListener(ILocationListener listener);
+
+	/**
+	 * Removes a {@link ILocationListener}.
+	 * 
+	 * @param listener
+	 *            the {@link ILocationListener} to remove
+	 */
+	void removeListener(ILocationListener listener);
+
+	/**
+	 * Gets the type.
+	 * 
+	 * @return the type
+	 */
+	Serializable getType();
+
+	/**
+	 * Sets the type.
+	 * 
+	 * @param type
+	 *            the type
+	 */
+	void setType(Serializable type);
+
+	/**
+	 * Sets mark the location as deleted.
+	 * 
+	 * @param markedAsDeleted
+	 *            if <code>true</code> mark the location as deleted
+	 */
+	void setMarkedAsDeleted(boolean markedAsDeleted);
+
+	/**
+	 * Tells if the location is marked as deleted.
+	 * 
+	 * @return <code>true</code> if the location is marked as deleted, <code>false</code> otherwise
+	 */
+	boolean isMarkedAsDeleted();
+
+	/**
+	 * Change the {@link ILocation}.
+	 * 
+	 * @param reportDescription
+	 *            the {@link IReport} {@link IReport#getDescription() description}
+	 */
+	void change(String reportDescription);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationAdapter.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationAdapter.java
new file mode 100644
index 0000000..8f3bbb1
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationAdapter.java
@@ -0,0 +1,43 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+/**
+ * Adapt an {@link Object} into an {@link ILocation} and vis versa.
+ * 
+ * @param <T>
+ *            the {@link Object} kind
+ * @param <LT>
+ *            the {@link ILocation} kind
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ILocationAdapter<T, LT extends ILocation> {
+
+	/**
+	 * Gets the {@link ILocation} from the given {@link Object}.
+	 * 
+	 * @param object
+	 *            the {@link Object} to adapt
+	 * @return the {@link ILocation} from the given {@link Object}
+	 */
+	LT getLocation(T object);
+
+	/**
+	 * Gets the {@link Object} from the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation} to adapt
+	 * @return the {@link Object} from the given {@link ILocation}
+	 */
+	T getObject(LT location);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationContainer.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationContainer.java
new file mode 100644
index 0000000..3a74a6c
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationContainer.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+import java.util.List;
+
+/**
+ * Contains {@link ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ILocationContainer {
+
+	/**
+	 * Gets the {@link List} of contained {@link ILocation}.
+	 * 
+	 * @return the {@link List} of contained {@link ILocation}
+	 */
+	List<ILocation> getContents();
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationContainerListener.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationContainerListener.java
new file mode 100644
index 0000000..ee47e7d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationContainerListener.java
@@ -0,0 +1,64 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+/**
+ * Listen to {@link ILocationContainer} changes.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ILocationContainerListener {
+
+	/**
+	 * Stub implementation.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	class Stub implements ILocationContainerListener {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationContainerListener#contentsAdded(org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public void contentsAdded(ILocation location) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationContainerListener#contentsRemoved(org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public void contentsRemoved(ILocation location) {
+			// nothing to do here
+		}
+
+	}
+
+	/**
+	 * Notifies when the {@link ILocation#getContents() content} {@link ILocation} is added.
+	 * 
+	 * @param location
+	 *            the added {@link ILocation#getContents() content} {@link ILocation}
+	 */
+	void contentsAdded(ILocation location);
+
+	/**
+	 * Notifies when the {@link ILocation#getContents() content} {@link ILocation} is removed.
+	 * 
+	 * @param location
+	 *            the removed {@link ILocation#getContents() content} {@link ILocation}
+	 */
+	void contentsRemoved(ILocation location);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationDescriptor.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationDescriptor.java
new file mode 100644
index 0000000..4eee12d
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationDescriptor.java
@@ -0,0 +1,88 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+/**
+ * Describe an {@link ILocation} in order to access it or create it.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ILocationDescriptor {
+
+	/**
+	 * Gets the {@link ILocation#getContainer() container} {@link ILocationDescriptor}.
+	 * 
+	 * @return the {@link ILocation#getContainer() container} {@link ILocationDescriptor} if any,
+	 *         <code>null</code> otherwise
+	 */
+	ILocationDescriptor getContainerDescriptor();
+
+	/**
+	 * Tells if the described {@link ILocation} exists.
+	 * 
+	 * @return <code>true</code> if the described {@link ILocation} exists, <code>false</code> otherwise
+	 */
+	boolean exists();
+
+	/**
+	 * Gets the {@link ILocation} if it {@link ILocationDescriptor#exists() exists}.
+	 * 
+	 * @return the {@link ILocation} if it {@link ILocationDescriptor#exists() exists}, <code>null</code>
+	 *         otherwise
+	 */
+	ILocation getLocation();
+
+	/**
+	 * Gets or creates the described {@link ILocation}. It will {@link ILocationDescriptor#getOrCreate()
+	 * create} {@link ILocationDescriptor#getContainerDescriptor() described containers}.
+	 * 
+	 * @return the described {@link ILocation}
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible.
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason.
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	ILocation getOrCreate() throws InstantiationException, IllegalAccessException, ClassNotFoundException;
+
+	/**
+	 * Updates with the given Element.
+	 * 
+	 * @param element
+	 *            the element
+	 * @return <code>true</code> if updated, <code>false</code> otherwise
+	 */
+	boolean update(Object element);
+
+	/**
+	 * Gets the located element.
+	 * 
+	 * @return the located element
+	 */
+	Object getElement();
+
+	/**
+	 * Gets the human readable name.
+	 * 
+	 * @return the human readable name
+	 */
+	String getName();
+
+	/**
+	 * Disposes the descriptor when not needed anymore.
+	 */
+	void dispose();
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationListener.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationListener.java
new file mode 100644
index 0000000..6544894
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/ILocationListener.java
@@ -0,0 +1,152 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+/**
+ * Listen to {@link ILocation} changes.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ILocationListener extends ILocationContainerListener {
+
+	/**
+	 * Stub implementation.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	class Stub extends ILocationContainerListener.Stub implements ILocationListener {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationListener#sourceLinkAdded(org.eclipse.intent.mapping.base.ILink)
+		 */
+		public void sourceLinkAdded(ILink link) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationListener#sourceLinkRemoved(org.eclipse.intent.mapping.base.ILink)
+		 */
+		public void sourceLinkRemoved(ILink link) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationListener#targetLinkAdded(org.eclipse.intent.mapping.base.ILink)
+		 */
+		public void targetLinkAdded(ILink link) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationListener#targetLinkRemoved(org.eclipse.intent.mapping.base.ILink)
+		 */
+		public void targetLinkRemoved(ILink link) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationListener#containerChanged(org.eclipse.intent.mapping.base.ILocationContainer,
+		 *      org.eclipse.intent.mapping.base.ILocationContainer)
+		 */
+		public void containerChanged(ILocationContainer oldContainer, ILocationContainer newContainer) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationListener#markedAsDeletedChanged(boolean)
+		 */
+		public void markedAsDeletedChanged(boolean newValue) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationListener#changed(java.lang.String)
+		 */
+		public void changed(String reportDescription) {
+			// nothing to do here
+		}
+
+	}
+
+	/**
+	 * Notifies when the {@link ILocation#getSourceLinks() source} {@link ILink} is added.
+	 * 
+	 * @param link
+	 *            the added {@link ILocation#getSourceLinks() source} {@link ILink}
+	 */
+	void sourceLinkAdded(ILink link);
+
+	/**
+	 * Notifies when the {@link ILocation#getSourceLinks() source} {@link ILink} is removed.
+	 * 
+	 * @param link
+	 *            the removed {@link ILocation#getSourceLinks() source} {@link ILink}
+	 */
+	void sourceLinkRemoved(ILink link);
+
+	/**
+	 * Notifies when the {@link ILocation#getTargetLinks() target} {@link ILink} is added.
+	 * 
+	 * @param link
+	 *            the added {@link ILocation#getTargetLinks() target} {@link ILink}
+	 */
+	void targetLinkAdded(ILink link);
+
+	/**
+	 * Notifies when the {@link ILocation#getTargetLinks() target} {@link ILink} is removed.
+	 * 
+	 * @param link
+	 *            the removed {@link ILocation#getTargetLinks() target} {@link ILink}
+	 */
+	void targetLinkRemoved(ILink link);
+
+	/**
+	 * Notifies when the {@link ILocation#getContainer() container} {@link ILocationContainer} has changed.
+	 * 
+	 * @param oldContainer
+	 *            the old {@link ILocationContainer}
+	 * @param newContainer
+	 *            the new {@link ILocationContainer}
+	 */
+	void containerChanged(ILocationContainer oldContainer, ILocationContainer newContainer);
+
+	/**
+	 * Notifies when the {@link ILocation#isMarkedAsDeleted() marked as deleted} has changed.
+	 * 
+	 * @param newValue
+	 *            the new value
+	 */
+	void markedAsDeletedChanged(boolean newValue);
+
+	/**
+	 * Notifies when the location has been {@link ILocation#change(String) changed}.
+	 * 
+	 * @param reportDescription
+	 *            the {@link IReport} {@link IReport#getDescription() description}
+	 */
+	void changed(String reportDescription);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IMappingElement.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IMappingElement.java
new file mode 100644
index 0000000..c927cce
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IMappingElement.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+/**
+ * Mapping element.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IMappingElement {
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IReport.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IReport.java
new file mode 100644
index 0000000..c978f1c
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IReport.java
@@ -0,0 +1,67 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Ober.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+/**
+ * Reports a problem on a {@link ILink}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IReport extends IBaseElement {
+
+	/**
+	 * Sets the {@link ILink} this {@link IReport report} applies on.
+	 * 
+	 * @param link
+	 *            the {@link ILink}
+	 */
+	void setLink(ILink link);
+
+	/**
+	 * Gets the {@link ILink} this {@link IReport report} applies on.
+	 * 
+	 * @return the {@link ILink} this {@link IReport report} applies on
+	 */
+	ILink getLink();
+
+	/**
+	 * Sets the description.
+	 * 
+	 * @param description
+	 *            the description
+	 */
+	void setDescription(String description);
+
+	/**
+	 * Gets the description.
+	 * 
+	 * @return the description
+	 */
+	String getDescription();
+
+	/**
+	 * Adds a {@link IReportListener}.
+	 * 
+	 * @param listener
+	 *            the {@link IReportListener} to add
+	 */
+	void addListener(IReportListener listener);
+
+	/**
+	 * Removes a {@link IReportListener}.
+	 * 
+	 * @param listener
+	 *            the {@link IReportListener} to remove
+	 */
+	void removeListener(IReportListener listener);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IReportListener.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IReportListener.java
new file mode 100644
index 0000000..07a777e
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/IReportListener.java
@@ -0,0 +1,69 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+/**
+ * Listen to {@link IReport} changes.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IReportListener {
+
+	/**
+	 * Stub implementation.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	class Stub implements IReportListener {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IReportListener#descriptionChanged(java.lang.String,
+		 *      java.lang.String)
+		 */
+		public void descriptionChanged(String oldDescription, String newDescription) {
+			// nothing to do here
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IReportListener#linkChanged(org.eclipse.intent.mapping.base.ILink,
+		 *      org.eclipse.intent.mapping.base.ILink)
+		 */
+		public void linkChanged(ILink oldLink, ILink newLink) {
+			// nothing to do here
+		}
+	}
+
+	/**
+	 * Notifies when the {@link IReport#getDescription() description} is changed.
+	 * 
+	 * @param oldDescription
+	 *            the old {@link IReport#getDescription() description}
+	 * @param newDescription
+	 *            the new {@link IReport#getDescription() description}
+	 */
+	void descriptionChanged(String oldDescription, String newDescription);
+
+	/**
+	 * Notifies when the {@link IReport#getLink() link} is changed.
+	 * 
+	 * @param oldLink
+	 *            the old {@link IReport#getLink() link}
+	 * @param newLink
+	 *            the new {@link IReport#getLink() link}
+	 */
+	void linkChanged(ILink oldLink, ILink newLink);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/LocationDescriptor.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/LocationDescriptor.java
new file mode 100644
index 0000000..bcef987
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/base/LocationDescriptor.java
@@ -0,0 +1,129 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.base;
+
+import org.eclipse.intent.mapping.MappingUtils;
+
+/**
+ * {@link ILocationDescriptor} for an existing {@link ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class LocationDescriptor implements ILocationDescriptor {
+
+	/**
+	 * The {@link ILocation}.
+	 */
+	private final ILocation location;
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 */
+	public LocationDescriptor(ILocation location) {
+		this.location = location;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#getContainerDescriptor()
+	 */
+	public ILocationDescriptor getContainerDescriptor() {
+		final ILocationDescriptor res;
+
+		if (location.getContainer() instanceof ILocation) {
+			res = new LocationDescriptor((ILocation)location.getContainer());
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#exists()
+	 */
+	public boolean exists() {
+		return true;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#getLocation()
+	 */
+	public ILocation getLocation() {
+		return location;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#getOrCreate()
+	 */
+	public ILocation getOrCreate() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return location;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#update(java.lang.Object)
+	 */
+	public boolean update(Object element) {
+		return MappingUtils.getConnectorRegistry().updateLocation(location, element);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#getElement()
+	 */
+	public Object getElement() {
+		return MappingUtils.getConnectorRegistry().getElement(location);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#getName()
+	 */
+	public String getName() {
+		return MappingUtils.getConnectorRegistry().getName(location);
+	}
+
+	@Override
+	public int hashCode() {
+		return location.hashCode();
+	}
+
+	@Override
+	public boolean equals(Object obj) {
+		return obj instanceof LocationDescriptor && location.equals(((LocationDescriptor)obj).location);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#dispose()
+	 */
+	public void dispose() {
+		// nothing to do here
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/AbstractConnector.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/AbstractConnector.java
new file mode 100644
index 0000000..33bfa38
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/AbstractConnector.java
@@ -0,0 +1,372 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.connector;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+
+/**
+ * An abstract implementation of {@link IConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractConnector implements IConnector {
+
+	/**
+	 * {@link ILocationDescriptor} based on a {@link Object} and a location type.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	protected class ObjectLocationDescriptor implements ILocationDescriptor {
+
+		/**
+		 * The located {@link Object element}.
+		 */
+		private Object element;
+
+		/**
+		 * The containing {@link IBase}.
+		 */
+		private final IBase base;
+
+		/**
+		 * The {@link ILocationDescriptor#getContainerDescriptor() container descriptor}.
+		 */
+		private final ILocationDescriptor containerDescriptor;
+
+		/**
+		 * The human readable name.
+		 */
+		private final String name;
+
+		/**
+		 * Constructor.
+		 * 
+		 * @param base
+		 *            the containing {@link IBase}
+		 * @param element
+		 *            the {@link Object}
+		 * @param name
+		 *            the human readable name
+		 */
+		public ObjectLocationDescriptor(IBase base, Object element, String name) {
+			this.base = base;
+			final ILocationDescriptor containerDesc;
+			final Object container = base.getContainerProviderRegistry().getContainer(element);
+			if (container != null) {
+				containerDesc = MappingUtils.getConnectorRegistry().getLocationDescriptor(base, container);
+				if (containerDesc == null) {
+					throw new IllegalStateException(
+							"the ILocationDescriptor container should not be null at this point.");
+				}
+			} else {
+				containerDesc = null;
+			}
+			this.containerDescriptor = containerDesc;
+			this.element = element;
+			this.name = name;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#getContainerDescriptor()
+		 */
+		public ILocationDescriptor getContainerDescriptor() {
+			return containerDescriptor;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#exists()
+		 */
+		public boolean exists() {
+			return getLocation() != null;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#getLocation()
+		 */
+		public ILocation getLocation() {
+			final ILocation res;
+
+			if (getContainerDescriptor() == null) {
+				res = AbstractConnector.this.getLocation(base, element);
+			} else if (getContainerDescriptor().exists()) {
+				res = AbstractConnector.this.getLocation(getContainerDescriptor().getLocation(), element);
+			} else {
+				res = null;
+			}
+
+			return res;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#getOrCreate()
+		 */
+		public ILocation getOrCreate() throws InstantiationException, IllegalAccessException,
+				ClassNotFoundException {
+			final ILocation res;
+
+			final ILocationContainer container;
+			if (getContainerDescriptor() == null) {
+				container = base;
+			} else {
+				container = getContainerDescriptor().getOrCreate();
+			}
+
+			final ILocation existingLocation = AbstractConnector.this.getLocation(container, element);
+			if (existingLocation != null) {
+				res = existingLocation;
+			} else {
+				res = AbstractConnector.this.createLocation(container, element);
+			}
+
+			return res;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#update(java.lang.Object)
+		 */
+		public boolean update(Object e) {
+			return AbstractConnector.this.updateLocationDescriptor(this, e);
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#getElement()
+		 */
+		public Object getElement() {
+			return element;
+		}
+
+		/**
+		 * Sets the given element.
+		 * 
+		 * @param element
+		 *            the element
+		 */
+		public void setElement(Object element) {
+			this.element = element;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#getName()
+		 */
+		public String getName() {
+			return name;
+		}
+
+		@Override
+		public int hashCode() {
+			return element.hashCode();
+		}
+
+		@Override
+		public boolean equals(Object obj) {
+			return obj instanceof ObjectLocationDescriptor && element.equals(
+					((ObjectLocationDescriptor)obj).element);
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.ILocationDescriptor#dispose()
+		 */
+		public void dispose() {
+			AbstractConnector.this.dispose(this);
+		}
+
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#canHandle(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public boolean canHandle(ILocation location) {
+		return getType().isAssignableFrom(location.getClass());
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#createLocation(org.eclipse.intent.mapping.base.ILocationContainer,
+	 *      java.lang.Object)
+	 */
+	public ILocation createLocation(ILocationContainer container, Object element)
+			throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final ILocation res;
+
+		final Object adaptedElement = adapt(element);
+		final Class<? extends ILocation> locationType = getLocationType(getContainerType(container),
+				adaptedElement);
+		if (locationType != null) {
+			final ILocation location = MappingUtils.getBase(container).getFactory().createElement(
+					locationType);
+			if (location == null) {
+				throw new IllegalArgumentException("The base can't create " + locationType.getSimpleName());
+			} else {
+				initLocation(container, location, adaptedElement);
+				location.setContainer(container);
+				res = location;
+			}
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#updateLocation(org.eclipse.intent.mapping.base.ILocation,
+	 *      java.lang.Object)
+	 */
+	public boolean updateLocation(ILocation location, Object element) {
+		final boolean res = canUpdate(element);
+
+		if (res) {
+			update(location, element);
+		}
+
+		return res;
+	}
+
+	/**
+	 * Updates the given {@link ObjectLocationDescriptor} with the given element.
+	 * 
+	 * @param locationDescriptor
+	 *            the {@link ObjectLocationDescriptor} to update
+	 * @param element
+	 *            the element
+	 * @return <code>true</code> if any changes has been done, <code>false</code> otherwise
+	 */
+	public boolean updateLocationDescriptor(ObjectLocationDescriptor locationDescriptor, Object element) {
+		locationDescriptor.setElement(element);
+
+		return true;
+	}
+
+	/**
+	 * Tells if we can update with the given located element.
+	 * 
+	 * @param element
+	 *            the located element
+	 * @return <code>true</code> if we can update with the given located element, <code>false</code> otherwise
+	 */
+	protected abstract boolean canUpdate(Object element);
+
+	/**
+	 * Update the given {@link ILocation} by {@link AbstractConnector#initLocation(ILocation, Object)
+	 * initializing} it with the given element.
+	 * 
+	 * @param location
+	 *            the {@link ILocation} to update
+	 * @param element
+	 *            the located element
+	 */
+	protected void update(ILocation location, Object element) {
+		initLocation(location.getContainer(), location, element);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocation(org.eclipse.intent.mapping.base.ILocationContainer,
+	 *      java.lang.Object)
+	 */
+	public ILocation getLocation(ILocationContainer container, Object element) {
+		final Object adaptedElement = adapt(element);
+		final Class<? extends ILocationContainer> locationType = getLocationType(getContainerType(container),
+				adaptedElement);
+		if (locationType != null) {
+			for (ILocation location : container.getContents()) {
+				if (match(location, element)) {
+					return location;
+				}
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * Tells if the given location match the given {@link Object element}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @param element
+	 *            the {@link Object element}
+	 * @return <code>true</code> if the given location match the given {@link Object element};
+	 *         <code>false</code> otherwise
+	 */
+	protected abstract boolean match(ILocation location, Object element);
+
+	/**
+	 * Gets the container type of the given {@link ILocation container}.
+	 * 
+	 * @param container
+	 *            the containing {@link ILocationContainer}
+	 * @return the container type of the given {@link ILocation container}
+	 */
+	private Class<? extends ILocationContainer> getContainerType(ILocationContainer container) {
+		return container.getClass();
+	}
+
+	/**
+	 * Adapts the given {@link Object element} in order to create a location.
+	 * 
+	 * @param element
+	 *            the {@link Object element}
+	 * @return the {@link Object adapted element}
+	 */
+	protected Object adapt(Object element) {
+		return element;
+	}
+
+	/**
+	 * Initializes the given {@link ILocation}.
+	 * 
+	 * @param container
+	 *            the {@link ILocationContainer}
+	 * @param location
+	 *            the {@link ILocation} to initialize
+	 * @param element
+	 *            the element to locate
+	 */
+	protected abstract void initLocation(ILocationContainer container, ILocation location, Object element);
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#dispose(org.eclipse.intent.mapping.base.ILocationDescriptor)
+	 */
+	public void dispose(ILocationDescriptor locationDescriptor) {
+		// nothing to do here
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/IConnector.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/IConnector.java
new file mode 100644
index 0000000..b5eca9b
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/IConnector.java
@@ -0,0 +1,140 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.connector;
+
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+
+/**
+ * The connector is in charge of {@link ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IConnector {
+
+	/**
+	 * Tells if then connector can handle the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation} to check.
+	 * @return <code>true</code> if then connector can handle the given {@link ILocation}, <code>false</code>
+	 *         otherwise
+	 */
+	boolean canHandle(ILocation location);
+
+	/**
+	 * Creates the {@link ILocation} according to the given container and an element to locate.
+	 * 
+	 * @param container
+	 *            the {@link ILocationContainer}, it must be contained into an
+	 *            {@link org.eclipse.intent.mapping.base.IBase IBase}
+	 * @param element
+	 *            the Element object to locate
+	 * @return the created {@link ILocation} according to the given container and an element to locate if any
+	 *         is handled by this {@link IConnector}, <code>null</code> otherwise
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible.
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason.
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	ILocation createLocation(ILocationContainer container, Object element) throws InstantiationException,
+			IllegalAccessException, ClassNotFoundException;
+
+	/**
+	 * Updates the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation} to update
+	 * @param element
+	 *            the located element
+	 * @return <code>true</code> if the given {@link ILocation} has been updated, <code>false</code> otherwise
+	 */
+	boolean updateLocation(ILocation location, Object element);
+
+	/**
+	 * Gets the {@link ILocation} according to the given container and an element to locate.
+	 * 
+	 * @param container
+	 *            the type of the containing {@link ILocationContainer}
+	 * @param element
+	 *            the Element object to locate
+	 * @return the {@link ILocation} according to the given container and an element to locate if any is
+	 *         handled by this {@link IConnector} and found, <code>null</code> otherwise
+	 */
+	ILocation getLocation(ILocationContainer container, Object element);
+
+	/**
+	 * Gets the {@link ILocationDescriptor} for the given element.
+	 * 
+	 * @param base
+	 *            the containing {@link IBase}
+	 * @param element
+	 *            the element
+	 * @return the {@link ILocationDescriptor} for the given element if handled by this {@link IConnector},
+	 *         <code>null</code> otherwise
+	 */
+	ILocationDescriptor getLocationDescriptor(IBase base, Object element);
+
+	/**
+	 * Gets the {@link ILocation} type according to the given container type and an element to locate.
+	 * 
+	 * @param containerType
+	 *            the type of the containing {@link ILocation} can be <code>null</code> if not contained
+	 * @param element
+	 *            the Element object to locate
+	 * @return the {@link ILocation} type according to the given container type and an element to locate if
+	 *         any is handled by this {@link IConnector}, <code>null</code> otherwise
+	 */
+	Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+			Object element);
+
+	/**
+	 * Gets the {@link Object element} located by the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @return the {@link Object element} located by the given {@link ILocation} if the given
+	 *         {@link ILocation} is handled by this {@link IConnector}, <code>null</code> otherwise
+	 */
+	Object getElement(ILocation location);
+
+	/**
+	 * Gets a human readable name for the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @return a human readable name for the given {@link ILocation} if any, <code>null</code> otherwise
+	 */
+	String getName(ILocation location);
+
+	/**
+	 * Gets the {@link ILocation} {@link Class} managed by this connector.
+	 * 
+	 * @return the {@link ILocation} {@link Class} managed by this connector
+	 */
+	Class<? extends ILocation> getType();
+
+	/**
+	 * Disposes the given {@link ILocationDescriptor}.
+	 * 
+	 * @param locationDescriptor
+	 *            the {@link ILocationDescriptor} to dispose
+	 */
+	void dispose(ILocationDescriptor locationDescriptor);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/IConnectorRegistry.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/IConnectorRegistry.java
new file mode 100644
index 0000000..7c28917
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/IConnectorRegistry.java
@@ -0,0 +1,169 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.connector;
+
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+
+/**
+ * The {@link IConnector} registry maintains a set of active {@link IConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IConnectorRegistry {
+
+	/**
+	 * Creates the {@link ILocation} according to the given container and an element to locate.
+	 * 
+	 * @param container
+	 *            the {@link ILocationContainer}, it must be contained into an
+	 *            {@link org.eclipse.intent.mapping.base.IBase IBase}
+	 * @param element
+	 *            the Element object to locate
+	 * @return the created {@link ILocation} according to the given container and an element to locate if any
+	 *         is handled by a {@link IConnectorRegistry#register(IConnector) registered} {@link IConnector},
+	 *         <code>null</code> otherwise
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible.
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason.
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	ILocation createLocation(ILocationContainer container, Object element) throws InstantiationException,
+			IllegalAccessException, ClassNotFoundException;
+
+	/**
+	 * Gets the {@link ILocation} according to the given container and an element to locate.
+	 * 
+	 * @param container
+	 *            the type of the containing {@link ILocationContainer}
+	 * @param element
+	 *            the Element object to locate
+	 * @return the {@link ILocation} according to the given container and an element to locate if any is
+	 *         handled by a {@link IConnectorRegistry#register(IConnector) registered} {@link IConnector},
+	 *         <code>null</code> otherwise
+	 */
+	ILocation getLocation(ILocationContainer container, Object element);
+
+	/**
+	 * Gets the {@link Object element} located by the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @return the {@link Object element} located by the given {@link ILocation} if any is handled by a
+	 *         {@link IConnectorRegistry#register(IConnector) registered} {@link IConnector},
+	 *         <code>null</code> otherwise
+	 */
+	Object getElement(ILocation location);
+
+	/**
+	 * Gets the {@link ILocationDescriptor} for the given element.
+	 * 
+	 * @param base
+	 *            the containing {@link IBase}
+	 * @param element
+	 *            the element
+	 * @return the {@link ILocationDescriptor} for the given element if handled by a
+	 *         {@link IConnectorRegistry#register(IConnector) registered} {@link IConnector},
+	 *         <code>null</code> otherwise
+	 */
+	ILocationDescriptor getLocationDescriptor(IBase base, Object element);
+
+	/**
+	 * Gets or creates an {@link ILocation} according to the given element.
+	 * 
+	 * @param container
+	 *            the {@link ILocationContainer}, it must be contained into an
+	 *            {@link org.eclipse.intent.mapping.base.IBase IBase}
+	 * @param element
+	 *            the Element object to locate
+	 * @return the {@link ILocation}
+	 * @throws IllegalAccessException
+	 *             if the class or its nullary constructor is not accessible.
+	 * @throws InstantiationException
+	 *             if this Class represents an abstract class, an interface, an array class, a primitive type,
+	 *             or void; or if the class has no nullary constructor; or if the instantiation fails for some
+	 *             other reason.
+	 * @throws ClassNotFoundException
+	 *             if the {@link Class} can't be found
+	 */
+	ILocation getOrCreateLocation(ILocationContainer container, Object element) throws InstantiationException,
+			IllegalAccessException, ClassNotFoundException;
+
+	/**
+	 * Gets the {@link ILocation} type according to the given container type and an element to locate.
+	 * 
+	 * @param containerType
+	 *            the type of the containing {@link ILocation} can be <code>null</code> if not contained
+	 * @param element
+	 *            the Element object to locate
+	 * @return the {@link ILocation} type according to the given container type and an element to locate if
+	 *         any is handled by this {@link IConnector}, <code>null</code> otherwise
+	 */
+	Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+			Object element);
+
+	/**
+	 * Updates the given {@link ILocation} with the given {@link Object element}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @param element
+	 *            the element
+	 * @return <code>true</code> if any update has been made, <code>false</code> otherwise
+	 */
+	boolean updateLocation(ILocation location, Object element);
+
+	/**
+	 * Gets a human readable name for the given {@link ILocation}.
+	 * 
+	 * @param location
+	 *            the {@link ILocation}
+	 * @return a human readable name for the given {@link ILocation} if any is handled by a
+	 *         {@link IConnectorRegistry#register(IConnector) registered} {@link IConnector},
+	 *         <code>null</code> otherwise
+	 */
+	String getName(ILocation location);
+
+	/**
+	 * Registers the given {@link IConnector}.
+	 * 
+	 * @param connector
+	 *            the {@link IConnector} to register
+	 */
+	void register(IConnector connector);
+
+	/**
+	 * Unregisters the given {@link IConnector}.
+	 * 
+	 * @param connector
+	 *            the {@link IConnector} to register
+	 */
+	void unregister(IConnector connector);
+
+	/**
+	 * Gets the {@link IConnectorRegistry#register(IConnector) registered} {@link IConnector} with the given
+	 * {@link IConnector#getType() connector type}.
+	 * 
+	 * @param connectorType
+	 *            the {@link IConnector#getType() connector type}
+	 * @return the {@link IConnectorRegistry#register(IConnector) registered} {@link IConnector} with the
+	 *         given {@link IConnector#getType() connector type} if any, <code>null</code> otherwise
+	 */
+	IConnector getConnector(Class<? extends ILocation> connectorType);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/IContainerProvider.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/IContainerProvider.java
new file mode 100644
index 0000000..09e1205
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/connector/IContainerProvider.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.connector;
+
+import org.eclipse.intent.mapping.base.ILocation;
+
+/**
+ * Provides container element for {@link ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IContainerProvider {
+
+	/**
+	 * Gets the container of the given element.
+	 * 
+	 * @param element
+	 *            the element
+	 * @return the container of the given element if any, <code>null</code> otherwise
+	 */
+	Object getContainer(Object element);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/content/IFileType.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/content/IFileType.java
new file mode 100644
index 0000000..ebfb19e
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/content/IFileType.java
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.content;
+
+/**
+ * File type.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IFileType {
+
+	/**
+	 * Gets the type ID.
+	 * 
+	 * @return the type ID
+	 */
+	String getID();
+
+	/**
+	 * Tells if this {@link IFileType} is a sub type of the given {@link IFileType#getID() type ID}.
+	 * 
+	 * @param typeID
+	 *            the {@link IFileType#getID() type ID}
+	 * @return <code>true</code> if this {@link IFileType} is a sub type of the given {@link IFileType#getID()
+	 *         type ID}, <code>false</code> otherwise
+	 */
+	boolean isKindOf(String typeID);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/content/IFileTypeProvider.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/content/IFileTypeProvider.java
new file mode 100644
index 0000000..a509be4
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/content/IFileTypeProvider.java
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.content;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+/**
+ * Provide {@link IFileTypeProvider}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IFileTypeProvider {
+
+	/**
+	 * Gets the {@link IFileType} for the given {@link InputStream} and resource name.
+	 * 
+	 * @param contents
+	 *            the {@link InputStream} to the content
+	 * @param name
+	 *            the resource name
+	 * @return the {@link IFileType} for the given {@link InputStream} and resource name if nay,
+	 *         <code>null</code> otherwise
+	 * @throws IOException
+	 *             if the {@link InputStream} can't be read
+	 */
+	IFileType getFileTypeFor(InputStream contents, String name) throws IOException;
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/content/IFileTypeRegistry.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/content/IFileTypeRegistry.java
new file mode 100644
index 0000000..7c8bdae
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/content/IFileTypeRegistry.java
@@ -0,0 +1,89 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.content;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * The {@link IFileType} registry.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IFileTypeRegistry {
+
+	/**
+	 * Gets the {@link List} of {@link IFileTypeProvider}.
+	 * 
+	 * @return the {@link List} of {@link IFileTypeProvider}
+	 */
+	List<IFileTypeProvider> getFileTypeProviders();
+
+	/**
+	 * Registers the given {@link IFileType#getID() type ID} with the given {@link Set} of its super
+	 * {@link IFileType#getID() type IDs}.
+	 * 
+	 * @param typeID
+	 *            the {@link IFileType#getID() type ID}
+	 * @param suprTypeIDs
+	 *            the {@link Set} of its super {@link IFileType#getID() type IDs}
+	 */
+	void registerFileType(String typeID, Set<String> suprTypeIDs);
+
+	/**
+	 * Unresiters the given {@link IFileType#getID() type ID}.
+	 * 
+	 * @param typeID
+	 *            the {@link IFileType#getID() type ID}
+	 */
+	void unregisterFileType(String typeID);
+
+	/**
+	 * Gets the {@link IFileType} for the given {@link IFileType#getID() type ID}.
+	 * 
+	 * @param typeID
+	 *            the {@link IFileType#getID() type ID}
+	 * @return the {@link IFileType} for the given {@link IFileType#getID() type ID} if any, <code>null</code>
+	 *         otherwise
+	 */
+	IFileType getFileType(String typeID);
+
+	/**
+	 * Gets the {@link IFileType} for the given {@link InputStream} and resource name.
+	 * 
+	 * @param contents
+	 *            the {@link InputStream} to the content
+	 * @param name
+	 *            the resource name
+	 * @return the {@link IFileType} for the given {@link InputStream} and resource name if nay,
+	 *         <code>null</code> otherwise
+	 * @throws IOException
+	 *             if the {@link InputStream} can't be read
+	 */
+	IFileType getFileTypeFor(InputStream contents, String name) throws IOException;
+
+	/**
+	 * Tells if the given {@link IFileType#getID() type ID} is a sub type of the given
+	 * {@link IFileType#getID() super type ID}.
+	 * 
+	 * @param typeID
+	 *            the {@link IFileType#getID() type ID}
+	 * @param superTypeID
+	 *            the {@link IFileType#getID() super type ID}
+	 * @return <code>true</code> if the given {@link IFileType#getID() type ID} is a sub type of the given
+	 *         {@link IFileType#getID() super type ID}, <code>false</code> otherwise
+	 */
+	boolean isKindOf(String typeID, String superTypeID);
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/base/BaseRegistry.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/base/BaseRegistry.java
new file mode 100644
index 0000000..462e0c3
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/base/BaseRegistry.java
@@ -0,0 +1,119 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.internal.base;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.IBaseRegistry;
+import org.eclipse.intent.mapping.base.IBaseRegistryListener;
+
+/**
+ * The default implementation of {@link IBaseRegistry}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class BaseRegistry implements IBaseRegistry {
+
+	/**
+	 * The {@link Set} of {@link BaseRegistry#register(IBase) registered} {@link IBase}.
+	 */
+	private final Set<IBase> bases = new LinkedHashSet<IBase>();
+
+	/**
+	 * The {@link List} of {@link IBaseRegistryListener}.
+	 */
+	private final List<IBaseRegistryListener> listeners = new ArrayList<IBaseRegistryListener>();
+
+	/**
+	 * Gets the {@link List} of {@link IBaseRegistryListener} in a thread safe way.
+	 * 
+	 * @return the {@link List} of {@link IBaseRegistryListener} in a thread safe way
+	 */
+	private List<IBaseRegistryListener> getListeners() {
+		synchronized(listeners) {
+			return new ArrayList<IBaseRegistryListener>(listeners);
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IBaseRegistry#register(org.eclipse.intent.mapping.base.IBase)
+	 */
+	public void register(IBase base) {
+		final boolean added;
+		synchronized(this) {
+			added = bases.add(base);
+		}
+		if (added) {
+			for (IBaseRegistryListener listener : getListeners()) {
+				listener.baseRegistred(base);
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IBaseRegistry#unregister(org.eclipse.intent.mapping.base.IBase)
+	 */
+	public void unregister(IBase base) {
+		final boolean removed;
+		synchronized(this) {
+			removed = bases.remove(base);
+		}
+		if (removed) {
+			for (IBaseRegistryListener listener : getListeners()) {
+				listener.baseUnregistred(base);
+			}
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IBaseRegistry#getBases()
+	 */
+	public Set<IBase> getBases() {
+		synchronized(this) {
+			return Collections.unmodifiableSet(bases);
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IBaseRegistry#addListener(org.eclipse.intent.mapping.base.IBaseRegistryListener)
+	 */
+	public void addListener(IBaseRegistryListener listener) {
+		synchronized(listeners) {
+			listeners.add(listener);
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.base.IBaseRegistry#removeListener(org.eclipse.intent.mapping.base.IBaseRegistryListener)
+	 */
+	public void removeListener(IBaseRegistryListener listener) {
+		synchronized(listeners) {
+			listeners.remove(listener);
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/connector/ConnectorRegistry.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/connector/ConnectorRegistry.java
new file mode 100644
index 0000000..cf03c20
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/connector/ConnectorRegistry.java
@@ -0,0 +1,253 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.internal.connector;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.connector.IConnector;
+import org.eclipse.intent.mapping.connector.IConnectorRegistry;
+
+/**
+ * The default implementation of {@link IConnectorRegistry}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ConnectorRegistry implements IConnectorRegistry {
+
+	/**
+	 * The {@link List} of {@link ConnectorRegistry#register(IConnector) registered} {@link IConnector}.
+	 */
+	private final List<IConnector> connectors = Collections.synchronizedList(new ArrayList<IConnector>());
+
+	/**
+	 * Mapping of {@link IConnector#getType() connector type} to {@link IConnector}.
+	 */
+	private final Map<Class<? extends ILocation>, IConnector> typeToConnector = new HashMap<Class<? extends ILocation>, IConnector>();
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#createLocation(org.eclipse.intent.mapping.base.ILocationContainer,
+	 *      java.lang.Object)
+	 */
+	public ILocation createLocation(ILocationContainer container, Object element)
+			throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		for (IConnector connector : getConnectors()) {
+			final ILocation location = connector.createLocation(container, element);
+			if (location != null) {
+				return location;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#getLocation(org.eclipse.intent.mapping.base.ILocationContainer,
+	 *      java.lang.Object)
+	 */
+	public ILocation getLocation(ILocationContainer container, Object element) {
+		for (IConnector connector : getConnectors()) {
+			final ILocation location = connector.getLocation(container, element);
+			if (location != null) {
+				return location;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#getElement(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public Object getElement(ILocation location) {
+		for (IConnector connector : getConnectors()) {
+			if (connector.canHandle(location)) {
+				return connector.getElement(location);
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#getOrCreateLocation(org.eclipse.intent.mapping.base.ILocationContainer,
+	 *      java.lang.Object)
+	 */
+	public ILocation getOrCreateLocation(ILocationContainer container, Object element)
+			throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final ILocation res;
+
+		final ILocation foundLocation = getLocation(container, element);
+		if (foundLocation != null) {
+			res = foundLocation;
+		} else {
+			res = createLocation(container, element);
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#getLocationType(java.lang.Class,
+	 *      java.lang.Object)
+	 */
+	public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+			Object element) {
+		for (IConnector connector : getConnectors()) {
+			final Class<? extends ILocation> locationType = connector.getLocationType(containerType, element);
+			if (locationType != null) {
+				return locationType;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#getName(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public String getName(ILocation location) {
+		String res;
+		if (!location.isMarkedAsDeleted()) {
+			res = null;
+			for (IConnector connector : getConnectors()) {
+				if (connector.canHandle(location)) {
+					res = connector.getName(location);
+					break;
+				}
+			}
+		} else {
+			res = "(deleted)";
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#getLocationDescriptor(org.eclipse.intent.mapping.base.IBase,
+	 *      java.lang.Object)
+	 */
+	public ILocationDescriptor getLocationDescriptor(IBase base, Object element) {
+		for (IConnector connector : getConnectors()) {
+			final ILocationDescriptor descriptor = connector.getLocationDescriptor(base, element);
+			if (descriptor != null) {
+				return descriptor;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#updateLocation(org.eclipse.intent.mapping.base.ILocation,
+	 *      java.lang.Object)
+	 */
+	public boolean updateLocation(ILocation location, Object element) {
+		if (!location.isMarkedAsDeleted()) {
+			for (IConnector connector : getConnectors()) {
+				if (connector.canHandle(location)) {
+					return connector.updateLocation(location, element);
+				}
+			}
+		}
+
+		return false;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#register(org.eclipse.intent.mapping.connector.IConnector)
+	 */
+	public void register(IConnector connector) {
+		if (connector != null) {
+			synchronized(connectors) {
+				int index = 0;
+				boolean added = false;
+				for (IConnector currentConnector : connectors) {
+					if (currentConnector.getType().isAssignableFrom(connector.getType())) {
+						connectors.add(index, connector);
+						added = true;
+						break;
+					} else {
+						index++;
+					}
+				}
+				if (!added) {
+					connectors.add(index, connector);
+				}
+				typeToConnector.put(connector.getType(), connector);
+			}
+		} else {
+			throw new IllegalArgumentException("IConnector can't be null.");
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#unregister(org.eclipse.intent.mapping.connector.IConnector)
+	 */
+	public void unregister(IConnector connector) {
+		synchronized(connectors) {
+			connectors.remove(connector);
+			typeToConnector.remove(connector.getType());
+		}
+	}
+
+	/**
+	 * Gets the {@link List} of {@link IConnectorRegistry#register(IConnector) registered} {@link IConnector}.
+	 * 
+	 * @return the {@link List} of {@link IConnectorRegistry#register(IConnector) registered}
+	 *         {@link IConnector}
+	 */
+	protected List<IConnector> getConnectors() {
+		synchronized(connectors) {
+			return Collections.unmodifiableList(new ArrayList<IConnector>(connectors));
+		}
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnectorRegistry#getConnector(java.lang.Class)
+	 */
+	public IConnector getConnector(Class<? extends ILocation> connectorType) {
+		synchronized(connectors) {
+			return typeToConnector.get(connectorType);
+		}
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/content/FileType.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/content/FileType.java
new file mode 100644
index 0000000..4aaa4c3
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/content/FileType.java
@@ -0,0 +1,62 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.internal.content;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.content.IFileType;
+
+/**
+ * Implementation of IFileType.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class FileType implements IFileType {
+
+	/**
+	 * The {@link IFileType#getID() type ID}.
+	 */
+	private final String id;
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param typeID
+	 *            the {@link IFileType#getID() type ID}
+	 */
+	public FileType(String typeID) {
+		this.id = typeID;
+	}
+
+	public String getID() {
+		return id;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileType#isKindOf(java.lang.String)
+	 */
+	public boolean isKindOf(String typeID) {
+		return MappingUtils.getFileTypeRegistry().isKindOf(id, typeID);
+	}
+
+	@Override
+	public boolean equals(Object obj) {
+		return obj instanceof IFileType && getID().equals(((IFileType)obj).getID());
+	}
+
+	@Override
+	public int hashCode() {
+		return id.hashCode();
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/content/FileTypeRegistry.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/content/FileTypeRegistry.java
new file mode 100644
index 0000000..1ef17f9
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/internal/content/FileTypeRegistry.java
@@ -0,0 +1,152 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.internal.content;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.intent.mapping.content.IFileType;
+import org.eclipse.intent.mapping.content.IFileTypeProvider;
+import org.eclipse.intent.mapping.content.IFileTypeRegistry;
+
+/**
+ * Implementation of {@link IFileTypeRegistry}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class FileTypeRegistry implements IFileTypeRegistry {
+
+	/**
+	 * The mapping of {@link IFileType#isKindOf(String) super types}.
+	 */
+	private final Map<String, Set<String>> superTypes = new HashMap<String, Set<String>>();
+
+	/**
+	 * The {@link List} of known {@link IFileTypeProvider}.
+	 */
+	private final List<IFileTypeProvider> providers = new ArrayList<IFileTypeProvider>();
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#getFileTypeProviders()
+	 */
+	public List<IFileTypeProvider> getFileTypeProviders() {
+		return providers;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#registerFileType(java.lang.String,
+	 *      java.util.Set)
+	 */
+	public void registerFileType(String typeID, Set<String> suprTypeIDs) {
+		superTypes.put(typeID, suprTypeIDs);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#unregisterFileType(java.lang.String)
+	 */
+	public void unregisterFileType(String typeID) {
+		superTypes.remove(typeID);
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#getFileType(java.lang.String)
+	 */
+	public IFileType getFileType(String typeID) {
+		final IFileType res;
+
+		if (superTypes.containsKey(typeID)) {
+			res = new FileType(typeID);
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#getFileTypeFor(java.io.InputStream,
+	 *      java.lang.String)
+	 */
+	public IFileType getFileTypeFor(InputStream contents, String name) throws IOException {
+		IFileType res = null;
+
+		for (IFileTypeProvider provider : providers) {
+			res = provider.getFileTypeFor(contents, name);
+			if (res != null) {
+				break;
+			}
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.content.IFileTypeRegistry#isKindOf(java.lang.String, java.lang.String)
+	 */
+	public boolean isKindOf(String typeID, String superTypeID) {
+		final Set<String> superTypeIDs = superTypes.get(typeID);
+		return isKindOf(typeID, superTypeID, superTypeIDs);
+	}
+
+	/**
+	 * Tells if the given {@link IFileType#getID() type ID} is a sub type of the given
+	 * {@link IFileType#getID() super type ID}.
+	 * 
+	 * @param typeID
+	 *            the {@link IFileType#getID() type ID}
+	 * @param superTypeID
+	 *            the {@link IFileType#getID() super type ID}
+	 * @param superTypeIDs
+	 *            the {@link Set} of {@link IFileType#getID() super type IDs} for the given
+	 *            {@link IFileType#getID() type ID}
+	 * @return <code>true</code> if the given {@link IFileType#getID() type ID} is a sub type of the given
+	 *         {@link IFileType#getID() super type ID}, <code>false</code> otherwise
+	 */
+	protected boolean isKindOf(String typeID, String superTypeID, Set<String> superTypeIDs) {
+		final boolean res;
+
+		if (superTypeIDs == null || superTypeIDs.isEmpty()) {
+			res = false;
+		} else if (superTypeIDs.contains(superTypeID)) {
+			res = true;
+		} else {
+			boolean isIndirectSuperType = false;
+			for (String superType : superTypeIDs) {
+				isIndirectSuperType = isKindOf(superType, superTypeID, superTypes.get(superType));
+				if (isIndirectSuperType) {
+					break;
+				}
+			}
+			res = isIndirectSuperType;
+		}
+
+		return res;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/ITextContainer.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/ITextContainer.java
new file mode 100644
index 0000000..6cc6bd6
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/ITextContainer.java
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.text;
+
+import org.eclipse.intent.mapping.base.ILocation;
+
+/**
+ * Text container.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ITextContainer extends ILocation {
+
+	/**
+	 * Sets the text corresponding to the container.
+	 * 
+	 * @param text
+	 *            the text corresponding to the container
+	 */
+	void setText(String text);
+
+	/**
+	 * Gets the text corresponding to the container.
+	 * 
+	 * @return the text corresponding to the container
+	 */
+	String getText();
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/ITextLocation.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/ITextLocation.java
new file mode 100644
index 0000000..69fde0a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/ITextLocation.java
@@ -0,0 +1,58 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.intent.mapping.text;
+
+import org.eclipse.intent.mapping.base.ILocation;
+
+/**
+ * An {@link ILocation} for text content.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface ITextLocation extends ILocation {
+
+	/**
+	 * Sets the start offset of {@link ITextLocation#getText() text} in the {@link ITextContainer#getText()
+	 * surrounding text}.
+	 * 
+	 * @param offset
+	 *            the start offset
+	 */
+	void setStartOffset(int offset);
+
+	/**
+	 * Gets the start offset of {@link ITextLocation#getText() text} in the {@link ITextContainer#getText()
+	 * surrounding text}.
+	 * 
+	 * @return the start offset of {@link ITextLocation#getText() text} in the {@link ITextContainer#getText()
+	 *         surrounding text}
+	 */
+	int getStartOffset();
+
+	/**
+	 * Sets the end offset of {@link ITextLocation#getText() text} in the {@link ITextContainer#getText()
+	 * surrounding text}.
+	 * 
+	 * @param offset
+	 *            the end offset
+	 */
+	void setEndOffset(int offset);
+
+	/**
+	 * Gets the end offset of {@link ITextLocation#getText() text} in the {@link ITextContainer#getText()
+	 * surrounding text}.
+	 * 
+	 * @return the end offset of {@link ITextLocation#getText() text} in the {@link ITextContainer#getText()
+	 *         surrounding text}
+	 */
+	int getEndOffset();
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/TextConnector.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/TextConnector.java
new file mode 100644
index 0000000..f3907f5
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/TextConnector.java
@@ -0,0 +1,194 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.text;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.MappingUtils.DiffMatch;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.connector.AbstractConnector;
+
+/**
+ * Text {@link org.eclipse.intent.mapping.connector.IConnector IConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class TextConnector extends AbstractConnector {
+
+	/**
+	 * Utility helper to
+	 * {@link TextContainerHelper#updateTextContainer(ILocationContainer, ITextContainer, String) update text
+	 * container}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TextContainerHelper {
+
+		/**
+		 * Updates the given {@link ITextContainer} with the given {@link ITextContainer#getText() text}.
+		 * 
+		 * @param container
+		 *            the {@link ILocationContainer}
+		 * @param textContainer
+		 *            the {@link ITextContainer}
+		 * @param text
+		 *            the {@link ITextContainer#getText() text}
+		 * @throws IllegalAccessException
+		 *             if the class or its nullary constructor is not accessible.
+		 * @throws InstantiationException
+		 *             if this Class represents an abstract class, an interface, an array class, a primitive
+		 *             type, or void; or if the class has no nullary constructor; or if the instantiation
+		 *             fails for some other reason.
+		 * @throws ClassNotFoundException
+		 *             if the {@link Class} can't be found
+		 */
+		public void updateTextContainer(ILocationContainer container, ITextContainer textContainer,
+				String text) throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+			final String oldText = textContainer.getText();
+			textContainer.setText(text);
+			if (oldText != null) {
+				final DiffMatch diff = MappingUtils.getDiffMatch(oldText, text);
+				for (ILocation child : textContainer.getContents()) {
+					if (child instanceof ITextLocation && !child.isMarkedAsDeleted()) {
+						final ITextLocation location = (ITextLocation)child;
+						final int newStartOffset = diff.getIndex(location.getStartOffset());
+						final int newEndOffset = diff.getIndex(location.getEndOffset());
+						final String oldValue = oldText.substring(location.getStartOffset(), location
+								.getEndOffset());
+						final String newValue = text.substring(newStartOffset, newEndOffset);
+						if (newStartOffset == newEndOffset) {
+							MappingUtils.markAsDeletedOrDelete(location, String.format(
+									"\"%s\" at (%d, %d) has been deleted.", oldValue, location
+											.getStartOffset(), location.getEndOffset()));
+						} else if (!oldValue.equals(newValue)) {
+							MappingUtils.markAsChanged(location, String.format(
+									"\"%s\" at (%d, %d) has been changed to \"%s\" at (%d, %d).", oldValue,
+									location.getStartOffset(), location.getEndOffset(), newValue,
+									newStartOffset, newEndOffset));
+						}
+						location.setStartOffset(newStartOffset);
+						location.setEndOffset(newEndOffset);
+					}
+				}
+			}
+		}
+
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationType(java.lang.Class, java.lang.Object)
+	 */
+	public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+			Object element) {
+		final Class<? extends ILocation> res;
+
+		if (ITextContainer.class.isAssignableFrom(containerType) && element instanceof TextRegion) {
+			res = getType();
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getElement(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public Object getElement(ILocation location) {
+		final TextRegion res;
+
+		final ITextLocation textLocation = (ITextLocation)location;
+		final int startOffset = textLocation.getStartOffset();
+		final int endOffset = textLocation.getEndOffset();
+		final String text = ((ITextContainer)location.getContainer()).getText().substring(startOffset,
+				endOffset);
+		final Object container = MappingUtils.getConnectorRegistry().getElement((ITextContainer)location
+				.getContainer());
+		res = new TextRegion(container, text, startOffset, endOffset);
+
+		return res;
+	}
+
+	@Override
+	protected void initLocation(ILocationContainer container, ILocation location, Object element) {
+		final ITextLocation toInit = (ITextLocation)location;
+		final TextRegion region = (TextRegion)element;
+
+		toInit.setStartOffset(region.getStartOffset());
+		toInit.setEndOffset(region.getEndOffset());
+	}
+
+	@Override
+	protected boolean match(ILocation location, Object element) {
+		final ITextLocation textLocation = (ITextLocation)location;
+		final TextRegion region = (TextRegion)element;
+
+		return textLocation.getStartOffset() == region.getStartOffset() && textLocation
+				.getEndOffset() == region.getEndOffset();
+	}
+
+	@Override
+	protected boolean canUpdate(Object element) {
+		return element instanceof TextRegion;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getName(org.eclipse.intent.mapping.base.ILocation)
+	 */
+	public String getName(ILocation location) {
+		final String res;
+
+		final String text = ((ITextContainer)location.getContainer()).getText();
+		final int start = ((ITextLocation)location).getStartOffset();
+		final int end = ((ITextLocation)location).getEndOffset();
+		res = String.format("\"%s\"", text.substring(start, end));
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationDescriptor(org.eclipse.intent.mapping.base.IBase,
+	 *      java.lang.Object)
+	 */
+	public ILocationDescriptor getLocationDescriptor(IBase base, Object element) {
+		final ILocationDescriptor res;
+
+		final Object adapted = adapt(element);
+		if (adapted instanceof TextRegion) {
+			res = new ObjectLocationDescriptor(base, adapted, ((TextRegion)adapted).getText());
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IConnector#getType()
+	 */
+	public Class<? extends ILocation> getType() {
+		return ITextLocation.class;
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/TextRegion.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/TextRegion.java
new file mode 100644
index 0000000..4f6af5a
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/TextRegion.java
@@ -0,0 +1,116 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.text;
+
+/**
+ * A text region.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class TextRegion {
+
+	/**
+	 * The start offset.
+	 */
+	private final int startOffset;
+
+	/**
+	 * The end offset.
+	 */
+	private final int endOffset;
+
+	/**
+	 * The text.
+	 */
+	private final String text;
+
+	/**
+	 * The containing {@link Object} should
+	 * {@link org.eclipse.intent.mapping.connector.IConnectorRegistry#getLocation(org.eclipse.intent.mapping.base.ILocationContainer, Object)
+	 * be located} by a {@link ITextContainer}.
+	 */
+	private final Object container;
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param container
+	 *            the containing {@link Object} should
+	 *            {@link org.eclipse.intent.mapping.connector.IConnectorRegistry#getLocation(org.eclipse.intent.mapping.base.ILocationContainer, Object)
+	 *            be located} by a {@link ITextContainer}
+	 * @param text
+	 *            the text
+	 * @param startOffset
+	 *            the start offset
+	 * @param endOffset
+	 *            the end offset
+	 */
+	public TextRegion(Object container, String text, int startOffset, int endOffset) {
+		this.container = container;
+		this.text = text;
+		this.startOffset = startOffset;
+		this.endOffset = endOffset;
+	}
+
+	/**
+	 * Gets the start offset.
+	 * 
+	 * @return the start offset
+	 */
+	public int getStartOffset() {
+		return startOffset;
+	}
+
+	/**
+	 * Gets the end offset.
+	 * 
+	 * @return the end offset
+	 */
+	public int getEndOffset() {
+		return endOffset;
+	}
+
+	/**
+	 * Get the text.
+	 * 
+	 * @return the text
+	 */
+	public String getText() {
+		return text;
+	}
+
+	/**
+	 * Gets the containing {@link Object} should
+	 * {@link org.eclipse.intent.mapping.connector.IConnectorRegistry#getLocation(org.eclipse.intent.mapping.base.ILocationContainer, Object)
+	 * be located} by a {@link ITextContainer}.
+	 * 
+	 * @return the containing {@link Object} should
+	 *         {@link org.eclipse.intent.mapping.connector.IConnectorRegistry#getLocation(org.eclipse.intent.mapping.base.ILocationContainer, Object)
+	 *         be located} by a {@link ITextContainer}
+	 */
+	public Object getContainer() {
+		return container;
+	}
+
+	@Override
+	public int hashCode() {
+		return (text.hashCode() ^ endOffset) - startOffset ^ container.hashCode();
+	}
+
+	@Override
+	public boolean equals(Object obj) {
+		return obj instanceof TextRegion && startOffset == ((TextRegion)obj).startOffset
+				&& endOffset == ((TextRegion)obj).endOffset && text.equals(((TextRegion)obj).text)
+				&& container.equals(((TextRegion)obj).container);
+	}
+
+}
diff --git a/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/TextRegionContainerProvider.java b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/TextRegionContainerProvider.java
new file mode 100644
index 0000000..04685f2
--- /dev/null
+++ b/mapping/plugins/org.eclipse.intent.mapping/src/org/eclipse/intent/mapping/text/TextRegionContainerProvider.java
@@ -0,0 +1,40 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.text;
+
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+
+/**
+ * {@link TextRegion} -> {@link TextRegion#getContainer() text region container}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class TextRegionContainerProvider implements IContainerProvider {
+
+	/**
+	 * {@inheritDoc}
+	 *
+	 * @see org.eclipse.intent.mapping.connector.IContainerProvider#getContainer(java.lang.Object)
+	 */
+	public Object getContainer(Object element) {
+		final Object res;
+
+		if (element instanceof TextRegion) {
+			res = ((TextRegion)element).getContainer();
+		} else {
+			res = null;
+		}
+
+		return res;
+	}
+
+}
diff --git a/mapping/pom.xml b/mapping/pom.xml
new file mode 100644
index 0000000..830c321
--- /dev/null
+++ b/mapping/pom.xml
@@ -0,0 +1,483 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015 Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <prerequisites>
+    <maven>3.0</maven>
+  </prerequisites>
+  <groupId>org.eclipse.intent</groupId>
+  <artifactId>org.eclipse.intent-parent</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>Intent Parent</name>
+  <licenses>
+    <license>
+      <name>Eclipse Public License v1.0</name>
+      <comments>
+       All rights reserved.
+
+       This program and the accompanying materials are made
+       available under the terms of the Eclipse Public License v1.0
+       which accompanies this distribution, and is available at
+       http://www.eclipse.org/legal/epl-v10.htm
+      </comments>
+    </license>
+  </licenses>
+  <properties>
+    <tycho-version>0.21.0</tycho-version>
+    <tycho-extras-version>0.21.0</tycho-extras-version>
+    <resource-encoding>UTF-8</resource-encoding>
+    <maven-resources-version>2.6</maven-resources-version>
+    <tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/intent/org.eclipse.mylyn.docs.intent.main.git</tycho.scmUrl>
+  </properties>
+  <scm>
+    <developerConnection>scm:git:git://git.eclipse.org/gitroot/intent/org.eclipse.mylyn.docs.intent.main.git</developerConnection>
+  </scm>
+  <modules>
+    <module>features/org.eclipse.intent.mapping.feature</module>
+    <module>plugins/org.eclipse.intent.mapping</module>
+    <module>tests/org.eclipse.intent.mapping.tests</module>
+    <module>plugins/org.eclipse.intent.mapping.ide</module>
+    <module>tests/org.eclipse.intent.mapping.ide.tests</module>
+    <module>plugins/org.eclipse.intent.mapping.ide.ui</module>
+    <!-- TODO <module>tests/org.eclipse.intent.mapping.ide.ui.tests</module> -->
+    <module>plugins/org.eclipse.intent.mapping.emf</module>
+    <module>tests/org.eclipse.intent.mapping.emf.tests</module>
+    <module>plugins/org.eclipse.intent.mapping.emf.edit</module>
+    <!-- TODO <module>tests/org.eclipse.intent.mapping.emf.edit.tests</module> -->
+    <module>plugins/org.eclipse.intent.mapping.emf.ide</module>
+    <module>tests/org.eclipse.intent.mapping.emf.ide.tests</module>
+    <module>plugins/org.eclipse.intent.mapping.emf.ide.ui</module>
+
+    <module>features/org.eclipse.intent.mapping.sirius.feature</module>
+    <module>plugins/org.eclipse.intent.mapping.sirius.ide.ui</module>
+  </modules>	
+
+  <build>
+    <sourceDirectory>src</sourceDirectory>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-maven-plugin</artifactId>
+        <version>${tycho-version}</version>
+        <extensions>true</extensions>
+      </plugin>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>target-platform-configuration</artifactId>
+        <version>${tycho-version}</version>
+        <configuration>
+          <includePackedArtifacts>true</includePackedArtifacts>
+          <resolver>p2</resolver>
+        </configuration>
+      </plugin>
+      <!-- enable source bundle generation -->
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-source-plugin</artifactId>
+        <version>${tycho-version}</version>
+        <configuration>
+          <archive>
+            <addMavenDescriptor>false</addMavenDescriptor>
+          </archive>
+        </configuration>
+        <executions>
+          <execution>
+            <id>plugin-source</id>
+            <goals>
+              <goal>plugin-source</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.eclipse.tycho.extras</groupId>
+        <artifactId>tycho-source-feature-plugin</artifactId>
+        <version>${tycho-extras-version}</version>
+        <configuration>bash test and
+          <archive>
+            <addMavenDescriptor>false</addMavenDescriptor>
+          </archive>
+          <excludes>
+            <plugin id="org.apache.poi"/>
+          </excludes>
+        </configuration>
+        <executions>
+          <execution>
+            <id>source-feature</id>
+            <phase>package</phase>
+            <goals>
+              <goal>source-feature</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-packaging-plugin</artifactId>
+        <version>${tycho-version}</version>
+        <configuration>
+          <archive>
+            <addMavenDescriptor>false</addMavenDescriptor>
+          </archive>
+          <sourceReferences>
+            <generate>true</generate>
+          </sourceReferences>
+        </configuration>
+        <dependencies>
+          <dependency>
+            <groupId>org.eclipse.tycho.extras</groupId>
+            <artifactId>tycho-sourceref-jgit</artifactId>
+            <version>${tycho-extras-version}</version>
+          </dependency>
+        </dependencies>
+      </plugin>
+    </plugins>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.eclipse.tycho</groupId>
+          <artifactId>target-platform-configuration</artifactId>
+          <version>${tycho-version}</version>
+          <configuration>
+            <resolver>p2</resolver>
+            <environments>
+              <environment>
+                <os>linux</os>
+                <ws>gtk</ws>
+                <arch>x86</arch>
+              </environment>
+              <environment>
+                <os>win32</os>
+                <ws>win32</ws>
+                <arch>x86</arch>
+              </environment>
+              <environment>
+                <os>win32</os>
+                <ws>win32</ws>
+                <arch>x86_64</arch>
+              </environment>
+              <environment>
+                <os>linux</os>
+                <ws>gtk</ws>
+                <arch>x86_64</arch>
+              </environment>
+              <environment>
+                <os>macosx</os>
+                <ws>cocoa</ws>
+                <arch>x86_64</arch>
+              </environment>
+            </environments>
+          </configuration>
+        </plugin>
+        <plugin>
+          <groupId>org.eclipse.tycho</groupId>
+          <artifactId>tycho-compiler-plugin</artifactId>
+          <version>${tycho-version}</version>
+          <configuration>
+            <encoding>UTF-8</encoding>
+            <source>1.8</source>
+            <target>1.8</target>
+          </configuration>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-resources-plugin</artifactId>
+          <version>${maven-resources-version}</version>
+          <configuration>
+            <encoding>${resource-encoding}</encoding>
+          </configuration>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-antrun-plugin</artifactId>
+          <version>1.3</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>findbugs-maven-plugin</artifactId>
+          <version>2.3.2</version>
+          <configuration>
+            <findbugsXmlOutput>true</findbugsXmlOutput>
+            <failOnError>false</failOnError>
+          </configuration>
+          <executions>
+            <execution>
+              <goals>
+                <goal>check</goal>
+              </goals>
+            </execution>
+          </executions>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-pmd-plugin</artifactId>
+          <version>2.5</version>
+          <configuration>
+            <sourceEncoding>utf-8</sourceEncoding>
+            <minimumTokens>100</minimumTokens>
+            <targetJdk>1.8</targetJdk>
+            <format>xml</format>
+            <failOnViolation>false</failOnViolation>
+          </configuration>
+          <executions>
+            <execution>
+              <goals>
+                <goal>cpd-check</goal>
+              </goals>
+            </execution>
+          </executions>
+        </plugin>
+        <plugin>
+          <groupId>org.eclipse.tycho</groupId>
+          <artifactId>tycho-p2-plugin</artifactId>
+          <version>${tycho-extras-version}</version>
+          <executions>
+            <execution>
+              <id>p2-metadata</id>
+              <goals>
+                <goal>p2-metadata</goal>
+              </goals>
+              <phase>package</phase>
+            </execution>
+          </executions>
+          <configuration>
+            <defaultP2Metadata>false</defaultP2Metadata>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+  <profiles>
+    <profile>
+      <id>updatesites</id>
+      <activation>
+        <activeByDefault>false</activeByDefault>
+        <property>
+          <name>product</name>
+          <value>true</value>
+        </property>
+      </activation>
+      <modules>
+        <!-- update sites -->
+        <module>releng/org.eclipse.intent.updatesite</module>
+      </modules>
+    </profile>
+    <profile>
+      <id>product</id>
+      <activation>
+        <activeByDefault>false</activeByDefault>
+        <property>
+          <name>product</name>
+          <value>true</value>
+        </property>
+      </activation>
+      <modules>
+        <!-- product and product tests -->
+        <module>features/org.eclipse.intent.product.feature</module>
+        <module>releng/org.eclipse.intent.branding</module>
+        <module>releng/org.eclipse.intent.product</module>
+        <!-- TODO fixe RCPTT tests <module>tests/org.eclipse.intent.product.tests</module> -->
+      </modules>
+    </profile>
+    <profile>
+      <id>platform-oxygen</id>
+      <activation>
+        <activeByDefault>false</activeByDefault>
+        <property>
+          <name>platform-version-name</name>
+          <value>oxygen</value>
+        </property>
+      </activation>
+      <properties>
+        <eclipse-rcptt-inject-site>http://download.eclipse.org/releases/oxygen</eclipse-rcptt-inject-site>
+      </properties>
+      <modules>
+        <module>releng/org.eclipse.intent.targetplatforms/oxygen</module>
+      </modules>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.eclipse.tycho</groupId>
+            <artifactId>target-platform-configuration</artifactId>
+            <configuration>
+              <target>
+                <artifact>
+                  <groupId>org.eclipse.intent</groupId>
+                  <artifactId>intent-oxygen</artifactId>
+                  <version>0.10.0-SNAPSHOT</version>
+                </artifact>
+              </target>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>platform-neon</id>
+      <activation>
+        <activeByDefault>false</activeByDefault>
+        <property>
+          <name>platform-version-name</name>
+          <value>neon</value>
+        </property>
+      </activation>
+      <properties>
+        <eclipse-rcptt-inject-site>http://download.eclipse.org/releases/neon</eclipse-rcptt-inject-site>
+      </properties>
+      <modules>
+        <module>releng/org.eclipse.intent.targetplatforms/neon</module>
+      </modules>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.eclipse.tycho</groupId>
+            <artifactId>target-platform-configuration</artifactId>
+            <configuration>
+              <target>
+                <artifact>
+                  <groupId>org.eclipse.intent</groupId>
+                  <artifactId>intent-neon</artifactId>
+                  <version>0.10.0-SNAPSHOT</version>
+                </artifact>
+              </target>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>platform-mars</id>
+      <activation>
+        <activeByDefault>false</activeByDefault>
+        <property>
+          <name>platform-version-name</name>
+          <value>mars</value>
+        </property>
+      </activation>
+      <properties>
+        <eclipse-rcptt-inject-site>http://download.eclipse.org/releases/mars</eclipse-rcptt-inject-site>
+      </properties>
+      <modules>
+        <module>releng/org.eclipse.intent.targetplatforms/mars</module>
+      </modules>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.eclipse.tycho</groupId>
+            <artifactId>target-platform-configuration</artifactId>
+            <configuration>
+              <target>
+                <artifact>
+                  <groupId>org.eclipse.intent</groupId>
+                  <artifactId>intent-mars</artifactId>
+                  <version>0.10.0-SNAPSHOT</version>
+                </artifact>
+              </target>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>platform-luna</id>
+      <activation>
+        <activeByDefault>false</activeByDefault>
+        <property>
+          <name>platform-version-name</name>
+          <value>luna</value>
+        </property>
+      </activation>
+      <properties>
+        <eclipse-rcptt-inject-site>http://download.eclipse.org/releases/luna</eclipse-rcptt-inject-site>
+      </properties>
+      <modules>
+        <module>releng/org.eclipse.intent.targetplatforms/luna</module>
+      </modules>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.eclipse.tycho</groupId>
+            <artifactId>target-platform-configuration</artifactId>
+            <configuration>
+              <target>
+                <artifact>
+                  <groupId>org.eclipse.intent</groupId>
+                  <artifactId>intent-luna</artifactId>
+                  <version>0.10.0-SNAPSHOT</version>
+                </artifact>
+              </target>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>checkstyle</id>
+      <activation>
+        <activeByDefault>false</activeByDefault>
+      </activation>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-checkstyle-plugin</artifactId>
+            <version>2.11</version>
+            <executions>
+              <execution>
+                <id>check my sources</id>
+                <goals>
+                  <goal>checkstyle</goal>
+                </goals>
+                <phase>verify</phase>
+                <configuration>
+                  <configLocation>${project.parent.relativePath}/releng/org.eclipse.intent.codestyle/codestyle/IntentCheckstyle6Configuration.xml</configLocation>
+                  <failOnErrors>false</failOnErrors>
+                  <consoleOutput>true</consoleOutput>
+                </configuration>
+              </execution>
+            </executions>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>static-checks</id>
+      <activation>
+        <activeByDefault>false</activeByDefault>
+      </activation>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.codehaus.mojo</groupId>
+            <artifactId>findbugs-maven-plugin</artifactId>
+            <version>2.5.3</version>
+          </plugin>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-pmd-plugin</artifactId>
+            <version>3.0.1</version>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>macosx-jvm-flags</id>
+      <activation>
+        <os>
+          <family>mac</family>
+        </os>
+      </activation>
+      <properties>
+        <os-jvm-flags>-XstartOnFirstThread</os-jvm-flags>
+      </properties>
+    </profile>
+  </profiles>
+</project>
diff --git a/mapping/releng/org.eclipse.intent.branding/.project b/mapping/releng/org.eclipse.intent.branding/.project
new file mode 100644
index 0000000..0738da2
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/.project
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.branding</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/releng/org.eclipse.intent.branding/.settings/org.eclipse.core.resources.prefs b/mapping/releng/org.eclipse.intent.branding/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/mapping/releng/org.eclipse.intent.branding/.settings/org.eclipse.core.runtime.prefs b/mapping/releng/org.eclipse.intent.branding/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 0000000..5a0ad22
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/mapping/releng/org.eclipse.intent.branding/META-INF/MANIFEST.MF b/mapping/releng/org.eclipse.intent.branding/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..074adcc
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/META-INF/MANIFEST.MF
@@ -0,0 +1,10 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Intent Branding
+Bundle-SymbolicName: org.eclipse.intent.branding;singleton:=true
+Bundle-Version: 0.10.0.qualifier
+Bundle-Vendor: Obeo
+Require-Bundle: org.eclipse.ui.intro.universal,
+ org.eclipse.ui.intro;bundle-version="3.4.200",
+ org.eclipse.ui
+Bundle-Localization: plugin
diff --git a/mapping/releng/org.eclipse.intent.branding/about.svg b/mapping/releng/org.eclipse.intent.branding/about.svg
new file mode 100644
index 0000000..7baa631
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/about.svg
@@ -0,0 +1,8801 @@
+<?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: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"
+   inkscape:export-ydpi="204.05"
+   inkscape:export-xdpi="204.05"
+   inkscape:export-filename="/home/chipotortoose/ANettoyer/odesign2.png"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   sodipodi:docname="about.svg"
+   version="1.0"
+   inkscape:version="0.91 r13725"
+   sodipodi:version="0.32"
+   id="svg2"
+   height="340"
+   width="450">
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="1"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1.2947911"
+     inkscape:cx="-503.85942"
+     inkscape:cy="-656.97889"
+     inkscape:document-units="px"
+     inkscape:current-layer="g5472"
+     showgrid="false"
+     inkscape:window-width="1879"
+     inkscape:window-height="1056"
+     inkscape:window-x="41"
+     inkscape:window-y="24"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     inkscape:snap-global="false">
+    <sodipodi:guide
+       orientation="1,0"
+       position="-315.10875,-458.76127"
+       id="guide7098" />
+    <sodipodi:guide
+       orientation="1,0"
+       position="-186.13041,-820.20955"
+       id="guide7302" />
+    <sodipodi:guide
+       orientation="0,1"
+       position="-125.88904,-494.28824"
+       id="guide5873" />
+    <sodipodi:guide
+       orientation="0,1"
+       position="-413.19407,-747.61096"
+       id="guide5875" />
+  </sodipodi:namedview>
+  <defs
+     id="defs4">
+    <linearGradient
+       id="linearGradient6832">
+      <stop
+         style="stop-color:#7a878d;stop-opacity:1"
+         offset="0"
+         id="stop6834" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop6836" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4563"
+       inkscape:collect="always">
+      <stop
+         id="stop4565"
+         offset="0"
+         style="stop-color:#916f6f;stop-opacity:1;" />
+      <stop
+         id="stop4567"
+         offset="1"
+         style="stop-color:#916f6f;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient7865">
+      <stop
+         id="stop7867"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1" />
+      <stop
+         id="stop7869"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient7288"
+       inkscape:collect="always">
+      <stop
+         id="stop7290"
+         offset="0"
+         style="stop-color:#7a5c5c;stop-opacity:1;" />
+      <stop
+         id="stop7292"
+         offset="1"
+         style="stop-color:#7a5c5c;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient5237">
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="0"
+         id="stop5239" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop5241" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient5231">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop5233" />
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="1"
+         id="stop5235" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient5225">
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="0"
+         id="stop5227" />
+      <stop
+         style="stop-color:#fdfcfc;stop-opacity:1"
+         offset="1"
+         id="stop5229" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3615">
+      <stop
+         id="stop3617"
+         offset="0"
+         style="stop-color:#b3b3b3;stop-opacity:1;" />
+      <stop
+         id="stop3619"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3597">
+      <stop
+         id="stop3599"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3227">
+      <stop
+         id="stop3229"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3231"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <inkscape:perspective
+       id="perspective10"
+       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" />
+    <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="perspective2447" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       id="linearGradient3233"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       id="linearGradient3245"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3560"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3562"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="53.355003"
+       x2="203.2426"
+       y1="135.17737"
+       x1="320.30368"
+       id="linearGradient3603"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="58.237488"
+       x2="151.46669"
+       y1="97.633438"
+       x1="182.9617"
+       id="linearGradient3611"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4320"
+       id="linearGradient4326"
+       x1="-1401.7008"
+       y1="-1002.6378"
+       x2="-1405.2992"
+       y2="-941.63776"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-42.999999,99.000019)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4310"
+       id="linearGradient4308"
+       x1="-1498.2922"
+       y1="-901.5423"
+       x2="-1393.8906"
+       y2="-749.20172"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient4297"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-1773.6015,-1058.2036)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <inkscape:perspective
+       id="perspective2658"
+       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" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient2643"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient2641"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient2629"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient2627"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient2502"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient2500"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient2488"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient2486"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <inkscape:perspective
+       id="perspective3422"
+       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" />
+    <inkscape:perspective
+       id="perspective3409"
+       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" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3717"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3715"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3693"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3691"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient2893"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient2891"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <inkscape:perspective
+       id="perspective2728"
+       inkscape:persp3d-origin="750 : 333.33333 : 1"
+       inkscape:vp_z="1500 : 500 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 500 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient4484">
+      <stop
+         style="stop-color:#397661;stop-opacity:0.49803922;"
+         offset="0"
+         id="stop4486" />
+      <stop
+         style="stop-color:#397661;stop-opacity:0;"
+         offset="1"
+         id="stop4488" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2734">
+      <stop
+         id="stop2736"
+         offset="0"
+         style="stop-color:#40b99d;stop-opacity:1;" />
+      <stop
+         style="stop-color:#40ba9e;stop-opacity:1;"
+         offset="0.5"
+         id="stop2738" />
+      <stop
+         id="stop2740"
+         offset="1"
+         style="stop-color:#059573;stop-opacity:1;" />
+    </linearGradient>
+    <clipPath
+       id="clip0">
+      <rect
+         y="0"
+         x="0"
+         id="rect7"
+         height="800"
+         width="1200" />
+    </clipPath>
+    <linearGradient
+       gradientTransform="matrix(0.7980628,0,0,0.6634352,70.454406,84.374858)"
+       gradientUnits="userSpaceOnUse"
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       id="linearGradient3171"
+       xlink:href="#linearGradient3165"
+       inkscape:collect="always" />
+    <radialGradient
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.82254,0,0,0.8470079,61.914481,60.140908)"
+       r="172.92815"
+       fy="393.09808"
+       fx="348.89258"
+       cy="393.09808"
+       cx="348.89258"
+       id="radialGradient4148"
+       xlink:href="#linearGradient4142"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective2568"
+       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" />
+    <inkscape:perspective
+       id="perspective3427"
+       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" />
+    <inkscape:perspective
+       id="perspective3398"
+       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" />
+    <inkscape:perspective
+       id="perspective3365"
+       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" />
+    <inkscape:perspective
+       id="perspective3328"
+       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" />
+    <inkscape:perspective
+       id="perspective3315"
+       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" />
+    <inkscape:perspective
+       id="perspective3777"
+       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" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3859"
+       gradientUnits="userSpaceOnUse"
+       x1="-583.51953"
+       y1="728.18848"
+       x2="-583.51953"
+       y2="1025.3861" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3857"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.2469124,-1.9480897e-8,1.948072e-8,0.2469101,-627.83015,1193.5854)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3813"
+       gradientUnits="userSpaceOnUse"
+       x1="-583.51953"
+       y1="728.18848"
+       x2="-583.51953"
+       y2="1025.3861" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3811"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.2469124,-1.9480897e-8,1.948072e-8,0.2469101,-627.83015,1193.5854)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <inkscape:perspective
+       id="perspective2695"
+       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" />
+    <inkscape:perspective
+       id="perspective3608"
+       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" />
+    <inkscape:perspective
+       id="perspective3403"
+       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" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient9613"
+       id="linearGradient9619"
+       x1="732"
+       y1="587.36218"
+       x2="901"
+       y2="587.36218"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.7125749,0,0,0.625,210.68263,205.26082)" />
+    <linearGradient
+       id="linearGradient3472">
+      <stop
+         style="stop-color:#73c171;stop-opacity:1;"
+         offset="0"
+         id="stop3474" />
+      <stop
+         id="stop3480"
+         offset="0.5"
+         style="stop-color:#90e98d;stop-opacity:0.83529413;" />
+      <stop
+         style="stop-color:#c8f3c5;stop-opacity:0.67000002;"
+         offset="1"
+         id="stop3476" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient9613">
+      <stop
+         style="stop-color:#ec9c40;stop-opacity:1;"
+         offset="0"
+         id="stop9615" />
+      <stop
+         style="stop-color:#ec9c40;stop-opacity:0.40000001;"
+         offset="1"
+         id="stop9617" />
+    </linearGradient>
+    <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="perspective156" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3165">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3167" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3169" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4142">
+      <stop
+         style="stop-color:#40b99d;stop-opacity:1;"
+         offset="0"
+         id="stop4144" />
+      <stop
+         id="stop5121"
+         offset="0.5"
+         style="stop-color:#40ba9e;stop-opacity:1;" />
+      <stop
+         style="stop-color:#059573;stop-opacity:1;"
+         offset="1"
+         id="stop4146" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4310">
+      <stop
+         id="stop4312"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4314"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4320">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop4322" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop4324" />
+    </linearGradient>
+    <linearGradient
+       y2="58.237488"
+       x2="151.46669"
+       y1="97.633438"
+       x1="182.9617"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2533"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="53.355003"
+       x2="203.2426"
+       y1="135.17737"
+       x1="320.30368"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2539"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2557"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2560"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2564"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       id="linearGradient3343"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(219.61517,-8.2498776)"
+       y2="53.355003"
+       x2="203.2426"
+       y1="135.17737"
+       x1="320.30368"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2531"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="matrix(1.7723122,0,0,1.7723122,150.1285,-81.640009)"
+       y2="58.237488"
+       x2="151.46669"
+       y1="97.633438"
+       x1="182.9617"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2537"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="53.355003"
+       x2="203.2426"
+       y1="135.17737"
+       x1="320.30368"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2657"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="58.237488"
+       x2="151.46669"
+       y1="97.633438"
+       x1="182.9617"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2659"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4320"
+       id="linearGradient3486"
+       x1="-1401.7008"
+       y1="-1002.6378"
+       x2="-1405.2992"
+       y2="-941.63776"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-42.999999,99.000019)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4310"
+       id="linearGradient3484"
+       x1="-1498.2922"
+       y1="-901.5423"
+       x2="-1393.8906"
+       y2="-749.20172"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3482"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-1773.6015,-1058.2036)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3475"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-421.14325,-433.55332)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <inkscape:perspective
+       id="perspective3472"
+       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" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3468"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3466"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3464"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3462"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3458"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3456"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3454"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3452"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <inkscape:perspective
+       id="perspective3450"
+       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" />
+    <inkscape:perspective
+       id="perspective3448"
+       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" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3444"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3442"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3440"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3438"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3436"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8179506,0,0,0.6879127,479.81948,692.38071)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3434"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999999,-7.8898005e-8,7.8897286e-8,0.9999908,416.30377,613.39875)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <inkscape:perspective
+       id="perspective3430"
+       inkscape:persp3d-origin="750 : 333.33333 : 1"
+       inkscape:vp_z="1500 : 500 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 500 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       id="linearGradient3424">
+      <stop
+         style="stop-color:#397661;stop-opacity:0.49803922;"
+         offset="0"
+         id="stop3426" />
+      <stop
+         style="stop-color:#397661;stop-opacity:0;"
+         offset="1"
+         id="stop3428" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3416">
+      <stop
+         id="stop3418"
+         offset="0"
+         style="stop-color:#40b99d;stop-opacity:1;" />
+      <stop
+         style="stop-color:#40ba9e;stop-opacity:1;"
+         offset="0.5"
+         id="stop3420" />
+      <stop
+         id="stop3422"
+         offset="1"
+         style="stop-color:#059573;stop-opacity:1;" />
+    </linearGradient>
+    <clipPath
+       id="clipPath3412">
+      <rect
+         y="0"
+         x="0"
+         id="rect3414"
+         height="800"
+         width="1200" />
+    </clipPath>
+    <linearGradient
+       gradientTransform="matrix(0.7980628,0,0,0.6634352,70.454406,84.374858)"
+       gradientUnits="userSpaceOnUse"
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       id="linearGradient3410"
+       xlink:href="#linearGradient3165"
+       inkscape:collect="always" />
+    <radialGradient
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.82254,0,0,0.8470079,61.914481,60.140908)"
+       r="172.92815"
+       fy="393.09808"
+       fx="348.89258"
+       cy="393.09808"
+       cx="348.89258"
+       id="radialGradient3408"
+       xlink:href="#linearGradient4142"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       id="perspective3406"
+       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" />
+    <inkscape:perspective
+       id="perspective3404"
+       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" />
+    <inkscape:perspective
+       id="perspective3401"
+       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" />
+    <inkscape:perspective
+       id="perspective3399"
+       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" />
+    <inkscape:perspective
+       id="perspective3396"
+       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" />
+    <inkscape:perspective
+       id="perspective3394"
+       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" />
+    <inkscape:perspective
+       id="perspective3392"
+       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" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3390"
+       gradientUnits="userSpaceOnUse"
+       x1="-583.51953"
+       y1="728.18848"
+       x2="-583.51953"
+       y2="1025.3861" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3388"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.2469124,-1.9480897e-8,1.948072e-8,0.2469101,-627.83015,1193.5854)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="linearGradient3386"
+       gradientUnits="userSpaceOnUse"
+       x1="-583.51953"
+       y1="728.18848"
+       x2="-583.51953"
+       y2="1025.3861" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4142"
+       id="radialGradient3384"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.2469124,-1.9480897e-8,1.948072e-8,0.2469101,-627.83015,1193.5854)"
+       cx="348.89258"
+       cy="357.09775"
+       fx="348.89258"
+       fy="357.09775"
+       r="172.92815" />
+    <inkscape:perspective
+       id="perspective3382"
+       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" />
+    <inkscape:perspective
+       id="perspective3380"
+       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" />
+    <inkscape:perspective
+       id="perspective3378"
+       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" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient9613"
+       id="linearGradient3376"
+       x1="732"
+       y1="587.36218"
+       x2="901"
+       y2="587.36218"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.7125749,0,0,0.625,210.68263,205.26082)" />
+    <linearGradient
+       id="linearGradient3368">
+      <stop
+         style="stop-color:#73c171;stop-opacity:1;"
+         offset="0"
+         id="stop3370" />
+      <stop
+         id="stop3372"
+         offset="0.5"
+         style="stop-color:#90e98d;stop-opacity:0.83529413;" />
+      <stop
+         style="stop-color:#c8f3c5;stop-opacity:0.67000002;"
+         offset="1"
+         id="stop3374" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3362">
+      <stop
+         style="stop-color:#ec9c40;stop-opacity:1;"
+         offset="0"
+         id="stop3364" />
+      <stop
+         style="stop-color:#ec9c40;stop-opacity:0.40000001;"
+         offset="1"
+         id="stop3366" />
+    </linearGradient>
+    <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="perspective3360" />
+    <linearGradient
+       id="linearGradient3346">
+      <stop
+         style="stop-color:#40b99d;stop-opacity:1;"
+         offset="0"
+         id="stop3348" />
+      <stop
+         id="stop3350"
+         offset="0.5"
+         style="stop-color:#40ba9e;stop-opacity:1;" />
+      <stop
+         style="stop-color:#059573;stop-opacity:1;"
+         offset="1"
+         id="stop3352" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-403.69894"
+       x2="-294.5455"
+       y1="-403.69894"
+       x1="-355.30511"
+       gradientTransform="scale(1.0904278,0.9170712)"
+       id="linearGradient3340">
+      <stop
+         id="stop3342"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3344"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="translate(429.78551,198.11087)"
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4020"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(429.78551,198.11087)"
+       y2="58.237488"
+       x2="151.46669"
+       y1="97.633438"
+       x1="182.9617"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4026"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(374.7322,59.214895)"
+       y2="53.355003"
+       x2="203.2426"
+       y1="135.17737"
+       x1="320.30368"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4032"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(429.78551,198.11087)"
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4050"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(429.78551,198.11087)"
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4053"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(429.78551,198.11087)"
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4057"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       id="linearGradient4849"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4851"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4853"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4855"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4857"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4863"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4865"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4878"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4880"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4886"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(759.08487,941.24403)"
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4893"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4899"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="306.44574"
+       x2="774.1936"
+       y1="306.44574"
+       x1="605.97815"
+       id="linearGradient4919"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4921"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4923"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4925"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="matrix(0.6360965,0,0,0.6360965,772.82562,510.66755)"
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4929"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="matrix(0.6360965,0,0,0.6360965,772.82562,510.66755)"
+       y2="320.98187"
+       x2="685.62219"
+       y1="275.26761"
+       x1="617.85681"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4933"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="268.00934"
+       x2="651.64117"
+       y1="268.00934"
+       x1="575.71393"
+       id="linearGradient4947"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       id="linearGradient4964"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4968"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4970"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4972"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4978"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4993"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4996"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4999"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="291.69614"
+       x2="774.1936"
+       y1="275.26758"
+       x1="597.14252"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5002"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(253.17388,140.30308)"
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5006"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.338584,-1.0720697,1.2667301,0.2865533,283.30111,1040.8724)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5024"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.2582246,-0.9660849,0.9660849,0.2582246,427.46165,972.43278)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5028"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.2582246,0.9660849,0.9660849,-0.2582246,405.49084,-89.837496)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5032"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(-0.2862569,1.0709612,-1.0709612,-0.2862569,1403.7461,-152.29758)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5036"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="translate(253.17388,140.30308)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5048"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.338584,-1.0720697,1.2667301,0.2865533,283.30111,1040.8724)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5050"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.2582246,-0.9660849,0.9660849,0.2582246,427.46165,972.43278)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5052"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.2582246,0.9660849,0.9660849,-0.2582246,405.49084,-89.837496)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5054"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(-0.2862569,1.0709612,-1.0709612,-0.2862569,1403.7461,-152.29758)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5056"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(-0.2862569,1.0709612,-1.0709612,-0.2862569,1403.7461,-152.29758)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5059"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.2582246,0.9660849,0.9660849,-0.2582246,405.49084,-89.837496)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5062"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.2582246,-0.9660849,0.9660849,0.2582246,427.46165,972.43278)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5065"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.338584,-1.0720697,1.2667301,0.2865533,283.30111,1040.8724)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5068"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="translate(253.17388,140.30308)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5071"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="translate(253.17388,140.30308)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5080"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.338584,-1.0720697,1.2667301,0.2865533,283.30111,1040.8724)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5082"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.2582246,-0.9660849,0.9660849,0.2582246,427.46165,972.43278)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5084"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.2582246,0.9660849,0.9660849,-0.2582246,405.49084,-89.837496)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5086"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(-0.2862569,1.0709612,-1.0709612,-0.2862569,1403.7461,-152.29758)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5088"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(-0.2862569,1.0709612,-1.0709612,-0.2862569,1403.7461,-152.29758)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5091"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.2582246,0.9660849,0.9660849,-0.2582246,405.49084,-89.837496)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5094"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.2582246,-0.9660849,0.9660849,0.2582246,427.46165,972.43278)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5097"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="matrix(0.338584,-1.0720697,1.2667301,0.2865533,283.30111,1040.8724)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5100"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="translate(253.17388,140.30308)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5103"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientTransform="translate(253.17388,140.30308)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5112"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5161"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5163"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5165"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5167"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5173"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="314.55328"
+       x2="768.83649"
+       y1="271.69614"
+       x1="601.42822"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2721"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       id="linearGradient3519"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3525"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3527"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="matrix(3.6613106,0,0,3.6613106,-1547.2313,-298.53276)"
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3531"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="matrix(2.9861678,0,0,2.9861678,-1136.5646,-187.78587)"
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3535"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientTransform="matrix(2.9861678,0,0,2.9861678,-1136.5646,-187.78587)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3543"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientTransform="matrix(3.6613106,0,0,3.6613106,-1547.2313,-298.53276)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3545"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientTransform="matrix(3.6613106,0,0,3.6613106,-1547.2313,-292.53276)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3549"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientTransform="matrix(2.9861678,0,0,2.9861678,-1136.5646,-181.78587)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3553"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientTransform="matrix(3.6613106,0,0,3.6613106,-1547.2313,-292.53276)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3687"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientTransform="matrix(2.9861678,0,0,2.9861678,-1136.5646,-181.78587)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3691"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientTransform="matrix(2.9861678,0,0,2.9861678,-1136.5646,-181.78587)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3695"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="165.90195"
+       x2="608.56744"
+       y1="149.05327"
+       x1="579.06372"
+       gradientTransform="matrix(3.6613106,0,0,3.6613106,-1546.1599,-292.53276)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3723"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       id="linearGradient3757"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3830"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3832"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3834"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.09596494,-5.2291693,0,2289.2197,245.67628)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3845"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.7965504,0,0,0.8307759,210.62397,63.135424)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3848"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.2743024,-2.2196828,0,1254.6793,130.43424)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3851"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.6551929,0,0,1,194.08784,-2.1428571)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3854"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3873"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3887"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3890"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3899"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3901"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3903"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3905"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3909"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3913"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4034"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4036"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4038"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4040"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4042"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4044"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.6551929,0,0,1,194.08784,-2.1428571)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4046"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.2743024,-2.2196828,0,1254.6793,130.43424)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4048"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.7965504,0,0,0.8307759,210.62397,63.135424)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4051"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.09596494,-5.2291693,0,2289.2197,245.67628)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4054"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2841"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2843"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2896"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2898"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.1251041,-6.8169736,0,3160.5187,58.525615)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2901"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,450.7705,-179.44262)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2904"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1811.8467,-91.708945)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2907"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,176.19189,-261.74872)"
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2914"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,176.19189,-261.74872)"
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2918"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="matrix(0.6639486,0,0,1.3036437,960.37231,-3.4827324)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2958"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,176.19189,-261.74872)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2967"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,429.21328,-264.54224)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2969"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,736.47906,-3.4827324)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2982"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3060"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3062"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3064"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       gradientTransform="translate(429.78551,198.11087)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3066"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3068"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3070"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.6551929,0,0,1,194.08784,-2.1428571)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3072"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.2743024,-2.2196828,0,1254.6793,130.43424)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3074"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.7965504,0,0,0.8307759,210.62397,63.135424)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3076"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.09596494,-5.2291693,0,2289.2197,245.67628)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3078"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3094"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3098"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,176.19189,-261.74872)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3954"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,176.19189,-261.74872)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3956"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.1251041,-6.8169736,0,3160.5187,58.525615)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3959"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,450.7705,-179.44262)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3962"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1811.8467,-91.708945)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3965"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,176.19189,-261.74872)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3975"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="121.30212"
+       x2="210.48799"
+       y1="223.01463"
+       x1="-32.310871"
+       gradientTransform="matrix(0.6639486,0,0,1.3036437,960.37231,-3.4827324)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3997"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2905"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2908"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2910"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2912"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2915"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2917"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-285.84858,-259.7115)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2919"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1096.7848,-86.878205)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2921"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,-264.29136,-174.61188)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2923"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.1251041,-6.8169736,0,2445.4569,63.356355)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2925"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2970"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2972"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <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="perspective3046" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3099"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3101"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3155"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3157"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,54.973583,531.53615)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3185"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,54.973583,531.53615)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3189"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,74.829148,1250.4317)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3217"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,64.727623,953.44684)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3220"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,54.973583,531.53615)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4030"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,54.973583,531.53615)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4033"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,54.973583,531.53615)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4079"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,54.973583,531.53615)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4081"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,54.973583,531.53615)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4123"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,54.973583,531.53615)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4125"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,176.19189,-261.74872)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4237"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,176.19189,-261.74872)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4239"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,27.66,767.40818)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4266"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="-42.297554"
+       x2="192.86104"
+       y1="346.99359"
+       x1="192.86104"
+       gradientTransform="matrix(0.03859636,0,0,5.7922347,741.81012,1493.946)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4288"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,27.66,767.40818)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4317"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,176.19189,-261.74872)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4319"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.1251041,-6.8169736,0,3011.9868,1087.6825)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4330"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,302.23861,849.71428)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4333"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1663.3148,937.44795)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4336"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,27.66,767.40818)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4346"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,176.19189,-261.74872)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4360"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,434.72965,762.59436)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4365"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,181.70826,765.38788)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4369"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,804.11981,994.86452)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4383"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3404"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3406"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3408"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3411"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3413"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3415"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-285.84858,-259.7115)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3417"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1096.7848,-86.878205)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3419"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,-264.29136,-174.61188)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3421"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.1251041,-6.8169736,0,2445.4569,63.356355)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3423"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4129" />
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.23637706,0,0,0.19692223,30.685712,10.284427)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient6101"
+       xlink:href="#linearGradient3165-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3165-1"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-7"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-4"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3502"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3504"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3506"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,21.417202,1.3480076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3508"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3510"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-538.86997,-256.91798)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3512"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-285.84858,-259.7115)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3514"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1096.7848,-86.878205)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3516"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,-264.29136,-174.61188)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3518"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.1251041,-6.8169736,0,2445.4569,63.356355)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3520"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-540.35077,117.7521)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3540"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-540.35077,117.7521)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3544"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4366" />
+    <linearGradient
+       id="linearGradient3597-9">
+      <stop
+         id="stop3599-4"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-8"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4375">
+      <stop
+         id="stop4377"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4379"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4382">
+      <stop
+         id="stop4384"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4386"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4389">
+      <stop
+         id="stop4391"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4393"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,222.24853,-235.10504)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3540-5"
+       xlink:href="#linearGradient3227-5"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3227-5">
+      <stop
+         id="stop3229-1"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3231-7"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-540.35077,117.7521)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4399"
+       xlink:href="#linearGradient3227-5"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient4401">
+      <stop
+         id="stop4403"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4405"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,222.24853,-235.10504)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3544-1"
+       xlink:href="#linearGradient3227-5"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient4408">
+      <stop
+         id="stop4410"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4412"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-540.35077,117.7521)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4414"
+       xlink:href="#linearGradient3227-5"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient4416">
+      <stop
+         id="stop4418"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4420"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4310-5">
+      <stop
+         id="stop4312-2"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4314-7"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4427">
+      <stop
+         id="stop4429"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4431"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4434">
+      <stop
+         id="stop4436"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4438"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,19.936401,376.01809)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3584-4"
+       xlink:href="#linearGradient3615-2"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3615-2">
+      <stop
+         id="stop3617-3"
+         offset="0"
+         style="stop-color:#b3b3b3;stop-opacity:1;" />
+      <stop
+         id="stop3619-2"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4366-8" />
+    <linearGradient
+       id="linearGradient3597-5">
+      <stop
+         id="stop3599-0"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4375-0">
+      <stop
+         id="stop4377-6"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4379-1"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4382-8">
+      <stop
+         id="stop4384-9"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4386-3"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4389-6">
+      <stop
+         id="stop4391-0"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4393-6"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-514.89432,-259.39076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3540-6"
+       xlink:href="#linearGradient3227-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3227-1">
+      <stop
+         id="stop3229-8"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3231-4"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-540.35077,117.7521)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4399-9"
+       xlink:href="#linearGradient3227-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient4401-6">
+      <stop
+         id="stop4403-3"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4405-7"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-514.89432,-259.39076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3544-8"
+       xlink:href="#linearGradient3227-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient4408-8">
+      <stop
+         id="stop4410-2"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4412-9"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-540.35077,117.7521)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4414-1"
+       xlink:href="#linearGradient3227-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient4416-3">
+      <stop
+         id="stop4418-5"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4420-9"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4310-4">
+      <stop
+         id="stop4312-0"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4314-76"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4427-6">
+      <stop
+         id="stop4429-1"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4431-5"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4434-2">
+      <stop
+         id="stop4436-0"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop4438-9"
+         offset="1"
+         style="stop-color:#345363;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,19.936401,376.01809)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3584-7"
+       xlink:href="#linearGradient3615-3"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3615-3">
+      <stop
+         id="stop3617-7"
+         offset="0"
+         style="stop-color:#b3b3b3;stop-opacity:1;" />
+      <stop
+         id="stop3619-26"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4884" />
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.23637706,0,0,0.19692223,30.685712,10.284427)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient6101-2"
+       xlink:href="#linearGradient3165-1-0"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3165-1-0"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-7-1"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-4-6"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4980" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4980-4" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective5016" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective5069" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective5103" />
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.23637706,0,0,0.19692223,30.685712,10.284427)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient6101-1"
+       xlink:href="#linearGradient3165-1-07"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3165-1-07"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-7-3"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-4-4"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4156" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4181" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-514.89432,-259.39076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5269"
+       xlink:href="#linearGradient3227-1"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-514.89432,-259.39076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5273"
+       xlink:href="#linearGradient3227-1"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective5285" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective5317" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective5339" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1120.7604,-89.350984)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3532-3-4"
+       xlink:href="#linearGradient3597-5-8"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-8">
+      <stop
+         id="stop3599-0-4"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-9"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-549.18003,-445.81933)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5374"
+       xlink:href="#linearGradient3227-1"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective5384" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-296.15864,-448.61285)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5370-2"
+       xlink:href="#linearGradient3597-5-5"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-5">
+      <stop
+         id="stop3599-0-5"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-3"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4194" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-549.18003,-445.81933)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5550"
+       xlink:href="#linearGradient3227-1"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-296.15864,-448.61285)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5552"
+       xlink:href="#linearGradient3597-5"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-514.89432,-259.39076)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5554"
+       xlink:href="#linearGradient3227-1"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,-240.31571,-177.08466)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5556"
+       xlink:href="#linearGradient3597-5"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective7036" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1012.4504,-100.9823)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5426-4"
+       xlink:href="#linearGradient3597-5-8-3"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-8-3">
+      <stop
+         id="stop3599-0-4-8"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-9-0"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-329.44968,-268.52225)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5430-8"
+       xlink:href="#linearGradient3597-5-5-8"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-5-8">
+      <stop
+         id="stop3599-0-5-0"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-3-6"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,687.63056,45.99909)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5486-8"
+       xlink:href="#linearGradient3165-9-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3165-9-1"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-9-9"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-6-8"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3597-5-7">
+      <stop
+         id="stop3599-0-2"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-2"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient5231-7">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop5233-8" />
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="1"
+         id="stop5235-1" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient5225-8">
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="0"
+         id="stop5227-6" />
+      <stop
+         style="stop-color:#fdfcfc;stop-opacity:1"
+         offset="1"
+         id="stop5229-1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5237-4"
+       id="linearGradient4488-0-2"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,45.392849,-1.1247638)"
+       x1="350.2897"
+       y1="235.61668"
+       x2="304.259"
+       y2="111.43966" />
+    <linearGradient
+       id="linearGradient5237-4">
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="0"
+         id="stop5239-2" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop5241-5" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5237-4"
+       id="linearGradient7119"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.2772919,684.22211,27.780751)"
+       x1="331.69287"
+       y1="220.59044"
+       x2="250.0182"
+       y2="76.642044" />
+    <linearGradient
+       gradientTransform="matrix(1.0171337,0,0,1.049353,-11.681568,-0.582881)"
+       gradientUnits="userSpaceOnUse"
+       y2="158.84985"
+       x2="747.66296"
+       y1="-4.8764167"
+       x1="682.24261"
+       id="linearGradient7294"
+       xlink:href="#linearGradient7288"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective7304" />
+    <linearGradient
+       id="linearGradient3597-5-8-3-8">
+      <stop
+         id="stop3599-0-4-8-2"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-9-0-5"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3597-5-5-8-4">
+      <stop
+         id="stop3599-0-5-0-9"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-3-6-1"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3597-5-7-7">
+      <stop
+         id="stop3599-0-2-9"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-2-9"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient5231-7-7">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop5233-8-6" />
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="1"
+         id="stop5235-1-6" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient5225-8-8">
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="0"
+         id="stop5227-6-2" />
+      <stop
+         style="stop-color:#fdfcfc;stop-opacity:1"
+         offset="1"
+         id="stop5229-1-5" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5237-4-4"
+       id="linearGradient7119-4"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,684.22211,-3.69597)"
+       x1="350.2897"
+       y1="235.61668"
+       x2="304.259"
+       y2="111.43966" />
+    <linearGradient
+       id="linearGradient5237-4-4">
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="0"
+         id="stop5239-2-1" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop5241-5-6" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective7598" />
+    <linearGradient
+       id="linearGradient3597-5-8-3-5">
+      <stop
+         id="stop3599-0-4-8-7"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-9-0-4"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3597-5-5-8-44">
+      <stop
+         id="stop3599-0-5-0-4"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-3-6-2"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient7288-7">
+      <stop
+         id="stop7290-30"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1" />
+      <stop
+         id="stop7292-3"
+         offset="1"
+         style="stop-color:#4d7a91;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5237-4-3"
+       id="linearGradient7119-0"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.2772919,684.22211,17.780751)"
+       x1="331.69287"
+       y1="220.59044"
+       x2="250.0182"
+       y2="76.642044" />
+    <linearGradient
+       id="linearGradient5237-4-3">
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="0"
+         id="stop5239-2-7" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop5241-5-2" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="translate(98.994974,582.85802)"
+       y2="7.0108438"
+       x2="13.77432"
+       y1="76.805267"
+       x1="37.83017"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient7825"
+       xlink:href="#linearGradient4310"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(98.994974,582.85802)"
+       y2="58.237488"
+       x2="151.46669"
+       y1="97.633438"
+       x1="182.9617"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient7831"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(98.994974,582.85802)"
+       y2="53.355003"
+       x2="203.2426"
+       y1="135.17737"
+       x1="320.30368"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient7837"
+       xlink:href="#linearGradient3597"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(98.994974,582.85802)"
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient7855"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(98.994974,582.85802)"
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient7858"
+       xlink:href="#linearGradient3227"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(98.994974,582.85802)"
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient7862"
+       xlink:href="#linearGradient3615"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective3566" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4341" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1012.4504,-100.9823)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5426-4-4"
+       xlink:href="#linearGradient3597-5-8-3-0"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-8-3-0">
+      <stop
+         id="stop3599-0-4-8-9"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-9-0-48"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-329.44968,-268.52225)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5430-8-8"
+       xlink:href="#linearGradient3597-5-5-8-2"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-5-8-2">
+      <stop
+         id="stop3599-0-5-0-45"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-3-6-5"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,39.825664,573.66669)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5486-8-1"
+       xlink:href="#linearGradient3165-9-1-7"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3165-9-1-7"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-9-9-1"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-6-8-1"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="matrix(1.0171337,0,0,1.049353,-659.48647,527.08472)"
+       gradientUnits="userSpaceOnUse"
+       y2="158.84985"
+       x2="747.66296"
+       y1="-4.8764167"
+       x1="682.24261"
+       id="linearGradient7294-5"
+       xlink:href="#linearGradient7288-2"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient7288-2"
+       inkscape:collect="always">
+      <stop
+         id="stop7290-7"
+         offset="0"
+         style="stop-color:#7a5c5c;stop-opacity:1;" />
+      <stop
+         id="stop7292-6"
+         offset="1"
+         style="stop-color:#7a5c5c;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5237-4-2"
+       id="linearGradient7119-2"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.2772919,684.22211,17.780751)"
+       x1="331.69287"
+       y1="220.59044"
+       x2="250.0182"
+       y2="76.642044" />
+    <linearGradient
+       id="linearGradient5237-4-2">
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="0"
+         id="stop5239-2-16" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop5241-5-8" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5237-4-2"
+       id="linearGradient4414-5"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.2772919,36.417214,555.44835)"
+       x1="331.69287"
+       y1="220.59044"
+       x2="250.0182"
+       y2="76.642044" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="577.4472"
+       x2="84.018433"
+       y1="632.9472"
+       x1="106.6613"
+       id="linearGradient4569"
+       xlink:href="#linearGradient4563"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective3584" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1012.4504,-100.9823)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5426-4-0"
+       xlink:href="#linearGradient3597-5-8-3-9"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-8-3-9">
+      <stop
+         id="stop3599-0-4-8-4"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-9-0-8"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-329.44968,-268.52225)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5430-8-82"
+       xlink:href="#linearGradient3597-5-5-8-45"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-5-8-45">
+      <stop
+         id="stop3599-0-5-0-5"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-3-6-17"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,529.11138,567.95241)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5486-8-11"
+       xlink:href="#linearGradient3165-9-1-5"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3165-9-1-5"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-9-9-2"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-6-8-76"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="matrix(1.0171337,0,0,1.049353,-170.20075,521.37044)"
+       gradientUnits="userSpaceOnUse"
+       y2="158.84985"
+       x2="747.66296"
+       y1="-4.8764167"
+       x1="682.24261"
+       id="linearGradient7294-1"
+       xlink:href="#linearGradient7288-4"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient7288-4"
+       inkscape:collect="always">
+      <stop
+         id="stop7290-2"
+         offset="0"
+         style="stop-color:#7a5c5c;stop-opacity:1;" />
+      <stop
+         id="stop7292-32"
+         offset="1"
+         style="stop-color:#7a5c5c;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5237-4-7"
+       id="linearGradient7119-5"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.2772919,684.22211,17.780751)"
+       x1="331.69287"
+       y1="220.59044"
+       x2="250.0182"
+       y2="76.642044" />
+    <linearGradient
+       id="linearGradient5237-4-7">
+      <stop
+         style="stop-color:#916f6f;stop-opacity:1"
+         offset="0"
+         id="stop5239-2-6" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop5241-5-1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5237-4-7"
+       id="linearGradient3657"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.2772919,525.70293,549.73407)"
+       x1="331.69287"
+       y1="220.59044"
+       x2="250.0182"
+       y2="76.642044" />
+    <inkscape:perspective
+       id="perspective3726"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective3617"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       y2="76.642044"
+       x2="250.0182"
+       y1="240.00003"
+       x1="349.99994"
+       gradientTransform="matrix(1.2852939,0,0,1.2115348,0.388993,23.378409)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5267"
+       xlink:href="#linearGradient7865"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="158.84985"
+       x2="747.66296"
+       y1="-4.8764167"
+       x1="682.24261"
+       gradientTransform="matrix(0.99527902,0,0,0.98941788,-678.16828,-5.452697)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5270"
+       xlink:href="#linearGradient7288-7"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1012.4504,-100.9823)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5274"
+       xlink:href="#linearGradient3597-5-8-3-5"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-329.44968,-268.52225)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5276"
+       xlink:href="#linearGradient3597-5-5-8-44"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective3638" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-329.44968,-268.52225)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5276-1"
+       xlink:href="#linearGradient3597-5-5-8-44-7"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-5-8-44-7">
+      <stop
+         id="stop3599-0-5-0-4-4"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-3-6-2-0"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1012.4504,-100.9823)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5274-8"
+       xlink:href="#linearGradient3597-5-8-3-5-8"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-8-3-5-8">
+      <stop
+         id="stop3599-0-4-8-7-2"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-9-0-4-4"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="158.84985"
+       x2="747.66296"
+       y1="-4.8764167"
+       x1="682.24261"
+       gradientTransform="matrix(0.99527901,0,0,0.98941785,-696.09078,487.29944)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5270-1"
+       xlink:href="#linearGradient7288-7-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient7288-7-1"
+       inkscape:collect="always">
+      <stop
+         id="stop7290-30-5"
+         offset="0"
+         style="stop-color:#916f6f;stop-opacity:1" />
+      <stop
+         id="stop7292-3-2"
+         offset="1"
+         style="stop-color:#7a5c5c;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       y2="56.631344"
+       x2="232.72772"
+       y1="240.00003"
+       x1="349.99994"
+       gradientTransform="matrix(1.2852939,0,0,1.2115348,-17.533509,516.13056)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5267-2"
+       xlink:href="#linearGradient7865-3"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient7865-3">
+      <stop
+         id="stop7867-2"
+         offset="0"
+         style="stop-color:#916f6f;stop-opacity:1" />
+      <stop
+         id="stop7869-2"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <inkscape:perspective
+       id="perspective6484"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-329.44968,-268.52225)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5276-2"
+       xlink:href="#linearGradient3597-5-5-8-44-6"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-5-8-44-6">
+      <stop
+         id="stop3599-0-5-0-4-0"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-3-6-2-1"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1012.4504,-100.9823)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5274-7"
+       xlink:href="#linearGradient3597-5-8-3-5-5"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-5-8-3-5-5">
+      <stop
+         id="stop3599-0-4-8-7-4"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1;" />
+      <stop
+         id="stop3601-9-9-0-4-1"
+         offset="1"
+         style="stop-color:#88adc0;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="158.84985"
+       x2="747.66296"
+       y1="-4.8764167"
+       x1="682.24261"
+       gradientTransform="matrix(0.99527902,0,0,0.98941788,-699.77988,882.27421)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5270-4"
+       xlink:href="#linearGradient7288-7-6"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient7288-7-6">
+      <stop
+         id="stop7290-30-0"
+         offset="0"
+         style="stop-color:#5097b7;stop-opacity:1" />
+      <stop
+         id="stop7292-3-7"
+         offset="1"
+         style="stop-color:#7a5c5c;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       y2="76.642044"
+       x2="250.0182"
+       y1="240.00003"
+       x1="349.99994"
+       gradientTransform="matrix(1.2852939,0,0,1.2115348,0.388993,23.378409)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5267-7"
+       xlink:href="#linearGradient7865-33"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient7865-33">
+      <stop
+         id="stop7867-5"
+         offset="0"
+         style="stop-color:#4d7a91;stop-opacity:1" />
+      <stop
+         id="stop7869-9"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       y2="76.642044"
+       x2="250.0182"
+       y1="240.00003"
+       x1="349.99994"
+       gradientTransform="matrix(1.2852939,0,0,1.2115348,-21.222608,911.10531)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient6599"
+       xlink:href="#linearGradient6832"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2935" />
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-1041.7437,-1127.2847)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4946"
+       xlink:href="#linearGradient3165-1-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3165-1-1"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-7-7"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-4-40"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4329"
+       xlink:href="#linearGradient3227-5-9"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3227-5-9">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3229-1-4" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3231-7-8" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2947"
+       xlink:href="#linearGradient3227-5-9"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2949">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2951" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop2953" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1333.8754,557.29692)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4331"
+       xlink:href="#linearGradient3597-9-8"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-9-8">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3599-4-2" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop3601-8-4" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,-27.200724,469.56325)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4333-5"
+       xlink:href="#linearGradient3597-9-8"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2960">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2962" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop2964" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.1251041,-6.8169736,0,2682.5475,707.53148)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4335"
+       xlink:href="#linearGradient3597-9-8"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2967-5">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2969" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop2971" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4287"
+       xlink:href="#linearGradient3227-5-9"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2974">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2976" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop2978" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2980"
+       xlink:href="#linearGradient3227-5-9"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2982-1">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2984" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop2986" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-48.757944,384.46363)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4289"
+       xlink:href="#linearGradient3597-9-8"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2989">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2991" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop2993" />
+    </linearGradient>
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientTransform="matrix(1.3045159,0,0,1.3036437,-878.36468,-27.413687)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3774"
+       xlink:href="#linearGradient3227-5-9"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2996">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2998" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3000" />
+    </linearGradient>
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientTransform="matrix(1.3045159,0,0,1.3036437,-878.44951,-27.413687)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3772"
+       xlink:href="#linearGradient3227-5-9"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3003">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3005" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3007" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2-7"
+       id="linearGradient3968"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.300058,0,0,1.3036437,259.76284,645.52314)"
+       x1="359.28571"
+       y1="240"
+       x2="353.57135"
+       y2="135" />
+    <linearGradient
+       id="linearGradient3615-2-7">
+      <stop
+         style="stop-color:#b3b3b3;stop-opacity:1;"
+         offset="0"
+         id="stop3617-3-1" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop3619-2-1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2-7"
+       id="linearGradient3067"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3031931,0,0,1.3036437,-876.95046,-27.413687)"
+       x1="359.28571"
+       y1="240"
+       x2="353.57135"
+       y2="135" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4757" />
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-1041.7437,-1127.2847)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4946-5"
+       xlink:href="#linearGradient3165-1-1-2"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3165-1-1-2"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-7-7-7"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-4-40-6"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4757-7" />
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-1041.7437,-1127.2847)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4946-6"
+       xlink:href="#linearGradient3165-1-1-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3165-1-1-1"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-7-7-8"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-4-40-9"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-1041.7437,-1127.2847)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4869"
+       xlink:href="#linearGradient3165-1-1-1"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4757-1" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4925" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4952" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective5022" />
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-1041.7437,-1127.2847)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4946-50"
+       xlink:href="#linearGradient3165-1-1-9"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3165-1-1-9"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-7-7-0"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-4-40-0"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4329-6"
+       xlink:href="#linearGradient3227-5-9-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3227-5-9-1">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3229-1-4-3" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3231-7-8-8" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5034"
+       xlink:href="#linearGradient3227-5-9-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient5036-9">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop5038" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop5040" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1333.8754,557.29692)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4331-3"
+       xlink:href="#linearGradient3597-9-8-4"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3597-9-8-4">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3599-4-2-4" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop3601-8-4-6" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,-27.200724,469.56325)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4333-5-0"
+       xlink:href="#linearGradient3597-9-8-4"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient5047">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop5049" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop5051" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.1251041,-6.8169736,0,2682.5475,707.53148)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4335-6"
+       xlink:href="#linearGradient3597-9-8-4"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient5054-6">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop5056" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop5058" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4287-1"
+       xlink:href="#linearGradient3227-5-9-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient5061">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop5063" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop5065" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5067"
+       xlink:href="#linearGradient3227-5-9-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient5069">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop5071" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop5073" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-48.757944,384.46363)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4289-8"
+       xlink:href="#linearGradient3597-9-8-4"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient5076">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop5078" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop5080" />
+    </linearGradient>
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientTransform="matrix(1.3045159,0,0,1.3036437,-878.5184,382.45572)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3774-4"
+       xlink:href="#linearGradient3227-5-9-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient5083">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop5085" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop5087" />
+    </linearGradient>
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientTransform="matrix(1.3045159,0,0,1.3036437,-878.60323,382.45572)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3772-9"
+       xlink:href="#linearGradient3227-5-9-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient5090">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop5092" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop5094" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2-7-3"
+       id="linearGradient3067-6"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3031931,0,0,1.3036437,-876.95046,-27.413687)"
+       x1="359.28571"
+       y1="240"
+       x2="353.57135"
+       y2="135" />
+    <linearGradient
+       id="linearGradient3615-2-7-3">
+      <stop
+         style="stop-color:#b3b3b3;stop-opacity:1;"
+         offset="0"
+         id="stop3617-3-1-7" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop3619-2-1-8" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2-7-3"
+       id="linearGradient5153"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3031931,0,0,1.3036437,-877.10418,382.45572)"
+       x1="359.28571"
+       y1="240"
+       x2="353.57135"
+       y2="135" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective5380" />
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="matrix(1.3031931,0,0,1.3036437,-876.95046,-407.41369)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5661"
+       xlink:href="#linearGradient3615-2-7"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="7.3214297"
+       x2="350.71429"
+       y1="7.3214297"
+       x1="-1.0714296"
+       gradientTransform="matrix(1.3045159,0,0,1.3036437,-878.44951,-407.41369)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5663"
+       xlink:href="#linearGradient3227-5-9"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="243.9391"
+       x2="350.64923"
+       y1="243.9391"
+       x1="-1.1364633"
+       gradientTransform="matrix(1.3045159,0,0,1.3036437,-878.36468,-407.41369)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5665"
+       xlink:href="#linearGradient3227-5-9"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5667"
+       xlink:href="#linearGradient3227-5-9"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-48.757944,384.46363)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5669"
+       xlink:href="#linearGradient3597-9-8"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5671"
+       xlink:href="#linearGradient3227-5-9"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1333.8754,557.29692)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5673"
+       xlink:href="#linearGradient3597-9-8"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,-27.200724,469.56325)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5675"
+       xlink:href="#linearGradient3597-9-8"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.1251041,-6.8169736,0,2682.5475,707.53148)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5677"
+       xlink:href="#linearGradient3597-9-8"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="566.41748"
+       x2="348.89258"
+       y1="220.17154"
+       x1="348.89258"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-1041.7437,-1127.2847)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient5679"
+       xlink:href="#linearGradient3165-1-1"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective5750" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective2935-6" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2-0"
+       id="linearGradient3968-6"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.300058,0,0,1.3036437,259.76284,645.52314)"
+       x1="359.28571"
+       y1="240"
+       x2="353.57135"
+       y2="135" />
+    <linearGradient
+       id="linearGradient3615-2-0">
+      <stop
+         style="stop-color:#e3e3e3;stop-opacity:1;"
+         offset="0"
+         id="stop3617-3-3" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop3619-2-8" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3227-5-1">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3229-1-2" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3231-7-5" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2948">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2950" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop2952" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4287-9"
+       xlink:href="#linearGradient3227-5-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2955">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2957" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop2959" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2961"
+       xlink:href="#linearGradient3227-5-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2963">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2965" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop2967" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3597-9-7">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3599-4-8" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop3601-8-3" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4329-5"
+       xlink:href="#linearGradient3227-5-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2974-1">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2976-2" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop2978-0" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2980-1"
+       xlink:href="#linearGradient3227-5-1"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2982-6">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2984-4" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop2986-0" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2989-1">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2991-8" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop2993-9" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2996-4">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop2998-1" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop3000-4" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3003-9">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3005-8" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop3007-8" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective5991" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective6059" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective3854" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective4642" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4707"
+       xlink:href="#linearGradient3227-5-1"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4727"
+       xlink:href="#linearGradient3227-5-1"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="933.6109"
+       x2="9.7360582"
+       y1="951.37439"
+       x1="-127.16138"
+       id="linearGradient4759"
+       xlink:href="#linearGradient3615-2-0"
+       inkscape:collect="always" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5-94"
+       id="linearGradient3242"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       id="linearGradient3227-5-94">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3229-1-8" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3231-7-82" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5-94"
+       id="linearGradient4456"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       id="linearGradient4458">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop4460" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop4462" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3597-9-4">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3599-4-5" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop3601-8-5" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4469">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop4471" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop4473" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4476">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop4478" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop4480" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5-94"
+       id="linearGradient3250"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       id="linearGradient4483">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop4485" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop4487" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5-94"
+       id="linearGradient4489"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       id="linearGradient4491">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop4493" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop4495" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4498">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop4500" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop4502" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3471"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3473"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3475"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3477"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3479">
+        <feMergeNode
+           id="feMergeNode3481"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3483"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3485"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3487"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3489"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3491"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3493">
+        <feMergeNode
+           id="feMergeNode3495"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3497"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4402"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4404"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4406"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4408"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4410">
+        <feMergeNode
+           id="feMergeNode4412"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4414"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3513"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3515"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3517"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3519"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3521">
+        <feMergeNode
+           id="feMergeNode3523"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3525"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3345"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3347"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3349"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3351"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3353">
+        <feMergeNode
+           id="feMergeNode3355"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3357"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3359"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3361"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3363"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3365"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3367">
+        <feMergeNode
+           id="feMergeNode3369"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3371"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3527"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3529"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3531"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3533"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3535">
+        <feMergeNode
+           id="feMergeNode3537"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3539"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3373"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3375"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3377"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3379"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3381">
+        <feMergeNode
+           id="feMergeNode3383"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3385"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3387"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3389"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3391"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3393"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3395">
+        <feMergeNode
+           id="feMergeNode3397"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3399"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3401"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3403"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3405"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3407"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3409">
+        <feMergeNode
+           id="feMergeNode3411"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3413"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3415"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3417"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3419"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3421"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3423">
+        <feMergeNode
+           id="feMergeNode3425"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3427"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3429"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3431"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3433"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3435"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3437">
+        <feMergeNode
+           id="feMergeNode3439"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3441"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3443"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3445"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3447"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3449"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3451">
+        <feMergeNode
+           id="feMergeNode3453"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3455"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       id="linearGradient4596">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop4598" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop4600" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4603">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop4605" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop4607" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3457"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3459"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3461"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3463"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3465">
+        <feMergeNode
+           id="feMergeNode3467"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3469"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2-1"
+       id="linearGradient3258"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.300058,0,0,1.3036437,259.76284,645.52314)"
+       x1="359.28571"
+       y1="240"
+       x2="353.57135"
+       y2="135" />
+    <linearGradient
+       id="linearGradient3615-2-1">
+      <stop
+         style="stop-color:#b3b3b3;stop-opacity:1;"
+         offset="0"
+         id="stop3617-3-7" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop3619-2-11" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2-0"
+       id="linearGradient4442"
+       gradientUnits="userSpaceOnUse"
+       x1="-228.3548"
+       y1="1061.6899"
+       x2="4.9147081"
+       y2="928.71198"
+       gradientTransform="translate(-200,0)" />
+    <filter
+       id="filter5212"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur5214"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5216"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5218"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5220">
+        <feMergeNode
+           id="feMergeNode5222"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5224"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter5226"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur5228"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5230"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5232"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5234">
+        <feMergeNode
+           id="feMergeNode5236"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5238"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter5240"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur5242"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5244"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5246"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5248">
+        <feMergeNode
+           id="feMergeNode5250"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5252"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter5254"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur5256"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5258"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5260"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5262">
+        <feMergeNode
+           id="feMergeNode5264"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5266"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter5268"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur5270"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5272"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5274"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5276">
+        <feMergeNode
+           id="feMergeNode5278"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5280"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter5282"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur5284"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5286"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5288"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5290">
+        <feMergeNode
+           id="feMergeNode5292"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5294"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter5296"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur5298"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5300"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5302"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5304">
+        <feMergeNode
+           id="feMergeNode5306"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5308"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter5310"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur5312"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5314"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5316"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5318">
+        <feMergeNode
+           id="feMergeNode5320"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5322"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9077"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9079"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9081"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9083"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9085">
+        <feMergeNode
+           id="feMergeNode9087"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9089"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3165-1-17">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3167-7-40" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3169-4-9" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9237"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9239"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9241"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9243"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9245">
+        <feMergeNode
+           id="feMergeNode9247"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9249"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter6461"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur6463"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix6465"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset6467"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge6469">
+        <feMergeNode
+           id="feMergeNode6471"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode6473"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9223"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9225"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9227"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9229"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9231">
+        <feMergeNode
+           id="feMergeNode9233"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9235"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9293"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9295"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9297"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9299"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9301">
+        <feMergeNode
+           id="feMergeNode9303"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9305"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9293-7"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9295-2"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9297-2"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9299-5"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9301-9">
+        <feMergeNode
+           id="feMergeNode9303-1"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9305-0"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9223-9"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9225-1"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9227-5"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9229-7"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9231-3">
+        <feMergeNode
+           id="feMergeNode9233-3"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9235-4"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter6461-2"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur6463-2"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix6465-0"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset6467-1"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge6469-2">
+        <feMergeNode
+           id="feMergeNode6471-7"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode6473-7"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9237-0"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9239-2"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9241-4"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9243-1"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9245-0">
+        <feMergeNode
+           id="feMergeNode9247-3"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9249-7"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3165-1-9">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3167-7-5" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3169-4-97" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9077-2"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9079-0"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9081-2"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9083-8"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9085-6">
+        <feMergeNode
+           id="feMergeNode9087-7"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9089-0"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9293-8"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9295-1"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9297-8"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9299-3"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9301-0">
+        <feMergeNode
+           id="feMergeNode9303-3"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9305-6"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-1-9"
+       id="linearGradient6777"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-289.49112,592.39531)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-1-17"
+       id="linearGradient6983"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-2506.6273,-1560.4453)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4332"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4334"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4336"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.4 0 " />
+      <feOffset
+         id="feOffset4338"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4340">
+        <feMergeNode
+           id="feMergeNode4342"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4344"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3530"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3532"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3534"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3536"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3538">
+        <feMergeNode
+           id="feMergeNode3540"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3542"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3544"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3546"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3548"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3550"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3552">
+        <feMergeNode
+           id="feMergeNode3554"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3556"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3558"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3560"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3562"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3564"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3566">
+        <feMergeNode
+           id="feMergeNode3568"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3570"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter3614"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3616"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3618"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3620"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3622">
+        <feMergeNode
+           id="feMergeNode3624"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3626"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter7070"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur7072"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix7074"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset7076"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge7078">
+        <feMergeNode
+           id="feMergeNode7080"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode7082"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter7084"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur7086"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix7088"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset7090"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge7092">
+        <feMergeNode
+           id="feMergeNode7094"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode7096"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter5341"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur5343"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5345"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5347"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5349">
+        <feMergeNode
+           id="feMergeNode5351"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5353"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-1-1-17"
+       id="linearGradient5282"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-2461.1274,-1278.5966)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3165-1-1-17">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3167-7-7-4" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3169-4-4-0" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter5327"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur5329"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5331"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5333"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5335">
+        <feMergeNode
+           id="feMergeNode5337"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5339"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter5313"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur5315"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5317"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5319"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5321">
+        <feMergeNode
+           id="feMergeNode5323"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5325"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter5299"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur5301"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5303"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5305"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5307">
+        <feMergeNode
+           id="feMergeNode5309"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5311"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4362-7"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4364-4"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4366-0"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4368-9"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4370-4">
+        <feMergeNode
+           id="feMergeNode4372-8"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4374-8"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-2"
+       id="linearGradient8080"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,549.9115,550.21259)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       id="linearGradient3165-8-2"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-8-4"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-2-5"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4348-5"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4350-1"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4352-7"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4354-1"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4356-1">
+        <feMergeNode
+           id="feMergeNode4358-5"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4360-2"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4334-7"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4336-6"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4338-1"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4340-4"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4342-2">
+        <feMergeNode
+           id="feMergeNode4344-3"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4346-2"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter7774"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur7776"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix7778"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset7780"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge7782">
+        <feMergeNode
+           id="feMergeNode7784"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode7786"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4362-1"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4364-3"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4366-8"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4368-4"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4370-9">
+        <feMergeNode
+           id="feMergeNode4372-4"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4374-9"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-6"
+       id="linearGradient7469"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,607.37313,337.14688)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       id="linearGradient3165-8-6"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-8-3"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-2-4"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4348-1"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4350-5"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4352-2"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4354-5"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4356-1-1">
+        <feMergeNode
+           id="feMergeNode4358-3"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4360-9"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4334-2"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4336-0"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4338-6"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4340-8"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4342-2-7">
+        <feMergeNode
+           id="feMergeNode4344-9"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4346-0"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter5034"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur5036"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5038"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5040"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5042">
+        <feMergeNode
+           id="feMergeNode5044"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5046"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2-0"
+       id="linearGradient5492"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.65778033,0,0,0.99986418,260.00962,0.14917422)"
+       x1="-126.20473"
+       y1="1096.4493"
+       x2="-67.881889"
+       y2="870.00732" />
+    <filter
+       style="color-interpolation-filters:sRGB"
+       id="filter3614-7"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3616-5"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3618-3"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3620-5"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3622-6">
+        <feMergeNode
+           id="feMergeNode3624-2"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3626-9"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       style="color-interpolation-filters:sRGB"
+       id="filter3558-1"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3560-2"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3562-7"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3564-0"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3566-9">
+        <feMergeNode
+           id="feMergeNode3568-3"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3570-6"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       style="color-interpolation-filters:sRGB"
+       id="filter3544-0"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3546-6"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3548-2"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3550-6"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3552-1">
+        <feMergeNode
+           id="feMergeNode3554-8"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3556-7"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       style="color-interpolation-filters:sRGB"
+       id="filter3530-9"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur3532-2"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3534-0"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3536-2"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3538-3">
+        <feMergeNode
+           id="feMergeNode3540-7"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3542-5"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       style="color-interpolation-filters:sRGB"
+       id="filter4332-9"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4334-2"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4336-2"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.4 0 " />
+      <feOffset
+         id="feOffset4338-8"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4340-9">
+        <feMergeNode
+           id="feMergeNode4342-7"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4344-36"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2-0"
+       id="linearGradient5557"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.65778033,0,0,0.65871199,522.6971,296.85036)"
+       x1="-126.20473"
+       y1="1096.4493"
+       x2="-67.881889"
+       y2="870.00732" />
+  </defs>
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     transform="translate(0,10)"
+     id="layer1"
+     inkscape:groupmode="layer"
+     inkscape:label="Calque 1">
+    <g
+       transform="matrix(1,0,0,1.0059428,0,0.04195783)"
+       id="text3446"
+       style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" />
+    <g
+       transform="matrix(1,0,0,1.0059428,0,0.04195783)"
+       id="text3833"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#3e6275;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE.'" />
+    <g
+       transform="matrix(1,0,0,1.0059428,0,0.04195783)"
+       id="text3559"
+       style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" />
+    <g
+       transform="matrix(1,0,0,1.0059428,0,0.04195783)"
+       id="text3614"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#3e6275;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE.'" />
+    <g
+       transform="matrix(1,0,0,1.0059428,0,0.04195783)"
+       id="text4918"
+       style="font-size:30.67200089px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold" />
+    <g
+       transform="matrix(1,0,0,1.0059428,0,0.04195783)"
+       id="text7871"
+       style="font-size:30.67200089px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold" />
+    <g
+       transform="matrix(1,0,0,1.0059428,0,0.04195783)"
+       id="text3531"
+       style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:BankGothic Md BT;-inkscape-font-specification:BankGothic Md BT" />
+    <g
+       transform="matrix(1,0,0,1.0059428,0,0.04195783)"
+       id="text3535"
+       style="font-size:30.72599983px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold" />
+    <g
+       id="text2852-7-1-4"
+       style="font-size:11.43628502px;font-style:normal;font-weight:normal;fill:#666666;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+       transform="matrix(1.1139541,0,0,1.0059428,-50.264098,-21.25646)">
+      <g
+         transform="matrix(0.97512444,0,0,0.9429148,1.1223489,20.00225)"
+         id="text4585"
+         style="font-size:13px;font-variant:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial" />
+    </g>
+    <g
+       transform="matrix(1,0,0,1.0059428,-17.922499,492.7941)"
+       id="text3446-1"
+       style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" />
+    <g
+       transform="matrix(1,0,0,1.0059428,-17.922499,492.7941)"
+       id="text3833-6"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#3e6275;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE.'" />
+    <g
+       transform="matrix(1,0,0,1.0059428,-17.922499,492.7941)"
+       id="text3559-8"
+       style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" />
+    <g
+       transform="matrix(1,0,0,1.0059428,-17.922499,492.7941)"
+       id="text3614-5"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#3e6275;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE.'" />
+    <g
+       transform="matrix(1,0,0,1.0059428,-17.922499,492.7941)"
+       id="text4918-7"
+       style="font-size:30.67200089px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold" />
+    <g
+       transform="matrix(1,0,0,1.0059428,-17.922499,492.7941)"
+       id="text7871-6"
+       style="font-size:30.67200089px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold" />
+    <g
+       transform="matrix(1,0,0,1.0059428,-17.922499,492.7941)"
+       id="text3531-1"
+       style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:BankGothic Md BT;-inkscape-font-specification:BankGothic Md BT" />
+    <g
+       transform="matrix(1,0,0,1.0059428,-17.922499,492.7941)"
+       id="text3535-8"
+       style="font-size:30.72599983px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold" />
+    <rect
+       y="-14.377257"
+       x="-879.74304"
+       height="299.83804"
+       width="458.91"
+       id="rect3606"
+       style="opacity:0.99142857;fill:url(#linearGradient3067);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <rect
+       y="13.054078"
+       x="-696.32629"
+       height="39.10931"
+       width="39.10931"
+       id="rect3616"
+       style="opacity:0.99142857;fill:#e6e6e6;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <rect
+       ry="0"
+       rx="0"
+       y="-28.344847"
+       x="-879.84717"
+       height="20.951416"
+       width="458.91"
+       id="rect3618"
+       style="opacity:0.99142857;fill:url(#linearGradient3772);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <rect
+       ry="0"
+       rx="0"
+       y="280.1203"
+       x="-879.84717"
+       height="20.951416"
+       width="458.91"
+       id="rect3620"
+       style="opacity:0.99142857;fill:url(#linearGradient3774);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <rect
+       y="141.57812"
+       x="-732.82031"
+       height="39.10931"
+       width="39.10931"
+       id="rect3626"
+       style="opacity:0.99142857;fill:#e6e6e6;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <rect
+       y="187.66986"
+       x="-815.12518"
+       height="39.10931"
+       width="39.10931"
+       id="rect3628"
+       style="opacity:0.99142857;fill:#e6e6e6;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <rect
+       y="220.01227"
+       x="-736.11249"
+       height="39.10931"
+       width="39.10931"
+       id="rect3630"
+       style="opacity:0.99142857;fill:#e6e6e6;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <rect
+       y="99.847046"
+       x="-696.32629"
+       height="39.10931"
+       width="39.10931"
+       id="rect3632"
+       style="opacity:0.99142857;fill:#e6e6e6;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <rect
+       y="220.01227"
+       x="-603.10767"
+       height="39.10931"
+       width="39.10931"
+       id="rect3634"
+       style="opacity:0.99142857;fill:#cccccc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <rect
+       y="55.07312"
+       x="-740.77094"
+       height="39.10931"
+       width="39.10931"
+       id="rect3636"
+       style="opacity:0.99142857;fill:#cccccc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <rect
+       y="187.66986"
+       x="-692.32629"
+       height="39.10931"
+       width="39.10931"
+       id="rect3638"
+       style="opacity:0.99142857;fill:#cccccc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <path
+       id="path3640"
+       d="m -483.98791,149.57813 -2.5665,0.48886 0,1.34439 0.5703,-0.61109 0.6518,0 0,0.2037 -1.2221,0.40739 0,2.07768 0.2037,0 -0.2037,0.28517 0,0.85552 c -0.1243,0.11339 -0.1889,0.18925 -0.2852,0.28517 l 0,0.48886 c 0.096,-0.0462 0.1847,-0.0603 0.2852,-0.12221 l 0,0.7333 -0.2852,0.24443 0,8.55516 0.6111,2.24064 0.082,0.57034 c -0.028,0.0807 -0.061,0.16777 -0.082,0.24444 0.066,0.0489 0.1079,0.10817 0.1629,0.16295 l 0,0.16296 -0.2444,-0.0815 c -0.024,-0.006 -0.057,-0.001 -0.082,0 0.036,-0.12665 0.062,-0.25692 0.1222,-0.36665 l -0.1629,-0.61108 -0.4074,0.0815 0,3.87019 c 0.014,-0.002 0.027,0.004 0.041,0 l 0.2037,-0.0407 0.041,-0.0407 0,0.85552 c -0.09,0.26172 -0.1903,0.50209 -0.2852,0.69256 l 0,0.97773 0.2444,0.0815 -0.041,0.16295 -0.2036,-0.0815 0,11.12172 0.1629,-1.18143 0.1222,0.0407 0,1.01847 0.2037,0 0.4889,0.5296 c -0.1,0.0821 -0.1897,0.19341 -0.2444,0.36665 l -0.2037,-0.24443 -0.082,0 -0.163,-0.65182 0,0.57034 -0.041,0 -0.2444,0.12222 0,0.89625 0.2851,-0.12221 0,0.32591 -0.1222,-0.0407 -0.1222,0.40739 0.2444,0.0407 0.3667,-0.12222 0,0.24443 -0.3667,0 0,0.85552 -0.2851,0.0815 0,0.20369 0.2851,-0.0815 0,0.0815 c 0.4141,4e-5 0.5704,-0.14215 0.5704,-0.44813 l -0.2037,-0.20369 0.5296,0 -0.1222,0.0815 -0.082,0.24443 0.1222,0 0,0.0815 0.2037,0.24443 0,0.28517 -1.0185,0 0,0.24444 3.3813,0 c 0.2347,-0.63833 0.527,-0.97774 0.937,-0.97774 l 0,-0.40738 -0.5703,0 -0.2852,0.20369 -0.1629,0 -0.2445,-0.32591 0.082,-0.24443 -0.2444,0.0815 -0.6518,0 -0.3259,0.12222 0,-0.0407 -0.3667,-0.0815 -0.2852,0.2037 -0.4481,-0.2037 0,-0.24443 1.0592,0 0,-0.20369 -0.2037,-0.2037 0,-0.24443 0.4889,0.16295 -0.082,0.2037 0.5703,0.12222 0.2852,-0.0407 0.6111,0.20369 -0.082,0.24443 0.2852,0.0815 0.5703,-0.0407 0.6518,0.24444 0,0.20369 c -0.3219,7e-5 -0.8162,0.38652 -1.3851,1.18143 l 18.5769,0 c 0.082,-0.0802 0.1635,-0.16304 0.2445,-0.24444 0.212,0.0756 0.504,0.16494 0.7333,0.24444 l 1.4666,0 -0.2445,-0.40739 1.1407,0.0815 0.2037,0.0815 -0.041,0.16296 -0.5296,0.0815 0.7333,0 7.8626,0 0.041,-0.16296 c 0.061,0.0307 0.1356,0.0557 0.2037,0.0815 l -0.041,0.0815 1.3037,0 0.3666,-0.24444 -0.041,0.24444 2.5666,0 0.082,-0.24444 0.2444,0.0407 -0.082,0.2037 0.4481,0 0,-1.34439 -0.082,0.24444 -0.2444,-0.0407 0.1222,-0.40739 0.2037,0.0815 0,-9.04403 -0.1222,-0.0407 0.1222,-0.57034 0,-1.71104 -0.2852,0.0815 -0.041,0.2037 0.2037,0.32591 -0.6111,1.09995 -0.2037,-0.0407 0.937,-3.50354 0,-1.58882 -0.2851,0.12222 -0.041,1.05921 -0.6519,2.36285 -0.5703,0.28517 1.1814,-4.39979 0.3667,0.57034 0,-1.34438 -0.163,-0.0407 0.163,-0.57035 0,-1.83324 c -0.2598,-0.39209 -0.5239,-0.78278 -0.8148,-1.14069 l 0.8148,0.0407 0,-1.22217 -0.2037,0.85552 -0.2445,-0.0815 0.326,-1.18143 0.1222,0.0407 0,-3.54428 -0.082,0.28517 -0.4482,-0.12222 0.5297,-2.03694 0,-7.98482 -0.041,0.12222 -0.8148,0 -0.6518,-0.36665 -0.8148,0 0.041,-0.20369 -0.3259,-0.52961 0.082,-0.28517 0.2037,0.0407 0.8555,0.77404 0.2851,-0.16296 0.082,-0.28517 c -0.3162,-0.38756 -1.7549,-1.08882 -4.3183,-2.07768 l -1.0999,0 2.811,1.18142 -0.1223,0.40739 0.2852,-0.16295 0.6926,0.20369 -0.4889,0.81478 -0.2037,-0.0407 -0.1629,-0.28517 -0.2445,-0.0407 -0.3666,0.12222 0.1222,-0.40739 0.3666,-0.16296 0,-0.0407 -0.2444,-0.28517 -0.2444,-0.0815 -0.2852,0.2037 -0.2444,-0.0407 -0.6926,-0.48887 -0.5703,0.36665 -1.5481,-1.2629 -1.8333,0 -0.082,0.32591 -0.2444,-0.0407 0.082,-0.28517 -3.2998,0 1.0184,1.54807 0.2037,0.0407 -0.1629,0.69256 -0.4482,-0.12221 -0.082,0.20369 c 0.3277,0.0876 0.5624,0.55849 0.6926,1.38512 l -0.163,0.69256 -0.2444,-0.0815 0.1222,-0.44812 -0.7333,-0.2037 -0.1629,0.44813 0.4888,0.12222 -0.2444,0.89625 -0.4889,-0.12221 -0.2037,0.93699 0.4482,0.12222 -0.1222,0.40738 -0.4482,-0.12221 -0.1222,0.40739 0.4481,0.12221 -0.1629,0.69256 c -0.4097,-0.10951 -0.6971,0.12321 -0.937,0.69256 -0.022,0.0836 -0.038,0.17515 -0.041,0.24444 l -0.2444,-0.28517 -0.2037,0.28517 c -0.01,-0.0895 -0.01,-0.18894 0,-0.28517 l 0.2037,0 0,-0.2037 -0.163,-0.16295 c 0.014,-0.071 0.021,-0.12964 0.041,-0.2037 l 0.5296,0.16296 0.163,-0.65182 -0.4074,-0.61109 0.937,-1.38512 -0.2037,-0.0407 0.2851,-0.16295 0.082,-0.28518 -0.2037,-1.46659 0.6519,-0.24444 -0.2445,-0.0815 0.4482,-0.61108 c 0.1537,-1.06751 -0.199,-1.68478 -1.0592,-1.91472 l 0.2851,-0.16296 0.082,-0.24443 -1.5888,0 0,0.0815 0.6926,0.16296 -0.937,0.7333 c 0.085,-0.31634 0.048,-0.64018 -0.041,-0.97773 l -1.5888,0 -0.2037,0.69256 -0.2445,-0.0407 0.163,-0.65182 -0.937,0 0.2444,0.48886 -0.081,0.44813 -0.3666,-0.57034 0.082,-0.36665 -0.4481,0 -0.8556,3.09615 c -0.097,-0.0451 -0.1796,-0.0767 -0.2851,-0.12222 l -0.041,0 -0.163,-0.24443 0.2852,-0.12222 0.082,-1.18142 0.3666,-1.42586 -0.4888,0 -0.6111,2.36285 -0.2444,0 0.611,-2.36285 -2.6072,0 -0.041,0.16295 0.4481,0.12222 -0.2852,1.05921 c -0.9988,-0.37944 -1.8221,-0.65178 -2.4443,-0.65182 -0.1476,0.37417 -0.4355,0.62502 -0.7741,0.77404 -0.016,-0.069 -0.022,-0.13369 -0.041,-0.2037 l -0.041,-0.20369 0.5704,-0.0815 0,-0.28517 c 0,-0.20089 -0.2546,-0.36699 -0.7741,-0.48887 l -0.041,-0.20369 -0.9777,0 c 0.001,0.0136 0,0.0271 0,0.0407 l 0,0.24443 c -0.2787,-0.13728 -0.624,-0.21604 -1.0185,-0.28517 l -1.711,0 0,0.16295 -0.2444,0.0815 -0.082,-0.24443 -0.5296,0 0.041,0.12221 -0.163,0.16296 -0.082,-0.28517 -2.7295,0 -0.2037,0.97773 -0.3259,0 0,-0.48887 c 0.085,-0.17617 0.1553,-0.35747 0.2037,-0.48886 l -2.4036,0 z m 36.2576,12.83274 0,-0.93699 -0.041,0.0407 -0.1629,0.61109 0.2037,0.28517 z m -34.3429,-12.75127 -0.2851,0.44813 -0.4889,0.0815 0.082,-0.28517 0,-0.12222 0.6926,-0.12222 z m 13.4846,0.0407 0.4481,0.12222 -0.041,0.24443 -0.4481,-0.12221 0.041,-0.24444 z m -16.2955,0.36665 0,0.48887 -0.4482,0 0.4482,-0.48887 z m 7.8218,0 0.082,0.0407 0.2037,0.89626 c -0.2224,-0.0204 -0.4372,-0.0455 -0.6111,-0.0815 l 0.2037,-0.65182 -0.041,-0.16296 0.163,-0.0407 z m 1.4666,0 0.4074,0.48887 -0.4074,0 0,-0.48887 z m -2.5665,0.16296 0.082,0.28517 -0.1222,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.1516,0.0407 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 5.2146,0 0.2037,0 0,0.28517 -0.2037,0 0,-0.28517 z m -2.974,0.28517 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24443 -0.1629,0 c 0.038,-0.0691 0.088,-0.17948 0.1222,-0.24443 z m 13.0365,0 0.2037,0.0815 -0.163,0.65182 -0.3259,-0.57035 0.2852,-0.16295 z m 11.8143,0.0407 0.4481,0.12221 -0.1222,0.48887 -0.4889,-0.12222 0.163,-0.48886 z m -5.8257,0.16295 0.2444,0.0407 -0.1629,1.58882 -0.2852,0.16295 -0.1222,0.48887 -0.5296,2.52581 -0.6518,-0.65182 1.0999,-2.64803 -0.2444,-0.28517 0.082,-0.20369 0.5703,-1.01848 z m 0.9777,0.0407 0.5704,0.12222 -0.2852,0.16295 -0.082,0.2037 -0.774,3.87019 -0.2852,0.16296 -0.082,1.14068 -0.2037,0.77404 -0.5703,0 0.1629,-0.57034 c 0.2449,-0.0957 0.4481,-0.21289 0.4481,-0.36665 l -0.2851,-0.28517 1.3851,-5.21458 z m -17.7214,0.2037 0.2445,0 0.041,0.16295 -0.082,0.0407 -0.1223,0 -0.082,-0.20369 z m 14.5438,0.12221 0.2037,0.0407 -0.082,0.44813 -0.2444,-0.0815 0.1222,-0.40739 z m 12.629,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m -29.8208,0.0407 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m -2.0777,0.2037 1.0592,0 c -0.029,0.0977 -0.082,0.18868 -0.1222,0.28517 l -0.937,0 0,-0.28517 z m 11.855,0 0,0.5296 -0.4888,0 0.4888,-0.5296 z m 24.3619,0.16295 c -0.074,0.27639 0.1417,0.51308 0.5703,0.65182 l 0,-0.5296 -0.5703,-0.12222 z m -6.0701,0.32591 0.4481,0.12222 -0.3666,1.30364 -0.4482,-0.12221 0,-1.18143 0.3667,-0.12222 z m -17.0696,0.44813 0,0.48887 -0.2037,0 -1.6703,0.24443 c 0.035,-0.18638 0.074,-0.3749 0.082,-0.57035 l 1.7925,-0.16295 z m 0.3666,0 0.6519,0.20369 0,0.28518 -0.8556,0 0.2037,-0.28518 0,-0.20369 z m 1.0185,0 0.041,0 0.2852,0.44813 -0.041,0.0407 -0.2852,0 0,-0.48887 z m 1.8333,0 -0.082,0.32591 -0.2852,0.0407 0.1222,-0.32591 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.2662,0 0.6518,0.36665 -0.082,0.20369 -0.4482,0.85552 c -0.076,0.61312 0.12,0.99046 0.5296,1.09995 l -0.1222,0.40739 -0.5296,-0.12222 -0.082,0.28517 0.2445,0.28518 -0.3667,0.12221 0.041,1.18143 -0.4889,1.79251 -0.5296,-0.12222 -0.4073,-1.30364 0.1222,-0.48887 0.2444,0.0407 -0.1222,0.48887 0.4481,0.12221 0.041,-0.20369 -0.2852,-0.81478 0.2852,-0.12221 c 0.1185,-0.44346 -0.079,-0.76489 -0.5703,-0.89626 l 0.6518,-0.28517 -0.1222,0.40739 0.4888,0.12221 0.3667,-3.21837 0.041,-0.20369 z m -20.4917,0.12222 0.2444,0.0407 0.1223,0.48887 -0.326,-0.0815 0,-0.36665 -0.041,-0.0815 z m -7.7404,0.0815 0.4481,0 -0.4481,0.52961 0,-0.52961 z m 1.3037,0 0.8147,0 c -0.012,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2572,0.20542 -0.3429,0.30401 -0.5703,0.48887 l -0.2037,-0.24443 0,-0.28518 z m 1.3036,0 0.3667,0 0.4073,0 0,0.2037 -0.082,-0.0815 -0.4888,0.12222 0,0.24443 -0.082,0.0407 -0.2037,-0.24443 -0.082,0 0.1629,-0.28518 z m 1.1407,0 0.6111,0 -0.041,0.28518 -0.5704,0 0,-0.28518 z m 7.2923,0 0.6518,0 -0.082,0.24444 0.1222,0.44812 -0.2852,0.0407 -0.4074,-0.65182 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24444 -0.2037,0.0407 -0.082,-0.28518 z m 21.1434,0 0.8148,0 0.2444,0.0407 -0.082,0.2037 -1.0999,0.16295 0.1222,-0.40739 z m -12.9142,0.0815 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m 5.2553,0 -0.082,0.2037 0.4889,0.12221 0.041,-0.20369 -0.4481,-0.12222 z m 10.144,0.36665 0.4889,0.12222 0.4074,0.57034 -0.6519,0.32591 0.2852,0.0815 -0.6111,1.01847 c -0.3277,-0.0876 -0.3629,-0.37134 -0.2444,-0.81478 l 0.2852,-0.16295 0.041,-0.2037 0,-0.93699 z m -1.3851,0.28517 0.2444,0.0815 0.041,0.7333 -0.4481,-0.12222 0.1629,-0.69256 z m -25.5025,0.0407 0,0.40739 -0.2852,0 -0.082,-0.32591 0.3666,-0.0815 z m 23.9137,0.0407 0.2444,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -24.7285,0.0815 0.082,0.28517 -0.2445,0 0,-0.24443 0.163,-0.0407 z m -8.2293,0.0407 1.0185,0 c -0.101,0.0837 -0.1917,0.16587 -0.2852,0.24443 l -0.7333,0 0,-0.24443 z m 2.0777,0 0.4481,0 0,0.24443 -0.6111,0 0.163,-0.24443 z m 7.8626,0 0,0.24443 -0.2037,0 -0.041,-0.16295 0.2444,-0.0815 z m 3.748,0 0.4074,0 0,0.24443 -0.4074,0 0,-0.24443 z m 1.0592,0 0.8148,0 0,0.24443 -0.8148,0 0,-0.24443 z m 22.3656,0.0407 0.4482,0.12221 0.2851,0.28517 0.082,-0.40738 0.2445,0.0407 -0.1223,0.44812 -0.2037,-0.0815 0.163,0.28518 -0.1222,0.48886 c -0.3277,-0.0875 -0.616,0.14207 -0.7741,0.7333 l -0.3666,-0.61108 0.3666,-1.30364 z m -31.0022,0.0407 0.2851,0.20369 -0.2037,0.0815 -0.082,-0.28517 z m -4.7258,0.0815 0.041,0.0815 -0.1222,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.9801,0.0407 0.5296,0.16296 -0.041,0.20369 -0.5296,-0.12222 0.041,-0.24443 z m -20.4917,0.0407 0.3667,0 0,0.28517 -0.3667,0 0,-0.28517 z m 3.5443,0 0.2037,0 c 0.2933,0.10004 0.5027,0.25432 0.6518,0.48887 l -0.082,0.12221 c 0.049,0.098 0.1128,0.18842 0.163,0.28518 l -0.3667,0 0,0.24443 0.5296,0.0815 c 0.074,0.1378 0.1679,0.27231 0.2444,0.40739 l -1.7925,0 0,-0.2037 c 0.5522,1.1e-4 0.8148,-0.22357 0.8148,-0.5296 l -0.3666,-0.40739 0,-0.48887 z m -9.2885,0.0407 0.1222,0.44813 -0.2037,0.0407 -0.082,-0.32592 0.163,-0.16295 z m -3.5035,0.0815 0.081,0.44812 -0.4481,0.12222 -0.041,-0.16295 0.3259,-0.0407 0,-0.32591 0.082,-0.0407 z m 1.6295,0.0407 c 0.2852,1.0667 0.7124,1.54315 1.3037,1.38512 l 0.082,0.16295 -0.163,0.24444 -0.2444,-0.12222 c -0.5964,0.73087 -0.8708,1.45178 -0.6926,2.11842 l -0.8555,-0.65182 0.6111,-0.16296 -0.1222,-0.40739 c -0.3695,0.0988 -0.5984,-0.0975 -0.8148,-0.61108 l 0.9777,-0.7333 -0.4481,-0.93699 -0.041,-0.16296 0.4074,-0.12221 z m 23.5878,0.24443 0.4482,0.12222 -0.082,0.24443 -0.4482,-0.12222 0.082,-0.24443 z m -14.9511,0.0815 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 4.6035,0 0,0.0815 -0.041,0.16296 -0.2037,-0.0407 0.2444,-0.20369 z m -10.5514,0.0407 c 0.1566,0.1293 0.3291,0.24633 0.5703,0.36665 l 0,-0.16296 0.082,0.36665 0,0.0815 -0.4481,0.12221 -0.2037,-0.77403 z m 23.2212,0.0407 0.4481,0.12222 0,0.97773 -0.2852,0.12222 -0.041,0.2037 -0.1629,1.46659 -0.4074,0.57035 0.2037,0.24443 -0.3259,0.2037 0.3666,0.57034 -0.2852,0.12222 -0.2444,-0.0407 -0.041,1.14069 -0.3259,1.14068 -0.4481,-0.16295 -0.2037,0.69256 c 0.013,0.0242 0.029,0.0565 0.041,0.0815 l -0.1223,0.0815 0.163,0.0407 c 0.083,0.20379 0.1422,0.44083 0.163,0.69256 l -0.041,0.2037 -0.163,-0.24443 -0.2852,-0.0815 -0.041,0.0407 0.2445,-1.54808 0.774,-2.85172 0.4481,-0.81478 -0.2851,-1.05921 0.5296,0.16296 0.3259,-2.07769 z m -28.4358,0.0407 -0.041,0.44813 -0.2851,0.0815 -0.2852,-0.16296 -0.2037,0.0815 0.3666,0.48887 -0.4888,0.61108 -0.3259,-0.48887 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48887 -0.163,0 -0.2037,0.28517 -0.2037,0 0.3667,-0.61108 1.2629,-0.2037 z m 4.8072,0 0.163,0.65183 -0.2037,0.0407 -0.2037,-0.61108 0.2444,-0.0815 z m -7.0886,0.28518 0.2037,0 0,0.28517 -0.2037,0.24443 -0.2444,0 0,-0.32591 c 0.078,-0.065 0.1634,-0.13004 0.2444,-0.20369 z m 32.5911,0.40738 1.5074,1.34439 -0.1222,0.44812 -0.5296,-0.16295 -0.4889,1.79251 -0.2037,-0.0407 0.4074,-2.48507 -0.2852,0.12222 -0.3259,-0.0815 0.041,-0.937 z m 4.4813,0 0.7741,0 -0.1223,0.40739 -0.6925,-0.20369 0.041,-0.2037 z m -27.4172,0.12222 0.041,0 0.2037,0.2037 -0.163,0.0407 -0.082,-0.24443 z m 3.422,0 0.5704,0 0,0.2037 -0.5704,0 0,-0.2037 z m 5.4998,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.16296 c -0.014,0.0596 -0.024,0.0991 -0.041,0.16295 l 0.4074,0.12222 c -0.1395,0.12918 -0.3455,0.16298 -0.6519,0.16295 l -0.2036,0 0,-0.20369 0.4888,-0.24443 z m -4.6443,0.0407 0.6519,0.20369 0,0.44813 c -0.4141,0 -0.6518,0.1829 -0.6519,0.48886 l -0.1629,0 c 0,-0.45892 -0.1314,-0.73324 -0.4074,-0.7333 l 0,-0.20369 0.5703,-0.20369 z m 11.4477,0.0407 0.3259,0.61109 -0.041,0.20369 -0.3259,-0.61108 0.041,-0.2037 z m -18.0881,0.0407 0.5704,0.28518 0.6518,2.36285 0,0.0815 -0.3667,-0.52961 -0.2037,0 0.5704,0.85552 0.041,0.65182 0.2851,0.12222 -0.3666,0.57034 -1.1814,-4.3998 z m 15.44,0 0.2445,0.0407 -0.2852,1.09995 -0.2444,-0.0407 0.2851,-1.09995 z m -7.0885,0.12222 0.5703,0.20369 0,0.24444 -0.774,0 0.2037,-0.24444 0,-0.20369 z m -9.2885,0.20369 0.4889,0.48887 0.041,0.16296 -0.4889,0.12221 -0.1629,-0.65182 0.1222,-0.12222 z m 1.9962,0.12222 0.3259,0.32591 0,0.0815 0.082,0.0407 0.2037,0.24443 -0.1629,0.16296 0.6518,2.36285 -0.2852,-0.16295 -0.8148,-3.05542 z m -7.8218,0.0815 0.082,0.36665 -0.2037,0.0407 -0.082,-0.36665 0.2037,-0.0407 z m 2.4443,0.20369 -0.082,0.61109 0.082,0.24443 0.2444,0.16295 c -0.7759,0.20744 -1.0756,0.74803 -0.937,1.71104 l 0.3667,0.57034 -0.2037,0.0407 0.5703,0.24443 -0.1629,1.30365 0.082,0.28517 0.2444,0.12222 -0.2037,0.0407 0.5704,0.85552 c -0.141,0.11253 -0.2864,0.23952 -0.4482,0.40739 l -0.082,-0.2037 -0.4074,0.12222 -0.082,-0.36665 0.4074,-0.12222 -0.2037,-0.81477 -0.4481,0.12221 -0.2037,-0.81477 0.4074,-0.12222 -0.1222,-0.44813 -0.6518,0.2037 0.082,0.44812 -0.2037,0.0407 -0.163,-0.61108 c 0.1174,-0.74568 0.3563,-1.1839 0.6518,-1.2629 l -0.082,-0.16296 -0.4074,0.0815 -0.1629,-0.61109 0.2037,-0.0407 1.3444,-2.03695 z m 31.3282,0.2037 0.2444,0.0407 0.2444,0.28517 0.2852,-0.12222 0.6926,0.16296 0.4481,2.28137 -0.041,0.2037 0.2852,0.0815 0.2852,-0.12222 0.2444,0.0407 -0.6926,2.64802 c -0.6159,-0.32291 -0.8481,-0.90564 -0.6111,-1.79251 l -0.2037,-0.0815 0.2852,-0.12222 0.1222,-0.48887 0.082,-1.18142 -0.5703,-0.12222 -0.6926,2.68876 0.2445,0.28518 -0.3667,0.12221 -0.041,0.2037 0.2037,2.1999 -0.8148,0 c -0.1161,0.56732 -0.1894,1.08429 -0.2444,1.50733 -0.1694,0.10755 -0.2849,0.39717 -0.4074,0.85552 l -0.3259,0.12222 -0.4481,-0.12222 -0.163,-0.93699 0.5704,-0.48887 0,-0.12222 c 0.055,0.0879 0.1486,0.1672 0.2851,0.2037 l 0.2037,0.0407 0.082,-0.2037 0.2445,-1.87399 0.3666,-0.5296 0.7333,-3.62576 0.2444,-0.89625 -0.4481,-0.12222 -0.3666,1.34438 -0.3667,0.12222 0.2444,0.28517 -0.1222,0.48887 -0.5296,-0.16296 0.8148,-3.09615 z m -9.207,0.12221 0.2037,0.0407 -0.2444,0.89626 -0.2852,0.16295 -0.2037,-0.0815 0.5296,-1.01848 z m 6.0701,0 0.2037,0.0407 -0.082,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -24.9729,0.0815 0.2037,0.81478 -0.2037,0.0407 -0.2445,-0.77404 0.2445,-0.0815 z m -6.722,0.0407 0.041,0 0.1223,0.44813 -0.2037,0.0407 -0.041,-0.12222 c 0.028,-0.10614 0.05,-0.23043 0.082,-0.32591 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.2614,0.0407 0.2445,0.0407 -0.2037,0.69256 -0.2037,-0.0407 0.1629,-0.69256 z m -26.5617,0.0407 0.1222,0.44813 -0.3259,0.48886 -0.082,-0.36665 0.2852,-0.57034 z m 13.8919,0.0815 0,0.0407 -0.3259,0.2037 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1892,-0.0178 0.3783,-0.0562 0.5296,-0.0815 z m -11.7327,0.24443 0.1222,0.12222 -0.2037,0.0815 -0.041,-0.16295 0.1222,-0.0407 z m 27.132,0.12222 0.7741,0.20369 -0.041,0.24443 -0.7741,-0.20369 0.041,-0.24443 z m -8.7181,0.0407 0.5704,0.16296 -0.082,0.20369 -0.5296,-0.12221 0.041,-0.24444 z m -15.4807,0.0407 0,0.61109 0.4481,0 c 0,0.33785 0.036,0.62662 0.1222,0.81477 -0.2101,0.0427 -0.4005,0.0946 -0.5703,0.16296 l 0,-0.0407 -0.3667,-0.40739 -0.6518,0.2037 c 0,-0.11015 -0.034,-0.20771 -0.082,-0.28518 l -0.2444,-0.89625 1.3443,-0.16296 z m 2.8924,0 0.2852,0.2037 0.2037,0 1.874,-0.2037 0,0.2037 -0.2852,0.65182 c 0.3992,-0.22119 0.701,-0.47342 0.8148,-0.77404 0.071,0.0934 0.1312,0.1937 0.2037,0.28517 l -0.3667,0.0407 0,0.44813 0.4074,0 0.2444,0.28517 0.163,-0.24443 c 0.093,0.10678 0.1891,0.22207 0.2852,0.32591 l 0.041,0.16295 -0.2037,-0.20369 -0.2445,0.12222 0.041,0.69256 -0.2444,0.12221 -0.082,0.16296 -0.6518,-0.12222 c -0.065,-0.12871 -0.1069,-0.24434 -0.1222,-0.36665 l 0.3259,0 0.3666,0.0815 0.041,-0.20369 -0.2851,-0.52961 c -0.2712,-0.0725 -0.5058,-0.0647 -0.7333,-0.0815 l -0.2037,-0.20369 -0.082,0.16295 c -0.064,0.002 -0.1437,-0.007 -0.2037,0 l -0.5296,-0.61108 -1.0592,0.2037 -0.7741,-0.2037 -0.4481,0.44813 -0.163,-0.24443 0,-0.2037 c 0.2416,3e-5 0.4327,0.0164 0.6111,0 0.5354,-0.049 0.7741,-0.17787 0.7741,-0.40739 z m 16.2956,0 0.2444,0.0815 -0.2444,0.89626 -0.2445,-0.0815 0.2445,-0.89626 z m -19.9621,0.40739 0,0.44813 0.4074,0 0,-0.44813 -0.4074,0 z m -1.5481,0.0815 0.2445,0.28517 -0.2037,0.36665 -0.163,-0.5296 0,-0.0815 0.1222,-0.0407 z m -10.5106,0.12222 0.041,0.32591 -0.1629,0.0407 0.1222,-0.36665 z m 21.836,0 0.163,0 0,0.24443 -0.163,0 0,-0.24443 z m -16.6622,0.0407 0.5297,0.937 0.041,0.16295 -0.2037,0.28518 0.774,1.83325 -0.5296,0.32591 -0.2852,-1.50734 -0.1222,-0.44813 -0.2444,-0.12222 -0.163,-1.42586 0.2037,-0.0407 z m -0.8962,0.0407 1.1407,4.23685 -0.3259,-0.0815 0,-0.0815 -0.2852,-0.16296 -0.6926,-3.4628 -0.041,-0.20369 -0.2851,-0.12222 0.4888,-0.12222 z m 19.8806,0.0815 0.2444,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -7.7812,0.0815 0.6519,0 0,0.20369 c -0.1266,0.0362 -0.2233,0.0983 -0.326,0.16296 l -0.3259,-0.0815 0,-0.28517 z m -9.2069,0.12222 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 15.1141,0.0407 0,0.12222 -0.082,0 0.082,-0.12222 z m 9.981,0.24444 0.2444,0.0407 -0.1629,0.48886 -0.2037,-0.0407 0.1222,-0.48886 z m 5.2553,0 0.2444,0.0407 -0.1629,0.48886 -0.2037,-0.0407 0.1222,-0.48886 z m -22.8138,0.0815 0.3667,0 c -0.095,0.17535 -0.2074,0.27297 -0.3667,0.28517 l 0,-0.28517 z m 7.1293,0 0.163,0 0,0.20369 -0.163,0 0,-0.20369 z m -1.5073,0.0407 0.2852,0.0815 -0.2852,0 0,-0.0815 z m 4.7257,0.0815 0.3259,0.61109 -0.1222,0.40738 -0.4481,-0.12221 0.2444,-0.89626 z m 1.0185,0.28517 0.2037,0.0407 c -0.079,0.2957 0.1602,0.56117 0.6518,0.69256 l -0.2444,0.89626 c -0.1374,-0.16028 -0.2848,-0.28993 -0.4482,-0.40739 l 0.041,-0.20369 -0.4481,-0.12222 0.2445,-0.89626 z m -5.8664,0.0407 0.1222,0 0.082,0.0407 -0.1222,0.44813 -0.163,-0.0815 0.082,-0.40739 z m 3.3813,0 0.5704,0 -0.082,0.2037 -0.2445,0 c -0.09,-0.0653 -0.1747,-0.12663 -0.2444,-0.2037 z m -7.4145,0.12222 c -0.014,0.0405 -0.029,0.0791 -0.041,0.12222 l -0.1222,-0.0407 0.163,-0.0815 z m -15.6029,0.16296 0.082,0.16295 0.3259,2.9332 0.4074,-0.12222 -0.1223,-0.36665 0.6111,0.24444 c -0.4434,0.11851 -0.6365,0.41476 -0.5296,0.81477 l 0.2444,0.12222 -0.2444,0.7333 0.041,0.20369 0.4481,-0.12221 -0.1222,-0.44813 0.2037,-0.0407 0.1222,0.44813 -0.3666,1.14069 -0.3667,-0.0815 c -0.056,0.0711 -0.069,0.13431 -0.1222,0.20369 l -0.4481,-1.58881 0.041,-1.09995 -0.3259,-0.0815 0.2037,-0.28517 -0.041,-0.24444 -0.4889,0.12222 -0.082,-0.16295 0,-0.0815 0,-0.16296 c 0.3324,-0.11704 0.5134,-0.41156 0.4481,-0.93699 l -0.4481,-0.77404 -0.041,-0.16295 0.5704,-0.36665 z m 31.1652,0 0.5296,0.12221 -0.2037,0.69256 -0.5296,-0.12221 0.2037,-0.69256 z m -28.9246,0.28517 -0.4074,0.0815 0.041,0.20369 0.4074,-0.12222 -0.041,-0.16295 z m 4.7257,0 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 8.5144,0.0407 0.2037,0.0815 -0.2444,0 0.041,-0.0815 z m 16.9067,0 0.5296,0.12221 -0.1223,0.48887 0.4482,0.12222 0.1629,-0.69256 0.4482,0.57034 -0.5704,0.81478 -0.1629,1.87398 -0.4482,0.52961 -0.2444,-0.0407 c 0.5137,-1.92153 0.4109,-2.92097 -0.2444,-3.09615 l 0.2037,-0.69256 z m -20.0436,0.0815 0.2037,0 -0.1222,0.44813 -0.1629,0 0,-0.20369 0.082,-0.24444 z m 1.7925,0 0.2037,0 c 0.1369,0.16132 0.1866,0.38537 0.163,0.65183 l -0.1222,0 -0.2445,-0.65183 z m -2.5665,0.12222 0.2037,0.36665 -0.2852,-0.0815 0.082,-0.28517 z m 12.5476,0.16296 0.2444,0.0815 0.2852,0.2037 -0.163,0.24443 c -0.1007,-0.099 -0.2134,-0.17918 -0.3259,-0.24443 l -0.041,-0.28517 z m -7.1701,0.16295 0.2852,0 c 0,0.0716 0.024,0.14662 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.7333,0.0815 0.4074,0.12222 -0.3259,0 -0.081,-0.12222 z m -6.7219,0.12222 0.2037,0.0815 -0.082,1.22217 -0.082,0.20369 -0.2037,-0.0815 0.041,-0.48887 0.2037,0 0,-0.65182 -0.082,-0.28517 z m 14.6253,0.0407 0.3259,0.0815 -0.163,0.65182 -0.2037,-0.0815 -0.041,-0.52961 0.082,-0.12222 z m -15.3586,0.0407 0,0.2037 -0.1222,0 0.1222,-0.2037 z m -1.4666,0.16296 0.1222,0 0.1222,0.16295 0.082,0.28518 -0.3259,-0.40739 0,-0.0407 z m 4.522,0.0407 0.2037,0 -0.082,0.20369 -0.1629,0 0.041,-0.20369 z m -5.2553,0.16295 -0.041,0.24444 c -0.1412,0.67657 -0.1364,1.03083 0.1222,1.09995 l -0.2444,0.20369 -0.082,0.16296 -0.041,0.24443 -0.1222,0.0407 -0.163,-0.57035 0.4482,-0.0815 c -0.206,-0.77059 -0.1475,-1.24298 0.1222,-1.34439 z m 1.874,0 0.041,0.12222 0.082,-0.0815 0.163,0.65182 0,0.12222 -0.4889,0.7333 0.2852,0.0815 -0.326,0.12221 -0.082,0.24444 0.2445,0.28517 -0.082,0.16296 -0.4074,0.57034 0.041,0.85552 -0.6518,1.30364 0.2444,0.28517 -0.4889,-0.16295 0.3667,-1.34439 -1.1814,0.7333 0.2444,0.28517 -0.8555,0.44813 -0.082,1.01847 -0.4074,0.69256 c 0.08,-0.49941 0.011,-0.79803 -0.2037,-0.85551 l 0.2852,-0.16296 0.041,-0.20369 0.2037,-1.30364 c 0.1374,-0.1299 0.2764,-0.27149 0.4074,-0.40739 l 0.4481,0.32591 c -0.053,-0.21157 -0.1577,-0.37537 -0.2445,-0.52961 0.051,-0.0555 0.1128,-0.10648 0.163,-0.16295 l 0.2444,0.0407 0.082,-0.36665 0.3667,-0.16296 -0.163,-0.16296 c 0.072,-0.0919 0.134,-0.19121 0.2037,-0.28517 l 0.7333,0.0407 0.163,-0.61108 -0.4074,-0.12222 c 0.071,-0.1075 0.135,-0.2161 0.2037,-0.32591 l 0.2852,0.0815 0.2851,-1.05921 c 0.1085,-0.19992 0.2227,-0.4049 0.3259,-0.61108 l -0.1222,-0.16296 0.041,-0.12222 z m 11.7328,0.0407 0.2037,0.40739 0,0.0407 -0.4889,0 c 0.012,-0.0714 0.03,-0.13545 0.041,-0.20369 l 0.2445,-0.24444 z m -22.162,0.0407 0.082,0.28517 -0.082,0 0,-0.28517 z m 30.432,0.2037 0.4888,0.12221 -0.4073,0.937 c -0.091,-0.13612 -0.2088,-0.26481 -0.3667,-0.36665 l 0.2852,-0.69256 z m -10.8773,0.16295 0.2037,0.0407 -0.2037,0 0,-0.0407 z m 0.9777,0.0407 0.4074,0.12222 -0.041,0.16295 -0.2037,0.0407 -0.1629,-0.28517 c 0.01,-0.003 -0.01,-0.0375 0,-0.0407 z m -8.3922,0.32591 0.4074,0.0815 -0.1629,0.65182 -0.2852,-0.57034 0.041,-0.16296 z m 23.9137,0.0407 c 0.452,0.27924 0.6049,0.76826 0.4074,1.50734 l -0.5296,1.05921 c -0.1997,1.12234 -0.2914,1.89101 -0.2851,2.40359 l -0.163,-0.0407 0.041,-0.77404 0.1222,-0.48886 -0.3666,-0.77404 0.8962,-2.11842 -0.1222,-0.77404 z m -21.836,0.12222 0.2444,0 0,0.20369 -0.2444,0 0,-0.20369 z m 12.0995,0 0.041,0 -0.163,0.57034 c -0.021,0.0768 -0.028,0.1306 -0.041,0.20369 l -0.041,0 0.2037,-0.77403 z m -19.9621,0.0407 0.2037,0.0407 0.1222,0.24444 -0.3666,-0.12222 0.041,-0.16296 z m -4.1146,0.2037 0.041,0.20369 -0.2852,0.52961 -0.041,-0.16296 0.2852,-0.57034 z m 3.6257,0 c 0.1218,0.0561 0.2253,0.11426 0.4074,0.16295 l -0.082,0.36665 -0.1629,-0.24443 -0.082,-0.0407 -0.082,-0.24443 z m 31.1245,0.0815 0.2445,0.0815 -0.1222,0.48887 -0.2445,-0.0815 0.1222,-0.48886 z m -25.4618,0.0815 c 0.1306,0.006 0.286,0.0201 0.4482,0.0407 l -0.1222,0.36665 c -0.2956,-0.079 -0.55,0.15923 -0.6926,0.69256 l -0.4481,-0.77403 c 0.047,-0.17471 0.2132,-0.25604 0.4888,-0.28518 l 0.3667,0 -0.041,-0.0407 z m 14.0142,0 0.082,0 0.1222,0.0407 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.24444 z m -8.1478,0.0407 0.2852,0 -0.1222,0.52961 -0.2444,-0.0815 c 0.037,-0.15395 0.063,-0.31014 0.082,-0.44813 z m 0.8556,0 0.5703,0 0,0.0815 -0.3666,0.57035 0.1222,0.16295 -0.6111,-0.16295 c 0.107,-0.16059 0.1904,-0.4143 0.2852,-0.65183 z m 1.0592,0 0.2444,0 -0.041,0.0815 -0.2037,-0.0407 0,-0.0407 z m 2.2406,0 0.4889,0 -0.1222,0.36665 -0.2037,0.0407 0,0.44813 0,0.0407 -0.081,0.16295 0.041,0.44813 -0.163,0.0407 c -0.1808,-0.20535 -0.2427,-0.4948 -0.2037,-0.85552 0,-0.0259 0,-0.0547 0,-0.0815 0.012,-0.0828 0.016,-0.15377 0.041,-0.24444 l 0.2037,-0.36665 z m 0.8555,0 0.7333,0 0.3259,0 -0.041,0.2037 -0.2444,0 0,0.48886 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.28517 -0.4889,0.12222 -0.041,-0.52961 0.2445,-0.0407 0,-0.48886 -0.2852,0.0407 -0.041,-0.24444 z m -7.6996,0.0815 0,0.77404 c -0.2652,-0.0831 -0.4074,-0.28894 -0.4074,-0.65182 0.1827,2e-5 0.2999,-0.0425 0.4074,-0.12222 z m 5.5405,0 0.4074,0.12222 -0.082,0.36665 -0.4482,-0.12222 0,-0.0407 0.163,-0.20369 -0.082,0 0.041,-0.12222 z m 11.9365,0 0.1222,0.65182 c -0.026,-0.0119 -0.051,-0.0326 -0.082,-0.0407 l -0.3259,0.0815 -0.041,0.24444 0,0.28517 -0.041,0.0815 -0.2037,-0.0407 0.041,-0.2037 0.2444,-0.36665 0.163,-0.28517 -0.4482,-0.12222 0.5704,-0.28517 z m -18.8214,0.0815 c 0.092,0.0158 0.1761,0.0407 0.2852,0.0407 l 0,0.65182 -0.2445,-0.0815 -0.041,0.12222 -0.1222,0 0,0.44813 0,0.0815 0.4481,0.12222 0.041,-0.20369 0.163,0 -0.5296,0.77403 -0.2444,-0.32591 -0.082,0.36665 0.2444,0.0815 -0.041,0.0407 0.5296,0.12222 0.082,0.24443 -0.1222,0.20369 c -0.155,0.0761 -0.2587,0.22703 -0.2852,0.44813 l -0.041,0.12222 -0.1629,0 c -0.01,-0.0298 0,-0.0522 0,-0.0815 l 0.082,-0.44813 -0.163,-0.0407 c -0.084,-0.43313 -0.1524,-0.79239 -0.2444,-1.05921 l 0.4481,-1.62955 z m -7.2923,0.44813 c 0.2126,0.11967 0.3124,0.32245 0.2852,0.61108 l -0.2037,-0.12222 -0.082,-0.48886 z m 18.3325,0 0.041,0 c -0.01,0.0299 -0.034,0.0522 -0.041,0.0815 -0.03,0.13716 -0.06,0.28313 -0.082,0.40739 -0.092,0.0158 -0.1761,0.0407 -0.2851,0.0407 l 0,0.48887 -0.2445,0 0.082,-0.937 0.5296,0 0,-0.0815 z m -12.3846,0.0815 0.2852,0 0.1222,0.0407 0,0.40739 -0.2037,0 0,0.2037 0.082,0.36665 c -0.1679,-0.14918 -0.2705,-0.48918 -0.2852,-1.01848 z m 25.3396,0.0407 0.4481,0.12222 -0.1222,0.40739 -0.4481,-0.12222 0.1222,-0.40739 z m -33.9355,0.0407 c -0.044,0.0495 -0.077,0.10969 -0.1222,0.16296 l -0.041,-0.12222 0.163,-0.0407 z m -0.8962,0.0407 0.4481,0.93699 -0.2037,0.0407 -0.082,-0.0407 c 0.011,-0.0447 0.028,-0.075 0.041,-0.12221 l -0.2444,-0.0815 -0.2037,-0.69256 0.2444,-0.0407 z m 17.5177,0 0.4074,0.12222 -0.082,0.24443 -0.3667,-0.24443 0.041,-0.12222 z m 0.7333,0 0.2037,0.0815 -0.1223,0.40739 -0.2036,-0.0407 0.1222,-0.44813 z m 7.1293,0.0815 0.082,0.12222 0.2851,0.0815 0.081,-0.0407 -0.2037,1.34439 -0.6925,2.52581 -0.2444,0.48886 -0.082,-0.36665 0.2036,-0.28517 -0.2036,-0.20369 -0.2445,0.0815 -0.1629,-0.28517 0.2851,-0.12221 0.2037,0.0407 0.041,-1.05921 0.2852,-0.97773 0.4074,0.0815 0.1222,-0.52961 0.041,0 0,-0.0815 c -0.1251,-0.22969 -0.1809,-0.50833 -0.2037,-0.81478 z m 3.0554,0.0407 0.2444,0.0815 -0.082,0.24443 0,0.0407 -0.1629,0.5296 -0.2037,-0.0815 0.2037,-0.81477 z m -20.2472,0.20369 0.4074,0.12222 -0.1223,0.36665 -0.2851,-0.48887 z m -10.6329,0.32591 0.041,0.16296 -0.1222,0.0407 0,-0.16296 0.082,-0.0407 z m 5.5405,0.0407 0.2037,0.0815 -0.082,0.36665 0.2037,0.0407 -0.2444,0.12221 -0.1222,0.48887 -0.163,-0.61108 0.2037,-0.48887 z m 27.4173,0 0.3666,0.0815 c -0.05,0.18576 -0.024,0.33527 0,0.44813 l -0.3259,-0.0815 c 0.053,-0.20003 0.019,-0.33531 -0.041,-0.44813 z m -3.9517,0.0815 0.041,0 c -0.023,0.12023 -0.051,0.23874 -0.082,0.36665 l -0.041,0 0.082,-0.36665 z m -17.314,0.0407 0.2037,0.0407 -0.2445,0.81477 -0.2037,-0.0407 0.2445,-0.81478 z m 14.7475,0.0407 c 0.1067,0.0985 0.2579,0.168 0.4073,0.24443 l -0.1629,0.32591 -0.163,-0.0407 -0.041,-0.0407 c -0.048,-0.0401 -0.1096,-0.0903 -0.1629,-0.12221 l 0.1222,-0.36665 z m -21.9176,0.16295 0.082,0 c 0.01,0.0632 0,0.14342 0,0.2037 l -0.082,-0.2037 z m 32.4689,0 0.3259,0.52961 -0.4481,-0.12222 0.1222,-0.40739 z m -33.2429,0.36665 0.041,0.12222 -0.163,-0.0407 0,-0.0407 0.1223,-0.0407 z m 6.7627,0.16296 0.2036,0.0815 -0.7333,2.81098 -0.2036,-0.0815 0.7333,-2.81098 z m 9.4514,0 -0.2037,0.81478 0,0.0815 c -0.07,0.01 -0.1708,0.0316 -0.2445,0.0407 l 0.2445,-0.89625 0.2037,-0.0407 z m 1.5888,0.16295 c 0,0.0512 0,0.10831 0,0.16296 -0.1404,0.17119 -0.5033,0.28724 -1.0185,0.40739 l 0.082,-0.24444 0.937,-0.32591 z m 8.5959,0.12222 c 0.1067,0.18437 0.2374,0.33745 0.3666,0.48887 l 0,0.12221 0.163,0.0407 c 0.068,0.0685 0.1302,0.14364 0.2037,0.2037 l -0.163,0.65182 -0.2037,-0.0407 c 0.071,-0.26674 -0.1676,-0.49256 -0.611,-0.61108 l 0.2444,-0.85552 z m 1.0185,0.0407 0,0.12222 -0.082,-0.0815 0.082,-0.0407 z m 5.5812,0.0407 0.4481,0.12221 -0.041,0.2037 -0.4889,-0.12222 0.082,-0.20369 z m -24.1989,0.0407 0.1222,0.44812 0.2444,0.89626 -0.4481,0.7333 0.3259,-0.12222 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 -0.2037,-0.24443 -0.2444,-0.0815 -0.082,0.44813 -0.2444,-0.0407 0.6518,-2.40359 z m -1.2222,0.0815 0.2037,0.0815 -0.1222,0.52961 -0.2037,-0.0407 0.1222,-0.57035 z m 7.1293,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m 14.5438,0.0407 -0.082,0.24444 0.6926,0.16295 0.082,-0.20369 -0.6926,-0.2037 z m -28.6802,0.0815 c 0.026,-0.005 0.055,0.004 0.082,0 -0.1259,0.1796 -0.3023,0.32896 -0.5296,0.44813 l -0.041,-0.2037 c 0.1448,-0.11438 0.3062,-0.20677 0.4889,-0.24443 z m 13.3624,0.2037 c 0.1272,0.1138 0.2391,0.2232 0.2852,0.32591 l -0.2852,-0.0815 0,-0.24443 z m -12.955,0.20369 0.041,0 0.3259,0.12222 c 0.029,0.10641 0.051,0.19751 0.082,0.28517 l -0.2037,0.77404 -0.2036,-0.0407 c 0.1426,-0.53338 0.01,-0.85798 -0.2852,-0.937 l -0.2037,0.0815 0.041,-0.16295 0.3259,-0.0815 0.081,0 0,-0.0407 z m -2.5665,0.0407 0.082,0.24443 -0.1222,-0.0407 0.041,-0.20369 z m 13.4438,0 0.2037,0 c -0.015,0.10051 -0.023,0.21901 -0.041,0.32591 l -0.1629,0.16295 0,-0.48886 z m 8.5552,0 0.3666,0 -0.041,0.16295 -0.4074,-0.12221 c 0.02,-0.0187 0.064,-0.0211 0.082,-0.0407 z m 1.0184,0 0.4074,0 0,0.20369 c -0.1951,4e-5 -0.3609,0.0365 -0.4888,0.0815 l 0.082,-0.28517 z m -19.4324,0.0815 0.163,0.0407 -0.082,0.32592 -0.082,-0.36665 z m 13.8105,0.12221 0,0.52961 -0.041,0.0407 -0.041,0.16295 -0.2444,0 0.2036,-0.69256 0.1223,-0.0407 z m 0.8555,0 0.937,0 -0.041,0.16296 0,0.12221 -0.2444,0 -0.2852,-0.0407 -0.082,0.0407 -0.2852,0 c 0,0.0149 0,0.026 0,0.0407 l -0.082,-0.0407 0.082,-0.28517 z m 3.0554,0.16296 -0.082,0.36665 -0.3666,0 -0.1222,-0.12222 0.041,-0.16295 c 0.2044,-0.0207 0.3677,-0.0344 0.5296,-0.0815 z m 9.044,0 c 0.6945,0.36416 0.9332,1.0147 0.6926,1.91472 l -0.4889,-0.12221 -0.1629,0.5296 0.3666,0.57035 -0.8555,1.2629 0.2037,0.0407 -0.2444,0.12222 -0.082,0.28517 0.1629,1.30364 -0.5703,0.24444 0.2037,0.0407 -0.3667,0.57034 c -0.1386,0.96298 0.1611,1.5036 0.937,1.71103 l -0.2444,0.16296 -0.082,0.24443 0.082,0.61108 -1.3444,-2.03694 -0.2037,-0.0407 0.163,-0.61108 0.4481,0.0815 0.041,-0.16296 c -0.2956,-0.079 -0.5344,-0.51722 -0.6518,-1.2629 l 0.1629,-0.61109 0.2037,0.0407 -0.082,0.44813 0.6926,0.20369 0.082,-0.44812 -0.4074,-0.12222 0.2444,-0.81478 0.4074,0.12222 0.2037,-0.81478 -0.4074,-0.12221 0.082,-0.36665 0.4482,0.12221 0.082,-0.36665 -0.4074,-0.12221 0.1629,-0.61109 c 0.3696,0.0988 0.5984,-0.13822 0.8148,-0.65182 0.1069,-0.4 -0.01,-0.61477 -0.4481,-0.7333 l 0.1629,-0.61108 z m -24.5248,0.0407 0.4889,0.12221 -0.4074,0.57035 -0.2444,-0.0815 0.1629,-0.61108 z m 23.3027,0 c 0.1376,0.0728 0.2979,0.11503 0.4481,0.16295 l -0.1222,0.40739 -0.3259,-0.5296 0,-0.0407 z m -16.703,0.0815 0.6519,0 0.2037,0.24444 0.1629,0 -0.1629,0.61108 -0.6111,0 -0.2445,-0.85552 z m 5.7035,0.2037 0.082,0 c -0.036,0.16125 -0.082,0.31655 -0.1222,0.44813 l -0.082,0 0.1222,-0.44813 z m 4.8886,0.0407 0,0.16295 -0.082,0.24444 -0.2036,0 0.041,-0.2037 0.2444,-0.20369 z m -7.7403,0.0815 0.2037,0.0407 -0.041,0.0815 -0.2037,0 0.041,-0.12221 z m -8.6367,0.0815 0.6518,0.36665 -0.2851,1.01847 -0.2037,-0.0815 -0.2445,-0.937 0.082,-0.36665 z m 20.8991,0 0.4888,0.12222 0.3667,1.14069 -0.1222,0.44813 -0.2037,-0.0407 0.1222,-0.44813 -0.4481,-0.12222 -0.041,0.2037 0.2444,0.7333 -0.2444,0.12221 c -0.1069,0.40004 0.086,0.69627 0.5296,0.81478 l -0.5704,0.24443 0.082,-0.36665 -0.4074,-0.12221 -0.3259,2.9332 -0.082,0.16295 -0.5703,-0.32591 0.082,-0.20369 0.4074,-0.77404 c 0.069,-0.55307 -0.1194,-0.87896 -0.4889,-0.97774 l 0.1222,-0.36665 0.4889,0.12222 0.041,-0.24443 -0.2037,-0.28517 0.3259,-0.0815 -0.041,-1.09995 0.4481,-1.58882 z m -18.9844,0.0407 0.4074,0.12222 -0.041,0.20369 -0.4073,-0.12221 0.041,-0.2037 z m 11.2032,0 0.163,0 c 0.066,0.0585 0.1536,0.11741 0.2444,0.16296 l -0.041,0.12221 -0.082,0.28518 -0.2851,-0.52961 0,-0.0407 z m -19.962,0.0407 0.3259,0.48887 -0.2444,-0.24444 -0.2037,-0.0407 0.1222,-0.2037 z m 1.0999,0.0815 0.163,0.0407 0,0.16295 -0.163,0.65182 -0.2037,-0.0815 0.2037,-0.77404 z m 31.0838,0 c 0.044,0.10287 0.088,0.18377 0.163,0.20369 l 0.2036,0.0407 0,0.44813 -1.711,6.35526 -0.4889,-0.12221 0.2852,-0.12222 0.041,-0.20369 0.6926,-3.46281 0.2852,-0.12222 0.041,-1.05921 0.4888,-1.95546 z m 1.0185,0 0.2037,0.0407 -0.2037,0.65182 -0.2037,-0.0815 0.1629,-0.57034 0.041,-0.0407 z m -15.6438,0.12222 0.041,0.44812 -0.1222,0.0407 -0.082,-0.32591 0.163,-0.16295 z m 12.792,0 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -9.5736,0.0407 c 0.1347,0.0336 0.3237,0.0613 0.4889,0.0815 l -0.1222,0.48887 -0.4482,-0.16296 0.082,-0.40739 z m -20.9805,0.32592 0.4889,0.12221 -0.082,0.2037 -0.163,1.38512 c 0.01,-0.18442 -0.023,-0.3523 -0.082,-0.57035 l -0.2037,-0.81477 0.041,-0.32591 z m 3.2998,0.0407 0.4482,0.0815 c -0.1069,0.39999 -0.01,0.69501 0.2851,0.77404 l -0.041,0.20369 c -0.4433,-0.11854 -0.7027,-0.10371 -0.774,0.16296 l -0.2037,-0.0407 -0.082,-0.61108 0.3667,-0.57035 z m 16.8252,0.0407 0.2852,0 -0.082,0.24444 -0.2037,0 0,-0.24444 z m -13.7697,0.16296 0.2037,0.0407 -0.041,1.05921 -0.4074,-0.12222 0.2444,-0.97773 z m 20.125,0.20369 0.4481,0.16296 -0.041,0.16295 -0.4889,-0.12221 0.082,-0.2037 z m 3.0961,0 0.2037,0.0407 -0.4481,0.937 -0.2037,-0.0407 0.2037,-0.81478 0.2444,-0.12222 z m -19.5139,0.12222 0.937,0.0407 -0.1222,0.57034 -0.9778,0 0.163,-0.61108 z m 8.5959,0.16295 0.2037,0 0,0.0407 -0.2037,-0.0407 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3628,0 0.3259,0 0,0.2037 -0.3666,0 0,-0.12222 0.041,-0.0815 z m -19.5139,0.0407 0.3259,0.52961 -0.2851,0.12222 -0.2037,-0.0407 c 0.062,-0.23334 0.1326,-0.43446 0.1629,-0.61109 z m -4.3183,0.16296 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m 32.3059,0 0.2037,0.0407 c -0.1069,0.40001 -0.01,0.69504 0.2852,0.77404 l -1.4259,3.50354 0.2037,0.24443 -0.041,0.2037 -0.5296,0.89625 -0.2037,-0.0407 0.163,-1.42586 0.2444,-0.12221 0.1222,-0.44813 0.6926,-3.42207 0.2852,-0.20369 z m -35.3613,0.12222 0.1222,0.85551 0.2037,0.12222 c -0.012,0.0966 -0.014,0.18349 -0.041,0.28517 l 0,0.0815 -0.041,-0.0815 -0.2037,0.0815 c 0.022,0.0838 0.035,0.13719 0.041,0.20369 l -0.3667,0.1646 c -0.01,-0.0436 -0.032,-0.0797 -0.041,-0.12222 l 0.1222,-0.0407 0.041,-0.20369 0.163,-1.34438 z m 9.4514,0.0407 0.6111,0.16296 -0.041,0.20369 -0.6926,0.0815 0.1222,-0.44813 z m -4.8072,0.24444 0.2037,0.0815 -0.163,0.5296 -0.2036,-0.0407 0.1629,-0.57034 z m 28.9653,0 0.2037,0.0407 -0.2851,1.01847 -0.2037,-0.0815 0.2851,-0.97773 z m -20.4916,0.12221 0.3666,0.52961 -0.1629,0.61108 -0.2037,-0.32591 -0.4074,-0.12221 c -0.1069,0.40001 -0.4121,0.56665 -0.8555,0.44812 0.107,-0.40002 -0.01,-0.65551 -0.4481,-0.77404 l 0.041,-0.20369 0.4074,0.12222 0.1629,0.24443 c 0.08,-0.29997 0.4464,-0.45431 1.1,-0.52961 z m 10.8365,0.2037 0.1222,0 0,0.12222 -0.1222,-0.12222 z m 13.1179,0 0.8963,0.24443 -0.4481,1.75177 c -0.2956,-0.079 -0.3768,-0.54439 -0.163,-1.34438 l -0.4481,-0.0815 0.1629,-0.57034 z m -6.1515,0.0407 0.2851,0.5296 -0.041,0.2037 -0.2851,-0.57035 0.041,-0.16295 z m -28.558,0.0815 -0.2037,1.62955 -0.8147,0.24443 0.2444,-0.89625 c 0.4491,-0.22295 0.7308,-0.54687 0.774,-0.97773 z m 0.6926,0 0.2444,0.0815 -0.082,0.36665 -0.2851,-0.0815 0.1222,-0.36665 z m 21.8768,0.0407 0.1629,0.0407 0,0.24444 -0.4074,0 0.2445,-0.28518 z m -9.5329,0.0407 0.2037,0 0.1629,0.24444 -0.2852,0 -0.082,0 0,-0.0407 0,-0.2037 z m -6.9664,0.24444 0.4889,0.12221 -0.082,0.24444 -0.5296,0.93699 -0.163,-0.24443 -0.2037,-0.0815 -0.5296,0.28517 0.041,0.65182 c -0.2956,-0.0791 -0.5041,0.0481 -0.6111,0.44813 l -0.1629,-0.24443 -0.2037,-0.0407 -0.2444,0.12221 0.2036,-1.62955 0.6111,0.16296 0.1222,-0.40739 c 0.7391,0.19754 1.1561,0.0741 1.263,-0.32591 z m 2.8517,0.12221 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m -7.8626,0.0407 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m 6.6405,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2445,-0.0407 0.1223,-0.44813 z m -9.2885,0.12222 0.2037,0.0815 -0.2444,0.0815 0.041,-0.16295 z m -0.041,0.28517 0.163,0.12222 0,0.0407 -0.2037,-0.0407 0.041,-0.12222 z m 15.7252,0.0815 c 0,0.20653 -0.1299,0.30826 -0.3259,0.36665 l -0.5296,0.0407 0,-0.16296 0,-0.0407 0.8555,-0.20369 z m 3.2591,0 c 0.013,0.005 0.029,-0.006 0.041,0 0.089,0.046 0.1749,0.11085 0.2037,0.20369 l -0.2444,0 0,-0.20369 z m 1.5481,0 0.4074,0 0.082,0.12221 -0.2037,0.81478 c -0.045,0.002 -0.075,0 -0.1222,0 l 0,0.2037 -0.2037,-0.2037 -0.4074,0 -0.163,-0.24443 0.1223,-0.44813 c 0.1892,0.0506 0.3495,-0.044 0.4888,-0.24443 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.0591 0,0.0815 -0.099,0.33787 -0.3274,0.59857 -0.6518,0.7333 l -0.1223,-0.0407 0.4482,-0.77404 z m 4.4405,0 -0.041,0.20369 -0.4889,0 0,-0.12222 c 0.2002,-0.0277 0.3723,-0.0507 0.5296,-0.0815 z m 8.8811,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m -26.8469,0.0815 0.4074,0.12222 -0.1223,0.44813 -0.4073,-0.12222 0.1222,-0.44813 z m 9.7366,0.12222 0.1629,0 -0.1629,0.57035 0,-0.57035 z m -11.9773,0.16296 -0.082,0.36665 0.4074,0.12221 0.1222,-0.36665 -0.4481,-0.12221 z m 4.9702,0.0407 0.6925,0.20369 -0.1222,0.36665 0.4481,0.12222 0.163,-0.61109 0.3259,0.36665 c -0.3477,0.17232 -0.5887,0.44677 -0.7333,0.81478 -0.062,0.0265 -0.089,0.0462 -0.1222,0.0815 l -0.2037,-0.0407 c 0.1402,-0.44387 -0.02,-0.72709 -0.4074,-0.81478 l -0.2037,-0.0407 c 0.072,-0.11464 0.1184,-0.28147 0.163,-0.44812 z m 16.9066,0 0.4074,0.12221 -0.082,0.24444 -0.4074,-0.12222 0.082,-0.24443 z m -14.4216,0.20369 0.1223,0.0407 c -0.043,2.1e-4 -0.081,-0.002 -0.1223,0 l 0,-0.0407 z m -13.729,0.24443 0.4482,0.0815 -0.082,0.2037 -0.4074,-0.12222 0.041,-0.16296 z m 20.1658,0 0.1629,0.0815 -0.2037,0.0407 0.041,-0.12222 z m -10.4699,0.0407 0.163,0.24444 0.2036,0.0407 c 0.1186,0.0317 0.2233,0.0419 0.326,0.0407 -0.1474,0.0926 -0.2951,0.12532 -0.4889,0.0815 l -0.2037,0.65182 c 0.3876,0.0877 0.6345,0.21898 0.774,0.44813 l -0.4888,0.24443 0.4074,0.0815 0.082,-0.28517 c 0.122,0.22481 0.1522,0.50258 0.041,0.85552 l 0.6518,0.16295 -0.3667,1.09995 -0.6111,-0.12222 0,2.11842 -1.3443,1.14069 0.2037,0.32591 -1.7518,2.4036 0.4481,-0.12222 0.2444,0.0815 -0.1222,0.40739 -0.2851,-0.0407 -0.2852,-0.32591 -0.2852,-0.0407 -0.1222,0.48886 -0.2852,-0.0815 2.4851,-7.78113 0.2444,-0.0407 -0.2851,0.97774 0.6518,0.12221 0.4074,-1.30364 -0.4482,-0.0815 0.041,-0.12221 -0.2037,-0.0815 -0.2851,0 0.041,-0.12222 0.2851,-0.0407 0.082,-0.20369 -0.2444,-0.0815 0.163,-0.57034 -0.2037,-0.28518 0.082,-0.20369 0.2851,-0.0815 z m 6.6812,0.0407 0.2037,0.0407 -0.041,0.12222 -0.163,-0.16296 z m 7.8626,0 0.041,0.16296 -0.2852,-0.0815 0.2444,-0.0815 z m -20.0436,0.12222 0.4482,0.77404 -0.3259,0.16295 -0.163,-0.0407 0.041,-0.89625 z m -0.6925,0.0407 0.2037,0.0407 -0.1222,0.44812 -0.2037,-0.0407 0.1222,-0.44812 z m 19.8806,0.16295 -0.082,0.24443 -0.2037,-0.0407 0,-0.0815 0.2851,-0.12222 z m -1.3852,0.12222 0.082,0.12221 0,0.28518 -0.4481,-0.12222 0.163,0 0.2037,-0.28517 z m 3.8702,0.12221 0.2445,0.0815 0,0.28517 0,0.65183 0,0.12221 -0.326,0.12222 -0.4073,-0.0815 0.2851,-1.14069 0.041,0 c 0.064,-0.008 0.1028,-0.0322 0.163,-0.0407 z m -25.3803,0.12222 0.3667,0.48887 -0.4889,-0.12222 0.1222,-0.36665 z m 35.4021,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -11.4476,0.12222 -0.041,0.20369 -0.7741,0.0815 -0.2037,-0.0815 0,-0.0407 1.0185,-0.16295 z m 6.4367,0 -0.041,0.20369 0.4074,0.0815 0.041,-0.16296 -0.4074,-0.12221 z m -27.1728,0.24443 0,0.20369 -0.4074,0.2037 0.3259,0.32591 -0.1222,0.0815 -0.2852,-0.0815 0.082,-0.32591 -0.1222,-0.0407 0,-0.0407 0.5296,-0.32591 z m 3.1369,0 0.3666,0.0815 -0.2444,0.69256 -0.3259,-0.0815 0.2037,-0.69256 z m 8.3107,0 0.4074,0 0,0.0407 -0.4074,0 0,-0.0407 z m -13.6068,0.0815 0.2037,0.0407 -0.3666,1.34438 c -0.019,-0.29822 -0.091,-0.48679 -0.2445,-0.57034 l 0.041,-0.32592 0.3667,-0.48886 z m 10.307,0.0815 0.2444,0.0815 -0.1222,0.44813 -0.2852,-0.0407 0.163,-0.48886 z m 2.1184,0.0407 0.2444,0.0407 -0.082,0.24444 0.041,0.16295 c -0.01,0.1969 0.032,0.3372 0.1222,0.44813 l 0,0.0815 -0.1629,0 -0.4074,0.44812 -0.2037,0 0.2444,-0.85551 0.163,-0.28517 -0.041,-0.0407 0.082,-0.24444 z m 1.3851,0.0407 0.2444,0.28518 0,0.28517 c -0.1625,-0.11746 -0.2809,-0.25347 -0.4074,-0.36665 l 0.163,-0.2037 z m -7.6996,0.2037 0.2851,0.0407 -0.1629,0.48886 -0.2445,-0.0815 0.1223,-0.44813 z m 13.9734,0.0815 0.2037,0.0407 0.3259,0.48887 -0.082,0.24443 -0.2037,-0.0815 -0.082,-0.0815 0,-0.16296 -0.2037,0 c 0.013,-0.15533 0.042,-0.32188 0.041,-0.44812 z m -16.54,0.0815 -0.1222,0.36665 -0.041,1.42586 -0.6518,0.81478 0.3666,0.0815 -0.4481,0.12221 -0.082,0.24444 0.2852,0.32591 -0.041,0.20369 -0.5704,0.61109 0.082,0.97773 -0.8555,1.42586 0.2852,0.28517 -0.6111,-0.12222 0.4481,-1.54807 -1.5073,0.85551 0.2851,0.28518 -1.0184,0.44812 c -0.1112,-0.21926 -0.218,-0.41748 -0.3259,-0.65182 0,-0.0107 0.01,-0.03 0,-0.0407 l 0.1222,-0.77404 0.2851,0.0815 0.6926,0.44813 c -0.2006,-0.67951 -0.5592,-1.09062 -1.1407,-1.22217 l 0.2037,-0.69256 c 0.015,-0.0461 0.027,-0.077 0.041,-0.12221 l 0.1222,-0.0407 0.041,-0.2037 -0.082,-0.0407 c 0.068,-0.22572 0.108,-0.44975 0.163,-0.65182 l 0.1629,-0.12221 0.041,-0.2037 -0.041,-0.12221 c 0.059,-0.23984 0.045,-0.41042 0.082,-0.61109 0.2166,-0.0412 0.4501,-0.15496 0.6926,-0.36665 -0.087,0.52224 -0.036,0.8328 0.2444,0.89626 l -0.3259,0.20369 -0.041,0.0815 c -0.1805,0.11243 -0.3751,0.24349 -0.5296,0.36665 l -0.041,0.24443 0.4074,0.12222 -0.3259,1.67029 0.5703,0.12222 0.1222,-0.40739 0.4482,-0.20369 -0.2852,-0.28518 -0.2852,-0.0815 0.082,-0.2037 1.5074,0.12222 0.2037,-0.69256 -0.5296,-0.12222 0.1222,-0.40739 0.5703,0.12222 0.3667,-1.14069 0.2444,-0.16295 -0.2037,-0.0407 0.4889,-1.54808 0.3259,-0.12222 z m -6.1108,0.0407 0.2444,0.0815 -0.1222,0.36665 -0.2037,-0.0407 0.082,-0.40739 z m 24.0359,0 0.163,0.24444 0.2037,0.0815 0.3259,-0.12221 -0.041,0.16295 c -0.3962,0.0368 -0.7257,0.11789 -0.9778,0.2037 l -0.041,0 -0.1629,-0.0407 0.2852,-0.44813 0.2444,-0.0815 z m -12.018,0.0815 0.6111,0.12222 -0.1222,0.40739 -0.4889,-0.52961 z m 3.9517,0.12222 0.3259,0.0815 -0.041,0.16296 -0.2852,0.0815 0,-0.0407 0,-0.28517 z m 4.8072,0.0407 0.2037,0.0407 0,0.0407 -0.2037,0 c 0,-0.0303 0,-0.052 0,-0.0815 z m -13.8105,0.0815 0.2852,0.0815 -0.082,0.61108 -0.3667,0.12222 0.041,-0.40739 0.1223,-0.40739 z m 29.5764,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -7.4552,0.32591 0.4074,0.12222 -0.082,0.44813 -0.4074,-0.24444 0.082,-0.32591 z m -26.358,0.0407 0.4074,0.12222 -0.082,0.20369 -0.4074,-0.12221 0.082,-0.2037 z m 1.6703,0 0.2037,0.24443 -0.041,0.2037 -0.3259,-0.32591 0.1629,-0.12222 z m 18.1695,0.0407 c 0.1619,0.0875 0.2758,0.18387 0.4889,0.28517 -0.019,0.0576 -0.041,0.13961 -0.041,0.2037 l -0.5296,0 c 0.031,-0.17322 0.06,-0.33608 0.082,-0.48887 z m -3.2591,0.20369 0.163,0 0,0.0407 -0.163,-0.0407 z m -12.1402,0.2037 -0.082,0.57034 -0.041,0.24444 -0.2852,-0.0815 0.041,-0.61108 0.3667,-0.12222 z m -3.2998,0.0815 0.2444,0.0407 -0.1222,0.48886 -0.2852,-0.0407 0.163,-0.48886 z m 10.7143,0.0407 0.7333,0.16295 0,0.0815 -0.082,0.24443 -0.082,0.12222 0,0.16295 0,0.0407 -0.1222,0.28518 -0.082,0 -0.2037,-0.28518 c 0.017,-0.3233 -0.065,-0.59919 -0.163,-0.81477 z m 20.0028,0 c -0.1782,0.66667 0.096,1.38754 0.6925,2.11842 l 0.2445,-0.12222 0.1629,0.24443 -0.041,0.16296 c -0.2463,-0.0658 -0.4957,0.0124 -0.6925,0.16295 -0.042,-0.0157 -0.074,-0.0298 -0.1223,-0.0407 l -0.3666,0.12221 c 0.1402,-0.44386 0.062,-0.72708 -0.3259,-0.81478 l -0.4074,0.12222 -0.041,0.0815 -0.2852,-0.2037 c 0.2165,-0.51357 0.4453,-0.70986 0.8148,-0.61108 l 0.1222,-0.40739 -0.6111,-0.16295 0.8556,-0.65182 z m 2.4036,0.0407 0.3259,0.48887 -0.1222,0.44813 -0.2852,-0.57035 0.082,-0.36665 z m -17.9659,0.0815 0.2852,0.0815 -0.1222,0.40739 -0.2445,-0.32591 0.082,-0.16296 z m -14.2586,0.0407 0.2852,0.0407 -0.082,0.20369 c -0.1131,0.033 -0.218,0.0873 -0.3259,0.12222 l 0.1222,-0.36665 z m 15.766,0 0.7333,0 -0.082,0.2037 -0.6926,0.0815 c 0.022,-0.10671 0.02,-0.18393 0.041,-0.28517 z m -3.9924,0.0815 0.041,0 0,0.12222 -0.041,0 0,-0.12222 z m 19.6768,0 0.2037,0.0407 -0.2037,0.81478 -0.2037,-0.0407 0.2037,-0.81478 z m -28.4357,0.16295 0.5703,0.12222 -0.2444,0.69256 -0.3666,-0.61108 0.041,-0.2037 z m 2.1592,0.0407 -0.082,1.14069 0.611,0.16296 0.082,-1.18143 -0.611,-0.12222 z m 19.5546,0.12222 0.163,0.0407 -0.1222,0.44813 -0.2037,-0.0407 0,-0.0407 0.041,0 0.1222,-0.40739 z m -13.4438,0.0407 0.1222,0 0.2852,0.7333 -0.1222,0.16295 -0.163,0 -0.2037,-0.61108 c 0.01,-0.0113 0,-0.0293 0,-0.0407 l 0,-0.0407 c 0.026,-0.0655 0.056,-0.13405 0.082,-0.20369 z m 6.3145,0 0.4074,0 -0.082,0.48887 -0.3259,0 0,-0.48887 z m 4.0332,0 0.2444,0.0407 -0.041,0.16295 -0.2444,-0.0815 0.041,-0.12222 z m -25.7063,0.0815 0.082,0.0407 -0.041,0.20369 -0.082,-0.0407 0.041,-0.20369 z m 38.1724,0.0815 -0.041,0.16296 0.041,0.0407 0,-0.2037 z m -21.5509,0.0407 0.082,0 0,0.32591 -0.2037,-0.0407 0.1222,-0.28518 z m -10.918,0.24444 c 0.2732,-0.0456 0.6794,-0.0134 1.1814,0.0407 l -0.1222,0.40738 c -0.3876,-0.0877 -0.7501,0.1822 -0.937,0.77404 l -0.5704,-0.89625 c 0.053,-0.16645 0.175,-0.28029 0.4482,-0.32591 z m 14.0956,0.0407 0.3259,0 -0.1222,0.20369 -0.2037,0 0,-0.20369 z m 0.7741,0 0.082,0 0,0.20369 -0.041,0 -0.041,-0.20369 z m 15.1548,0.0407 0.4889,0.12222 -0.2852,1.01847 -0.3666,-0.48886 0.1629,-0.65183 z m -17.9658,0.0407 0.2444,0.0407 -0.2852,0.0815 0.041,-0.12222 z m 10.8365,0 0.2037,0.0407 -0.041,0.12222 -0.2444,0.12221 0,0.0815 -0.041,0 0.041,-0.0815 0.082,-0.28517 z m 9.5737,0.12222 -0.1223,0.0815 -0.082,0.16295 0.2037,0.24444 0,-0.48887 z m -13.8105,0.0815 0.4074,0.0815 -0.3259,0.44813 -0.326,-0.0815 -0.041,-0.16295 0.2852,-0.28517 z m -10.4292,0.0407 0.1222,0.0815 0,0.24444 -0.1629,-0.0407 c 0.032,-0.10244 0.017,-0.18859 0.041,-0.28517 z m 13.8512,0.0407 0.6111,0.52961 0.041,0.0407 -0.1222,0.61108 c -0.1738,-0.13018 -0.3351,-0.28385 -0.4889,-0.36665 -0.043,-0.24559 -0.071,-0.51516 -0.041,-0.81478 z m -8.5551,0.0407 0.3666,0 0,0.24444 -0.3666,0 0,-0.24444 z m -16.4585,0.0815 0.1629,0.0407 -0.1222,0.40739 -0.2852,-0.0815 0.082,-0.28517 0.163,-0.0815 z m 4.1961,0.2037 0.5296,0.12221 0,1.18143 c -0.3391,-0.0767 -0.521,-0.50905 -0.5296,-1.30364 z m 1.7925,0.16295 -0.2444,0.69256 0.6518,0.16296 0.2037,-0.69256 -0.6111,-0.16296 z m 3.0147,0.24443 c 0.5369,0.1214 0.591,1.23746 0.1629,3.29985 -0.149,0.24871 -0.3559,0.70204 -0.5703,1.14069 l -0.5704,-0.12222 -0.5296,-1.34438 c 0.3877,0.0877 0.5932,-0.0857 0.7333,-0.5296 l 0.082,-1.18143 0.2037,0.24443 0.6518,0.16296 -0.1629,-1.6703 z m 9.6958,0.0407 0.1222,0.12222 -0.2444,0.28517 -0.1222,0.44813 -0.1222,0 -0.2852,-0.0815 -0.041,-0.44813 0.082,-0.12221 0.2444,0.24443 0.3667,-0.44813 z m 5.3775,0 c 1e-4,0.30601 -0.1563,0.44816 -0.5703,0.44813 l 0,0.2037 0.4074,0 -0.3667,0.65182 -0.4073,-0.0815 0.082,-0.0815 0,-0.28517 -0.041,-0.0407 0.4073,-0.77404 c 0.1596,-0.009 0.3126,-0.0407 0.4889,-0.0407 z m -13.4438,0.0407 0.2852,0.0407 -0.4481,1.26291 -0.082,0.32591 c 0.1979,0.0814 0.3666,0.16669 0.5296,0.24443 l -0.2445,0.44813 -0.1222,-0.2037 -0.3259,0.16296 -0.2444,-0.0407 c 0.067,-0.14188 0.1305,-0.2725 0.2037,-0.48887 l -0.2037,0 0.1629,-0.48886 0.041,0.0407 0.2852,0 0.163,-1.30365 z m -8.1885,0.0815 0.5704,0.12222 -0.163,0.40739 -0.4074,-0.52961 z m 13.1587,0.0815 0.082,0.0815 -0.163,-0.0407 0.082,-0.0407 z m 4.359,0 0.3259,0 c -0.047,0.25427 -0.075,0.44865 -0.082,0.65182 l -0.611,0 0.082,-0.57034 0.2851,-0.0815 z m -3.1369,0.0815 0.082,0.48886 c -0.2042,-0.10677 -0.3488,-0.23499 -0.4481,-0.40739 l 0.3666,-0.0815 z m -1.7517,0.0815 -0.1223,0.48887 -0.1629,0 0,-0.40739 0.2852,-0.0815 z m 18.0065,0.0407 0.2037,0.0407 -0.1629,0.65182 -0.2037,-0.0815 0.1629,-0.61108 z m 0.6519,0 0.4888,0.12222 -0.4074,1.4666 -0.1629,-0.0407 c -0.083,-0.0189 -0.171,0.0209 -0.2445,0.0407 l 0,-0.36665 0.326,-1.22217 z m -21.225,0.0407 0.1222,0 0,0.0407 -0.1222,-0.0407 z m 3.5036,0.12222 c 0.081,0.0361 0.1343,0.0796 0.2036,0.12221 l -0.2444,0.0407 0.041,-0.16295 z m -12.181,0.0815 0.2852,0.0407 -0.2852,0.89626 -0.2851,-0.0407 0.2851,-0.89625 z m 1.7925,0.16295 -0.1222,0.44813 0.6111,0.12221 -0.4889,-0.57034 z m 19.5954,0 c 0.045,0.041 0.1551,0.11945 0.2037,0.16296 l -0.082,0.5296 -0.8962,2.85172 -0.5704,0.81478 0.3667,1.05921 -0.6518,-0.16296 -0.3667,2.07769 -0.5296,-0.12222 0,-0.97773 0.3259,-0.12222 0.082,-0.20369 0.163,-1.4666 0.4888,-0.57035 -0.1222,-0.12221 c 0.028,-0.0546 0.041,-0.1272 0.041,-0.2037 l 0.2037,-0.12221 -0.4074,-0.57035 0.3667,-0.12222 0.2444,0.0407 0.082,-1.14068 0.3666,-1.14069 0.5296,0.12221 0.163,-0.61108 z m 1.2629,0.0815 0.1223,0.16295 -0.163,-0.0407 0.041,-0.12221 z m 1.8333,0.12221 0.082,1.62956 0.4889,0.12222 0.2036,-0.2037 -0.2444,0.81478 c -0.1147,-0.18977 -0.1569,-0.28133 -0.2852,-0.48887 l -0.2037,0.0815 c -0.022,-0.0177 -0.055,-0.0241 -0.082,-0.0407 l -0.4073,-0.65182 0.4481,-1.26291 z m 0.5296,0 0.3666,0.0815 0,0.0815 -0.2444,0.36665 -0.2444,-0.0815 0.1222,-0.44813 z m 3.7887,0.16296 0.2037,0.0407 -0.1222,0.44813 -0.2037,-0.0815 0.1222,-0.40739 z m 1.7925,0.24443 0.2037,0.0815 0,1.05921 0,0.0407 c -0.05,0.0364 -0.1167,0.0642 -0.1629,0.12222 l -0.3667,-0.0815 0.3259,-1.22217 z m -32.1022,0.0407 0.2444,0.0815 -0.9777,3.09615 -0.2444,-0.0407 0.9777,-3.1369 z m 29.5764,0.16296 0.082,0.0407 -0.1629,0.61108 -0.2037,-0.0407 0.1222,-0.44813 0.1629,-0.16295 z m -14.0142,0.16295 0.2037,0 0,0.48887 -0.2037,0 0,-0.48887 z m 11.6921,0.0815 0.2037,0.0815 0.041,0.24443 -0.2852,-0.20369 0.041,-0.12222 z m -24.2804,0.0815 -0.1629,0.44813 0.6111,0.16295 0.1629,-0.48886 -0.6111,-0.12222 z m 27.1321,0.0407 0.2037,0.0407 0.041,0.69256 -0.4074,-0.12222 0.163,-0.61108 z m -29.0468,0.0407 0.2852,0.0407 -0.2037,0.65182 -0.2445,-0.0815 0.163,-0.61108 z m 31.5726,0.20369 0.4074,0.12222 -0.082,1.05921 -0.082,0.32591 -0.2444,-0.0815 0.082,-1.14069 c -0.055,-0.0125 -0.1121,-0.005 -0.163,0 l 0.082,-0.28517 z m -19.5546,0.24443 0.041,0 0,0.44813 -0.2037,0 0.1629,-0.44813 z m -5.5405,0.0407 0.6925,0.16296 -0.5703,1.18143 -0.3259,0.44812 -0.082,0 0.2037,-0.61108 0,-1.05921 c 0.035,-0.0284 0.048,-0.0737 0.082,-0.12222 z m 5.9479,0.2037 0.4073,0 0,0.48886 0.2445,0 0.041,-0.0407 -0.041,0.28518 -0.3259,0.0815 -0.041,-0.12221 0.041,-0.2037 -0.3667,-0.0815 -0.1629,0.0407 c 0.1408,-0.12156 0.2037,-0.25688 0.2037,-0.44812 z m 13.8919,0 0.2444,0.0407 0.1223,0.7333 -0.082,0.24443 -0.4074,-0.61108 0.1222,-0.40739 z m -11.8143,0.20369 0.082,0 -0.2037,0.89626 -0.082,0.0407 -0.2036,-0.2037 c -0.1036,0 -0.1645,0.009 -0.2445,0.0407 l 0.2037,-0.65182 0.4481,-0.12222 z m 0.7741,0 0.4888,0 0.163,0.0407 -0.2444,0.77404 -0.5296,0.32591 -0.2445,0 0.082,-0.20369 0.163,0 0,-0.2037 0.2852,-0.0815 -0.2852,-0.28517 0.1222,-0.36665 z m 2.8517,0 0.6518,0 -0.082,0.2037 -0.6111,-0.12222 0.041,-0.0815 z m -22.5286,0.16296 0.6518,0.16295 -0.4888,0.61109 -0.3667,-0.0815 0.2037,-0.69256 z m 14.9512,0.12221 0.2037,0 0.3666,0.0815 -0.4074,0.2037 -0.041,0.20369 0.041,0.12222 -0.1629,0.0407 -0.2037,0 0.2037,-0.65183 z m 20.0028,0.0407 0.2036,0.0407 -0.041,0.2037 -0.2036,-0.0407 0.041,-0.2037 z m -18.8214,0.16296 0.2444,0.0407 -0.041,0.20369 -0.2852,0.0407 0.082,-0.28517 z m 6.1923,0 0.2852,0.0407 -0.041,0.0815 -0.2445,-0.0815 0,-0.0407 z m 6.1516,0.20369 0.6518,0.12222 0.2852,0.85552 c 0.027,0.31399 0.036,0.61618 -0.041,0.93699 l -0.2037,-0.0815 0.1629,-0.44813 -0.5703,-0.12221 -0.041,0.20369 0.3259,0.81478 -0.3259,0.12222 c -0.1051,0.33293 -0.023,0.60721 0.2852,0.77403 -0.04,0.10991 -0.074,0.22001 -0.1223,0.32591 l -0.2444,0.0815 0.1222,-0.40739 -0.5703,-0.12221 -0.2445,1.75177 c -0.1707,0.17432 -0.3679,0.37121 -0.5703,0.5296 l 0.2037,-0.28517 c 0.09,-0.61375 -0.1266,-0.99034 -0.6111,-1.09995 l 0.1222,-0.40739 0.6111,0.12222 0.1222,-0.28517 -0.3259,-0.28517 0.4481,-0.12222 0,-1.18143 0.5297,-1.79251 z m -27.3765,0.0407 0.8147,0.40739 -0.3259,1.09995 -0.2852,-0.0815 -0.3259,-1.01847 0.1223,-0.40739 z m 2.485,0.0407 0.5704,0.12222 -0.082,0.20369 -0.5296,-0.12222 0.041,-0.20369 z m 32.0208,0.12222 0.2851,0.0407 -0.2036,0.69256 -0.2852,-0.0407 0.2037,-0.69256 z m -23.3027,0.0407 0.2037,0 0,0.20369 -0.2444,-0.0407 0.041,-0.16295 z m 10.144,0 0,0.0815 -0.041,0 0.041,-0.0815 z m 11.8143,0.28517 -0.3667,1.34438 -0.041,0 0.4074,-1.34438 z m -11.4884,0.0815 0.2445,0.0815 -0.082,0.2037 -0.2852,0.12221 0.1222,-0.40738 z m 10.307,0 0.041,0 c 0.027,0.19875 0.01,0.41806 -0.041,0.65182 l -0.163,-0.0407 0.163,-0.61108 z m 1.5888,0 0.1222,0.0407 0,0.2037 -0.163,-0.0407 0.041,-0.20369 z m -16.3363,0.12221 0.163,0 -0.4482,0.44813 -0.2037,0 0.4889,-0.44813 z m 3.1369,0 0.2852,0 -0.082,0.44813 -0.326,0 0.1223,-0.44813 z m -22.4471,0.2037 0.082,0.12221 -0.041,0.0815 c -0.011,-0.0687 -0.041,-0.1361 -0.041,-0.20369 z m 20.1657,0 0.5296,0 0.082,0.0815 -0.082,0.32591 -0.6111,-0.12221 0.082,-0.28517 z m -18.9028,0.0815 0.2037,0.0407 0,0.24444 c -0.066,-0.0966 -0.1384,-0.18401 -0.2037,-0.28518 z m 10.7143,0.2037 -0.082,0.28517 -0.041,0.0815 -0.041,0.12221 -0.163,-0.20369 0.3259,-0.28517 z m 19.7176,0 0.2037,0.0407 -0.082,0.16295 c -0.028,-0.0538 -0.092,-0.14667 -0.1222,-0.20369 z m -4.1554,0.0407 0.6111,0.12221 -0.082,0.24444 -0.6111,-0.16296 0.082,-0.20369 z m 7.9441,0 0.163,0.0407 -0.2852,0.97773 -0.1222,-0.0407 0.2444,-0.97773 z m -29.4542,0.0815 1.2222,0.0815 -0.2037,0.61109 -1.2629,0 0.2444,-0.69257 z m 10.918,0.0407 0.6519,0 0,0.2037 -0.1223,0 -0.611,-0.16296 c 0.029,-0.0137 0.051,-0.0271 0.082,-0.0407 z m 14.2994,0.0815 0.2852,0.40739 -0.2852,0.44813 -0.2445,-0.0407 0.2445,-0.81478 z m 1.1407,0.32591 0.1222,0.61109 -0.2852,-0.0815 0.163,-0.52961 z m 4.1553,0.0407 0.1223,0 c -0.064,0.20396 -0.057,0.39209 0,0.52961 l -0.041,0 -0.1223,0.40739 0.041,0.89625 -0.4074,0.48887 -0.2036,-0.0407 0.3259,-1.18143 -0.4482,-0.12222 0.2445,-0.81477 0.4074,0.12221 0.082,-0.28517 z m -17.2325,0.0407 0.3666,0 0,0.28517 -0.2444,0.0815 -0.1222,-0.0407 0,-0.32591 z m 0.774,0 0.4074,0 -0.1629,0.57034 -0.2445,-0.0407 -0.082,-0.0815 0.082,0 0,-0.44813 z m 2.037,0 0.4074,0 -0.1223,0.69256 c -0.1459,0.15267 -0.3487,0.24965 -0.5703,0.32591 l -0.6111,-0.44813 c 0.097,0.029 0.2025,0.0644 0.3259,0.0815 0.4141,0 0.5704,-0.19281 0.5704,-0.65182 z m -22.4471,0.0407 c 0.01,0.0179 0.071,0.0224 0.082,0.0407 l -0.082,0 0,-0.0407 z m 2.7702,0.0407 0.8148,0.20369 -0.082,0.2037 -0.8148,0.0815 c -0.02,-0.0217 -0.021,-0.0594 -0.041,-0.0815 l 0.1222,-0.40739 z m 21.4286,0 0.2852,0.16295 -0.082,0.2037 -0.2851,-0.0407 0.082,-0.32591 z m -2.3221,0.0815 0.2852,0.0815 -0.2852,0 0,-0.0815 z m -14.2993,0.36665 0.4889,0.5296 -0.2037,0.65182 -0.041,0 -0.2445,-0.32591 -0.5296,-0.12221 c -0.048,0.151 -0.1391,0.27939 -0.2444,0.36664 l -0.8555,-0.24443 c -0.047,-0.23181 -0.2222,-0.40088 -0.6111,-0.48886 l 0.041,-0.2037 0.5703,0.12222 0.2037,0.24443 c 0.1053,-0.3329 0.569,-0.44605 1.4259,-0.5296 z m 3.1776,0.32591 0.3667,0.44812 -0.6518,-0.12221 0.2851,-0.32591 z m 21.6731,0 0.1222,0.20369 c -0.02,0.075 -0.087,0.16363 -0.1222,0.24443 l -0.1222,-0.0407 0.1222,-0.40739 z m -1.3444,0.12221 0.2037,0.36665 -0.041,0.2037 -0.2444,-0.36665 c 0.023,-0.0703 0.061,-0.13194 0.082,-0.2037 z m -25.9099,0.40739 0.2444,0.0407 -0.1222,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -1.5073,0.0815 0.2037,0.0407 -0.041,0.12221 c -0.061,-0.0422 -0.1022,-0.11766 -0.163,-0.16295 z m -3.911,0.0815 c 0.1984,0.0449 0.3656,0.10692 0.5296,0.12221 l 0.4889,0.61109 0,-0.48887 -0.1222,-0.12222 c 0.1736,-0.0109 0.3316,-0.0657 0.4481,-0.12221 0.1559,0.20013 0.3052,0.42706 0.4889,0.65182 l -0.3259,0.44813 -0.1222,-0.12222 -0.082,-0.16296 -0.2852,-0.0407 -0.6518,0.28517 0.041,0.61108 c -0.1698,-0.1506 -0.3285,-0.32459 -0.4889,-0.48887 l 0.082,-0.20369 -0.3667,-0.0815 c -0.1551,-0.17217 -0.3025,-0.34479 -0.4481,-0.5296 l 0.6518,0.12221 0.163,-0.48886 z m 11.7328,0.24443 0.4481,0 0,0.48887 -0.4481,0 0,-0.48887 z m 11.6921,0 0.1629,0 0,0.12222 -0.1629,-0.12222 z m -4.4406,0.0407 0.163,0.28517 -0.041,0.16296 -0.9777,0 -0.2852,0 0,-0.0407 c 0.097,0.0219 0.1955,0.0613 0.2852,0.0407 0.1794,-0.0411 0.3596,-0.1964 0.4888,-0.40739 l 0.3667,-0.0407 z m -0.7333,0.0407 0,0.0407 -0.5296,0 0.5296,-0.0407 z m 2.1999,0.0407 c 0.1,0.0769 0.157,0.22678 0.163,0.36665 l -0.6926,0 0.163,-0.28518 0.3666,-0.0815 z m 17.1104,0.0407 0.1629,0.0407 -0.041,0.16296 -0.1629,-0.0815 0.041,-0.12221 z m -21.1435,0.0407 0.1222,0 c 0.1262,0.0632 0.2198,0.15471 0.2444,0.28518 l -0.3666,0 0,-0.28518 z m 11.692,0.44813 0.5297,0.12222 -0.082,0.24443 -0.5297,-0.12221 0.082,-0.24444 z m -13.0364,0.0815 0.163,0.12222 -0.082,0.20369 -0.082,-0.0407 0,-0.28517 z m -4.1146,0.0815 0.2444,0.0407 0.1222,0.0815 0.163,0 -0.082,0.24444 -0.3667,0.20369 -0.1222,0.0407 0,-0.0815 0.1222,0.0407 0.041,-0.20369 -0.1222,-0.28517 0,-0.0815 z m 25.421,0.0407 0.1223,0.44812 -0.1223,0.28518 0,-0.7333 z m -16.1733,0.16295 -0.041,0.2037 -0.041,0.48886 -0.937,-0.12221 -0.082,-0.0815 0.7741,-0.36665 -0.3667,-0.0815 0.6926,-0.0407 z m -3.5035,0.0407 -0.041,0.12222 -0.2852,-0.0815 0.3259,-0.0407 z m 4.7664,0 0.4481,0.0815 0,0.0407 0,0.20369 c -0.1904,-2e-5 -0.2989,0.0479 -0.4074,0.12222 l -0.041,-0.44813 z m -2.5665,0.0407 -0.1223,0.44813 -0.611,-0.0815 -0.2445,-0.24443 -0.082,0.20369 -0.2852,-0.0407 0.082,-0.24443 0.082,0 0.2037,0.0815 -0.041,-0.0815 0.2852,0 0.7333,-0.0407 z m 3.7887,0 0.1222,0.0407 -0.1222,0 0,-0.0407 z m -15.2771,0.0407 0.163,0.24443 0.2851,0 0.163,-0.12221 0.2852,0.28517 -0.326,0.36665 c -0.7618,0.018 -1.1993,0.12476 -1.2629,0.32591 l -0.082,0.20369 0.2852,0.0815 0.5296,0 -0.2444,0.28517 c -0.3068,2e-5 -0.7246,-0.15749 -1.1814,-0.36665 l 0.1222,-0.32591 -0.3667,-0.0815 -0.3259,0.16296 c -0.3253,-0.18391 -0.6735,-0.42525 -1.0592,-0.69256 0.53,0.11988 0.9408,0.021 1.2222,-0.28517 0.452,0.0971 0.8964,0.16295 1.3851,0.16295 l 0.082,0 0.1629,0.0407 0.041,-0.16295 0.1223,-0.12222 z m 1.9147,0.0815 c 0.012,0.27818 0.1751,0.47168 0.6111,0.57034 l -0.041,0.12222 -0.1629,0.0815 c -0.4017,-0.0334 -0.7787,-0.0703 -1.1,-0.0815 0.1875,-0.17418 0.4654,-0.46552 0.6926,-0.69256 z m 25.1766,0 0.1223,0.0407 -0.2445,1.01847 -0.1222,-0.0407 0.2444,-1.01847 z m -10.9587,0.0815 0.2444,0.0815 -0.082,0.28517 -0.1629,0 0,-0.36665 z m -20.8176,0.12222 c 0.2965,0.34462 0.6324,0.71226 0.9778,1.09995 l -0.7333,-0.16296 c -0.294,-0.25079 -0.5828,-0.52525 -0.8556,-0.81477 l 0.6111,-0.12222 z m -1.0592,0.24443 0.4481,0.7333 -0.3259,0 c -0.2313,-0.13531 -0.4738,-0.24993 -0.6925,-0.40739 0.047,-0.0675 0.091,-0.14685 0.1222,-0.24443 l 0.4481,-0.0815 z m 23.2212,0.16296 0.5703,0.12222 0,1.18142 -0.4481,0.12222 -0.5296,-0.12222 0.4074,-1.30364 z m 11.2846,0.12222 -0.2037,0.40738 0.082,-0.32591 0.1223,-0.0815 z m -16.2955,0.12221 0.2444,0 0,0.0815 -0.2444,-0.0407 0,-0.0407 z m -19.6769,0.12222 c 0.029,0.006 0.054,-0.005 0.082,0 l 0.082,0.0815 -0.3666,0 0.2037,-0.0815 z m 29.1691,0.0407 -0.041,0.36665 -0.2852,-0.0815 c 0.1195,-0.0874 0.2148,-0.19178 0.3259,-0.28517 z m 3.8294,0 0,0.0815 -0.041,0 0.041,-0.0815 z m -0.9777,0.0407 0.2037,0.0815 c -0.072,0.0648 -0.1697,0.10082 -0.2445,0.16296 -0.1919,0.15941 -0.368,0.33853 -0.5703,0.48887 -0.078,-0.0803 -0.1398,-0.20169 -0.2037,-0.32591 0.1573,-0.0786 0.2843,-0.16146 0.4481,-0.24444 l 0.3259,0.0815 0.041,-0.20369 c 0.01,-0.003 -0.01,-0.0377 0,-0.0407 z m -23.5471,0.20369 -1.0999,0.52961 -0.163,0 0,-0.2037 c 0.1087,2e-5 0.2966,-0.11103 0.5296,-0.28517 l 0.7333,-0.0407 z m -4.9294,0.12222 c 0.1297,0.14533 0.2302,0.25609 0.3667,0.40739 l 0,0.20369 c -0.065,-0.0425 -0.139,-0.0782 -0.2037,-0.12222 l 0.041,-0.0815 -0.163,-0.0407 c -0.08,-0.0559 -0.166,-0.10467 -0.2444,-0.16296 l 0.1629,-0.0407 0.041,-0.16295 z m 10.0218,0.0815 0.3666,0.24443 -0.082,0.0815 -0.2037,0 c 0,-0.12072 -0.037,-0.22823 -0.082,-0.32591 z m -2.037,0.32591 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 6.6405,0 0.4073,0 0,0.0815 -0.2444,0.12222 -0.1629,0 0,-0.20369 z m -3.0962,0.12221 0.4074,0.0815 -0.4074,0 0,-0.0815 z m 5.8257,0 0.2444,0.0407 0.2444,0.28517 0.081,0 0,0.40739 c -0.3615,0.0312 -0.758,0.0611 -1.1407,0.0815 l 0.3259,-0.48887 c 0.079,-0.004 0.1558,0 0.2445,0 l 0,-0.32591 z m -6.4775,0.32591 0.6518,0 0,0.48887 -1.0185,0 0.3667,-0.48887 z m 8.1885,0.0407 0.2852,0.0815 -0.041,0.12222 c -0.1063,0.0146 -0.2176,0.0272 -0.3259,0.0407 l 0.082,-0.24444 z m 9.4107,0.0407 c -0.02,0.28762 -0.042,0.56161 0.041,0.77404 l -0.163,0.0815 -0.1222,0.40739 -0.3259,-0.44813 0.5703,-0.81478 z m -12.0587,0.0407 c 0.01,-0.004 0.03,0.004 0.041,0 l 0.041,0.0407 -0.082,0.24443 -0.2445,-0.0407 c 0.043,-0.0934 0.1038,-0.18419 0.2445,-0.24443 z m -8.6367,0.16296 0.6518,0 0,0.20369 -0.6518,0.20369 0,-0.40738 z m 1.0185,0 0.4889,0 0,0.20369 -0.4889,0 0,-0.20369 z m 3.585,0 0.3667,0 -0.3667,0.40738 -0.4888,0 0.4888,-0.40738 z m -15.1548,0.20369 0.041,0 0,0.20369 -0.4482,0 0,-0.0407 0.4074,-0.16296 z m 3.3405,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 4.9702,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 3.9109,0 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 18.0473,0.0407 0.082,0 0,0.0407 -0.082,-0.0407 z m -2.7295,0.0815 0.041,0 -0.1629,0.48886 -0.5296,-0.12221 0.041,-0.0815 c 0.1755,-0.0707 0.4149,-0.20083 0.6111,-0.28517 z m 5.2961,0 c 0.072,0.0901 0.1611,0.14842 0.2444,0.24443 l 0,0.0407 -0.4074,-0.0815 c -0.029,-0.0236 -0.055,-0.0578 -0.082,-0.0815 l 0.2445,-0.12221 z m -32.6318,0.28517 0.6518,0 0,0.24443 -0.6518,0 0,-0.24443 z m 2.9332,0 0.3666,0 -0.3666,0.5296 0,-0.5296 z m -3.5443,0.24443 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 9.3292,0 0.6111,0 1.0184,0.28517 1.2222,-0.28517 1.3036,0 0,0.48887 -5.1738,0 0,-0.2037 1.0185,-0.28517 z m 4.522,0 4.6035,0 -0.4481,0.48887 -0.2037,-0.2037 -1.0185,0.2037 -2.4851,0 -0.4481,-0.48887 z m 5.459,0 0.5703,0 0,0.28517 -0.5703,0 0,-0.28517 z m 15.3178,0 c -0.021,0.0666 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.16296 0.041,-0.0407 z m -30.5134,0.28517 1.0185,0 0,0.2037 -1.0185,0 0,-0.2037 z"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.22999998;fill:#8ae234;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <path
+       id="path3642"
+       d="m -472.47391,201.66985 -2.5665,0.48887 0,1.34438 0.5703,-0.61108 0.6519,0 0,0.20369 -1.2222,0.40739 0,2.07769 0.2037,0 -0.2037,0.28517 0,0.85551 c -0.1242,0.11339 -0.1889,0.18925 -0.2852,0.28518 l 0,0.48886 c 0.096,-0.0462 0.1848,-0.0603 0.2852,-0.12221 l 0,0.7333 -0.2852,0.24443 0,8.55516 0.6111,2.24064 0.082,0.57034 c -0.028,0.0807 -0.061,0.16777 -0.082,0.24444 0.066,0.0489 0.108,0.10817 0.163,0.16295 l 0,0.16296 -0.2445,-0.0815 c -0.024,-0.006 -0.057,-0.001 -0.082,0 0.036,-0.12665 0.062,-0.25692 0.1222,-0.36665 l -0.1629,-0.61108 -0.4074,0.0815 0,3.8702 c 0.014,-0.002 0.027,0.004 0.041,0 l 0.2037,-0.0407 0.041,-0.0407 0,0.85551 c -0.09,0.26172 -0.1903,0.5021 -0.2852,0.69256 l 0,0.97774 0.2444,0.0815 -0.041,0.16295 -0.2037,-0.0815 0,11.12171 0.163,-1.18142 0.1222,0.0407 0,1.01848 0.2037,0 0.4889,0.5296 c -0.1,0.0821 -0.1897,0.19341 -0.2445,0.36665 l -0.2036,-0.24443 -0.082,0 -0.163,-0.65182 0,0.57034 -0.041,0 -0.2444,0.12222 0,0.89625 0.2851,-0.12221 0,0.32591 -0.1222,-0.0407 -0.1222,0.40739 0.2444,0.0407 0.3667,-0.12222 0,0.24443 -0.3667,0 0,0.85552 -0.2851,0.0815 0,0.20369 0.2851,-0.0815 0,0.0815 c 0.4141,4e-5 0.5704,-0.14215 0.5704,-0.44813 l -0.2037,-0.20369 0.5296,0 -0.1222,0.0815 -0.082,0.24443 0.1222,0 0,0.0815 0.2037,0.24443 0,0.28517 -1.0185,0 0,0.24444 3.3813,0 c 0.2347,-0.63833 0.527,-0.97774 0.937,-0.97774 l 0,-0.40739 -0.5703,0 -0.2852,0.2037 -0.1629,0 -0.2445,-0.32591 0.082,-0.24444 -0.2444,0.0815 -0.6518,0 -0.3259,0.12222 0,-0.0407 -0.3667,-0.0815 -0.2852,0.2037 -0.4481,-0.2037 0,-0.24443 1.0592,0 0,-0.2037 -0.2037,-0.20369 0,-0.24443 0.4889,0.16295 -0.082,0.2037 0.5703,0.12221 0.2852,-0.0407 0.6111,0.2037 -0.082,0.24443 0.2852,0.0815 0.5703,-0.0407 0.6518,0.24443 0,0.2037 c -0.3219,6e-5 -0.8163,0.38652 -1.3851,1.18143 l 18.5769,0 c 0.082,-0.0802 0.1634,-0.16304 0.2445,-0.24444 0.212,0.0756 0.504,0.16494 0.7333,0.24444 l 1.4666,0 -0.2445,-0.40739 1.1407,0.0815 0.2037,0.0815 -0.041,0.16296 -0.5296,0.0815 0.7333,0 7.8626,0 0.041,-0.16296 c 0.061,0.0307 0.1356,0.0557 0.2037,0.0815 l -0.041,0.0815 1.3036,0 0.3667,-0.24444 -0.041,0.24444 2.5665,0 0.082,-0.24444 0.2445,0.0407 -0.082,0.2037 0.4481,0 0,-1.34439 -0.082,0.24444 -0.2444,-0.0407 0.1222,-0.40739 0.2037,0.0815 0,-9.04403 -0.1222,-0.0407 0.1222,-0.57034 0,-1.71104 -0.2852,0.0815 -0.041,0.20369 0.2037,0.32592 -0.6111,1.09995 -0.2037,-0.0407 0.937,-3.50355 0,-1.58881 -0.2852,0.12221 -0.041,1.05922 -0.6518,2.36285 -0.5703,0.28517 1.1814,-4.3998 0.3667,0.57035 0,-1.34438 -0.163,-0.0407 0.163,-0.57035 0,-1.83325 c -0.2598,-0.39208 -0.5239,-0.78277 -0.8148,-1.14068 l 0.8148,0.0407 0,-1.22216 -0.2037,0.85551 -0.2445,-0.0815 0.3259,-1.18143 0.1223,0.0407 0,-3.54428 -0.082,0.28517 -0.4482,-0.12222 0.5296,-2.03694 0,-7.98482 -0.041,0.12222 -0.8147,0 -0.6519,-0.36665 -0.8147,0 0.041,-0.2037 -0.326,-0.5296 0.082,-0.28517 0.2037,0.0407 0.8556,0.77403 0.2851,-0.16295 0.082,-0.28517 c -0.3162,-0.38756 -1.7549,-1.08882 -4.3183,-2.07769 l -1.0999,0 2.811,1.18143 -0.1223,0.40739 0.2852,-0.16296 0.6926,0.2037 -0.4889,0.81478 -0.2037,-0.0407 -0.1629,-0.28517 -0.2445,-0.0407 -0.3666,0.12221 0.1222,-0.40739 0.3666,-0.16295 0,-0.0407 -0.2444,-0.28517 -0.2444,-0.0815 -0.2852,0.20369 -0.2444,-0.0407 -0.6926,-0.48887 -0.5703,0.36665 -1.5481,-1.26291 -1.8333,0 -0.082,0.32592 -0.2444,-0.0407 0.082,-0.28518 -3.2998,0 1.0184,1.54808 0.2037,0.0407 -0.1629,0.69256 -0.4482,-0.12222 -0.082,0.2037 c 0.3277,0.0876 0.5625,0.55849 0.6926,1.38512 l -0.1629,0.69256 -0.2445,-0.0815 0.1222,-0.44812 -0.7333,-0.2037 -0.1629,0.44813 0.4888,0.12222 -0.2444,0.89625 -0.4889,-0.12222 -0.2036,0.937 0.4481,0.12221 -0.1222,0.40739 -0.4482,-0.12221 -0.1222,0.40738 0.4481,0.12222 -0.1629,0.69256 c -0.4097,-0.10952 -0.6971,0.12321 -0.937,0.69256 -0.022,0.0836 -0.038,0.17515 -0.041,0.24444 l -0.2444,-0.28518 -0.2037,0.28518 c -0.01,-0.0895 -0.01,-0.18894 0,-0.28518 l 0.2037,0 0,-0.20369 -0.163,-0.16296 c 0.014,-0.071 0.021,-0.12963 0.041,-0.20369 l 0.5296,0.16296 0.163,-0.65183 -0.4074,-0.61108 0.937,-1.38512 -0.2037,-0.0407 0.2852,-0.16296 0.082,-0.28517 -0.2037,-1.4666 0.6518,-0.24443 -0.2444,-0.0815 0.4481,-0.61108 c 0.1537,-1.06752 -0.199,-1.68478 -1.0592,-1.91473 l 0.2851,-0.16295 0.082,-0.24444 -1.5888,0 0,0.0815 0.6926,0.16296 -0.937,0.7333 c 0.085,-0.31635 0.049,-0.64018 -0.041,-0.97774 l -1.5888,0 -0.2037,0.69257 -0.2445,-0.0407 0.163,-0.65183 -0.937,0 0.2444,0.48887 -0.082,0.44813 -0.3666,-0.57035 0.082,-0.36665 -0.4481,0 -0.8555,3.09616 c -0.097,-0.0451 -0.1796,-0.0767 -0.2852,-0.12222 l -0.041,0 -0.163,-0.24443 0.2852,-0.12222 0.082,-1.18143 0.3666,-1.42586 -0.4888,0 -0.6111,2.36286 -0.2444,0 0.611,-2.36286 -2.6072,0 -0.041,0.16296 0.4481,0.12222 -0.2852,1.05921 c -0.9988,-0.37944 -1.8221,-0.65179 -2.4443,-0.65182 -0.1476,0.37417 -0.4355,0.62501 -0.7741,0.77403 -0.016,-0.069 -0.022,-0.13369 -0.041,-0.20369 l -0.041,-0.2037 0.5704,-0.0815 0,-0.28517 c 0,-0.2009 -0.2546,-0.36699 -0.774,-0.48887 l -0.041,-0.2037 -0.9778,0 c 10e-4,0.0136 0,0.0271 0,0.0407 l 0,0.24444 c -0.2787,-0.13728 -0.624,-0.21604 -1.0185,-0.28518 l -1.711,0 0,0.16296 -0.2444,0.0815 -0.081,-0.24444 -0.5296,0 0.041,0.12222 -0.163,0.16296 -0.082,-0.28518 -2.7295,0 -0.2037,0.97774 -0.3259,0 0,-0.48887 c 0.085,-0.17617 0.1553,-0.35747 0.2037,-0.48887 l -2.4036,0 z m 36.2576,12.83275 0,-0.937 -0.041,0.0407 -0.1629,0.61108 0.2037,0.28518 z m -34.3428,-12.75127 -0.2852,0.44813 -0.4889,0.0815 0.082,-0.28517 0,-0.12222 0.6926,-0.12222 z m 13.4845,0.0407 0.4482,0.12222 -0.041,0.24443 -0.4482,-0.12222 0.041,-0.24443 z m -16.2955,0.36665 0,0.48887 -0.4481,0 0.4481,-0.48887 z m 7.8218,0 0.082,0.0407 0.2037,0.89625 c -0.2224,-0.0204 -0.4372,-0.0455 -0.611,-0.0815 l 0.2036,-0.65182 -0.041,-0.16296 0.163,-0.0407 z m 1.4666,0 0.4074,0.48887 -0.4074,0 0,-0.48887 z m -2.5665,0.16296 0.082,0.28517 -0.1222,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.1516,0.0407 0.4482,0 0,0.28517 -0.4482,0 0,-0.28517 z m 5.2146,0 0.2037,0 0,0.28517 -0.2037,0 0,-0.28517 z m -2.9739,0.28517 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24443 -0.163,0 c 0.038,-0.0691 0.088,-0.17949 0.1222,-0.24443 z m 13.0364,0 0.2037,0.0815 -0.163,0.65183 -0.3259,-0.57035 0.2852,-0.16295 z m 11.8143,0.0407 0.4481,0.12221 -0.1222,0.48887 -0.4889,-0.12222 0.163,-0.48886 z m -5.8257,0.16295 0.2444,0.0407 -0.1629,1.58882 -0.2852,0.16295 -0.1222,0.48887 -0.5296,2.52581 -0.6518,-0.65182 1.0999,-2.64803 -0.2444,-0.28517 0.082,-0.2037 0.5703,-1.01847 z m 0.9777,0.0407 0.5704,0.12222 -0.2852,0.16295 -0.082,0.2037 -0.774,3.87019 -0.2852,0.16295 -0.082,1.14069 -0.2037,0.77404 -0.5703,0 0.1629,-0.57034 c 0.2449,-0.0956 0.4481,-0.21289 0.4481,-0.36665 l -0.2851,-0.28517 1.3851,-5.21458 z m -17.7214,0.20369 0.2445,0 0.041,0.16296 -0.082,0.0407 -0.1222,0 -0.082,-0.2037 z m 14.5438,0.12222 0.2037,0.0407 -0.082,0.44813 -0.2444,-0.0815 0.1222,-0.40739 z m 12.6291,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2445,-0.0815 0.1222,-0.40739 z m -29.8209,0.0407 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m -2.0777,0.20369 1.0592,0 c -0.029,0.0977 -0.082,0.18869 -0.1222,0.28518 l -0.937,0 0,-0.28518 z m 11.855,0 0,0.52961 -0.4888,0 0.4888,-0.52961 z m 24.3619,0.16296 c -0.074,0.27638 0.1417,0.51307 0.5703,0.65182 l 0,-0.5296 -0.5703,-0.12222 z m -6.0701,0.32591 0.4481,0.12222 -0.3666,1.30364 -0.4482,-0.12222 0,-1.18142 0.3667,-0.12222 z m -17.0696,0.44813 0,0.48886 -0.2037,0 -1.6703,0.24444 c 0.035,-0.18639 0.075,-0.37491 0.082,-0.57035 l 1.7925,-0.16295 z m 0.3667,0 0.6518,0.20369 0,0.28517 -0.8555,0 0.2037,-0.28517 0,-0.20369 z m 1.0184,0 0.041,0 0.2852,0.44812 -0.041,0.0407 -0.2852,0 0,-0.48886 z m 1.8333,0 -0.082,0.32591 -0.2852,0.0407 0.1222,-0.32591 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.2662,0 0.6518,0.36665 -0.082,0.20369 -0.4481,0.85552 c -0.076,0.61311 0.1199,0.99045 0.5296,1.09995 l -0.1222,0.40739 -0.5296,-0.12222 -0.082,0.28517 0.2444,0.28517 -0.3667,0.12222 0.041,1.18143 -0.4888,1.79251 -0.5296,-0.12222 -0.4074,-1.30364 0.1222,-0.48887 0.2444,0.0407 -0.1222,0.48887 0.4481,0.12221 0.041,-0.20369 -0.2851,-0.81478 0.2851,-0.12222 c 0.1186,-0.44346 -0.079,-0.76488 -0.5703,-0.89625 l 0.6518,-0.28517 -0.1222,0.40739 0.4889,0.12221 0.3666,-3.21837 0.041,-0.20369 z m -20.4917,0.12221 0.2445,0.0407 0.1222,0.48887 -0.3259,-0.0815 0,-0.36665 -0.041,-0.0815 z m -7.7404,0.0815 0.4482,0 -0.4482,0.52961 0,-0.52961 z m 1.3037,0 0.8148,0 c -0.013,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2573,0.20542 -0.343,0.30401 -0.5704,0.48887 l -0.2037,-0.24444 0,-0.28517 z m 1.3036,0 0.3667,0 0.4074,0 0,0.2037 -0.082,-0.0815 -0.4889,0.12221 0,0.24444 -0.082,0.0407 -0.2037,-0.24444 -0.082,0 0.1629,-0.28517 z m 1.1407,0 0.6111,0 -0.041,0.28517 -0.5703,0 0,-0.28517 z m 7.2923,0 0.6518,0 -0.082,0.24443 0.1222,0.44813 -0.2852,0.0407 -0.4073,-0.65182 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24443 -0.2037,0.0407 -0.082,-0.28517 z m 21.1434,0 0.8148,0 0.2445,0.0407 -0.082,0.20369 -1.1,0.16296 0.1222,-0.40739 z m -12.9142,0.0815 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m 5.2553,0 -0.082,0.20369 0.4889,0.12222 0.041,-0.20369 -0.4481,-0.12222 z m 10.144,0.36665 0.4889,0.12222 0.4074,0.57034 -0.6518,0.32591 0.2851,0.0815 -0.6111,1.01847 c -0.3276,-0.0876 -0.3629,-0.37134 -0.2444,-0.81478 l 0.2852,-0.16295 0.041,-0.2037 0,-0.93699 z m -1.3851,0.28517 0.2444,0.0815 0.041,0.7333 -0.4481,-0.12222 0.163,-0.69256 z m -25.5025,0.0407 0,0.40739 -0.2852,0 -0.082,-0.32591 0.3666,-0.0815 z m 23.9137,0.0407 0.2444,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -24.7285,0.0815 0.082,0.28517 -0.2444,0 0,-0.24443 0.1629,-0.0407 z m -8.2293,0.0407 1.0185,0 c -0.101,0.0837 -0.1917,0.16587 -0.2852,0.24443 l -0.7333,0 0,-0.24443 z m 2.0777,0 0.4481,0 0,0.24443 -0.611,0 0.1629,-0.24443 z m 7.8626,0 0,0.24443 -0.2037,0 -0.041,-0.16296 0.2445,-0.0815 z m 3.748,0 0.4074,0 0,0.24443 -0.4074,0 0,-0.24443 z m 1.0592,0 0.8148,0 0,0.24443 -0.8148,0 0,-0.24443 z m 22.3656,0.0407 0.4482,0.12222 0.2851,0.28517 0.081,-0.40739 0.2445,0.0407 -0.1222,0.44813 -0.2037,-0.0815 0.1629,0.28518 -0.1222,0.48886 c -0.3277,-0.0875 -0.616,0.14207 -0.774,0.7333 l -0.3667,-0.61108 0.3667,-1.30365 z m -31.0022,0.0407 0.2851,0.2037 -0.2037,0.0815 -0.082,-0.28518 z m -4.7257,0.0815 0.041,0.0815 -0.1223,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.98,0.0407 0.5296,0.16296 -0.041,0.20369 -0.5296,-0.12222 0.041,-0.24443 z m -20.4917,0.0407 0.3667,0 0,0.28517 -0.3667,0 0,-0.28517 z m 3.5443,0 0.2037,0 c 0.2933,0.10004 0.5027,0.25431 0.6518,0.48887 l -0.082,0.12221 c 0.049,0.098 0.1129,0.18842 0.163,0.28517 l -0.3667,0 0,0.24444 0.5296,0.0815 c 0.074,0.13781 0.168,0.27232 0.2445,0.40739 l -1.7925,0 0,-0.20369 c 0.5521,1e-4 0.8147,-0.22358 0.8147,-0.52961 l -0.3666,-0.40738 0,-0.48887 z m -9.2885,0.0407 0.1223,0.44813 -0.2037,0.0407 -0.082,-0.32591 0.1629,-0.16295 z m -3.5035,0.0815 0.082,0.44812 -0.4481,0.12222 -0.041,-0.16296 0.3259,-0.0407 0,-0.32592 0.082,-0.0407 z m 1.6296,0.0407 c 0.2851,1.06671 0.7124,1.54315 1.3036,1.38513 l 0.082,0.16295 -0.163,0.24443 -0.2444,-0.12221 c -0.5964,0.73087 -0.8708,1.45177 -0.6926,2.11842 l -0.8555,-0.65182 0.6111,-0.16296 -0.1222,-0.40739 c -0.3695,0.0988 -0.5984,-0.0975 -0.8148,-0.61108 l 0.9777,-0.7333 -0.4481,-0.93699 -0.041,-0.16296 0.4074,-0.12222 z m 23.5878,0.24444 0.4481,0.12221 -0.082,0.24444 -0.4481,-0.12222 0.082,-0.24443 z m -14.9512,0.0815 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 4.6035,0 0,0.0815 -0.041,0.16296 -0.2037,-0.0407 0.2444,-0.20369 z m -10.5514,0.0407 c 0.1566,0.12931 0.3291,0.24634 0.5704,0.36665 l 0,-0.16295 0.082,0.36665 0,0.0815 -0.4482,0.12221 -0.2037,-0.77404 z m 23.2212,0.0407 0.4481,0.12222 0,0.97773 -0.2852,0.12222 -0.041,0.20369 -0.1629,1.4666 -0.4074,0.57035 0.2037,0.24443 -0.3259,0.20369 0.3666,0.57035 -0.2852,0.12221 -0.2444,-0.0407 -0.041,1.14068 -0.3259,1.14069 -0.4481,-0.16295 -0.2037,0.69256 c 0.013,0.0242 0.029,0.0565 0.041,0.0815 l -0.1222,0.0815 0.1629,0.0407 c 0.083,0.20379 0.1422,0.44083 0.163,0.69256 l -0.041,0.2037 -0.163,-0.24444 -0.2852,-0.0815 -0.041,0.0407 0.2445,-1.54807 0.774,-2.85172 0.4481,-0.81478 -0.2851,-1.05921 0.5296,0.16295 0.3259,-2.07768 z m -28.4358,0.0407 -0.041,0.44813 -0.2851,0.0815 -0.2852,-0.16296 -0.2037,0.0815 0.3667,0.48887 -0.4889,0.61108 -0.3259,-0.48887 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48886 -0.163,0 -0.2037,0.28517 -0.2037,0 0.3667,-0.61108 1.2629,-0.2037 z m 4.8072,0 0.163,0.65182 -0.2037,0.0407 -0.2037,-0.61108 0.2444,-0.0815 z m -7.0885,0.28517 0.2037,0 0,0.28518 -0.2037,0.24443 -0.2445,0 0,-0.32591 c 0.078,-0.065 0.1634,-0.13004 0.2445,-0.2037 z m 32.5911,0.40739 1.5073,1.34438 -0.1222,0.44813 -0.5296,-0.16295 -0.4889,1.79251 -0.2037,-0.0407 0.4074,-2.48507 -0.2852,0.12221 -0.3259,-0.0815 0.041,-0.937 z m 4.4812,0 0.7741,0 -0.1222,0.40739 -0.6926,-0.20369 0.041,-0.2037 z m -27.4172,0.12222 0.041,0 0.2037,0.20369 -0.163,0.0407 -0.082,-0.24443 z m 3.422,0 0.5704,0 0,0.20369 -0.5704,0 0,-0.20369 z m 5.4998,0 0.041,0 0,0.20369 -0.082,0 0.041,-0.20369 z m 0.5296,0.16295 c -0.014,0.0596 -0.024,0.0992 -0.041,0.16296 l 0.4074,0.12222 c -0.1395,0.12917 -0.3455,0.16298 -0.6518,0.16295 l -0.2037,0 0,-0.20369 0.4888,-0.24444 z m -4.6442,0.0407 0.6518,0.2037 0,0.44813 c -0.414,0 -0.6518,0.1829 -0.6518,0.48886 l -0.163,0 c 0,-0.45892 -0.1313,-0.73325 -0.4074,-0.7333 l 0,-0.20369 0.5704,-0.2037 z m 11.4476,0.0407 0.3259,0.61109 -0.041,0.20369 -0.3259,-0.61108 0.041,-0.2037 z m -18.0881,0.0407 0.5704,0.28517 0.6518,2.36286 0,0.0815 -0.3667,-0.5296 -0.2037,0 0.5704,0.85552 0.041,0.65182 0.2852,0.12221 -0.3667,0.57035 -1.1814,-4.3998 z m 15.4401,0 0.2444,0.0407 -0.2852,1.09995 -0.2444,-0.0407 0.2852,-1.09995 z m -7.0886,0.12222 0.5703,0.20369 0,0.24444 -0.774,0 0.2037,-0.24444 0,-0.20369 z m -9.2885,0.20369 0.4889,0.48887 0.041,0.16295 -0.4889,0.12222 -0.1629,-0.65182 0.1222,-0.12222 z m 1.9962,0.12222 0.3259,0.32591 0,0.0815 0.082,0.0407 0.2037,0.24443 -0.1629,0.16295 0.6518,2.36286 -0.2852,-0.16296 -0.8147,-3.05541 z m -7.8218,0.0815 0.082,0.36665 -0.2037,0.0407 -0.082,-0.36664 0.2037,-0.0407 z m 2.4443,0.20369 -0.082,0.61108 0.082,0.24444 0.2444,0.16295 c -0.7759,0.20744 -1.0756,0.74803 -0.937,1.71103 l 0.3667,0.57035 -0.2037,0.0407 0.5703,0.24443 -0.1629,1.30364 0.082,0.28518 0.2444,0.12221 -0.2037,0.0407 0.5704,0.85552 c -0.141,0.11253 -0.2864,0.23952 -0.4481,0.40739 l -0.082,-0.2037 -0.4074,0.12222 -0.082,-0.36665 0.4073,-0.12222 -0.2036,-0.81477 -0.4482,0.12221 -0.2037,-0.81478 0.4074,-0.12221 -0.1222,-0.44813 -0.6518,0.20369 0.082,0.44813 -0.2037,0.0407 -0.163,-0.61108 c 0.1174,-0.74569 0.3563,-1.18391 0.6519,-1.26291 l -0.082,-0.16295 -0.4074,0.0815 -0.163,-0.61109 0.2037,-0.0407 1.3444,-2.03694 z m 31.3282,0.20369 0.2444,0.0407 0.2445,0.28518 0.2851,-0.12222 0.6926,0.16295 0.4481,2.28138 -0.041,0.2037 0.2852,0.0815 0.2852,-0.12221 0.2444,0.0407 -0.6926,2.64802 c -0.6158,-0.32291 -0.8481,-0.90564 -0.611,-1.79251 l -0.2037,-0.0815 0.2851,-0.12221 0.1223,-0.48887 0.082,-1.18143 -0.5704,-0.12221 -0.6925,2.68876 0.2444,0.28517 -0.3667,0.12222 -0.041,0.2037 0.2037,2.19989 -0.8147,0 c -0.1161,0.56732 -0.1894,1.0843 -0.2445,1.50734 -0.1694,0.10755 -0.2849,0.39717 -0.4074,0.85552 l -0.3259,0.12221 -0.4481,-0.12221 -0.163,-0.937 0.5704,-0.48886 0,-0.12222 c 0.055,0.0879 0.1486,0.16719 0.2852,0.2037 l 0.2037,0.0407 0.082,-0.20369 0.2444,-1.87399 0.3666,-0.5296 0.7333,-3.62576 0.2445,-0.89626 -0.4482,-0.12221 -0.3666,1.34438 -0.3667,0.12222 0.2445,0.28517 -0.1222,0.48886 -0.5296,-0.16295 0.8147,-3.09616 z m -9.207,0.12222 0.2037,0.0407 -0.2444,0.89626 -0.2852,0.16295 -0.2037,-0.0815 0.5296,-1.01847 z m 6.0701,0 0.2037,0.0407 -0.082,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -24.9729,0.0815 0.2037,0.81478 -0.2037,0.0407 -0.2445,-0.77404 0.2445,-0.0815 z m -6.7219,0.0407 0.041,0 0.1222,0.44813 -0.2037,0.0407 -0.041,-0.12221 c 0.028,-0.10614 0.05,-0.23043 0.082,-0.32591 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.2614,0.0407 0.2444,0.0407 -0.2037,0.69256 -0.2037,-0.0407 0.163,-0.69256 z m -26.5618,0.0407 0.1222,0.44812 -0.3259,0.48887 -0.082,-0.36665 0.2852,-0.57034 z m 13.892,0.0815 0,0.0407 -0.3259,0.2037 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1891,-0.0178 0.3782,-0.0562 0.5296,-0.0815 z m -11.7328,0.24444 0.1222,0.12221 -0.2037,0.0815 -0.041,-0.16295 0.1222,-0.0407 z m 27.1321,0.12221 0.774,0.2037 -0.041,0.24443 -0.774,-0.20369 0.041,-0.24444 z m -8.7182,0.0407 0.5704,0.16296 -0.082,0.20369 -0.5296,-0.12221 0.041,-0.24444 z m -15.4807,0.0407 0,0.61108 0.4481,0 c 0,0.33786 0.036,0.62663 0.1222,0.81478 -0.2101,0.0426 -0.4005,0.0946 -0.5703,0.16296 l 0,-0.0407 -0.3667,-0.40739 -0.6518,0.20369 c 0,-0.11014 -0.034,-0.20771 -0.082,-0.28517 l -0.2444,-0.89625 1.3443,-0.16296 z m 2.8924,0 0.2852,0.2037 0.2037,0 1.874,-0.2037 0,0.2037 -0.2852,0.65182 c 0.3992,-0.22119 0.701,-0.47342 0.8148,-0.77404 0.071,0.0934 0.1312,0.19369 0.2037,0.28517 l -0.3667,0.0407 0,0.44813 0.4074,0 0.2445,0.28517 0.1629,-0.24443 c 0.093,0.10678 0.1891,0.22207 0.2852,0.32591 l 0.041,0.16295 -0.2037,-0.20369 -0.2444,0.12221 0.041,0.69257 -0.2445,0.12221 -0.081,0.16296 -0.6518,-0.12222 c -0.065,-0.12871 -0.1069,-0.24434 -0.1222,-0.36665 l 0.3259,0 0.3666,0.0815 0.041,-0.2037 -0.2851,-0.5296 c -0.2712,-0.0725 -0.5058,-0.0647 -0.7333,-0.0815 l -0.2037,-0.20369 -0.082,0.16295 c -0.064,0.002 -0.1437,-0.007 -0.2037,0 l -0.5296,-0.61108 -1.0592,0.20369 -0.7741,-0.20369 -0.4481,0.44813 -0.163,-0.24444 0,-0.20369 c 0.2416,3e-5 0.4327,0.0163 0.6111,0 0.5354,-0.049 0.7741,-0.17787 0.7741,-0.40739 z m 16.2956,0 0.2444,0.0815 -0.2444,0.89625 -0.2445,-0.0815 0.2445,-0.89626 z m -19.9621,0.40739 0,0.44813 0.4074,0 0,-0.44813 -0.4074,0 z m -1.548,0.0815 0.2444,0.28517 -0.2037,0.36665 -0.163,-0.52961 0,-0.0815 0.1223,-0.0407 z m -10.5107,0.12221 0.041,0.32591 -0.1629,0.0407 0.1222,-0.36665 z m 21.8361,0 0.1629,0 0,0.24444 -0.1629,0 0,-0.24444 z m -16.6622,0.0407 0.5296,0.937 0.041,0.16295 -0.2037,0.28517 0.774,1.83325 -0.5296,0.32591 -0.2852,-1.50733 -0.1222,-0.44813 -0.2444,-0.12222 -0.163,-1.42586 0.2037,-0.0407 z m -0.8963,0.0407 1.1407,4.23684 -0.3259,-0.0815 0,-0.0815 -0.2852,-0.16296 -0.6925,-3.4628 -0.041,-0.2037 -0.2852,-0.12221 0.4888,-0.12222 z m 19.8806,0.0815 0.2444,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -7.7811,0.0815 0.6518,0 0,0.20369 c -0.1266,0.0362 -0.2233,0.0983 -0.3259,0.16296 l -0.3259,-0.0815 0,-0.28517 z m -9.207,0.12221 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 15.1141,0.0407 0,0.12222 -0.082,0 0.082,-0.12222 z m 9.981,0.24444 0.2444,0.0407 -0.1629,0.48887 -0.2037,-0.0407 0.1222,-0.48886 z m 5.2553,0 0.2445,0.0407 -0.163,0.48887 -0.2037,-0.0407 0.1222,-0.48886 z m -22.8137,0.0815 0.3666,0 c -0.096,0.17536 -0.2074,0.27297 -0.3666,0.28518 l 0,-0.28518 z m 7.1293,0 0.1629,0 0,0.2037 -0.1629,0 0,-0.2037 z m -1.5074,0.0407 0.2852,0.0815 -0.2852,0 0,-0.0815 z m 4.7257,0.0815 0.3259,0.61108 -0.1222,0.40739 -0.4481,-0.12221 0.2444,-0.89626 z m 1.0185,0.28517 0.2037,0.0407 c -0.079,0.29569 0.1603,0.56117 0.6518,0.69256 l -0.2444,0.89626 c -0.1374,-0.16029 -0.2848,-0.28993 -0.4481,-0.40739 l 0.041,-0.2037 -0.4482,-0.12221 0.2445,-0.89626 z m -5.8664,0.0407 0.1222,0 0.082,0.0407 -0.1222,0.44813 -0.1629,-0.0815 0.082,-0.40739 z m 3.3813,0 0.5704,0 -0.082,0.2037 -0.2445,0 c -0.09,-0.0653 -0.1747,-0.12663 -0.2444,-0.2037 z m -7.4144,0.12222 c -0.014,0.0405 -0.029,0.0791 -0.041,0.12221 l -0.1223,-0.0407 0.163,-0.0815 z m -15.603,0.16295 0.082,0.16296 0.3259,2.9332 0.4074,-0.12222 -0.1222,-0.36665 0.611,0.24443 c -0.4434,0.11852 -0.6364,0.41477 -0.5296,0.81478 l 0.2445,0.12222 -0.2445,0.7333 0.041,0.20369 0.4482,-0.12221 -0.1223,-0.44813 0.2037,-0.0407 0.1223,0.44813 -0.3667,1.14068 -0.3666,-0.0815 c -0.056,0.0711 -0.069,0.13431 -0.1223,0.20369 l -0.4481,-1.58881 0.041,-1.09995 -0.3259,-0.0815 0.2037,-0.28517 -0.041,-0.24444 -0.4889,0.12222 -0.082,-0.16296 0,-0.0815 0,-0.16296 c 0.3324,-0.11704 0.5134,-0.41156 0.4482,-0.93699 l -0.4482,-0.77404 -0.041,-0.16296 0.5704,-0.36665 z m 31.1652,0 0.5296,0.12222 -0.2037,0.69256 -0.5296,-0.12222 0.2037,-0.69256 z m -28.9246,0.28518 -0.4074,0.0815 0.041,0.2037 0.4074,-0.12222 -0.041,-0.16295 z m 4.7257,0 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 8.5144,0.0407 0.2037,0.0815 -0.2444,0 0.041,-0.0815 z m 16.9067,0 0.5296,0.12222 -0.1222,0.48887 0.4481,0.12221 0.1629,-0.69256 0.4482,0.57035 -0.5704,0.81477 -0.1629,1.87399 -0.4482,0.52961 -0.2444,-0.0407 c 0.5137,-1.92153 0.411,-2.92097 -0.2444,-3.09616 l 0.2037,-0.69256 z m -20.0436,0.0815 0.2037,0 -0.1222,0.44813 -0.1629,0 0,-0.20369 0.082,-0.24444 z m 1.7926,0 0.2037,0 c 0.1368,0.16131 0.1865,0.38537 0.1629,0.65182 l -0.1222,0 -0.2444,-0.65182 z m -2.5666,0.12222 0.2037,0.36665 -0.2852,-0.0815 0.082,-0.28517 z m 12.5476,0.16295 0.2444,0.0815 0.2852,0.2037 -0.163,0.24443 c -0.1007,-0.099 -0.2133,-0.17919 -0.3259,-0.24443 l -0.041,-0.28518 z m -7.1701,0.16296 0.2852,0 c 0,0.0715 0.024,0.14662 0.041,0.20369 l -0.4074,0 0.082,-0.20369 z m 0.7333,0.0815 0.4074,0.12221 -0.3259,0 -0.082,-0.12221 z m -6.7219,0.12221 0.2037,0.0815 -0.082,1.22217 -0.082,0.20369 -0.2037,-0.0815 0.041,-0.48886 0.2037,0 0,-0.65182 -0.082,-0.28518 z m 14.6253,0.0407 0.3259,0.0815 -0.163,0.65182 -0.2037,-0.0815 -0.041,-0.5296 0.082,-0.12222 z m -15.3586,0.0407 0,0.2037 -0.1222,0 0.1222,-0.2037 z m -1.4666,0.16296 0.1222,0 0.1223,0.16295 0.082,0.28517 -0.3259,-0.40738 0,-0.0407 z m 4.522,0.0407 0.2037,0 -0.082,0.20369 -0.1629,0 0.041,-0.20369 z m -5.2553,0.16295 -0.041,0.24443 c -0.1412,0.67658 -0.1364,1.03083 0.1222,1.09995 l -0.2444,0.2037 -0.082,0.16295 -0.041,0.24444 -0.1222,0.0407 -0.163,-0.57035 0.4482,-0.0815 c -0.206,-0.77058 -0.1475,-1.24297 0.1222,-1.34438 z m 1.874,0 0.041,0.12222 0.082,-0.0815 0.163,0.65182 0,0.12222 -0.4889,0.7333 0.2852,0.0815 -0.3259,0.12221 -0.082,0.24444 0.2444,0.28517 -0.082,0.16295 -0.4074,0.57035 0.041,0.85551 -0.6518,1.30365 0.2444,0.28517 -0.4888,-0.16296 0.3666,-1.34438 -1.1814,0.7333 0.2444,0.28517 -0.8555,0.44813 -0.082,1.01847 -0.4074,0.69256 c 0.08,-0.49941 0.011,-0.79804 -0.2037,-0.85551 l 0.2852,-0.16296 0.041,-0.20369 0.2037,-1.30365 c 0.1374,-0.12989 0.2764,-0.27148 0.4074,-0.40739 l 0.4481,0.32592 c -0.053,-0.21157 -0.1577,-0.37538 -0.2444,-0.52961 0.051,-0.0555 0.1128,-0.10648 0.1629,-0.16296 l 0.2445,0.0407 0.082,-0.36665 0.3666,-0.16295 -0.1629,-0.16296 c 0.072,-0.0919 0.1339,-0.19122 0.2036,-0.28517 l 0.7333,0.0407 0.163,-0.61108 -0.4074,-0.12222 c 0.071,-0.1075 0.1351,-0.21611 0.2037,-0.32591 l 0.2852,0.0815 0.2852,-1.05921 c 0.1084,-0.19992 0.2226,-0.4049 0.3259,-0.61109 l -0.1223,-0.16295 0.041,-0.12222 z m 11.7328,0.0407 0.2037,0.40739 0,0.0407 -0.4889,0 c 0.012,-0.0714 0.03,-0.13545 0.041,-0.2037 l 0.2445,-0.24443 z m -22.1619,0.0407 0.082,0.28517 -0.082,0 0,-0.28517 z m 30.4319,0.20369 0.4889,0.12222 -0.4074,0.93699 c -0.091,-0.13611 -0.2088,-0.26481 -0.3667,-0.36665 l 0.2852,-0.69256 z m -10.8773,0.16296 0.2037,0.0407 -0.2037,0 0,-0.0407 z m 0.9778,0.0407 0.4073,0.12221 -0.041,0.16296 -0.2037,0.0407 -0.1629,-0.28517 c 0.01,-0.003 -0.01,-0.0375 0,-0.0407 z m -8.3923,0.32591 0.4074,0.0815 -0.1629,0.65182 -0.2852,-0.57035 0.041,-0.16295 z m 23.9138,0.0407 c 0.4519,0.27924 0.6049,0.76826 0.4074,1.50734 l -0.5297,1.05921 c -0.1997,1.12234 -0.2914,1.89101 -0.2851,2.40359 l -0.163,-0.0407 0.041,-0.77404 0.1222,-0.48886 -0.3666,-0.77404 0.8962,-2.11842 -0.1222,-0.77404 z m -21.8361,0.12221 0.2445,0 0,0.2037 -0.2445,0 0,-0.2037 z m 12.0995,0 0.041,0 -0.163,0.57035 c -0.02,0.0768 -0.028,0.1306 -0.041,0.20369 l -0.041,0 0.2037,-0.77404 z m -19.9621,0.0407 0.2037,0.0407 0.1222,0.24443 -0.3666,-0.12221 0.041,-0.16296 z m -4.1146,0.2037 0.041,0.20369 -0.2852,0.52961 -0.041,-0.16296 0.2852,-0.57034 z m 3.6258,0 c 0.1217,0.0561 0.2252,0.11426 0.4074,0.16295 l -0.082,0.36665 -0.163,-0.24443 -0.082,-0.0407 -0.082,-0.24443 z m 31.1245,0.0815 0.2444,0.0815 -0.1222,0.48887 -0.2445,-0.0815 0.1223,-0.48887 z m -25.4618,0.0815 c 0.1305,0.006 0.2859,0.0201 0.4481,0.0407 l -0.1222,0.36665 c -0.2956,-0.079 -0.55,0.15923 -0.6926,0.69256 l -0.4481,-0.77404 c 0.047,-0.1747 0.2132,-0.25603 0.4889,-0.28517 l 0.3666,0 -0.041,-0.0407 z m 14.0141,0 0.082,0 0.1222,0.0407 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.24444 z m -8.1477,0.0407 0.2851,0 -0.1222,0.52961 -0.2444,-0.0815 c 0.037,-0.15395 0.063,-0.31014 0.082,-0.44813 z m 0.8555,0 0.5703,0 0,0.0815 -0.3666,0.57034 0.1222,0.16296 -0.6111,-0.16296 c 0.107,-0.16058 0.1904,-0.41429 0.2852,-0.65182 z m 1.0592,0 0.2444,0 -0.041,0.0815 -0.2037,-0.0407 0,-0.0407 z m 2.2406,0 0.4889,0 -0.1222,0.36665 -0.2037,0.0407 0,0.44813 0,0.0407 -0.082,0.16295 0.041,0.44813 -0.163,0.0407 c -0.1808,-0.20535 -0.2427,-0.4948 -0.2037,-0.85552 0,-0.0259 0,-0.0547 0,-0.0815 0.012,-0.0827 0.016,-0.15376 0.041,-0.24443 l 0.2037,-0.36665 z m 0.8555,0 0.7333,0 0.326,0 -0.041,0.2037 -0.2445,0 0,0.48886 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.28517 -0.4889,0.12222 -0.041,-0.52961 0.2445,-0.0407 0,-0.48886 -0.2852,0.0407 -0.041,-0.24443 z m -7.6996,0.0815 0,0.77404 c -0.2652,-0.0831 -0.4074,-0.28894 -0.4074,-0.65182 0.1827,2e-5 0.3,-0.0425 0.4074,-0.12222 z m 5.5405,0 0.4074,0.12222 -0.082,0.36665 -0.4482,-0.12222 0,-0.0407 0.163,-0.20369 -0.082,0 0.041,-0.12222 z m 11.9365,0 0.1222,0.65182 c -0.026,-0.0119 -0.051,-0.0326 -0.082,-0.0407 l -0.3259,0.0815 -0.041,0.24443 0,0.28518 -0.041,0.0815 -0.2037,-0.0407 0.041,-0.20369 0.2444,-0.36665 0.163,-0.28517 -0.4482,-0.12222 0.5704,-0.28517 z m -18.8214,0.0815 c 0.092,0.0158 0.1762,0.0407 0.2852,0.0407 l 0,0.65182 -0.2444,-0.0815 -0.041,0.12222 -0.1223,0 0,0.44812 0,0.0815 0.4482,0.12222 0.041,-0.2037 0.1629,0 -0.5296,0.77404 -0.2444,-0.32591 -0.082,0.36665 0.2444,0.0815 -0.041,0.0407 0.5296,0.12221 0.082,0.24444 -0.1222,0.20369 c -0.155,0.0762 -0.2587,0.22703 -0.2852,0.44813 l -0.041,0.12222 -0.1629,0 c 0,-0.0298 0.01,-0.0522 0,-0.0815 l 0.082,-0.44813 -0.163,-0.0407 c -0.084,-0.43313 -0.1524,-0.79239 -0.2444,-1.05921 l 0.4481,-1.62955 z m -7.2922,0.44812 c 0.2126,0.11968 0.3123,0.32246 0.2851,0.61109 l -0.2037,-0.12222 -0.082,-0.48887 z m 18.3324,0 0.041,0 c -0.01,0.0299 -0.034,0.0522 -0.041,0.0815 -0.03,0.13716 -0.06,0.28313 -0.082,0.40739 -0.092,0.0158 -0.1761,0.0407 -0.2851,0.0407 l 0,0.48887 -0.2445,0 0.082,-0.937 0.5296,0 0,-0.0815 z m -12.3846,0.0815 0.2852,0 0.1222,0.0407 0,0.40739 -0.2037,0 0,0.20369 0.082,0.36665 c -0.1678,-0.14917 -0.2705,-0.48918 -0.2851,-1.01847 z m 25.3396,0.0407 0.4481,0.12222 -0.1222,0.40739 -0.4481,-0.12222 0.1222,-0.40739 z m -33.9355,0.0407 c -0.044,0.0495 -0.077,0.10969 -0.1222,0.16296 l -0.041,-0.12222 0.163,-0.0407 z m -0.8962,0.0407 0.4481,0.93699 -0.2037,0.0407 -0.082,-0.0407 c 0.011,-0.0447 0.028,-0.075 0.041,-0.12221 l -0.2444,-0.0815 -0.2037,-0.69256 0.2444,-0.0407 z m 17.5177,0 0.4074,0.12222 -0.082,0.24443 -0.3667,-0.24443 0.041,-0.12222 z m 0.7333,0 0.2037,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.1222,-0.44813 z m 7.1293,0.0815 0.082,0.12221 0.2852,0.0815 0.082,-0.0407 -0.2037,1.34438 -0.6926,2.52581 -0.2444,0.48887 -0.082,-0.36665 0.2037,-0.28517 -0.2037,-0.2037 -0.2445,0.0815 -0.1629,-0.28517 0.2851,-0.12222 0.2037,0.0407 0.041,-1.05921 0.2852,-0.97773 0.4074,0.0815 0.1222,-0.52961 0.041,0 0,-0.0815 c -0.1251,-0.22969 -0.1809,-0.50833 -0.2037,-0.81477 z m 3.0554,0.0407 0.2444,0.0815 -0.082,0.24444 0,0.0407 -0.1629,0.5296 -0.2037,-0.0815 0.2037,-0.81477 z m -20.2472,0.20369 0.4074,0.12222 -0.1222,0.36665 -0.2852,-0.48887 z m -10.6329,0.32591 0.041,0.16296 -0.1222,0.0407 0,-0.16296 0.082,-0.0407 z m 5.5405,0.0407 0.2037,0.0815 -0.082,0.36665 0.2037,0.0407 -0.2444,0.12221 -0.1222,0.48887 -0.163,-0.61108 0.2037,-0.48887 z m 27.4173,0 0.3666,0.0815 c -0.05,0.18575 -0.025,0.33527 0,0.44812 l -0.3259,-0.0815 c 0.053,-0.20003 0.019,-0.33531 -0.041,-0.44813 z m -3.9517,0.0815 0.041,0 c -0.023,0.12023 -0.051,0.23873 -0.082,0.36665 l -0.041,0 0.082,-0.36665 z m -17.314,0.0407 0.2037,0.0407 -0.2444,0.81477 -0.2037,-0.0407 0.2444,-0.81477 z m 14.7475,0.0407 c 0.1067,0.0985 0.2579,0.168 0.4074,0.24443 l -0.163,0.32591 -0.163,-0.0407 -0.041,-0.0407 c -0.048,-0.0401 -0.1096,-0.0903 -0.1629,-0.12222 l 0.1222,-0.36664 z m -21.9175,0.16295 0.082,0 c 0.01,0.0632 0,0.14341 0,0.20369 l -0.082,-0.20369 z m 32.4688,0 0.3259,0.52961 -0.4481,-0.12222 0.1222,-0.40739 z m -33.2429,0.36665 0.041,0.12222 -0.1629,-0.0407 0,-0.0407 0.1222,-0.0407 z m 6.7627,0.16296 0.2037,0.0815 -0.7333,2.81099 -0.2037,-0.0815 0.7333,-2.81098 z m 9.4514,0 -0.2037,0.81477 0,0.0815 c -0.07,0.01 -0.1708,0.0316 -0.2444,0.0407 l 0.2444,-0.89626 0.2037,-0.0407 z m 1.5888,0.16295 c 0,0.0512 0,0.10831 0,0.16296 -0.1404,0.17119 -0.5033,0.28724 -1.0185,0.40739 l 0.082,-0.24444 0.937,-0.32591 z m 8.5959,0.12222 c 0.1067,0.18437 0.2375,0.33745 0.3667,0.48886 l 0,0.12222 0.1629,0.0407 c 0.068,0.0685 0.1302,0.14364 0.2037,0.20369 l -0.163,0.65183 -0.2036,-0.0407 c 0.071,-0.26674 -0.1677,-0.49256 -0.6111,-0.61109 l 0.2444,-0.85551 z m 1.0185,0.0407 0,0.12221 -0.082,-0.0815 0.082,-0.0407 z m 5.5812,0.0407 0.4481,0.12221 -0.041,0.2037 -0.4888,-0.12222 0.082,-0.20369 z m -24.1989,0.0407 0.1222,0.44813 0.2445,0.89626 -0.4482,0.7333 0.3259,-0.12222 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 -0.2037,-0.24443 -0.2444,-0.0815 -0.082,0.44813 -0.2444,-0.0407 0.6518,-2.4036 z m -1.2222,0.0815 0.2037,0.0815 -0.1222,0.52961 -0.2037,-0.0407 0.1222,-0.57035 z m 7.1293,0 0.2037,0.0407 -0.082,0.36665 -0.2036,-0.0407 0.082,-0.36665 z m 14.5438,0.0407 -0.082,0.24443 0.6926,0.16296 0.082,-0.20369 -0.6926,-0.2037 z m -28.6801,0.0815 c 0.026,-0.005 0.055,0.004 0.082,0 -0.126,0.1796 -0.3024,0.32896 -0.5296,0.44813 l -0.041,-0.2037 c 0.1447,-0.11438 0.3061,-0.20677 0.4888,-0.24443 z m 13.3623,0.20369 c 0.1273,0.11381 0.2392,0.22321 0.2852,0.32591 l -0.2852,-0.0815 0,-0.24444 z m -12.9549,0.2037 0.041,0 0.3259,0.12221 c 0.028,0.10642 0.051,0.19752 0.082,0.28518 l -0.2037,0.77403 -0.2037,-0.0407 c 0.1426,-0.53338 0.011,-0.85798 -0.2852,-0.937 l -0.2037,0.0815 0.041,-0.16296 0.3259,-0.0815 0.082,0 0,-0.0407 z m -2.5666,0.0407 0.082,0.24443 -0.1222,-0.0407 0.041,-0.20369 z m 13.4438,0 0.2037,0 c -0.015,0.10051 -0.023,0.21901 -0.041,0.32591 l -0.1629,0.16295 0,-0.48886 z m 8.5552,0 0.3666,0 -0.041,0.16295 -0.4073,-0.12221 c 0.02,-0.0187 0.064,-0.0211 0.082,-0.0407 z m 1.0185,0 0.4074,0 0,0.20369 c -0.1952,4e-5 -0.3609,0.0365 -0.4889,0.0815 l 0.082,-0.28517 z m -19.4325,0.0815 0.163,0.0407 -0.082,0.32591 -0.082,-0.36665 z m 13.8105,0.12222 0,0.52961 -0.041,0.0407 -0.041,0.16296 -0.2444,0 0.2037,-0.69256 0.1222,-0.0407 z m 0.8555,0 0.937,0 -0.041,0.16296 0,0.12221 -0.2444,0 -0.2852,-0.0407 -0.082,0.0407 -0.2852,0 c 0,0.0149 0,0.026 0,0.0407 l -0.082,-0.0407 0.082,-0.28517 z m 3.0554,0.16296 -0.082,0.36665 -0.3666,0 -0.1222,-0.12222 0.041,-0.16296 c 0.2044,-0.0207 0.3677,-0.0344 0.5296,-0.0815 z m 9.0441,0 c 0.6944,0.36416 0.9331,1.0147 0.6925,1.91472 l -0.4888,-0.12221 -0.163,0.5296 0.3666,0.57035 -0.8555,1.2629 0.2037,0.0407 -0.2444,0.12222 -0.082,0.28517 0.1629,1.30364 -0.5703,0.24443 0.2037,0.0407 -0.3667,0.57035 c -0.1386,0.96297 0.1611,1.50359 0.937,1.71103 l -0.2444,0.16296 -0.082,0.24443 0.082,0.61108 -1.3444,-2.03694 -0.2037,-0.0407 0.163,-0.61108 0.4481,0.0815 0.041,-0.16295 c -0.2956,-0.079 -0.5344,-0.51722 -0.6518,-1.26291 l 0.1629,-0.61108 0.2037,0.0407 -0.082,0.44813 0.6926,0.20369 0.082,-0.44813 -0.4074,-0.12221 0.2444,-0.81478 0.4074,0.12222 0.2037,-0.81478 -0.4074,-0.12222 0.082,-0.36665 0.4482,0.12222 0.082,-0.36665 -0.4074,-0.12222 0.1629,-0.61108 c 0.3696,0.0988 0.5984,-0.13822 0.8148,-0.65182 0.1069,-0.4 0,-0.61477 -0.4481,-0.7333 l 0.1629,-0.61108 z m -24.5248,0.0407 0.4888,0.12222 -0.4074,0.57035 -0.2444,-0.0815 0.163,-0.61109 z m 23.3026,0 c 0.1376,0.0728 0.2979,0.11504 0.4481,0.16296 l -0.1222,0.40739 -0.3259,-0.52961 0,-0.0407 z m -16.7029,0.0815 0.6518,0 0.2037,0.24444 0.1629,0 -0.1629,0.61108 -0.6111,0 -0.2444,-0.85552 z m 5.7034,0.2037 0.082,0 c -0.036,0.16124 -0.082,0.31655 -0.1222,0.44812 l -0.082,0 0.1222,-0.44812 z m 4.8887,0.0407 0,0.16295 -0.082,0.24443 -0.2037,0 0.041,-0.20369 0.2444,-0.20369 z m -7.7404,0.0815 0.2037,0.0407 -0.041,0.0815 -0.2037,0 0.041,-0.12222 z m -8.6367,0.0815 0.6519,0.36665 -0.2852,1.01847 -0.2037,-0.0815 -0.2444,-0.937 0.082,-0.36665 z m 20.8991,0 0.4888,0.12222 0.3667,1.14069 -0.1222,0.44812 -0.2037,-0.0407 0.1222,-0.44812 -0.4481,-0.12222 -0.041,0.2037 0.2444,0.73329 -0.2444,0.12222 c -0.1069,0.40004 0.086,0.69626 0.5296,0.81478 l -0.5704,0.24443 0.082,-0.36665 -0.4074,-0.12221 -0.3259,2.93319 -0.082,0.16296 -0.5703,-0.32591 0.082,-0.2037 0.4074,-0.77403 c 0.069,-0.55308 -0.1194,-0.87896 -0.4889,-0.97774 l 0.1222,-0.36665 0.4889,0.12222 0.041,-0.24443 -0.2037,-0.28518 0.3259,-0.0815 -0.041,-1.09995 0.4481,-1.58882 z m -18.9843,0.0407 0.4074,0.12222 -0.041,0.20369 -0.4074,-0.12222 0.041,-0.20369 z m 11.2032,0 0.1629,0 c 0.066,0.0585 0.1536,0.11741 0.2444,0.16296 l -0.041,0.12221 -0.082,0.28517 -0.2851,-0.5296 0,-0.0407 z m -19.9621,0.0407 0.3259,0.48887 -0.2444,-0.24444 -0.2037,-0.0407 0.1222,-0.20369 z m 1.1,0.0815 0.1629,0.0407 0,0.16295 -0.1629,0.65182 -0.2037,-0.0815 0.2037,-0.77404 z m 31.0837,0 c 0.044,0.10287 0.088,0.18377 0.163,0.20369 l 0.2037,0.0407 0,0.44813 -1.7111,6.35526 -0.4888,-0.12222 0.2851,-0.12221 0.041,-0.2037 0.6926,-3.4628 0.2852,-0.12222 0.041,-1.05921 0.4888,-1.95546 z m 1.0185,0 0.2037,0.0407 -0.2037,0.65182 -0.2037,-0.0815 0.1629,-0.57034 0.041,-0.0407 z m -15.6437,0.12221 0.041,0.44813 -0.1222,0.0407 -0.082,-0.32591 0.1629,-0.16296 z m 12.792,0 0.2037,0.0407 -0.1223,0.36665 -0.2037,-0.0407 0.1223,-0.36665 z m -9.5737,0.0407 c 0.1347,0.0336 0.3237,0.0613 0.4889,0.0815 l -0.1222,0.48887 -0.4481,-0.16296 0.082,-0.40739 z m -20.9805,0.32591 0.4889,0.12222 -0.082,0.20369 -0.163,1.38513 c 0.01,-0.18442 -0.023,-0.3523 -0.082,-0.57035 l -0.2037,-0.81478 0.041,-0.32591 z m 3.2999,0.0407 0.4481,0.0815 c -0.1069,0.39998 -0.01,0.69501 0.2852,0.77404 l -0.041,0.20369 c -0.4434,-0.11854 -0.7027,-0.10372 -0.7741,0.16296 l -0.2037,-0.0407 -0.082,-0.61108 0.3667,-0.57035 z m 16.8251,0.0407 0.2852,0 -0.082,0.24443 -0.2037,0 0,-0.24443 z m -13.7697,0.16296 0.2037,0.0407 -0.041,1.05921 -0.4074,-0.12222 0.2444,-0.97773 z m 20.125,0.20369 0.4481,0.16296 -0.041,0.16295 -0.4889,-0.12221 0.082,-0.2037 z m 3.0961,0 0.2037,0.0407 -0.4481,0.93699 -0.2037,-0.0407 0.2037,-0.81477 0.2444,-0.12222 z m -19.5139,0.12222 0.937,0.0407 -0.1222,0.57034 -0.9777,0 0.1629,-0.61108 z m 8.5959,0.16295 0.2037,0 0,0.0407 -0.2037,-0.0407 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3628,0 0.326,0 0,0.2037 -0.3667,0 0,-0.12222 0.041,-0.0815 z m -19.5139,0.0407 0.3259,0.52961 -0.2851,0.12221 -0.2037,-0.0407 c 0.062,-0.23333 0.1326,-0.43445 0.1629,-0.61108 z m -4.3183,0.16296 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m 32.3059,0 0.2037,0.0407 c -0.1069,0.40001 -0.01,0.69503 0.2852,0.77403 l -1.4259,3.50355 0.2037,0.24443 -0.041,0.20369 -0.5296,0.89626 -0.2037,-0.0407 0.163,-1.42586 0.2444,-0.12222 0.1222,-0.44812 0.6926,-3.42207 0.2852,-0.20369 z m -35.3613,0.12221 0.1222,0.85552 0.2037,0.12222 c -0.012,0.0965 -0.014,0.18348 -0.041,0.28517 l 0,0.0815 -0.041,-0.0815 -0.2037,0.0815 c 0.022,0.0838 0.035,0.13719 0.041,0.20369 l -0.3666,0.16296 c -0.01,-0.0436 -0.031,-0.0797 -0.041,-0.12222 l 0.1222,-0.0407 0.041,-0.20369 0.1629,-1.34439 z m 9.4514,0.0407 0.6111,0.16296 -0.041,0.20369 -0.6926,0.0815 0.1223,-0.44813 z m -4.8072,0.24444 0.2037,0.0815 -0.1629,0.52961 -0.2037,-0.0407 0.1629,-0.57034 z m 28.9654,0 0.2037,0.0407 -0.2852,1.01848 -0.2037,-0.0815 0.2852,-0.97773 z m -20.4917,0.12221 0.3667,0.52961 -0.163,0.61108 -0.2037,-0.32591 -0.4074,-0.12222 c -0.1069,0.40001 -0.412,0.56666 -0.8555,0.44813 0.107,-0.40002 -0.01,-0.65551 -0.4481,-0.77404 l 0.041,-0.20369 0.4074,0.12221 0.1629,0.24444 c 0.08,-0.29997 0.4464,-0.45431 1.1,-0.52961 z m 10.8365,0.2037 0.1223,0 0,0.12221 -0.1223,-0.12221 z m 13.118,0 0.8962,0.24443 -0.4481,1.75177 c -0.2956,-0.079 -0.3768,-0.54439 -0.163,-1.34438 l -0.4481,-0.0815 0.163,-0.57034 z m -6.1516,0.0407 0.2852,0.5296 -0.041,0.2037 -0.2852,-0.57035 0.041,-0.16295 z m -28.558,0.0815 -0.2036,1.62956 -0.8148,0.24443 0.2444,-0.89625 c 0.4491,-0.22295 0.7308,-0.54687 0.774,-0.97774 z m 0.6926,0 0.2444,0.0815 -0.082,0.36665 -0.2851,-0.0815 0.1222,-0.36665 z m 21.8768,0.0407 0.1629,0.0407 0,0.24443 -0.4074,0 0.2445,-0.28517 z m -9.5329,0.0407 0.2037,0 0.1629,0.24443 -0.2851,0 -0.082,0 0,-0.0407 0,-0.2037 z m -6.9664,0.24443 0.4889,0.12222 -0.082,0.24443 -0.5296,0.937 -0.163,-0.24444 -0.2036,-0.0815 -0.5297,0.28517 0.041,0.65182 c -0.2956,-0.0791 -0.5041,0.0481 -0.611,0.44813 l -0.163,-0.24443 -0.2037,-0.0407 -0.2444,0.12221 0.2037,-1.62955 0.6111,0.16295 0.1222,-0.40738 c 0.739,0.19754 1.156,0.0741 1.2629,-0.32592 z m 2.8518,0.12222 0.2037,0.0815 -0.082,0.36665 -0.2445,-0.0407 0.1222,-0.40739 z m -7.8626,0.0407 0.2037,0.0815 -0.082,0.36665 -0.2445,-0.0407 0.1222,-0.40739 z m 6.6404,0.0407 0.2037,0.0815 -0.082,0.40738 -0.2445,-0.0407 0.1223,-0.44813 z m -9.2885,0.12222 0.2037,0.0815 -0.2444,0.0815 0.041,-0.16295 z m -0.041,0.28517 0.163,0.12221 0,0.0407 -0.2037,-0.0407 0.041,-0.12221 z m 15.7252,0.0815 c 0,0.20654 -0.1299,0.30826 -0.3259,0.36665 l -0.5296,0.0407 0,-0.16295 0,-0.0407 0.8555,-0.2037 z m 3.2591,0 c 0.013,0.005 0.029,-0.006 0.041,0 0.089,0.046 0.1749,0.11085 0.2037,0.2037 l -0.2444,0 0,-0.2037 z m 1.5481,0 0.4074,0 0.082,0.12222 -0.2037,0.81478 c -0.045,0.002 -0.075,0 -0.1222,0 l 0,0.20369 -0.2037,-0.20369 -0.4074,0 -0.1629,-0.24443 0.1222,-0.44813 c 0.1892,0.0505 0.3495,-0.044 0.4889,-0.24444 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.0591 0,0.0815 -0.098,0.33787 -0.3274,0.59857 -0.6518,0.7333 l -0.1222,-0.0407 0.4481,-0.77404 z m 4.4405,0 -0.041,0.2037 -0.4888,0 0,-0.12222 c 0.2001,-0.0277 0.3723,-0.0507 0.5296,-0.0815 z m 8.8811,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m -26.8469,0.0815 0.4074,0.12222 -0.1222,0.44813 -0.4074,-0.12222 0.1222,-0.44813 z m 9.7366,0.12222 0.1629,0 -0.1629,0.57034 0,-0.57034 z m -11.9773,0.16295 -0.082,0.36665 0.4074,0.12222 0.1223,-0.36665 -0.4482,-0.12222 z m 4.9702,0.0407 0.6925,0.2037 -0.1222,0.36665 0.4482,0.12221 0.1629,-0.61108 0.3259,0.36665 c -0.3477,0.17232 -0.5886,0.44677 -0.7333,0.81478 -0.062,0.0265 -0.089,0.0462 -0.1222,0.0815 l -0.2037,-0.0407 c 0.1402,-0.44387 -0.02,-0.7271 -0.4074,-0.81478 l -0.2037,-0.0407 c 0.071,-0.11464 0.1184,-0.28147 0.163,-0.44813 z m 16.9066,0 0.4074,0.12222 -0.082,0.24443 -0.4074,-0.12221 0.082,-0.24444 z m -14.4215,0.2037 0.1222,0.0407 c -0.043,2.1e-4 -0.081,-0.002 -0.1222,0 l 0,-0.0407 z m -13.729,0.24443 0.4481,0.0815 -0.082,0.20369 -0.4074,-0.12221 0.041,-0.16296 z m 20.1657,0 0.163,0.0815 -0.2037,0.0407 0.041,-0.12222 z m -10.4699,0.0407 0.163,0.24443 0.2037,0.0407 c 0.1185,0.0317 0.2232,0.0419 0.3259,0.0407 -0.1474,0.0926 -0.2951,0.12532 -0.4889,0.0815 l -0.2037,0.65182 c 0.3876,0.0877 0.6345,0.21897 0.774,0.44813 l -0.4888,0.24443 0.4074,0.0815 0.082,-0.28517 c 0.1221,0.22481 0.1522,0.50258 0.041,0.85551 l 0.6518,0.16296 -0.3666,1.09995 -0.6111,-0.12222 0,2.11842 -1.3444,1.14069 0.2037,0.32591 -1.7518,2.40359 0.4481,-0.12221 0.2445,0.0815 -0.1222,0.40738 -0.2852,-0.0407 -0.2852,-0.32592 -0.2852,-0.0407 -0.1222,0.48886 -0.2852,-0.0815 2.4851,-7.78112 0.2445,-0.0407 -0.2852,0.97773 0.6518,0.12222 0.4074,-1.30364 -0.4481,-0.0815 0.041,-0.12222 -0.2037,-0.0815 -0.2852,0 0.041,-0.12222 0.2852,-0.0407 0.082,-0.20369 -0.2445,-0.0815 0.163,-0.57035 -0.2037,-0.28517 0.082,-0.20369 0.2852,-0.0815 z m 6.6812,0.0407 0.2037,0.0407 -0.041,0.12221 -0.163,-0.16295 z m 7.8626,0 0.041,0.16295 -0.2852,-0.0815 0.2444,-0.0815 z m -20.0435,0.12222 0.4481,0.77403 -0.3259,0.16296 -0.163,-0.0407 0.041,-0.89625 z m -0.6926,0.0407 0.2037,0.0407 -0.1222,0.44813 -0.2037,-0.0407 0.1222,-0.44813 z m 19.8806,0.16296 -0.082,0.24443 -0.2037,-0.0407 0,-0.0815 0.2852,-0.12222 z m -1.3852,0.12222 0.082,0.12221 0,0.28517 -0.4481,-0.12221 0.163,0 0.2037,-0.28517 z m 3.8702,0.12221 0.2445,0.0815 0,0.28517 0,0.65182 0,0.12222 -0.3259,0.12222 -0.4074,-0.0815 0.2851,-1.14069 0.041,0 c 0.064,-0.008 0.1028,-0.0322 0.163,-0.0407 z m -25.3803,0.12222 0.3667,0.48887 -0.4889,-0.12222 0.1222,-0.36665 z m 35.4021,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -11.4476,0.12221 -0.041,0.2037 -0.7741,0.0815 -0.2037,-0.0815 0,-0.0407 1.0185,-0.16296 z m 6.4367,0 -0.041,0.2037 0.4074,0.0815 0.041,-0.16296 -0.4074,-0.12222 z m -27.1728,0.24444 0,0.20369 -0.4074,0.2037 0.3259,0.32591 -0.1222,0.0815 -0.2852,-0.0815 0.082,-0.32591 -0.1222,-0.0407 0,-0.0407 0.5296,-0.32591 z m 3.1369,0 0.3666,0.0815 -0.2444,0.69256 -0.3259,-0.0815 0.2037,-0.69256 z m 8.3107,0 0.4074,0 0,0.0407 -0.4074,0 0,-0.0407 z m -13.6068,0.0815 0.2037,0.0407 -0.3666,1.34439 c -0.019,-0.29822 -0.091,-0.4868 -0.2445,-0.57035 l 0.041,-0.32591 0.3667,-0.48886 z m 10.307,0.0815 0.2444,0.0815 -0.1222,0.44813 -0.2852,-0.0407 0.163,-0.48887 z m 2.1184,0.0407 0.2444,0.0407 -0.082,0.24443 0.041,0.16296 c -0.01,0.1969 0.032,0.3372 0.1222,0.44813 l 0,0.0815 -0.1629,0 -0.4074,0.44812 -0.2037,0 0.2444,-0.85551 0.163,-0.28518 -0.041,-0.0407 0.081,-0.24444 z m 1.3851,0.0407 0.2444,0.28517 0,0.28518 c -0.1625,-0.11746 -0.2809,-0.25347 -0.4073,-0.36665 l 0.1629,-0.2037 z m -7.6996,0.2037 0.2851,0.0407 -0.1629,0.48887 -0.2444,-0.0815 0.1222,-0.44812 z m 13.9734,0.0815 0.2037,0.0407 0.3259,0.48887 -0.082,0.24443 -0.2037,-0.0815 -0.082,-0.0815 0,-0.16296 -0.2037,0 c 0.013,-0.15533 0.042,-0.32188 0.041,-0.44813 z m -16.54,0.0815 -0.1222,0.36665 -0.041,1.42586 -0.6518,0.81478 0.3666,0.0815 -0.4481,0.12221 -0.082,0.24444 0.2852,0.32591 -0.041,0.20369 -0.5704,0.61108 0.082,0.97774 -0.8555,1.42586 0.2852,0.28517 -0.6111,-0.12222 0.4481,-1.54807 -1.5073,0.85551 0.2852,0.28517 -1.0185,0.44813 c -0.1112,-0.21926 -0.218,-0.41748 -0.3259,-0.65182 -0.01,-0.0107 0,-0.03 0,-0.0407 l 0.1222,-0.77404 0.2852,0.0815 0.6925,0.44813 c -0.2005,-0.67951 -0.5592,-1.09062 -1.1407,-1.22217 l 0.2037,-0.69256 c 0.015,-0.0461 0.027,-0.0769 0.041,-0.12222 l 0.1223,-0.0407 0.041,-0.2037 -0.082,-0.0407 c 0.068,-0.22572 0.1079,-0.44975 0.1629,-0.65182 l 0.163,-0.12222 0.041,-0.20369 -0.041,-0.12222 c 0.059,-0.23983 0.045,-0.41041 0.082,-0.61108 0.2165,-0.0412 0.45,-0.15496 0.6925,-0.36665 -0.087,0.52224 -0.036,0.83279 0.2445,0.89626 l -0.3259,0.20369 -0.041,0.0815 c -0.1806,0.11242 -0.3752,0.24349 -0.5297,0.36665 l -0.041,0.24443 0.4074,0.12222 -0.3259,1.67029 0.5704,0.12222 0.1222,-0.40739 0.4481,-0.2037 -0.2852,-0.28517 -0.2851,-0.0815 0.082,-0.20369 1.5073,0.12222 0.2037,-0.69256 -0.5296,-0.12222 0.1222,-0.40739 0.5704,0.12222 0.3666,-1.14069 0.2444,-0.16296 -0.2037,-0.0407 0.4889,-1.54807 0.3259,-0.12222 z m -6.1108,0.0407 0.2444,0.0815 -0.1222,0.36665 -0.2037,-0.0407 0.082,-0.40739 z m 24.0359,0 0.163,0.24443 0.2037,0.0815 0.3259,-0.12222 -0.041,0.16296 c -0.3962,0.0368 -0.7257,0.11789 -0.9778,0.20369 l -0.041,0 -0.1629,-0.0407 0.2852,-0.44813 0.2444,-0.0815 z m -12.0179,0.0815 0.611,0.12221 -0.1222,0.40739 -0.4888,-0.5296 z m 3.9516,0.12221 0.3259,0.0815 -0.041,0.16296 -0.2851,0.0815 0,-0.0407 0,-0.28518 z m 4.8072,0.0407 0.2037,0.0407 0,0.0407 -0.2037,0 c 0,-0.0303 0,-0.052 0,-0.0815 z m -13.8105,0.0815 0.2852,0.0815 -0.082,0.61108 -0.3666,0.12222 0.041,-0.40739 0.1222,-0.40739 z m 29.5765,0.0407 0.2036,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1223,-0.36665 z m -7.4553,0.32591 0.4074,0.12222 -0.082,0.44812 -0.4074,-0.24443 0.082,-0.32591 z m -26.358,0.0407 0.4074,0.12222 -0.082,0.20369 -0.4074,-0.12222 0.082,-0.20369 z m 1.6703,0 0.2037,0.24443 -0.041,0.2037 -0.3259,-0.32591 0.1629,-0.12222 z m 18.1695,0.0407 c 0.1619,0.0875 0.2758,0.18386 0.4889,0.28517 -0.019,0.0576 -0.041,0.13961 -0.041,0.20369 l -0.5296,0 c 0.031,-0.17321 0.06,-0.33607 0.082,-0.48886 z m -3.2591,0.20369 0.163,0 0,0.0407 -0.163,-0.0407 z m -12.1402,0.2037 -0.082,0.57034 -0.041,0.24443 -0.2851,-0.0815 0.041,-0.61109 0.3666,-0.12221 z m -3.2998,0.0815 0.2444,0.0407 -0.1222,0.48887 -0.2852,-0.0407 0.163,-0.48887 z m 10.7143,0.0407 0.7333,0.16296 0,0.0815 -0.082,0.24443 -0.082,0.12222 0,0.16295 0,0.0407 -0.1222,0.28517 -0.082,0 -0.2037,-0.28517 c 0.017,-0.3233 -0.065,-0.59919 -0.163,-0.81478 z m 20.0028,0 c -0.1782,0.66667 0.096,1.38755 0.6925,2.11842 l 0.2445,-0.12221 0.1629,0.24443 -0.041,0.16296 c -0.2463,-0.0659 -0.4957,0.0124 -0.6925,0.16295 -0.042,-0.0157 -0.074,-0.0298 -0.1222,-0.0407 l -0.3667,0.12222 c 0.1402,-0.44386 0.062,-0.72708 -0.3259,-0.81478 l -0.4074,0.12222 -0.041,0.0815 -0.2852,-0.2037 c 0.2165,-0.51357 0.4453,-0.70986 0.8148,-0.61108 l 0.1222,-0.40739 -0.611,-0.16295 0.8555,-0.65183 z m 2.4036,0.0407 0.3259,0.48887 -0.1222,0.44813 -0.2852,-0.57035 0.082,-0.36665 z m -17.9659,0.0815 0.2852,0.0815 -0.1222,0.40739 -0.2444,-0.32591 0.082,-0.16296 z m -14.2586,0.0407 0.2852,0.0407 -0.082,0.20369 c -0.1131,0.033 -0.218,0.0873 -0.3259,0.12222 l 0.1222,-0.36665 z m 15.766,0 0.7333,0 -0.082,0.20369 -0.6926,0.0815 c 0.022,-0.10672 0.02,-0.18393 0.041,-0.28517 z m -3.9924,0.0815 0.041,0 0,0.12221 -0.041,0 0,-0.12221 z m 19.6768,0 0.2037,0.0407 -0.2037,0.81477 -0.2037,-0.0407 0.2037,-0.81477 z m -28.4357,0.16295 0.5704,0.12222 -0.2445,0.69256 -0.3666,-0.61108 0.041,-0.2037 z m 2.1592,0.0407 -0.082,1.14069 0.6111,0.16295 0.082,-1.18142 -0.6111,-0.12222 z m 19.5546,0.12222 0.163,0.0407 -0.1222,0.44812 -0.2037,-0.0407 0,-0.0407 0.041,0 0.1222,-0.40739 z m -13.4438,0.0407 0.1222,0 0.2852,0.7333 -0.1222,0.16295 -0.163,0 -0.2037,-0.61108 c 0,-0.0113 -0.01,-0.0293 0,-0.0407 l 0,-0.0407 c 0.026,-0.0655 0.056,-0.13405 0.082,-0.20369 z m 6.3145,0 0.4074,0 -0.082,0.48886 -0.3259,0 0,-0.48886 z m 4.0332,0 0.2444,0.0407 -0.041,0.16295 -0.2444,-0.0815 0.041,-0.12221 z m -25.7062,0.0815 0.082,0.0407 -0.041,0.2037 -0.082,-0.0407 0.041,-0.2037 z m 38.1723,0.0815 -0.041,0.16296 0.041,0.0407 0,-0.2037 z m -21.5509,0.0407 0.082,0 0,0.32591 -0.2037,-0.0407 0.1222,-0.28517 z m -10.918,0.24443 c 0.2732,-0.0456 0.6794,-0.0134 1.1814,0.0407 l -0.1222,0.40739 c -0.3876,-0.0877 -0.75,0.1822 -0.937,0.77404 l -0.5704,-0.89387 c 0.053,-0.16645 0.1749,-0.28029 0.4482,-0.32592 z m 14.0956,0.0407 0.3259,0 -0.1222,0.2037 -0.2037,0 0,-0.2037 z m 0.7741,0 0.082,0 0,0.2037 -0.041,0 -0.041,-0.2037 z m 15.1548,0.0407 0.4889,0.12222 -0.2852,1.01847 -0.3666,-0.48887 0.1629,-0.65182 z m -17.9658,0.0407 0.2444,0.0407 -0.2851,0.0815 0.041,-0.12222 z m 10.8365,0 0.2037,0.0407 -0.041,0.12222 -0.2444,0.12221 0,0.0815 -0.041,0 0.041,-0.0815 0.082,-0.28517 z m 9.5737,0.12222 -0.1222,0.0815 -0.082,0.16295 0.2036,0.24443 0,-0.48886 z m -13.8105,0.0815 0.4074,0.0815 -0.3259,0.44813 -0.3259,-0.0815 -0.041,-0.16295 0.2851,-0.28517 z m -10.4292,0.0407 0.1223,0.0815 0,0.24443 -0.163,-0.0407 c 0.032,-0.10244 0.017,-0.18859 0.041,-0.28518 z m 13.8513,0.0407 0.611,0.52961 0.041,0.0407 -0.1222,0.61108 c -0.1738,-0.13018 -0.3351,-0.28386 -0.4888,-0.36665 -0.043,-0.24559 -0.071,-0.51516 -0.041,-0.81478 z m -8.5552,0.0407 0.3666,0 0,0.24443 -0.3666,0 0,-0.24443 z m -16.4585,0.0815 0.1629,0.0407 -0.1222,0.40739 -0.2851,-0.0815 0.082,-0.28517 0.1629,-0.0815 z m 4.1961,0.20369 0.5296,0.12222 0,1.18143 c -0.3391,-0.0767 -0.521,-0.50905 -0.5296,-1.30365 z m 1.7925,0.16296 -0.2444,0.69256 0.6518,0.16296 0.2037,-0.69257 -0.6111,-0.16295 z m 3.0147,0.24443 c 0.5369,0.1214 0.591,1.23746 0.1629,3.29985 -0.149,0.24871 -0.3558,0.70204 -0.5703,1.14069 l -0.5704,-0.12222 -0.5296,-1.34438 c 0.3877,0.0877 0.5932,-0.0857 0.7333,-0.52961 l 0.082,-1.18142 0.2037,0.24443 0.6519,0.16296 -0.163,-1.6703 z m 9.6958,0.0407 0.1222,0.12222 -0.2444,0.28517 -0.1222,0.44813 -0.1222,0 -0.2852,-0.0815 -0.041,-0.44813 0.082,-0.12221 0.2445,0.24443 0.3666,-0.44813 z m 5.3776,0 c 0,0.30601 -0.1563,0.44815 -0.5704,0.44813 l 0,0.20369 0.4074,0 -0.3666,0.65183 -0.4074,-0.0815 0.082,-0.0815 0,-0.28517 -0.041,-0.0407 0.4074,-0.77404 c 0.1595,-0.009 0.3126,-0.0407 0.4888,-0.0407 z m -13.4439,0.0407 0.2852,0.0407 -0.4481,1.2629 -0.082,0.32591 c 0.198,0.0814 0.3666,0.1667 0.5296,0.24444 l -0.2444,0.44813 -0.1223,-0.2037 -0.3259,0.16296 -0.2444,-0.0407 c 0.067,-0.14188 0.1305,-0.2725 0.2037,-0.48887 l -0.2037,0 0.163,-0.48886 0.041,0.0407 0.2851,0 0.163,-1.30364 z m -8.1885,0.0815 0.5704,0.12221 -0.163,0.40739 -0.4074,-0.5296 z m 13.1587,0.0815 0.082,0.0815 -0.163,-0.0407 0.082,-0.0407 z m 4.359,0 0.3259,0 c -0.046,0.25427 -0.075,0.44864 -0.082,0.65182 l -0.611,0 0.082,-0.57035 0.2851,-0.0815 z m -3.1369,0.0815 0.082,0.48887 c -0.2042,-0.10677 -0.3488,-0.235 -0.4481,-0.40739 l 0.3667,-0.0815 z m -1.7517,0.0815 -0.1222,0.48887 -0.163,0 0,-0.40739 0.2852,-0.0815 z m 18.0066,0.0407 0.2036,0.0407 -0.1629,0.65182 -0.2037,-0.0815 0.163,-0.61108 z m 0.6518,0 0.4888,0.12222 -0.4073,1.4666 -0.163,-0.0407 c -0.083,-0.0188 -0.171,0.0209 -0.2444,0.0407 l 0,-0.36665 0.3259,-1.22217 z m -21.225,0.0407 0.1222,0 0,0.0407 -0.1222,-0.0407 z m 3.5036,0.12222 c 0.081,0.0361 0.1343,0.0796 0.2037,0.12221 l -0.2445,0.0407 0.041,-0.16295 z m -12.181,0.0815 0.2852,0.0407 -0.2852,0.89626 -0.2851,-0.0407 0.2851,-0.89626 z m 1.7926,0.16296 -0.1223,0.44813 0.6111,0.12221 -0.4888,-0.57034 z m 19.5954,0 c 0.045,0.041 0.155,0.11945 0.2036,0.16295 l -0.082,0.52961 -0.8962,2.85172 -0.5704,0.81478 0.3667,1.05921 -0.6518,-0.16296 -0.3667,2.07768 -0.5296,-0.12221 0,-0.97773 0.3259,-0.12222 0.082,-0.2037 0.163,-1.4666 0.4889,-0.57034 -0.1223,-0.12222 c 0.028,-0.0546 0.041,-0.12719 0.041,-0.20369 l 0.2037,-0.12222 -0.4074,-0.57034 0.3667,-0.12222 0.2444,0.0407 0.082,-1.14069 0.3667,-1.14068 0.5296,0.12221 0.1629,-0.61108 z m 1.2629,0.0815 0.1222,0.16295 -0.163,-0.0407 0.041,-0.12221 z m 1.8332,0.12221 0.082,1.62956 0.4889,0.12221 0.2037,-0.20369 -0.2445,0.81478 c -0.1147,-0.18977 -0.1569,-0.28133 -0.2851,-0.48887 l -0.2037,0.0815 c -0.022,-0.0177 -0.056,-0.0241 -0.082,-0.0407 l -0.4074,-0.65182 0.4481,-1.26291 z m 0.5296,0 0.3667,0.0815 0,0.0815 -0.2445,0.36665 -0.2444,-0.0815 0.1222,-0.44813 z m 3.7887,0.16296 0.2037,0.0407 -0.1222,0.44812 -0.2037,-0.0815 0.1222,-0.40739 z m 1.7925,0.24443 0.2037,0.0815 0,1.05921 0,0.0407 c -0.05,0.0364 -0.1167,0.0642 -0.1629,0.12222 l -0.3667,-0.0815 0.3259,-1.22217 z m -32.1022,0.0407 0.2444,0.0815 -0.9777,3.09615 -0.2444,-0.0407 0.9777,-3.13689 z m 29.5764,0.16296 0.082,0.0407 -0.1629,0.61109 -0.2037,-0.0407 0.1222,-0.44813 0.1629,-0.16295 z m -14.0141,0.16295 0.2036,0 0,0.48887 -0.2036,0 0,-0.48887 z m 11.692,0.0815 0.2037,0.0815 0.041,0.24443 -0.2852,-0.20369 0.041,-0.12222 z m -24.2804,0.0815 -0.1629,0.44812 0.6111,0.16296 0.1629,-0.48887 -0.6111,-0.12221 z m 27.1321,0.0407 0.2037,0.0407 0.041,0.69257 -0.4074,-0.12222 0.163,-0.61108 z m -29.0468,0.0407 0.2852,0.0407 -0.2037,0.65183 -0.2444,-0.0815 0.1629,-0.61109 z m 31.5726,0.2037 0.4074,0.12222 -0.082,1.05921 -0.082,0.32591 -0.2444,-0.0815 0.082,-1.14069 c -0.055,-0.0125 -0.1121,-0.005 -0.163,0 l 0.082,-0.28517 z m -19.5546,0.24443 0.041,0 0,0.44813 -0.2037,0 0.1629,-0.44813 z m -5.5405,0.0407 0.6926,0.16296 -0.5704,1.18142 -0.3259,0.44813 -0.082,0 0.2037,-0.61108 0,-1.05921 c 0.035,-0.0284 0.048,-0.0738 0.081,-0.12222 z m 5.9479,0.2037 0.4074,0 0,0.48886 0.2444,0 0.041,-0.0407 -0.041,0.28517 -0.3259,0.0815 -0.041,-0.12221 0.041,-0.2037 -0.3667,-0.0815 -0.1629,0.0407 c 0.1408,-0.12156 0.2037,-0.25688 0.2037,-0.44812 z m 13.8919,0 0.2445,0.0407 0.1222,0.7333 -0.082,0.24444 -0.4074,-0.61109 0.1222,-0.40738 z m -11.8142,0.20369 0.082,0 -0.2037,0.89625 -0.082,0.0407 -0.2037,-0.20369 c -0.1036,0 -0.1645,0.009 -0.2445,0.0407 l 0.2037,-0.65182 0.4481,-0.12222 z m 0.774,0 0.4889,0 0.1629,0.0407 -0.2444,0.77404 -0.5296,0.32591 -0.2445,0 0.082,-0.2037 0.163,0 0,-0.20369 0.2852,-0.0815 -0.2852,-0.28517 0.1222,-0.36665 z m 2.8517,0 0.6518,0 -0.082,0.20369 -0.611,-0.12221 0.041,-0.0815 z m -22.5286,0.16296 0.6518,0.16295 -0.4888,0.61108 -0.3667,-0.0815 0.2037,-0.69256 z m 14.9512,0.12221 0.2037,0 0.3666,0.0815 -0.4074,0.20369 -0.041,0.2037 0.041,0.12221 -0.1629,0.0407 -0.2037,0 0.2037,-0.65182 z m 20.0028,0.0407 0.2037,0.0407 -0.041,0.20369 -0.2037,-0.0407 0.041,-0.20369 z m -18.8214,0.16296 0.2444,0.0407 -0.041,0.2037 -0.2851,0.0407 0.082,-0.28517 z m 6.1923,0 0.2852,0.0407 -0.041,0.0815 -0.2444,-0.0815 0,-0.0407 z m 6.1516,0.20369 0.6518,0.12222 0.2852,0.85551 c 0.027,0.314 0.036,0.61618 -0.041,0.937 l -0.2037,-0.0815 0.1629,-0.44813 -0.5703,-0.12221 -0.041,0.20369 0.3259,0.81478 -0.3259,0.12221 c -0.1051,0.33294 -0.023,0.60721 0.2852,0.77404 -0.041,0.10991 -0.074,0.22 -0.1222,0.32591 l -0.2445,0.0815 0.1222,-0.40739 -0.5703,-0.12221 -0.2444,1.75177 c -0.1708,0.17432 -0.368,0.37121 -0.5704,0.5296 l 0.2037,-0.28517 c 0.09,-0.61376 -0.1265,-0.99034 -0.6111,-1.09995 l 0.1222,-0.40739 0.6111,0.12222 0.1222,-0.28517 -0.3259,-0.28518 0.4482,-0.12221 0,-1.18143 0.5296,-1.79251 z m -27.3765,0.0407 0.8147,0.40739 -0.3259,1.09995 -0.2851,-0.0815 -0.3259,-1.01847 0.1222,-0.40739 z m 2.485,0.0407 0.5704,0.12221 -0.081,0.2037 -0.5296,-0.12222 0.041,-0.20369 z m 32.0208,0.12221 0.2852,0.0407 -0.2037,0.69256 -0.2852,-0.0407 0.2037,-0.69257 z m -23.3026,0.0407 0.2037,0 0,0.2037 -0.2445,-0.0407 0.041,-0.16296 z m 10.1439,0 0,0.0815 -0.041,0 0.041,-0.0815 z m 11.8143,0.28518 -0.3666,1.34438 -0.041,0 0.4073,-1.34438 z m -11.4884,0.0815 0.2445,0.0815 -0.082,0.2037 -0.2852,0.12221 0.1222,-0.40739 z m 10.307,0 0.041,0 c 0.027,0.19876 0.01,0.41807 -0.041,0.65183 l -0.163,-0.0407 0.163,-0.61109 z m 1.5888,0 0.1222,0.0407 0,0.2037 -0.1629,-0.0407 0.041,-0.2037 z m -16.3363,0.12222 0.163,0 -0.4482,0.44813 -0.2037,0 0.4889,-0.44813 z m 3.1369,0 0.2852,0 -0.082,0.44813 -0.3259,0 0.1222,-0.44813 z m -22.4471,0.20369 0.082,0.12222 -0.041,0.0815 c -0.011,-0.0687 -0.041,-0.1361 -0.041,-0.2037 z m 20.1657,0 0.5296,0 0.082,0.0815 -0.082,0.32591 -0.6111,-0.12221 0.081,-0.28518 z m -18.9028,0.0815 0.2037,0.0407 0,0.24443 c -0.066,-0.0966 -0.1383,-0.18401 -0.2037,-0.28517 z m 10.7143,0.2037 -0.082,0.28517 -0.041,0.0815 -0.041,0.12221 -0.1629,-0.20369 0.3259,-0.28517 z m 19.7176,0 0.2037,0.0407 -0.082,0.16295 c -0.028,-0.0538 -0.092,-0.14667 -0.1222,-0.20369 z m -4.1553,0.0407 0.611,0.12221 -0.082,0.24443 -0.611,-0.16295 0.082,-0.20369 z m 7.944,0 0.163,0.0407 -0.2852,0.97774 -0.1222,-0.0407 0.2444,-0.97773 z m -29.4542,0.0815 1.2222,0.0815 -0.2037,0.61108 -1.2629,0 0.2444,-0.69256 z m 10.9181,0.0407 0.6518,0 0,0.2037 -0.1222,0 -0.6111,-0.16296 c 0.029,-0.0137 0.051,-0.0271 0.081,-0.0407 z m 14.2993,0.0815 0.2852,0.40739 -0.2852,0.44813 -0.2444,-0.0407 0.2444,-0.81478 z m 1.1407,0.32591 0.1222,0.61108 -0.2852,-0.0815 0.163,-0.52961 z m 4.1554,0.0407 0.1222,0 c -0.064,0.20395 -0.057,0.39208 0,0.5296 l -0.041,0 -0.1222,0.40739 0.041,0.89626 -0.4074,0.48886 -0.2037,-0.0407 0.3259,-1.18143 -0.4481,-0.12222 0.2444,-0.81478 0.4074,0.12222 0.082,-0.28517 z m -17.2326,0.0407 0.3667,0 0,0.28517 -0.2445,0.0815 -0.1222,-0.0407 0,-0.32591 z m 0.774,0 0.4074,0 -0.1629,0.57034 -0.2445,-0.0407 -0.082,-0.0815 0.082,0 0,-0.44813 z m 2.037,0 0.4074,0 -0.1222,0.69256 c -0.146,0.15267 -0.3488,0.24965 -0.5704,0.32591 l -0.6111,-0.44813 c 0.097,0.029 0.2025,0.0644 0.3259,0.0815 0.4141,0 0.5704,-0.19281 0.5704,-0.65182 z m -22.4471,0.0407 c 0.01,0.0179 0.071,0.0223 0.082,0.0407 l -0.082,0 0,-0.0407 z m 2.7702,0.0407 0.8148,0.20369 -0.082,0.20369 -0.8148,0.0815 c -0.02,-0.0217 -0.021,-0.0594 -0.041,-0.0815 l 0.1222,-0.40738 z m 21.4287,0 0.2851,0.16295 -0.082,0.2037 -0.2851,-0.0407 0.082,-0.32591 z m -2.3222,0.0815 0.2852,0.0815 -0.2852,0 0,-0.0815 z m -14.2993,0.36665 0.4889,0.52961 -0.2037,0.65182 -0.041,0 -0.2445,-0.32591 -0.5296,-0.12222 c -0.048,0.151 -0.1391,0.2794 -0.2444,0.36665 l -0.8555,-0.24443 c -0.047,-0.23181 -0.2221,-0.40088 -0.6111,-0.48887 l 0.041,-0.20369 0.5704,0.12222 0.2036,0.24443 c 0.1053,-0.3329 0.569,-0.44606 1.4259,-0.52961 z m 3.1776,0.32591 0.3667,0.44813 -0.6518,-0.12221 0.2851,-0.32592 z m 21.6731,0 0.1222,0.2037 c -0.02,0.075 -0.087,0.16363 -0.1222,0.24443 l -0.1222,-0.0407 0.1222,-0.40739 z m -1.3444,0.12222 0.2037,0.36665 -0.041,0.2037 -0.2444,-0.36665 c 0.023,-0.0703 0.061,-0.13195 0.082,-0.2037 z m -25.9099,0.40739 0.2444,0.0407 -0.1222,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -1.5073,0.0815 0.2037,0.0407 -0.041,0.12221 c -0.061,-0.0422 -0.1022,-0.11766 -0.163,-0.16295 z m -3.911,0.0815 c 0.1984,0.0449 0.3656,0.10692 0.5296,0.12221 l 0.4889,0.61108 0,-0.48886 -0.1222,-0.12222 c 0.1736,-0.0109 0.3316,-0.0657 0.4481,-0.12221 0.1559,0.20013 0.3052,0.42706 0.4889,0.65182 l -0.3259,0.44812 -0.1222,-0.12221 -0.082,-0.16296 -0.2852,-0.0407 -0.6518,0.28518 0.041,0.61108 c -0.1697,-0.1506 -0.3284,-0.3246 -0.4889,-0.48887 l 0.082,-0.20369 -0.3666,-0.0815 c -0.1552,-0.17217 -0.3026,-0.34479 -0.4482,-0.52961 l 0.6518,0.12222 0.163,-0.48886 z m 11.7328,0.24443 0.4482,0 0,0.48886 -0.4482,0 0,-0.48886 z m 11.6921,0 0.1629,0 0,0.12221 -0.1629,-0.12221 z m -4.4405,0.0407 0.1629,0.28517 -0.041,0.16295 -0.9777,0 -0.2852,0 0,-0.0407 c 0.097,0.0219 0.1955,0.0613 0.2852,0.0407 0.1794,-0.0411 0.3596,-0.19639 0.4888,-0.40738 l 0.3667,-0.0407 z m -0.7333,0.0407 0,0.0407 -0.5296,0 0.5296,-0.0407 z m 2.1999,0.0407 c 0.1,0.0769 0.1569,0.22679 0.1629,0.36665 l -0.6926,0 0.163,-0.28517 0.3667,-0.0815 z m 17.1103,0.0407 0.1629,0.0407 -0.041,0.16296 -0.1629,-0.0815 0.041,-0.12222 z m -21.1435,0.0407 0.1222,0 c 0.1262,0.0632 0.2198,0.15471 0.2445,0.28517 l -0.3667,0 0,-0.28517 z m 11.6921,0.44813 0.5296,0.12222 -0.082,0.24443 -0.5296,-0.12222 0.082,-0.24443 z m -13.0365,0.0815 0.163,0.12221 -0.082,0.2037 -0.082,-0.0407 0,-0.28517 z m -4.1146,0.0815 0.2444,0.0407 0.1222,0.0815 0.163,0 -0.082,0.24444 -0.3666,0.20369 -0.1223,0.0407 0,-0.0815 0.1223,0.0407 0.041,-0.20369 -0.1223,-0.28518 0,-0.0815 z m 25.4211,0.0407 0.1222,0.44813 -0.1222,0.28517 0,-0.7333 z m -16.1734,0.16296 -0.041,0.20369 -0.041,0.48887 -0.937,-0.12222 -0.081,-0.0815 0.7741,-0.36665 -0.3667,-0.0815 0.6926,-0.0407 z m -3.5035,0.0407 -0.041,0.12222 -0.2852,-0.0815 0.3259,-0.0407 z m 4.7664,0 0.4482,0.0815 0,0.0407 0,0.20369 c -0.1905,-3e-5 -0.299,0.0479 -0.4074,0.12222 l -0.041,-0.44813 z m -2.5665,0.0407 -0.1222,0.44813 -0.6111,-0.0815 -0.2445,-0.24444 -0.082,0.2037 -0.2851,-0.0407 0.082,-0.24443 0.082,0 0.2037,0.0815 -0.041,-0.0815 0.2851,0 0.7333,-0.0407 z m 3.7887,0 0.1222,0.0407 -0.1222,0 0,-0.0407 z m -15.2771,0.0407 0.163,0.24443 0.2851,0 0.163,-0.12222 0.2852,0.28518 -0.3259,0.36664 c -0.7619,0.018 -1.1994,0.12476 -1.2629,0.32592 l -0.082,0.20369 0.2851,0.0815 0.5296,0 -0.2444,0.28517 c -0.3067,1e-5 -0.7246,-0.15749 -1.1814,-0.36665 l 0.1222,-0.32591 -0.3667,-0.0815 -0.3259,0.16296 c -0.3253,-0.18391 -0.6735,-0.42525 -1.0592,-0.69256 0.53,0.11988 0.9408,0.0209 1.2222,-0.28518 0.452,0.0971 0.8964,0.16296 1.3851,0.16296 l 0.082,0 0.163,0.0407 0.041,-0.16296 0.1222,-0.12221 z m 1.9147,0.0815 c 0.012,0.27819 0.1751,0.47169 0.6111,0.57035 l -0.041,0.12221 -0.1629,0.0815 c -0.4016,-0.0334 -0.7787,-0.0703 -1.1,-0.0815 0.1876,-0.17417 0.4654,-0.46551 0.6926,-0.69256 z m 25.1767,0 0.1222,0.0407 -0.2445,1.01847 -0.1222,-0.0407 0.2445,-1.01848 z m -10.9588,0.0815 0.2444,0.0815 -0.082,0.28517 -0.1629,0 0,-0.36665 z m -20.8176,0.12222 c 0.2965,0.34462 0.6324,0.71226 0.9778,1.09995 l -0.7333,-0.16296 c -0.294,-0.25079 -0.5828,-0.52525 -0.8555,-0.81477 l 0.611,-0.12222 z m -1.0592,0.24443 0.4482,0.7333 -0.3259,0 c -0.2314,-0.13532 -0.4738,-0.24993 -0.6926,-0.40739 0.047,-0.0675 0.091,-0.14685 0.1222,-0.24443 l 0.4481,-0.0815 z m 23.2212,0.16296 0.5703,0.12221 0,1.18143 -0.4481,0.12222 -0.5296,-0.12222 0.4074,-1.30364 z m 11.2847,0.12221 -0.2037,0.40739 0.082,-0.32591 0.1222,-0.0815 z m -16.2956,0.12222 0.2444,0 0,0.0815 -0.2444,-0.0407 0,-0.0407 z m -19.6769,0.12222 c 0.029,0.006 0.054,-0.005 0.082,0 l 0.082,0.0815 -0.3666,0 0.2037,-0.0815 z m 29.1691,0.0407 -0.041,0.36665 -0.2852,-0.0815 c 0.1195,-0.0874 0.2148,-0.19178 0.3259,-0.28517 z m 3.8294,0 0,0.0815 -0.041,0 0.041,-0.0815 z m -0.9777,0.0407 0.2037,0.0815 c -0.072,0.0648 -0.1696,0.10081 -0.2445,0.16296 -0.1919,0.15941 -0.368,0.33853 -0.5703,0.48886 -0.078,-0.0803 -0.1398,-0.20168 -0.2037,-0.32591 0.1573,-0.0786 0.2843,-0.16145 0.4481,-0.24443 l 0.3259,0.0815 0.041,-0.2037 c 0.01,-0.003 -0.01,-0.0377 0,-0.0407 z m -23.5471,0.2037 -1.0999,0.5296 -0.163,0 0,-0.20369 c 0.1087,10e-6 0.2966,-0.11103 0.5296,-0.28517 l 0.7333,-0.0407 z m -4.9294,0.12222 c 0.1297,0.14533 0.2302,0.25608 0.3667,0.40738 l 0,0.2037 c -0.065,-0.0425 -0.139,-0.0782 -0.2037,-0.12222 l 0.041,-0.0815 -0.163,-0.0407 c -0.08,-0.0559 -0.166,-0.10467 -0.2444,-0.16296 l 0.1629,-0.0407 0.041,-0.16295 z m 10.0218,0.0815 0.3666,0.24444 -0.082,0.0815 -0.2037,0 c 0,-0.12071 -0.037,-0.22822 -0.082,-0.32591 z m -2.037,0.32591 0.6519,0 0,0.2037 -0.6519,0 0,-0.2037 z m 6.6405,0 0.4074,0 0,0.0815 -0.2445,0.12222 -0.1629,0 0,-0.2037 z m -3.0962,0.12222 0.4074,0.0815 -0.4074,0 0,-0.0815 z m 5.8257,0 0.2444,0.0407 0.2444,0.28517 0.082,0 0,0.40739 c -0.3615,0.0312 -0.7579,0.0611 -1.1406,0.0815 l 0.3259,-0.48887 c 0.079,-0.004 0.1557,0 0.2444,0 l 0,-0.32591 z m -6.4775,0.32591 0.6518,0 0,0.48887 -1.0185,0 0.3667,-0.48887 z m 8.1885,0.0407 0.2852,0.0815 -0.041,0.12222 c -0.1063,0.0146 -0.2175,0.0272 -0.3259,0.0407 l 0.082,-0.24443 z m 9.4107,0.0407 c -0.02,0.28762 -0.042,0.56161 0.041,0.77404 l -0.163,0.0815 -0.1222,0.40738 -0.3259,-0.44812 0.5703,-0.81478 z m -12.0587,0.0407 c 0.01,-0.004 0.03,0.004 0.041,0 l 0.041,0.0407 -0.082,0.24443 -0.2445,-0.0407 c 0.043,-0.0934 0.1038,-0.18419 0.2445,-0.24443 z m -8.6367,0.16295 0.6519,0 0,0.2037 -0.6519,0.20369 0,-0.40739 z m 1.0185,0 0.4889,0 0,0.2037 -0.4889,0 0,-0.2037 z m 3.585,0 0.3667,0 -0.3667,0.40739 -0.4888,0 0.4888,-0.40739 z m -15.1548,0.2037 0.041,0 0,0.20369 -0.4482,0 0,-0.0407 0.4074,-0.16295 z m 3.3406,0 0.611,0 0,0.20369 -0.611,0 0,-0.20369 z m 4.9701,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 3.9109,0 0.6519,0 0,0.20369 -0.6519,0 0,-0.20369 z m 18.0474,0.0407 0.082,0 0,0.0407 -0.082,-0.0407 z m -2.7295,0.0815 0.041,0 -0.163,0.48887 -0.5296,-0.12222 0.041,-0.0815 c 0.1755,-0.0707 0.415,-0.20083 0.6111,-0.28518 z m 5.296,0 c 0.072,0.0901 0.1611,0.14842 0.2444,0.24444 l 0,0.0407 -0.4074,-0.0815 c -0.029,-0.0236 -0.055,-0.0579 -0.082,-0.0815 l 0.2445,-0.12222 z m -32.6318,0.28518 0.6518,0 0,0.24443 -0.6518,0 0,-0.24443 z m 2.9332,0 0.3666,0 -0.3666,0.5296 0,-0.5296 z m -3.5443,0.24443 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 9.3292,0 0.6111,0 1.0184,0.28517 1.2222,-0.28517 1.3037,0 0,0.48887 -5.1739,0 0,-0.2037 1.0185,-0.28517 z m 4.522,0 4.6035,0 -0.4481,0.48887 -0.2037,-0.2037 -1.0185,0.2037 -2.4851,0 -0.4481,-0.48887 z m 5.459,0 0.5704,0 0,0.28517 -0.5704,0 0,-0.28517 z m 15.3178,0 c -0.021,0.0666 -0.029,0.1361 -0.041,0.20369 l -0.041,0 0.041,-0.16295 0.041,-0.0407 z m -30.5134,0.28517 1.0185,0 0,0.2037 -1.0185,0 0,-0.2037 z"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.49142857;fill:#ef2929;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <path
+       id="path3644"
+       d="m -532.05291,220.01223 -2.5666,0.48887 0,1.34438 0.5704,-0.61108 0.6518,0 0,0.20369 -1.2222,0.40739 0,2.07768 0.2037,0 -0.2037,0.28517 0,0.85552 c -0.1242,0.11339 -0.1888,0.18925 -0.2852,0.28517 l 0,0.48887 c 0.096,-0.0462 0.1848,-0.0603 0.2852,-0.12222 l 0,0.7333 -0.2852,0.24444 0,8.55516 0.6111,2.24064 0.082,0.57034 c -0.028,0.0807 -0.061,0.16777 -0.082,0.24443 0.066,0.0489 0.108,0.10818 0.163,0.16296 l 0,0.16295 -0.2445,-0.0815 c -0.024,-0.006 -0.057,-0.001 -0.082,0 0.036,-0.12665 0.062,-0.25693 0.1223,-0.36665 l -0.163,-0.61109 -0.4074,0.0815 0,3.87019 c 0.014,-0.002 0.027,0.004 0.041,0 l 0.2037,-0.0407 0.041,-0.0407 0,0.85551 c -0.09,0.26172 -0.1903,0.5021 -0.2852,0.69256 l 0,0.97773 0.2445,0.0815 -0.041,0.16296 -0.2037,-0.0815 0,11.12171 0.1629,-1.18143 0.1222,0.0407 0,1.01847 0.2037,0 0.4889,0.52961 c -0.1,0.0821 -0.1897,0.19341 -0.2444,0.36665 l -0.2037,-0.24443 -0.082,0 -0.163,-0.65183 0,0.57035 -0.041,0 -0.2444,0.12221 0,0.89626 0.2852,-0.12222 0,0.32591 -0.1223,-0.0407 -0.1222,0.40738 0.2445,0.0407 0.3666,-0.12221 0,0.24443 -0.3666,0 0,0.85552 -0.2852,0.0815 0,0.2037 0.2852,-0.0815 0,0.0815 c 0.414,4e-5 0.5703,-0.14215 0.5703,-0.44813 l -0.2037,-0.20369 0.5296,0 -0.1222,0.0815 -0.082,0.24444 0.1222,0 0,0.0815 0.2037,0.24444 0,0.28517 -1.0185,0 0,0.24443 3.3814,0 c 0.2346,-0.63833 0.5269,-0.97773 0.937,-0.97773 l 0,-0.40739 -0.5704,0 -0.2852,0.2037 -0.1629,0 -0.2444,-0.32592 0.082,-0.24443 -0.2445,0.0815 -0.6518,0 -0.3259,0.12222 0,-0.0407 -0.3667,-0.0815 -0.2851,0.20369 -0.4482,-0.20369 0,-0.24443 1.0593,0 0,-0.2037 -0.2037,-0.20369 0,-0.24444 0.4888,0.16296 -0.082,0.20369 0.5704,0.12222 0.2851,-0.0407 0.6111,0.2037 -0.082,0.24443 0.2852,0.0815 0.5703,-0.0407 0.6519,0.24443 0,0.2037 c -0.3219,6e-5 -0.8163,0.38651 -1.3852,1.18142 l 18.577,0 c 0.082,-0.0802 0.1634,-0.16303 0.2444,-0.24443 0.2121,0.0756 0.504,0.16494 0.7333,0.24443 l 1.4666,0 -0.2444,-0.40739 1.1407,0.0815 0.2037,0.0815 -0.041,0.16296 -0.5297,0.0815 0.7333,0 7.8626,0 0.041,-0.16295 c 0.061,0.0307 0.1356,0.0557 0.2037,0.0815 l -0.041,0.0815 1.3037,0 0.3666,-0.24443 -0.041,0.24443 2.5666,0 0.082,-0.24443 0.2444,0.0407 -0.082,0.20369 0.4481,0 0,-1.34438 -0.082,0.24443 -0.2444,-0.0407 0.1222,-0.40738 0.2037,0.0815 0,-9.04402 -0.1222,-0.0407 0.1222,-0.57035 0,-1.71103 -0.2851,0.0815 -0.041,0.20369 0.2036,0.32591 -0.611,1.09995 -0.2037,-0.0407 0.937,-3.50354 0,-1.58881 -0.2852,0.12221 -0.041,1.05921 -0.6518,2.36286 -0.5704,0.28517 1.1815,-4.3998 0.3666,0.57035 0,-1.34439 -0.163,-0.0407 0.163,-0.57034 0,-1.83325 c -0.2597,-0.39208 -0.5239,-0.78277 -0.8148,-1.14069 l 0.8148,0.0407 0,-1.22216 -0.2037,0.85551 -0.2444,-0.0815 0.3259,-1.18142 0.1222,0.0407 0,-3.54429 -0.082,0.28518 -0.4481,-0.12222 0.5296,-2.03694 0,-7.98482 -0.041,0.12222 -0.8148,0 -0.6518,-0.36665 -0.8148,0 0.041,-0.2037 -0.3259,-0.5296 0.082,-0.28518 0.2037,0.0407 0.8555,0.77404 0.2852,-0.16295 0.082,-0.28518 c -0.3163,-0.38756 -1.755,-1.08881 -4.3183,-2.07768 l -1.1,0 2.811,1.18143 -0.1222,0.40739 0.2851,-0.16296 0.6926,0.2037 -0.4889,0.81477 -0.2037,-0.0407 -0.1629,-0.28517 -0.2444,-0.0407 -0.3667,0.12222 0.1222,-0.40739 0.3667,-0.16295 0,-0.0407 -0.2445,-0.28517 -0.2444,-0.0815 -0.2852,0.20369 -0.2444,-0.0407 -0.6926,-0.48886 -0.5703,0.36665 -1.5481,-1.26291 -1.8332,0 -0.082,0.32591 -0.2445,-0.0407 0.082,-0.28517 -3.2998,0 1.0184,1.54808 0.2037,0.0407 -0.1629,0.69256 -0.4481,-0.12222 -0.082,0.2037 c 0.3276,0.0876 0.5624,0.55849 0.6925,1.38512 l -0.1629,0.69256 -0.2445,-0.0815 0.1223,-0.44813 -0.7333,-0.20369 -0.163,0.44813 0.4889,0.12221 -0.2445,0.89626 -0.4888,-0.12222 -0.2037,0.937 0.4481,0.12221 -0.1222,0.40739 -0.4481,-0.12222 -0.1223,0.40739 0.4482,0.12222 -0.163,0.69256 c -0.4096,-0.10952 -0.6971,0.12321 -0.937,0.69256 -0.022,0.0836 -0.038,0.17514 -0.041,0.24443 l -0.2444,-0.28517 -0.2037,0.28517 c -0.01,-0.0894 -0.01,-0.18893 0,-0.28517 l 0.2037,0 0,-0.20369 -0.163,-0.16296 c 0.014,-0.071 0.021,-0.12963 0.041,-0.20369 l 0.5296,0.16295 0.163,-0.65182 -0.4074,-0.61108 0.937,-1.38512 -0.2037,-0.0407 0.2852,-0.16296 0.082,-0.28517 -0.2037,-1.4666 0.6518,-0.24443 -0.2444,-0.0815 0.4481,-0.61108 c 0.1537,-1.06752 -0.199,-1.68478 -1.0592,-1.91473 l 0.2852,-0.16296 0.082,-0.24443 -1.5889,0 0,0.0815 0.6926,0.16295 -0.937,0.7333 c 0.085,-0.31634 0.049,-0.64018 -0.041,-0.97773 l -1.5888,0 -0.2037,0.69256 -0.2444,-0.0407 0.1629,-0.65182 -0.937,0 0.2445,0.48887 -0.082,0.44813 -0.3667,-0.57035 0.082,-0.36665 -0.4481,0 -0.8555,3.09616 c -0.097,-0.0451 -0.1796,-0.0767 -0.2852,-0.12222 l -0.041,0 -0.163,-0.24443 0.2852,-0.12222 0.082,-1.18143 0.3667,-1.42586 -0.4889,0 -0.6111,2.36286 -0.2444,0 0.6111,-2.36286 -2.6073,0 -0.041,0.16296 0.4481,0.12221 -0.2852,1.05921 c -0.9988,-0.37943 -1.8221,-0.65178 -2.4443,-0.65182 -0.1476,0.37417 -0.4355,0.62502 -0.774,0.77404 -0.017,-0.069 -0.022,-0.13369 -0.041,-0.20369 l -0.041,-0.2037 0.5703,-0.0815 0,-0.28517 c 0,-0.20089 -0.2546,-0.36699 -0.774,-0.48886 l -0.041,-0.2037 -0.9778,0 c 10e-4,0.0136 0,0.0271 0,0.0407 l 0,0.24443 c -0.2787,-0.13727 -0.624,-0.21604 -1.0184,-0.28517 l -1.7111,0 0,0.16296 -0.2444,0.0815 -0.082,-0.24443 -0.5296,0 0.041,0.12222 -0.163,0.16295 -0.081,-0.28517 -2.7295,0 -0.2037,0.97773 -0.3259,0 0,-0.48886 c 0.085,-0.17618 0.1553,-0.35747 0.2037,-0.48887 l -2.4036,0 z m 36.2576,12.83274 0,-0.93699 -0.041,0.0407 -0.163,0.61108 0.2037,0.28517 z m -34.3429,-12.75126 -0.2852,0.44813 -0.4888,0.0815 0.082,-0.28517 0,-0.12221 0.6925,-0.12222 z m 13.4846,0.0407 0.4481,0.12221 -0.041,0.24444 -0.4481,-0.12222 0.041,-0.24443 z m -16.2956,0.36665 0,0.48886 -0.4481,0 0.4481,-0.48886 z m 7.8219,0 0.082,0.0407 0.2037,0.89625 c -0.2225,-0.0204 -0.4372,-0.0455 -0.6111,-0.0815 l 0.2037,-0.65182 -0.041,-0.16295 0.1629,-0.0407 z m 1.4666,0 0.4074,0.48886 -0.4074,0 0,-0.48886 z m -2.5666,0.16295 0.082,0.28518 -0.1222,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.1515,0.0407 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 5.2145,0 0.2037,0 0,0.28517 -0.2037,0 0,-0.28517 z m -2.9739,0.28517 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24444 -0.163,0 c 0.038,-0.0692 0.088,-0.17949 0.1223,-0.24444 z m 13.0364,0 0.2037,0.0815 -0.1629,0.65182 -0.3259,-0.57034 0.2851,-0.16296 z m 11.8143,0.0407 0.4481,0.12222 -0.1222,0.48887 -0.4889,-0.12222 0.163,-0.48887 z m -5.8257,0.16296 0.2445,0.0407 -0.163,1.58881 -0.2852,0.16296 -0.1222,0.48887 -0.5296,2.52581 -0.6518,-0.65183 1.1,-2.64802 -0.2445,-0.28518 0.082,-0.20369 0.5704,-1.01847 z m 0.9778,0.0407 0.5703,0.12221 -0.2852,0.16296 -0.082,0.20369 -0.774,3.8702 -0.2852,0.16295 -0.082,1.14069 -0.2037,0.77404 -0.5703,0 0.1629,-0.57035 c 0.245,-0.0956 0.4482,-0.21288 0.4482,-0.36665 l -0.2852,-0.28517 1.3851,-5.21457 z m -17.7214,0.20369 0.2444,0 0.041,0.16296 -0.082,0.0407 -0.1222,0 -0.082,-0.2037 z m 14.5437,0.12222 0.2037,0.0407 -0.082,0.44813 -0.2444,-0.0815 0.1222,-0.40739 z m 12.6291,0.0407 0.2037,0.0815 -0.082,0.40738 -0.2444,-0.0815 0.1222,-0.40739 z m -29.8209,0.0407 0.6519,0 0,0.20369 -0.6519,0 0,-0.20369 z m -2.0776,0.20369 1.0592,0 c -0.029,0.0977 -0.082,0.18869 -0.1222,0.28517 l -0.937,0 0,-0.28517 z m 11.855,0 0,0.52961 -0.4889,0 0.4889,-0.52961 z m 24.3618,0.16296 c -0.074,0.27638 0.1417,0.51307 0.5704,0.65182 l 0,-0.52961 -0.5704,-0.12221 z m -6.0701,0.32591 0.4481,0.12221 -0.3666,1.30365 -0.4481,-0.12222 0,-1.18143 0.3666,-0.12221 z m -17.0696,0.44812 0,0.48887 -0.2037,0 -1.6703,0.24443 c 0.035,-0.18638 0.074,-0.3749 0.082,-0.57034 l 1.7926,-0.16296 z m 0.3667,0 0.6518,0.2037 0,0.28517 -0.8555,0 0.2037,-0.28517 0,-0.2037 z m 1.0185,0 0.041,0 0.2851,0.44813 -0.041,0.0407 -0.2851,0 0,-0.48887 z m 1.8332,0 -0.082,0.32592 -0.2852,0.0407 0.1223,-0.32591 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.2662,0 0.6518,0.36665 -0.082,0.2037 -0.4481,0.85551 c -0.076,0.61312 0.1199,0.99046 0.5296,1.09995 l -0.1222,0.40739 -0.5296,-0.12221 -0.082,0.28517 0.2444,0.28517 -0.3666,0.12222 0.041,1.18142 -0.4889,1.79251 -0.5296,-0.12221 -0.4074,-1.30365 0.1222,-0.48886 0.2444,0.0407 -0.1222,0.48886 0.4482,0.12222 0.041,-0.20369 -0.2852,-0.81478 0.2852,-0.12222 c 0.1185,-0.44346 -0.079,-0.76489 -0.5704,-0.89625 l 0.6518,-0.28518 -0.1222,0.40739 0.4889,0.12222 0.3666,-3.21837 0.041,-0.2037 z m -20.4916,0.12222 0.2444,0.0407 0.1222,0.48887 -0.3259,-0.0815 0,-0.36665 -0.041,-0.0815 z m -7.7404,0.0815 0.4481,0 -0.4481,0.5296 0,-0.5296 z m 1.3036,0 0.8148,0 c -0.013,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2572,0.20541 -0.3429,0.30401 -0.5704,0.48886 l -0.2037,-0.24443 0,-0.28517 z m 1.3037,0 0.3666,0 0.4074,0 0,0.20369 -0.082,-0.0815 -0.4889,0.12221 0,0.24444 -0.082,0.0407 -0.2037,-0.24443 -0.082,0 0.163,-0.28517 z m 1.1406,0 0.6111,0 -0.041,0.28517 -0.5703,0 0,-0.28517 z m 7.2923,0 0.6518,0 -0.082,0.24443 0.1222,0.44813 -0.2851,0.0407 -0.4074,-0.65182 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24443 -0.2037,0.0407 -0.082,-0.28517 z m 21.1435,0 0.8148,0 0.2444,0.0407 -0.082,0.20369 -1.1,0.16296 0.1223,-0.40739 z m -12.9142,0.0815 0.2036,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m 5.2553,0 -0.081,0.20369 0.4888,0.12222 0.041,-0.2037 -0.4481,-0.12221 z m 10.1439,0.36665 0.4889,0.12221 0.4074,0.57035 -0.6518,0.32591 0.2852,0.0815 -0.6111,1.01847 c -0.3277,-0.0876 -0.363,-0.37135 -0.2445,-0.81478 l 0.2852,-0.16296 0.041,-0.20369 0,-0.93699 z m -1.3851,0.28517 0.2445,0.0815 0.041,0.7333 -0.4482,-0.12222 0.163,-0.69256 z m -25.5025,0.0407 0,0.40739 -0.2852,0 -0.082,-0.32591 0.3667,-0.0815 z m 23.9137,0.0407 0.2444,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44812 z m -24.7285,0.0815 0.082,0.28518 -0.2444,0 0,-0.24444 0.1629,-0.0407 z m -8.2292,0.0407 1.0184,0 c -0.1009,0.0837 -0.1917,0.16588 -0.2851,0.24444 l -0.7333,0 0,-0.24444 z m 2.0776,0 0.4482,0 0,0.24444 -0.6111,0 0.1629,-0.24444 z m 7.8626,0 0,0.24444 -0.2036,0 -0.041,-0.16296 0.2444,-0.0815 z m 3.748,0 0.4074,0 0,0.24444 -0.4074,0 0,-0.24444 z m 1.0592,0 0.8148,0 0,0.24444 -0.8148,0 0,-0.24444 z m 22.3657,0.0407 0.4481,0.12222 0.2852,0.28517 0.082,-0.40739 0.2444,0.0407 -0.1222,0.44813 -0.2037,-0.0815 0.163,0.28517 -0.1223,0.48887 c -0.3277,-0.0875 -0.616,0.14207 -0.774,0.7333 l -0.3666,-0.61108 0.3666,-1.30365 z m -31.0023,0.0407 0.2852,0.20369 -0.2037,0.0815 -0.082,-0.28517 z m -4.7257,0.0815 0.041,0.0815 -0.1222,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.98,0.0407 0.5296,0.16295 -0.041,0.2037 -0.5296,-0.12222 0.041,-0.24443 z m -20.4917,0.0407 0.3667,0 0,0.28517 -0.3667,0 0,-0.28517 z m 3.5443,0 0.2037,0 c 0.2933,0.10004 0.5027,0.25431 0.6518,0.48886 l -0.081,0.12222 c 0.049,0.098 0.1129,0.18841 0.163,0.28517 l -0.3666,0 0,0.24443 0.5296,0.0815 c 0.074,0.13781 0.1679,0.27232 0.2444,0.40739 l -1.7925,0 0,-0.20369 c 0.5521,1e-4 0.8148,-0.22358 0.8148,-0.52961 l -0.3667,-0.40739 0,-0.48886 z m -9.2884,0.0407 0.1222,0.44813 -0.2037,0.0407 -0.082,-0.32591 0.1629,-0.16296 z m -3.5036,0.0815 0.082,0.44813 -0.4481,0.12222 -0.041,-0.16296 0.3259,-0.0407 0,-0.32591 0.082,-0.0407 z m 1.6296,0.0407 c 0.2851,1.06671 0.7124,1.54315 1.3036,1.38512 l 0.082,0.16296 -0.1629,0.24443 -0.2445,-0.12221 c -0.5964,0.73087 -0.8708,1.45177 -0.6925,2.11842 l -0.8555,-0.65183 0.611,-0.16295 -0.1222,-0.40739 c -0.3695,0.0988 -0.5984,-0.0975 -0.8148,-0.61108 l 0.9778,-0.7333 -0.4482,-0.937 -0.041,-0.16295 0.4074,-0.12222 z m 23.5878,0.24443 0.4481,0.12222 -0.082,0.24443 -0.4481,-0.12221 0.082,-0.24444 z m -14.9512,0.0815 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 4.6035,0 0,0.0815 -0.041,0.16296 -0.2037,-0.0407 0.2445,-0.2037 z m -10.5514,0.0407 c 0.1566,0.12931 0.3292,0.24634 0.5704,0.36665 l 0,-0.16295 0.082,0.36665 0,0.0815 -0.4481,0.12222 -0.2037,-0.77404 z m 23.2212,0.0407 0.4481,0.12222 0,0.97773 -0.2851,0.12222 -0.041,0.20369 -0.163,1.4666 -0.4074,0.57034 0.2037,0.24444 -0.3259,0.20369 0.3666,0.57035 -0.2851,0.12221 -0.2445,-0.0407 -0.041,1.14069 -0.3259,1.14069 -0.4481,-0.16296 -0.2037,0.69256 c 0.013,0.0242 0.029,0.0565 0.041,0.0815 l -0.1222,0.0815 0.1629,0.0407 c 0.083,0.20378 0.1422,0.44083 0.163,0.69256 l -0.041,0.20369 -0.163,-0.24443 -0.2851,-0.0815 -0.041,0.0407 0.2444,-1.54807 0.774,-2.85173 0.4482,-0.81477 -0.2852,-1.05921 0.5296,0.16295 0.3259,-2.07768 z m -28.4357,0.0407 -0.041,0.44813 -0.2852,0.0815 -0.2852,-0.16295 -0.2037,0.0815 0.3667,0.48886 -0.4889,0.61109 -0.3259,-0.48887 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48887 -0.163,0 -0.2037,0.28518 -0.2037,0 0.3667,-0.61109 1.2629,-0.20369 z m 4.8072,0 0.1629,0.65182 -0.2037,0.0407 -0.2037,-0.61108 0.2445,-0.0815 z m -7.0886,0.28517 0.2037,0 0,0.28517 -0.2037,0.24444 -0.2444,0 0,-0.32591 c 0.078,-0.065 0.1633,-0.13004 0.2444,-0.2037 z m 32.5911,0.40739 1.5073,1.34438 -0.1222,0.44813 -0.5296,-0.16296 -0.4889,1.79251 -0.2037,-0.0407 0.4074,-2.48508 -0.2851,0.12222 -0.326,-0.0815 0.041,-0.93699 z m 4.4813,0 0.774,0 -0.1222,0.40739 -0.6926,-0.2037 0.041,-0.20369 z m -27.4173,0.12222 0.041,0 0.2037,0.20369 -0.163,0.0407 -0.082,-0.24443 z m 3.4221,0 0.5703,0 0,0.20369 -0.5703,0 0,-0.20369 z m 5.4997,0 0.041,0 0,0.20369 -0.082,0 0.041,-0.20369 z m 0.5296,0.16295 c -0.014,0.0596 -0.024,0.0991 -0.041,0.16296 l 0.4074,0.12221 c -0.1394,0.12918 -0.3455,0.16299 -0.6518,0.16296 l -0.2037,0 0,-0.20369 0.4889,-0.24444 z m -4.6442,0.0407 0.6518,0.2037 0,0.44812 c -0.414,0 -0.6518,0.1829 -0.6518,0.48887 l -0.163,0 c 0,-0.45892 -0.1313,-0.73325 -0.4074,-0.7333 l 0,-0.20369 0.5704,-0.2037 z m 11.4476,0.0407 0.3259,0.61108 -0.041,0.2037 -0.3259,-0.61109 0.041,-0.20369 z m -18.088,0.0407 0.5703,0.28517 0.6518,2.36285 0,0.0815 -0.3666,-0.5296 -0.2037,0 0.5703,0.85551 0.041,0.65183 0.2852,0.12221 -0.3667,0.57035 -1.1814,-4.3998 z m 15.44,0 0.2444,0.0407 -0.2852,1.09995 -0.2444,-0.0407 0.2852,-1.09995 z m -7.0886,0.12222 0.5704,0.20369 0,0.24443 -0.7741,0 0.2037,-0.24443 0,-0.20369 z m -9.2884,0.20369 0.4888,0.48887 0.041,0.16295 -0.4888,0.12222 -0.163,-0.65182 0.1222,-0.12222 z m 1.9962,0.12222 0.3259,0.32591 0,0.0815 0.082,0.0407 0.2037,0.24444 -0.163,0.16295 0.6518,2.36286 -0.2851,-0.16296 -0.8148,-3.05541 z m -7.8219,0.0815 0.082,0.36665 -0.2037,0.0407 -0.082,-0.36665 0.2037,-0.0407 z m 2.4443,0.2037 -0.082,0.61108 0.082,0.24443 0.2445,0.16296 c -0.776,0.20744 -1.0756,0.74803 -0.937,1.71103 l 0.3666,0.57035 -0.2037,0.0407 0.5704,0.24444 -0.163,1.30364 0.082,0.28517 0.2445,0.12222 -0.2037,0.0407 0.5703,0.85552 c -0.1409,0.11253 -0.2864,0.23951 -0.4481,0.40738 l -0.082,-0.20369 -0.4074,0.12222 -0.082,-0.36665 0.4074,-0.12222 -0.2037,-0.81478 -0.4481,0.12222 -0.2037,-0.81478 0.4073,-0.12221 -0.1222,-0.44813 -0.6518,0.20369 0.082,0.44813 -0.2037,0.0407 -0.1629,-0.61108 c 0.1174,-0.74569 0.3562,-1.18391 0.6518,-1.26291 l -0.082,-0.16295 -0.4074,0.0815 -0.163,-0.61108 0.2037,-0.0407 1.3444,-2.03694 z m 31.3282,0.20369 0.2445,0.0407 0.2444,0.28517 0.2852,-0.12221 0.6925,0.16295 0.4482,2.28138 -0.041,0.20369 0.2851,0.0815 0.2852,-0.12222 0.2444,0.0407 -0.6925,2.64803 c -0.6159,-0.32291 -0.8482,-0.90564 -0.6111,-1.79251 l -0.2037,-0.0815 0.2852,-0.12222 0.1222,-0.48886 0.082,-1.18143 -0.5704,-0.12222 -0.6925,2.68877 0.2444,0.28517 -0.3666,0.12222 -0.041,0.20369 0.2037,2.1999 -0.8148,0 c -0.1161,0.56732 -0.1894,1.08429 -0.2445,1.50734 -0.1694,0.10755 -0.2848,0.39717 -0.4073,0.85552 l -0.326,0.12221 -0.4481,-0.12221 -0.1629,-0.937 0.5703,-0.48886 0,-0.12222 c 0.055,0.0879 0.1486,0.16719 0.2852,0.20369 l 0.2037,0.0407 0.082,-0.20369 0.2444,-1.87399 0.3666,-0.52961 0.7333,-3.62575 0.2445,-0.89626 -0.4481,-0.12222 -0.3667,1.34439 -0.3666,0.12221 0.2444,0.28518 -0.1222,0.48886 -0.5296,-0.16295 0.8147,-3.09616 z m -9.207,0.12222 0.2037,0.0407 -0.2444,0.89625 -0.2852,0.16296 -0.2037,-0.0815 0.5296,-1.01847 z m 6.0701,0 0.2037,0.0407 -0.082,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -24.9729,0.0815 0.2037,0.81477 -0.2037,0.0407 -0.2444,-0.77404 0.2444,-0.0815 z m -6.7219,0.0407 0.041,0 0.1222,0.44812 -0.2037,0.0407 -0.041,-0.12221 c 0.028,-0.10615 0.05,-0.23044 0.082,-0.32592 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.2614,0.0407 0.2444,0.0407 -0.2037,0.69256 -0.2037,-0.0407 0.163,-0.69257 z m -26.5618,0.0407 0.1223,0.44813 -0.326,0.48887 -0.082,-0.36665 0.2852,-0.57035 z m 13.892,0.0815 0,0.0407 -0.3259,0.20369 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1891,-0.0178 0.3782,-0.0562 0.5296,-0.0815 z m -11.7328,0.24443 0.1222,0.12222 -0.2037,0.0815 -0.041,-0.16296 0.1222,-0.0407 z m 27.1321,0.12222 0.774,0.2037 -0.041,0.24443 -0.774,-0.2037 0.041,-0.24443 z m -8.7181,0.0407 0.5703,0.16296 -0.082,0.20369 -0.5296,-0.12222 0.041,-0.24443 z m -15.4808,0.0407 0,0.61108 0.4481,0 c 0,0.33785 0.036,0.62662 0.1222,0.81478 -0.2101,0.0426 -0.4005,0.0946 -0.5703,0.16295 l 0,-0.0407 -0.3667,-0.40739 -0.6518,0.20369 c 0,-0.11014 -0.034,-0.20771 -0.082,-0.28517 l -0.2444,-0.89626 1.3444,-0.16295 z m 2.8925,0 0.2851,0.20369 0.2037,0 1.874,-0.20369 0,0.20369 -0.2852,0.65182 c 0.3993,-0.22118 0.701,-0.47341 0.8148,-0.77403 0.071,0.0934 0.1313,0.19369 0.2037,0.28517 l -0.3666,0.0407 0,0.44812 0.4073,0 0.2445,0.28518 0.1629,-0.24444 c 0.093,0.10679 0.1891,0.22208 0.2852,0.32591 l 0.041,0.16296 -0.2037,-0.20369 -0.2444,0.12221 0.041,0.69256 -0.2444,0.12222 -0.082,0.16295 -0.6519,-0.12221 c -0.065,-0.12871 -0.1069,-0.24434 -0.1222,-0.36665 l 0.3259,0 0.3667,0.0815 0.041,-0.2037 -0.2852,-0.5296 c -0.2712,-0.0725 -0.5058,-0.0647 -0.7333,-0.0815 l -0.2037,-0.2037 -0.082,0.16296 c -0.064,0.002 -0.1436,-0.007 -0.2037,0 l -0.5296,-0.61108 -1.0592,0.20369 -0.774,-0.20369 -0.4482,0.44812 -0.1629,-0.24443 0,-0.20369 c 0.2415,2e-5 0.4326,0.0163 0.6111,0 0.5353,-0.0491 0.774,-0.17787 0.774,-0.40739 z m 16.2955,0 0.2444,0.0815 -0.2444,0.89625 -0.2444,-0.0815 0.2444,-0.89625 z m -19.962,0.40739 0,0.44812 0.4073,0 0,-0.44812 -0.4073,0 z m -1.5481,0.0815 0.2444,0.28518 -0.2037,0.36665 -0.1629,-0.52961 0,-0.0815 0.1222,-0.0407 z m -10.5106,0.12222 0.041,0.32591 -0.163,0.0407 0.1222,-0.36665 z m 21.836,0 0.1629,0 0,0.24443 -0.1629,0 0,-0.24443 z m -16.6622,0.0407 0.5296,0.93699 0.041,0.16296 -0.2037,0.28517 0.774,1.83325 -0.5296,0.32591 -0.2851,-1.50734 -0.1223,-0.44812 -0.2444,-0.12222 -0.1629,-1.42586 0.2037,-0.0407 z m -0.8963,0.0407 1.1407,4.23684 -0.3259,-0.0815 0,-0.0815 -0.2852,-0.16296 -0.6925,-3.4628 -0.041,-0.2037 -0.2852,-0.12221 0.4889,-0.12222 z m 19.8806,0.0815 0.2444,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44812 z m -7.7811,0.0815 0.6518,0 0,0.2037 c -0.1266,0.0362 -0.2233,0.0983 -0.3259,0.16295 l -0.3259,-0.0815 0,-0.28518 z m -9.207,0.12222 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 15.1141,0.0407 0,0.12222 -0.082,0 0.082,-0.12222 z m 9.981,0.24443 0.2445,0.0407 -0.163,0.48887 -0.2037,-0.0407 0.1222,-0.48887 z m 5.2553,0 0.2445,0.0407 -0.163,0.48887 -0.2037,-0.0407 0.1222,-0.48887 z m -22.8137,0.0815 0.3666,0 c -0.096,0.17535 -0.2074,0.27297 -0.3666,0.28517 l 0,-0.28517 z m 7.1293,0 0.1629,0 0,0.2037 -0.1629,0 0,-0.2037 z m -1.5074,0.0407 0.2852,0.0815 -0.2852,0 0,-0.0815 z m 4.7258,0.0815 0.3259,0.61108 -0.1222,0.40739 -0.4482,-0.12222 0.2445,-0.89625 z m 1.0184,0.28517 0.2037,0.0407 c -0.079,0.29569 0.1603,0.56117 0.6518,0.69256 l -0.2444,0.89625 c -0.1373,-0.16028 -0.2848,-0.28993 -0.4481,-0.40738 l 0.041,-0.2037 -0.4481,-0.12222 0.2444,-0.89625 z m -5.8664,0.0407 0.1222,0 0.082,0.0407 -0.1222,0.44812 -0.1629,-0.0815 0.082,-0.40739 z m 3.3814,0 0.5703,0 -0.082,0.20369 -0.2444,0 c -0.089,-0.0653 -0.1748,-0.12662 -0.2445,-0.20369 z m -7.4145,0.12222 c -0.014,0.0405 -0.029,0.0791 -0.041,0.12221 l -0.1222,-0.0407 0.1629,-0.0815 z m -15.603,0.16295 0.082,0.16296 0.3259,2.93319 0.4074,-0.12221 -0.1222,-0.36665 0.6111,0.24443 c -0.4434,0.11852 -0.6365,0.41477 -0.5296,0.81478 l 0.2444,0.12222 -0.2444,0.73329 0.041,0.2037 0.4481,-0.12222 -0.1222,-0.44813 0.2037,-0.0407 0.1222,0.44812 -0.3667,1.14069 -0.3666,-0.0815 c -0.056,0.0711 -0.069,0.13432 -0.1222,0.2037 l -0.4482,-1.58882 0.041,-1.09995 -0.3259,-0.0815 0.2037,-0.28518 -0.041,-0.24443 -0.4888,0.12222 -0.082,-0.16296 0,-0.0815 0,-0.16295 c 0.3323,-0.11704 0.5134,-0.41156 0.4481,-0.937 l -0.4481,-0.77403 -0.041,-0.16296 0.5703,-0.36665 z m 31.1652,0 0.5296,0.12222 -0.2037,0.69256 -0.5296,-0.12222 0.2037,-0.69256 z m -28.9246,0.28517 -0.4074,0.0815 0.041,0.20369 0.4074,-0.12221 -0.041,-0.16296 z m 4.7257,0 0.1223,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2036,-0.0407 z m 8.5145,0.0407 0.2037,0.0815 -0.2445,0 0.041,-0.0815 z m 16.9066,0 0.5296,0.12222 -0.1222,0.48886 0.4481,0.12222 0.163,-0.69256 0.4481,0.57034 -0.5703,0.81478 -0.163,1.87399 -0.4481,0.5296 -0.2445,-0.0407 c 0.5137,-1.92154 0.411,-2.92097 -0.2444,-3.09616 l 0.2037,-0.69256 z m -20.0435,0.0815 0.2037,0 -0.1222,0.44813 -0.163,0 0,-0.2037 0.082,-0.24443 z m 1.7925,0 0.2037,0 c 0.1368,0.16131 0.1865,0.38537 0.1629,0.65182 l -0.1222,0 -0.2444,-0.65182 z m -2.5666,0.12222 0.2037,0.36665 -0.2851,-0.0815 0.082,-0.28517 z m 12.5476,0.16295 0.2444,0.0815 0.2852,0.20369 -0.1629,0.24444 c -0.1007,-0.099 -0.2134,-0.17919 -0.326,-0.24444 l -0.041,-0.28517 z m -7.17,0.16296 0.2851,0 c 0,0.0715 0.024,0.14662 0.041,0.20369 l -0.4074,0 0.082,-0.20369 z m 0.7333,0.0815 0.4074,0.12222 -0.326,0 -0.082,-0.12222 z m -6.7219,0.12222 0.2036,0.0815 -0.082,1.22216 -0.082,0.2037 -0.2037,-0.0815 0.041,-0.48886 0.2037,0 0,-0.65183 -0.082,-0.28517 z m 14.6252,0.0407 0.3259,0.0815 -0.1629,0.65182 -0.2037,-0.0815 -0.041,-0.5296 0.082,-0.12222 z m -15.3585,0.0407 0,0.20369 -0.1223,0 0.1223,-0.20369 z m -1.4666,0.16295 0.1222,0 0.1222,0.16296 0.082,0.28517 -0.3259,-0.40739 0,-0.0407 z m 4.522,0.0407 0.2037,0 -0.082,0.2037 -0.163,0 0.041,-0.2037 z m -5.2553,0.16296 -0.041,0.24443 c -0.1413,0.67658 -0.1365,1.03083 0.1222,1.09995 l -0.2445,0.2037 -0.082,0.16295 -0.041,0.24443 -0.1222,0.0407 -0.1629,-0.57034 0.4481,-0.0815 c -0.206,-0.77058 -0.1475,-1.24297 0.1222,-1.34438 z m 1.8739,0 0.041,0.12222 0.082,-0.0815 0.163,0.65182 0,0.12222 -0.4889,0.7333 0.2852,0.0815 -0.3259,0.12222 -0.081,0.24443 0.2444,0.28518 -0.082,0.16295 -0.4074,0.57034 0.041,0.85552 -0.6518,1.30364 0.2444,0.28518 -0.4888,-0.16296 0.3666,-1.34438 -1.1814,0.7333 0.2444,0.28517 -0.8555,0.44813 -0.082,1.01847 -0.4074,0.69256 c 0.08,-0.49941 0.011,-0.79804 -0.2037,-0.85552 l 0.2852,-0.16295 0.041,-0.2037 0.2037,-1.30364 c 0.1374,-0.12989 0.2764,-0.27148 0.4074,-0.40739 l 0.4481,0.32591 c -0.053,-0.21157 -0.1577,-0.37537 -0.2444,-0.5296 0.051,-0.0555 0.1128,-0.10648 0.1629,-0.16296 l 0.2445,0.0407 0.082,-0.36665 0.3666,-0.16295 -0.1629,-0.16296 c 0.072,-0.0919 0.1339,-0.19122 0.2037,-0.28517 l 0.7333,0.0407 0.1629,-0.61109 -0.4074,-0.12221 c 0.071,-0.1075 0.1351,-0.21611 0.2037,-0.32591 l 0.2852,0.0815 0.2852,-1.05921 c 0.1084,-0.19991 0.2226,-0.40489 0.3259,-0.61108 l -0.1222,-0.16295 0.041,-0.12222 z m 11.7328,0.0407 0.2037,0.40739 0,0.0407 -0.4888,0 c 0.012,-0.0714 0.03,-0.13545 0.041,-0.2037 l 0.2444,-0.24443 z m -22.1619,0.0407 0.082,0.28517 -0.082,0 0,-0.28517 z m 30.4319,0.20369 0.4889,0.12222 -0.4074,0.93699 c -0.091,-0.13611 -0.2088,-0.26481 -0.3666,-0.36665 l 0.2851,-0.69256 z m -10.8773,0.16296 0.2037,0.0407 -0.2037,0 0,-0.0407 z m 0.9778,0.0407 0.4074,0.12221 -0.041,0.16296 -0.2037,0.0407 -0.163,-0.28518 c 0.01,-0.003 -0.01,-0.0375 0,-0.0407 z m -8.3922,0.32591 0.4074,0.0815 -0.163,0.65183 -0.2852,-0.57035 0.041,-0.16295 z m 23.9137,0.0407 c 0.4519,0.27925 0.6049,0.76827 0.4074,1.50734 l -0.5296,1.05921 c -0.1998,1.12235 -0.2915,1.89102 -0.2852,2.4036 l -0.163,-0.0407 0.041,-0.77404 0.1223,-0.48887 -0.3667,-0.77404 0.8963,-2.11842 -0.1223,-0.77404 z m -21.836,0.12222 0.2444,0 0,0.2037 -0.2444,0 0,-0.2037 z m 12.0994,0 0.041,0 -0.1629,0.57035 c -0.021,0.0768 -0.028,0.13059 -0.041,0.20369 l -0.041,0 0.2037,-0.77404 z m -19.962,0.0407 0.2037,0.0407 0.1222,0.24443 -0.3667,-0.12221 0.041,-0.16296 z m -4.1147,0.20369 0.041,0.2037 -0.2851,0.5296 -0.041,-0.16295 0.2851,-0.57035 z m 3.6258,0 c 0.1218,0.0561 0.2252,0.11427 0.4074,0.16296 l -0.082,0.36665 -0.163,-0.24443 -0.082,-0.0407 -0.082,-0.24444 z m 31.1245,0.0815 0.2444,0.0815 -0.1222,0.48887 -0.2444,-0.0815 0.1222,-0.48887 z m -25.4618,0.0815 c 0.1305,0.006 0.286,0.0201 0.4481,0.0407 l -0.1222,0.36665 c -0.2956,-0.079 -0.55,0.15923 -0.6926,0.69256 l -0.4481,-0.77404 c 0.047,-0.1747 0.2133,-0.25603 0.4889,-0.28517 l 0.3666,0 -0.041,-0.0407 z m 14.0142,0 0.082,0 0.1222,0.0407 -0.041,0.20369 -0.041,0 -0.3259,0 0.2037,-0.24443 z m -8.1478,0.0407 0.2852,0 -0.1223,0.5296 -0.2444,-0.0815 c 0.037,-0.15395 0.063,-0.31014 0.082,-0.44813 z m 0.8555,0 0.5703,0 0,0.0815 -0.3666,0.57034 0.1222,0.16296 -0.6111,-0.16296 c 0.1071,-0.16058 0.1904,-0.4143 0.2852,-0.65182 z m 1.0592,0 0.2444,0 -0.041,0.0815 -0.2037,-0.0407 0,-0.0407 z m 2.2407,0 0.4888,0 -0.1222,0.36665 -0.2037,0.0407 0,0.44813 0,0.0407 -0.082,0.16296 0.041,0.44813 -0.163,0.0407 c -0.1808,-0.20535 -0.2426,-0.4948 -0.2036,-0.85552 0,-0.0259 0,-0.0547 0,-0.0815 0.012,-0.0827 0.016,-0.15376 0.041,-0.24443 l 0.2037,-0.36665 z m 0.8555,0 0.7333,0 0.3259,0 -0.041,0.20369 -0.2445,0 0,0.48887 0.2037,0 -0.041,0.20369 -0.3259,0.52961 0,-0.28517 -0.4888,0.12221 -0.041,-0.5296 0.2444,-0.0407 0,-0.48887 -0.2852,0.0407 -0.041,-0.24443 z m -7.6997,0.0815 0,0.77404 c -0.2652,-0.0831 -0.4074,-0.28894 -0.4074,-0.65183 0.1827,3e-5 0.3,-0.0425 0.4074,-0.12221 z m 5.5405,0 0.4074,0.12221 -0.082,0.36665 -0.4481,-0.12221 0,-0.0407 0.1629,-0.2037 -0.082,0 0.041,-0.12221 z m 11.9365,0 0.1222,0.65182 c -0.026,-0.0119 -0.051,-0.0326 -0.082,-0.0407 l -0.3259,0.0815 -0.041,0.24443 0,0.28517 -0.041,0.0815 -0.2037,-0.0407 0.041,-0.20369 0.2444,-0.36665 0.163,-0.28517 -0.4481,-0.12222 0.5703,-0.28517 z m -18.8214,0.0815 c 0.092,0.0158 0.1762,0.0407 0.2852,0.0407 l 0,0.65183 -0.2444,-0.0815 -0.041,0.12221 -0.1222,0 0,0.44813 0,0.0815 0.4481,0.12222 0.041,-0.2037 0.1629,0 -0.5296,0.77404 -0.2444,-0.32591 -0.082,0.36665 0.2444,0.0815 -0.041,0.0407 0.5296,0.12221 0.082,0.24444 -0.1222,0.20369 c -0.1549,0.0762 -0.2587,0.22703 -0.2851,0.44813 l -0.041,0.12221 -0.163,0 c -0.01,-0.0298 0,-0.0522 0,-0.0815 l 0.082,-0.44813 -0.163,-0.0407 c -0.084,-0.43314 -0.1523,-0.79239 -0.2444,-1.05921 l 0.4481,-1.62956 z m -7.2922,0.44813 c 0.2126,0.11968 0.3124,0.32246 0.2852,0.61108 l -0.2037,-0.12221 -0.082,-0.48887 z m 18.3325,0 0.041,0 c -0.01,0.0299 -0.034,0.0522 -0.041,0.0815 -0.03,0.13716 -0.06,0.28313 -0.082,0.40739 -0.092,0.0158 -0.1762,0.0407 -0.2852,0.0407 l 0,0.48886 -0.2444,0 0.082,-0.93699 0.5296,0 0,-0.0815 z m -12.3846,0.0815 0.2851,0 0.1222,0.0407 0,0.40739 -0.2036,0 0,0.20369 0.082,0.36665 c -0.1679,-0.14917 -0.2705,-0.48918 -0.2852,-1.01847 z m 25.3395,0.0407 0.4482,0.12222 -0.1223,0.40738 -0.4481,-0.12221 0.1222,-0.40739 z m -33.9354,0.0407 c -0.044,0.0495 -0.077,0.10969 -0.1223,0.16295 l -0.041,-0.12221 0.163,-0.0407 z m -0.8963,0.0407 0.4481,0.93699 -0.2037,0.0407 -0.082,-0.0407 c 0.01,-0.0447 0.028,-0.075 0.041,-0.12222 l -0.2444,-0.0815 -0.2037,-0.69256 0.2444,-0.0407 z m 17.5177,0 0.4074,0.12221 -0.082,0.24444 -0.3666,-0.24444 0.041,-0.12221 z m 0.7333,0 0.2037,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.1222,-0.44812 z m 7.1293,0.0815 0.082,0.12222 0.2852,0.0815 0.082,-0.0407 -0.2037,1.34438 -0.6926,2.52581 -0.2444,0.48887 -0.082,-0.36665 0.2037,-0.28517 -0.2037,-0.2037 -0.2444,0.0815 -0.163,-0.28517 0.2852,-0.12222 0.2037,0.0407 0.041,-1.05921 0.2851,-0.97773 0.4074,0.0815 0.1223,-0.5296 0.041,0 0,-0.0815 c -0.1251,-0.22969 -0.181,-0.50833 -0.2037,-0.81478 z m 3.0554,0.0407 0.2445,0.0815 -0.082,0.24443 0,0.0407 -0.163,0.52961 -0.2037,-0.0815 0.2037,-0.81478 z m -20.2472,0.2037 0.4074,0.12221 -0.1222,0.36665 -0.2852,-0.48886 z m -10.6328,0.32591 0.041,0.16295 -0.1222,0.0407 0,-0.16295 0.082,-0.0407 z m 5.5405,0.0407 0.2037,0.0815 -0.082,0.36665 0.2036,0.0407 -0.2444,0.12222 -0.1222,0.48887 -0.163,-0.61109 0.2037,-0.48886 z m 27.4172,0 0.3667,0.0815 c -0.05,0.18576 -0.025,0.33528 0,0.44813 l -0.3259,-0.0815 c 0.053,-0.20003 0.019,-0.33531 -0.041,-0.44812 z m -3.9517,0.0815 0.041,0 c -0.023,0.12024 -0.051,0.23874 -0.082,0.36665 l -0.041,0 0.082,-0.36665 z m -17.314,0.0407 0.2037,0.0407 -0.2444,0.81478 -0.2037,-0.0407 0.2444,-0.81478 z m 14.7475,0.0407 c 0.1067,0.0985 0.2579,0.168 0.4074,0.24444 l -0.163,0.32591 -0.1629,-0.0407 -0.041,-0.0407 c -0.048,-0.0401 -0.1097,-0.0903 -0.163,-0.12222 l 0.1222,-0.36665 z m -21.9175,0.16296 0.082,0 c 0.01,0.0632 0,0.14341 0,0.20369 l -0.082,-0.20369 z m 32.4689,0 0.3259,0.5296 -0.4482,-0.12221 0.1223,-0.40739 z m -33.243,0.36665 0.041,0.12221 -0.1629,-0.0407 0,-0.0407 0.1222,-0.0407 z m 6.7627,0.16295 0.2037,0.0815 -0.7333,2.81098 -0.2037,-0.0815 0.7333,-2.81098 z m 9.4514,0 -0.2037,0.81478 0,0.0815 c -0.07,0.01 -0.1707,0.0316 -0.2444,0.0407 l 0.2444,-0.89626 0.2037,-0.0407 z m 1.5888,0.16296 c 0,0.0512 0,0.10831 0,0.16295 -0.1403,0.1712 -0.5032,0.28725 -1.0184,0.40739 l 0.082,-0.24443 0.937,-0.32591 z m 8.5959,0.12222 c 0.1067,0.18437 0.2375,0.33744 0.3667,0.48886 l 0,0.12222 0.1629,0.0407 c 0.068,0.0685 0.1302,0.14363 0.2037,0.20369 l -0.1629,0.65182 -0.2037,-0.0407 c 0.071,-0.26673 -0.1677,-0.49255 -0.6111,-0.61108 l 0.2444,-0.85551 z m 1.0185,0.0407 0,0.12222 -0.082,-0.0815 0.082,-0.0407 z m 5.5812,0.0407 0.4482,0.12222 -0.041,0.20369 -0.4889,-0.12221 0.082,-0.2037 z m -24.1989,0.0407 0.1223,0.44813 0.2444,0.89625 -0.4481,0.7333 0.3259,-0.12221 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 -0.2037,-0.24444 -0.2445,-0.0815 -0.082,0.44812 -0.2444,-0.0407 0.6518,-2.40359 z m -1.2221,0.0815 0.2037,0.0815 -0.1222,0.5296 -0.2037,-0.0407 0.1222,-0.57034 z m 7.1293,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m 14.5438,0.0407 -0.082,0.24443 0.6925,0.16296 0.082,-0.2037 -0.6925,-0.20369 z m -28.6802,0.0815 c 0.026,-0.005 0.055,0.004 0.082,0 -0.126,0.1796 -0.3024,0.32896 -0.5296,0.44812 l -0.041,-0.20369 c 0.1448,-0.11438 0.3062,-0.20677 0.4889,-0.24443 z m 13.3623,0.20369 c 0.1273,0.11381 0.2392,0.22321 0.2852,0.32591 l -0.2852,-0.0815 0,-0.24443 z m -12.9549,0.20369 0.041,0 0.3259,0.12222 c 0.029,0.10642 0.051,0.19752 0.082,0.28517 l -0.2037,0.77404 -0.2037,-0.0407 c 0.1427,-0.53337 0.01,-0.85798 -0.2852,-0.93699 l -0.2037,0.0815 0.041,-0.16296 0.3259,-0.0815 0.082,0 0,-0.0407 z m -2.5666,0.0407 0.082,0.24444 -0.1222,-0.0407 0.041,-0.2037 z m 13.4439,0 0.2037,0 c -0.015,0.10051 -0.023,0.21902 -0.041,0.32591 l -0.163,0.16296 0,-0.48887 z m 8.5551,0 0.3667,0 -0.041,0.16296 -0.4074,-0.12222 c 0.02,-0.0187 0.064,-0.0211 0.082,-0.0407 z m 1.0185,0 0.4074,0 0,0.2037 c -0.1951,4e-5 -0.3609,0.0365 -0.4889,0.0815 l 0.082,-0.28518 z m -19.4324,0.0815 0.1629,0.0407 -0.082,0.32591 -0.082,-0.36665 z m 13.8104,0.12222 0,0.5296 -0.041,0.0407 -0.041,0.16296 -0.2444,0 0.2037,-0.69256 0.1222,-0.0407 z m 0.8555,0 0.937,0 -0.041,0.16295 0,0.12222 -0.2444,0 -0.2852,-0.0407 -0.082,0.0407 -0.2851,0 c 0,0.0149 0,0.026 0,0.0407 l -0.082,-0.0407 0.082,-0.28517 z m 3.0555,0.16295 -0.082,0.36665 -0.3667,0 -0.1222,-0.12221 0.041,-0.16296 c 0.2044,-0.0207 0.3677,-0.0344 0.5296,-0.0815 z m 9.044,0 c 0.6945,0.36416 0.9331,1.01471 0.6925,1.91473 l -0.4888,-0.12222 -0.163,0.52961 0.3667,0.57034 -0.8555,1.26291 0.2037,0.0407 -0.2445,0.12221 -0.082,0.28518 0.163,1.30364 -0.5704,0.24443 0.2037,0.0407 -0.3666,0.57035 c -0.1387,0.96297 0.161,1.50359 0.937,1.71103 l -0.2445,0.16295 -0.082,0.24444 0.082,0.61108 -1.3444,-2.03694 -0.2036,-0.0407 0.1629,-0.61109 0.4481,0.0815 0.041,-0.16295 c -0.2956,-0.079 -0.5344,-0.51722 -0.6518,-1.26291 l 0.163,-0.61108 0.2037,0.0407 -0.082,0.44812 0.6925,0.2037 0.082,-0.44813 -0.4074,-0.12221 0.2445,-0.81478 0.4074,0.12221 0.2036,-0.81477 -0.4073,-0.12222 0.082,-0.36665 0.4481,0.12222 0.082,-0.36665 -0.4074,-0.12222 0.163,-0.61108 c 0.3695,0.0988 0.5983,-0.13823 0.8147,-0.65182 0.1069,-0.4 -0.01,-0.61478 -0.4481,-0.7333 l 0.163,-0.61109 z m -24.5248,0.0407 0.4889,0.12222 -0.4074,0.57034 -0.2445,-0.0815 0.163,-0.61109 z m 23.3026,0 c 0.1377,0.0728 0.2979,0.11504 0.4481,0.16296 l -0.1222,0.40739 -0.3259,-0.52961 0,-0.0407 z m -16.7029,0.0815 0.6518,0 0.2037,0.24443 0.163,0 -0.163,0.61109 -0.6111,0 -0.2444,-0.85552 z m 5.7034,0.20369 0.082,0 c -0.036,0.16125 -0.082,0.31656 -0.1222,0.44813 l -0.082,0 0.1222,-0.44813 z m 4.8887,0.0407 0,0.16296 -0.082,0.24443 -0.2037,0 0.041,-0.20369 0.2444,-0.2037 z m -7.7404,0.0815 0.2037,0.0407 -0.041,0.0815 -0.2037,0 0.041,-0.12222 z m -8.6366,0.0815 0.6518,0.36665 -0.2852,1.01847 -0.2037,-0.0815 -0.2444,-0.93699 0.082,-0.36665 z m 20.899,0 0.4889,0.12222 0.3666,1.14068 -0.1222,0.44813 -0.2037,-0.0407 0.1222,-0.44813 -0.4481,-0.12221 -0.041,0.20369 0.2444,0.7333 -0.2444,0.12222 c -0.1069,0.40003 0.086,0.69626 0.5296,0.81478 l -0.5703,0.24443 0.082,-0.36665 -0.4074,-0.12222 -0.3259,2.9332 -0.082,0.16296 -0.5704,-0.32591 0.082,-0.2037 0.4074,-0.77404 c 0.069,-0.55307 -0.1193,-0.87895 -0.4889,-0.97773 l 0.1223,-0.36665 0.4888,0.12222 0.041,-0.24444 -0.2037,-0.28517 0.3259,-0.0815 -0.041,-1.09995 0.4482,-1.58881 z m -18.9843,0.0407 0.4074,0.12221 -0.041,0.2037 -0.4074,-0.12222 0.041,-0.20369 z m 11.2032,0 0.1629,0 c 0.066,0.0584 0.1536,0.1174 0.2445,0.16295 l -0.041,0.12222 -0.082,0.28517 -0.2852,-0.5296 0,-0.0407 z m -19.9621,0.0407 0.3259,0.48886 -0.2444,-0.24443 -0.2037,-0.0407 0.1222,-0.20369 z m 1.1,0.0815 0.1629,0.0407 0,0.16296 -0.1629,0.65182 -0.2037,-0.0815 0.2037,-0.77404 z m 31.0837,0 c 0.044,0.10287 0.088,0.18378 0.163,0.2037 l 0.2037,0.0407 0,0.44812 -1.711,6.35527 -0.4889,-0.12222 0.2852,-0.12222 0.041,-0.20369 0.6925,-3.4628 0.2852,-0.12222 0.041,-1.05921 0.4889,-1.95547 z m 1.0185,0 0.2037,0.0407 -0.2037,0.65182 -0.2037,-0.0815 0.163,-0.57035 0.041,-0.0407 z m -15.6437,0.12222 0.041,0.44813 -0.1222,0.0407 -0.082,-0.32591 0.1629,-0.16296 z m 12.792,0 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -9.5736,0.0407 c 0.1346,0.0336 0.3236,0.0612 0.4888,0.0815 l -0.1222,0.48886 -0.4481,-0.16295 0.082,-0.40739 z m -20.9806,0.32591 0.4889,0.12222 -0.082,0.20369 -0.163,1.38512 c 0.01,-0.18441 -0.023,-0.35229 -0.082,-0.57034 l -0.2036,-0.81478 0.041,-0.32591 z m 3.2999,0.0407 0.4481,0.0815 c -0.1069,0.39998 -0.01,0.69501 0.2852,0.77404 l -0.041,0.20369 c -0.4434,-0.11854 -0.7027,-0.10372 -0.774,0.16296 l -0.2037,-0.0407 -0.082,-0.61109 0.3666,-0.57034 z m 16.8251,0.0407 0.2852,0 -0.082,0.24443 -0.2037,0 0,-0.24443 z m -13.7697,0.16295 0.2037,0.0407 -0.041,1.05921 -0.4074,-0.12221 0.2444,-0.97774 z m 20.125,0.2037 0.4481,0.16295 -0.041,0.16296 -0.4888,-0.12222 0.082,-0.20369 z m 3.0962,0 0.2037,0.0407 -0.4482,0.93699 -0.2037,-0.0407 0.2037,-0.81478 0.2445,-0.12221 z m -19.514,0.12221 0.937,0.0407 -0.1222,0.57035 -0.9777,0 0.1629,-0.61109 z m 8.5959,0.16296 0.2037,0 0,0.0407 -0.2037,-0.0407 z m 3.748,0 0.3259,0 -0.041,0.20369 -0.2852,0 0,-0.20369 z m 2.3629,0 0.3259,0 0,0.20369 -0.3667,0 0,-0.12221 0.041,-0.0815 z m -19.5139,0.0407 0.3259,0.5296 -0.2852,0.12222 -0.2037,-0.0407 c 0.062,-0.23334 0.1327,-0.43445 0.163,-0.61108 z m -4.3184,0.16295 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m 32.306,0 0.2037,0.0407 c -0.107,0.40001 -0.01,0.69504 0.2851,0.77404 l -1.4258,3.50354 0.2037,0.24444 -0.041,0.20369 -0.5296,0.89626 -0.2037,-0.0407 0.1629,-1.42586 0.2444,-0.12222 0.1223,-0.44813 0.6925,-3.42206 0.2852,-0.2037 z m -35.3614,0.12222 0.1222,0.85552 0.2037,0.12221 c -0.012,0.0965 -0.014,0.18349 -0.041,0.28518 l 0,0.0815 -0.041,-0.0815 -0.2037,0.0815 c 0.022,0.0838 0.035,0.1372 0.041,0.2037 l -0.3666,0.16295 c -0.01,-0.0435 -0.032,-0.0797 -0.041,-0.12221 l 0.1222,-0.0407 0.041,-0.2037 0.163,-1.34438 z m 9.4514,0.0407 0.6111,0.16296 -0.041,0.20369 -0.6925,0.0815 0.1222,-0.44813 z m -4.8071,0.24443 0.2036,0.0815 -0.1629,0.52961 -0.2037,-0.0407 0.163,-0.57035 z m 28.9653,0 0.2037,0.0407 -0.2852,1.01847 -0.2037,-0.0815 0.2852,-0.97774 z m -20.4917,0.12222 0.3667,0.52961 -0.163,0.61108 -0.2037,-0.32591 -0.4074,-0.12222 c -0.1069,0.40001 -0.412,0.56666 -0.8555,0.44813 0.107,-0.40003 -0.01,-0.65551 -0.4481,-0.77404 l 0.041,-0.20369 0.4074,0.12221 0.1629,0.24444 c 0.08,-0.29997 0.4464,-0.45431 1.1,-0.52961 z m 10.8366,0.20369 0.1222,0 0,0.12222 -0.1222,-0.12222 z m 13.1179,0 0.8962,0.24444 -0.4481,1.75177 c -0.2955,-0.079 -0.3768,-0.54439 -0.1629,-1.34438 l -0.4482,-0.0815 0.163,-0.57035 z m -6.1516,0.0407 0.2852,0.52961 -0.041,0.20369 -0.2852,-0.57034 0.041,-0.16296 z m -28.5579,0.0815 -0.2037,1.62956 -0.8148,0.24443 0.2444,-0.89626 c 0.4491,-0.22295 0.7309,-0.54686 0.7741,-0.97773 z m 0.6925,0 0.2445,0.0815 -0.082,0.36665 -0.2852,-0.0815 0.1222,-0.36665 z m 21.8768,0.0407 0.163,0.0407 0,0.24443 -0.4074,0 0.2444,-0.28517 z m -9.5329,0.0407 0.2037,0 0.163,0.24443 -0.2852,0 -0.082,0 0,-0.0407 0,-0.20369 z m -6.9663,0.24443 0.4888,0.12222 -0.082,0.24443 -0.5296,0.937 -0.1629,-0.24444 -0.2037,-0.0815 -0.5296,0.28518 0.041,0.65182 c -0.2956,-0.0791 -0.5041,0.0481 -0.6111,0.44813 l -0.163,-0.24444 -0.2037,-0.0407 -0.2444,0.12222 0.2037,-1.62955 0.6111,0.16295 0.1222,-0.40739 c 0.739,0.19754 1.156,0.0741 1.2629,-0.32591 z m 2.8517,0.12222 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m -7.8626,0.0407 0.2037,0.0815 -0.082,0.36665 -0.2445,-0.0407 0.1223,-0.40739 z m 6.6404,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0407 0.1222,-0.44812 z m -9.2884,0.12221 0.2037,0.0815 -0.2445,0.0815 0.041,-0.16296 z m -0.041,0.28517 0.1629,0.12222 0,0.0407 -0.2037,-0.0407 0.041,-0.12222 z m 15.7252,0.0815 c 0,0.20654 -0.13,0.30826 -0.326,0.36665 l -0.5296,0.0407 0,-0.16295 0,-0.0407 0.8556,-0.2037 z m 3.2591,0 c 0.013,0.005 0.029,-0.006 0.041,0 0.089,0.046 0.1748,0.11085 0.2037,0.2037 l -0.2445,0 0,-0.2037 z m 1.548,0 0.4074,0 0.082,0.12222 -0.2037,0.81478 c -0.045,0.002 -0.075,0 -0.1222,0 l 0,0.20369 -0.2037,-0.20369 -0.4074,0 -0.1629,-0.24444 0.1222,-0.44812 c 0.1892,0.0505 0.3495,-0.044 0.4889,-0.24444 z m 1.2222,0 0.3259,0 c 0.015,0.0191 -0.011,0.0592 0,0.0815 -0.099,0.33787 -0.3273,0.59857 -0.6518,0.7333 l -0.1222,-0.0407 0.4481,-0.77404 z m 4.4405,0 -0.041,0.2037 -0.4888,0 0,-0.12222 c 0.2001,-0.0277 0.3723,-0.0507 0.5296,-0.0815 z m 8.8811,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m -26.8469,0.0815 0.4074,0.12222 -0.1222,0.44812 -0.4074,-0.12221 0.1222,-0.44813 z m 9.7366,0.12222 0.1629,0 -0.1629,0.57034 0,-0.57034 z m -11.9772,0.16295 -0.082,0.36665 0.4074,0.12222 0.1222,-0.36665 -0.4482,-0.12222 z m 4.9701,0.0407 0.6926,0.2037 -0.1223,0.36665 0.4482,0.12221 0.1629,-0.61108 0.3259,0.36665 c -0.3477,0.17231 -0.5886,0.44677 -0.7333,0.81478 -0.062,0.0265 -0.088,0.0462 -0.1222,0.0815 l -0.2037,-0.0407 c 0.1402,-0.44386 -0.02,-0.72709 -0.4074,-0.81477 l -0.2036,-0.0407 c 0.071,-0.11464 0.1184,-0.28147 0.1629,-0.44813 z m 16.9066,0 0.4074,0.12222 -0.082,0.24443 -0.4074,-0.12222 0.082,-0.24443 z m -14.4215,0.2037 0.1222,0.0407 c -0.043,2.1e-4 -0.081,-0.002 -0.1222,0 l 0,-0.0407 z m -13.729,0.24443 0.4481,0.0815 -0.082,0.20369 -0.4074,-0.12222 0.041,-0.16295 z m 20.1657,0 0.163,0.0815 -0.2037,0.0407 0.041,-0.12222 z m -10.4699,0.0407 0.163,0.24443 0.2037,0.0407 c 0.1185,0.0317 0.2232,0.0419 0.3259,0.0407 -0.1474,0.0926 -0.295,0.12532 -0.4889,0.0815 l -0.2037,0.65182 c 0.3877,0.0877 0.6346,0.21897 0.7741,0.44813 l -0.4889,0.24443 0.4074,0.0815 0.082,-0.28518 c 0.1221,0.22482 0.1522,0.50258 0.041,0.85552 l 0.6518,0.16296 -0.3666,1.09995 -0.6111,-0.12222 0,2.11842 -1.3444,1.14069 0.2037,0.32591 -1.7518,2.40359 0.4481,-0.12221 0.2445,0.0815 -0.1222,0.40739 -0.2852,-0.0407 -0.2852,-0.32591 -0.2852,-0.0407 -0.1222,0.48887 -0.2851,-0.0815 2.485,-7.78112 0.2445,-0.0407 -0.2852,0.97773 0.6518,0.12222 0.4074,-1.30364 -0.4481,-0.0815 0.041,-0.12222 -0.2037,-0.0815 -0.2852,0 0.041,-0.12221 0.2852,-0.0407 0.082,-0.2037 -0.2445,-0.0815 0.163,-0.57035 -0.2037,-0.28517 0.082,-0.20369 0.2852,-0.0815 z m 6.6812,0.0407 0.2037,0.0407 -0.041,0.12221 -0.163,-0.16295 z m 7.8626,0 0.041,0.16295 -0.2852,-0.0815 0.2445,-0.0815 z m -20.0435,0.12221 0.4481,0.77404 -0.3259,0.16296 -0.163,-0.0407 0.041,-0.89626 z m -0.6926,0.0407 0.2037,0.0407 -0.1222,0.44813 -0.2037,-0.0407 0.1222,-0.44813 z m 19.8806,0.16296 -0.082,0.24443 -0.2037,-0.0407 0,-0.0815 0.2852,-0.12221 z m -1.3851,0.12221 0.082,0.12222 0,0.28517 -0.4482,-0.12221 0.163,0 0.2037,-0.28518 z m 3.8702,0.12222 0.2444,0.0815 0,0.28517 0,0.65182 0,0.12222 -0.3259,0.12222 -0.4074,-0.0815 0.2852,-1.14069 0.041,0 c 0.064,-0.008 0.1027,-0.0322 0.1629,-0.0407 z m -25.3804,0.12222 0.3667,0.48886 -0.4889,-0.12221 0.1222,-0.36665 z m 35.4021,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -11.4476,0.12221 -0.041,0.2037 -0.774,0.0815 -0.2037,-0.0815 0,-0.0407 1.0184,-0.16296 z m 6.4367,0 -0.041,0.2037 0.4074,0.0815 0.041,-0.16295 -0.4074,-0.12222 z m -27.1728,0.24444 0,0.20369 -0.4074,0.20369 0.3259,0.32592 -0.1222,0.0815 -0.2852,-0.0815 0.082,-0.32592 -0.1222,-0.0407 0,-0.0407 0.5296,-0.32591 z m 3.1369,0 0.3667,0.0815 -0.2445,0.69256 -0.3259,-0.0815 0.2037,-0.69256 z m 8.3107,0 0.4074,0 0,0.0407 -0.4074,0 0,-0.0407 z m -13.6067,0.0815 0.2037,0.0407 -0.3667,1.34438 c -0.019,-0.29822 -0.091,-0.48679 -0.2444,-0.57034 l 0.041,-0.32591 0.3666,-0.48887 z m 10.3069,0.0815 0.2444,0.0815 -0.1222,0.44813 -0.2852,-0.0407 0.163,-0.48887 z m 2.1184,0.0407 0.2444,0.0407 -0.082,0.24443 0.041,0.16296 c -0.01,0.1969 0.032,0.3372 0.1223,0.44812 l 0,0.0815 -0.163,0 -0.4074,0.44813 -0.2037,0 0.2445,-0.85552 0.1629,-0.28517 -0.041,-0.0407 0.082,-0.24443 z m 1.3851,0.0407 0.2445,0.28517 0,0.28517 c -0.1626,-0.11746 -0.281,-0.25346 -0.4074,-0.36665 l 0.1629,-0.20369 z m -7.6996,0.20369 0.2852,0.0407 -0.163,0.48887 -0.2444,-0.0815 0.1222,-0.44813 z m 13.9734,0.0815 0.2037,0.0407 0.3259,0.48887 -0.082,0.24443 -0.2037,-0.0815 -0.082,-0.0815 0,-0.16295 -0.2037,0 c 0.013,-0.15533 0.042,-0.32188 0.041,-0.44813 z m -16.54,0.0815 -0.1222,0.36665 -0.041,1.42586 -0.6518,0.81478 0.3666,0.0815 -0.4481,0.12222 -0.082,0.24443 0.2852,0.32591 -0.041,0.2037 -0.5703,0.61108 0.082,0.97773 -0.8556,1.42586 0.2852,0.28518 -0.6111,-0.12222 0.4482,-1.54808 -1.5074,0.85552 0.2852,0.28517 -1.0185,0.44813 c -0.1111,-0.21926 -0.218,-0.41748 -0.3259,-0.65182 0,-0.0107 0.01,-0.03 0,-0.0407 l 0.1222,-0.77404 0.2852,0.0815 0.6926,0.44813 c -0.2006,-0.67952 -0.5593,-1.09062 -1.1407,-1.22217 l 0.2037,-0.69256 c 0.015,-0.0461 0.027,-0.077 0.041,-0.12222 l 0.1222,-0.0407 0.041,-0.20369 -0.082,-0.0407 c 0.068,-0.22573 0.1079,-0.44976 0.1629,-0.65182 l 0.163,-0.12222 0.041,-0.20369 -0.041,-0.12222 c 0.059,-0.23983 0.045,-0.41041 0.082,-0.61108 0.2165,-0.0412 0.45,-0.15497 0.6925,-0.36665 -0.087,0.52224 -0.036,0.83279 0.2445,0.89625 l -0.3259,0.2037 -0.041,0.0815 c -0.1805,0.11243 -0.3752,0.2435 -0.5296,0.36665 l -0.041,0.24444 0.4074,0.12221 -0.326,1.6703 0.5704,0.12221 0.1222,-0.40738 0.4481,-0.2037 -0.2851,-0.28517 -0.2852,-0.0815 0.082,-0.20369 1.5073,0.12221 0.2037,-0.69256 -0.5296,-0.12221 0.1222,-0.40739 0.5704,0.12221 0.3666,-1.14068 0.2445,-0.16296 -0.2037,-0.0407 0.4888,-1.54807 0.3259,-0.12222 z m -6.1108,0.0407 0.2444,0.0815 -0.1222,0.36664 -0.2037,-0.0407 0.082,-0.40739 z m 24.0359,0 0.163,0.24443 0.2037,0.0815 0.3259,-0.12222 -0.041,0.16296 c -0.3962,0.0368 -0.7256,0.11789 -0.9777,0.20369 l -0.041,0 -0.163,-0.0407 0.2852,-0.44812 0.2444,-0.0815 z m -12.0179,0.0815 0.6111,0.12221 -0.1223,0.40739 -0.4888,-0.5296 z m 3.9516,0.12221 0.326,0.0815 -0.041,0.16295 -0.2852,0.0815 0,-0.0407 0,-0.28517 z m 4.8072,0.0407 0.2037,0.0407 0,0.0407 -0.2037,0 c 0,-0.0303 0,-0.052 0,-0.0815 z m -13.8104,0.0815 0.2851,0.0815 -0.082,0.61108 -0.3666,0.12222 0.041,-0.40739 0.1222,-0.40739 z m 29.5764,0.0407 0.2037,0.0407 -0.1223,0.36665 -0.2036,-0.0407 0.1222,-0.36665 z m -7.4552,0.32591 0.4073,0.12221 -0.082,0.44813 -0.4073,-0.24443 0.082,-0.32591 z m -26.3581,0.0407 0.4074,0.12221 -0.082,0.2037 -0.4074,-0.12222 0.082,-0.20369 z m 1.6703,0 0.2037,0.24443 -0.041,0.20369 -0.3259,-0.32591 0.1629,-0.12221 z m 18.1695,0.0407 c 0.1619,0.0875 0.2758,0.18386 0.4889,0.28517 -0.019,0.0576 -0.041,0.13961 -0.041,0.20369 l -0.5296,0 c 0.031,-0.17321 0.06,-0.33608 0.082,-0.48886 z m -3.2591,0.20369 0.163,0 0,0.0407 -0.163,-0.0407 z m -12.1402,0.20369 -0.082,0.57035 -0.041,0.24443 -0.2851,-0.0815 0.041,-0.61108 0.3666,-0.12222 z m -3.2998,0.0815 0.2444,0.0407 -0.1222,0.48887 -0.2852,-0.0407 0.163,-0.48887 z m 10.7143,0.0407 0.7333,0.16296 0,0.0815 -0.082,0.24444 -0.082,0.12221 0,0.16296 0,0.0407 -0.1222,0.28517 -0.082,0 -0.2037,-0.28517 c 0.017,-0.32331 -0.065,-0.5992 -0.1629,-0.81478 z m 20.0028,0 c -0.1782,0.66667 0.096,1.38755 0.6926,2.11842 l 0.2444,-0.12221 0.163,0.24443 -0.041,0.16295 c -0.2464,-0.0658 -0.4958,0.0124 -0.6926,0.16296 -0.042,-0.0157 -0.074,-0.0298 -0.1222,-0.0407 l -0.3667,0.12222 c 0.1402,-0.44387 0.062,-0.72708 -0.3259,-0.81478 l -0.4074,0.12222 -0.041,0.0815 -0.2851,-0.20369 c 0.2164,-0.51357 0.4452,-0.70986 0.8147,-0.61108 l 0.1223,-0.40739 -0.6111,-0.16296 0.8555,-0.65182 z m 2.4036,0.0407 0.3259,0.48887 -0.1222,0.44812 -0.2852,-0.57034 0.082,-0.36665 z m -17.9658,0.0815 0.2851,0.0815 -0.1222,0.40738 -0.2444,-0.32591 0.082,-0.16295 z m -14.2586,0.0407 0.2851,0.0407 -0.082,0.20369 c -0.113,0.033 -0.218,0.0873 -0.3259,0.12222 l 0.1222,-0.36665 z m 15.7659,0 0.7333,0 -0.082,0.20369 -0.6926,0.0815 c 0.022,-0.10672 0.02,-0.18393 0.041,-0.28517 z m -3.9924,0.0815 0.041,0 0,0.12222 -0.041,0 0,-0.12222 z m 19.6769,0 0.2037,0.0407 -0.2037,0.81478 -0.2037,-0.0407 0.2037,-0.81478 z m -28.4358,0.16296 0.5704,0.12222 -0.2445,0.69256 -0.3666,-0.61109 0.041,-0.20369 z m 2.1592,0.0407 -0.082,1.14069 0.6111,0.16295 0.082,-1.18142 -0.6111,-0.12222 z m 19.5546,0.12222 0.163,0.0407 -0.1222,0.44813 -0.2037,-0.0407 0,-0.0407 0.041,0 0.1222,-0.40738 z m -13.4438,0.0407 0.1222,0 0.2852,0.7333 -0.1222,0.16296 -0.163,0 -0.2037,-0.61108 c 0,-0.0113 -0.01,-0.0293 0,-0.0407 l 0,-0.0407 c 0.026,-0.0655 0.056,-0.13406 0.082,-0.2037 z m 6.3145,0 0.4074,0 -0.081,0.48887 -0.3259,0 0,-0.48887 z m 4.0332,0 0.2444,0.0407 -0.041,0.16296 -0.2444,-0.0815 0.041,-0.12222 z m -25.7062,0.0815 0.082,0.0407 -0.041,0.2037 -0.082,-0.0407 0.041,-0.2037 z m 38.1723,0.0815 -0.041,0.16296 0.041,0.0407 0,-0.20369 z m -21.5509,0.0407 0.082,0 0,0.32591 -0.2037,-0.0407 0.1222,-0.28517 z m -10.918,0.24443 c 0.2732,-0.0456 0.6795,-0.0134 1.1814,0.0407 l -0.1222,0.40739 c -0.3875,-0.0877 -0.75,0.1822 -0.937,0.77404 l -0.5703,-0.89626 c 0.053,-0.16645 0.1749,-0.28028 0.4481,-0.32591 z m 14.0957,0.0407 0.3259,0 -0.1222,0.20369 -0.2037,0 0,-0.20369 z m 0.774,0 0.082,0 0,0.20369 -0.041,0 -0.041,-0.20369 z m 15.1549,0.0407 0.4888,0.12222 -0.2852,1.01847 -0.3666,-0.48887 0.163,-0.65182 z m -17.9659,0.0407 0.2444,0.0407 -0.2851,0.0815 0.041,-0.12221 z m 10.8366,0 0.2036,0.0407 -0.041,0.12221 -0.2444,0.12222 0,0.0815 -0.041,0 0.041,-0.0815 0.082,-0.28517 z m 9.5736,0.12221 -0.1222,0.0815 -0.082,0.16296 0.2037,0.24443 0,-0.48887 z m -13.8105,0.0815 0.4074,0.0815 -0.3259,0.44813 -0.3259,-0.0815 -0.041,-0.16296 0.2851,-0.28517 z m -10.4291,0.0407 0.1222,0.0815 0,0.24443 -0.163,-0.0407 c 0.032,-0.10244 0.017,-0.18858 0.041,-0.28517 z m 13.8512,0.0407 0.6111,0.52961 0.041,0.0407 -0.1223,0.61109 c -0.1737,-0.13018 -0.3351,-0.28386 -0.4888,-0.36665 -0.043,-0.2456 -0.071,-0.51516 -0.041,-0.81478 z m -8.5552,0.0407 0.3667,0 0,0.24443 -0.3667,0 0,-0.24443 z m -16.4585,0.0815 0.163,0.0407 -0.1223,0.40738 -0.2851,-0.0815 0.082,-0.28518 0.1629,-0.0815 z m 4.1961,0.20369 0.5296,0.12222 0,1.18142 c -0.3391,-0.0767 -0.5209,-0.50904 -0.5296,-1.30364 z m 1.7925,0.16296 -0.2444,0.69256 0.6518,0.16295 0.2037,-0.69256 -0.6111,-0.16295 z m 3.0147,0.24443 c 0.5369,0.1214 0.591,1.23746 0.163,3.29985 -0.1491,0.24871 -0.3559,0.70204 -0.5704,1.14069 l -0.5703,-0.12222 -0.5296,-1.34438 c 0.3877,0.0877 0.5931,-0.0857 0.7333,-0.52961 l 0.082,-1.18143 0.2037,0.24444 0.6518,0.16295 -0.163,-1.67029 z m 9.6959,0.0407 0.1222,0.12222 -0.2445,0.28517 -0.1222,0.44812 -0.1222,0 -0.2852,-0.0815 -0.041,-0.44813 0.082,-0.12222 0.2445,0.24444 0.3666,-0.44813 z m 5.3775,0 c 0,0.306 -0.1563,0.44815 -0.5704,0.44813 l 0,0.20369 0.4074,0 -0.3666,0.65182 -0.4074,-0.0815 0.082,-0.0815 0,-0.28518 -0.041,-0.0407 0.4074,-0.77404 c 0.1595,-0.009 0.3126,-0.0407 0.4888,-0.0407 z m -13.4438,0.0407 0.2851,0.0407 -0.4481,1.2629 -0.082,0.32591 c 0.198,0.0814 0.3666,0.1667 0.5296,0.24444 l -0.2444,0.44812 -0.1223,-0.20369 -0.3259,0.16295 -0.2444,-0.0407 c 0.067,-0.14188 0.1305,-0.27251 0.2037,-0.48887 l -0.2037,0 0.163,-0.48887 0.041,0.0407 0.2851,0 0.163,-1.30364 z m -8.1886,0.0815 0.5704,0.12221 -0.163,0.40739 -0.4074,-0.5296 z m 13.1587,0.0815 0.082,0.0815 -0.163,-0.0407 0.082,-0.0407 z m 4.3591,0 0.3259,0 c -0.046,0.25428 -0.075,0.44865 -0.082,0.65182 l -0.6111,0 0.082,-0.57034 0.2852,-0.0815 z m -3.1369,0.0815 0.082,0.48887 c -0.2043,-0.10677 -0.3489,-0.235 -0.4482,-0.40739 l 0.3667,-0.0815 z m -1.7518,0.0815 -0.1222,0.48886 -0.163,0 0,-0.40738 0.2852,-0.0815 z m 18.0066,0.0407 0.2037,0.0407 -0.163,0.65182 -0.2037,-0.0815 0.163,-0.61108 z m 0.6518,0 0.4889,0.12221 -0.4074,1.4666 -0.163,-0.0407 c -0.083,-0.0188 -0.171,0.0209 -0.2444,0.0407 l 0,-0.36665 0.3259,-1.22216 z m -21.225,0.0407 0.1223,0 0,0.0407 -0.1223,-0.0407 z m 3.5036,0.12221 c 0.081,0.0361 0.1343,0.0796 0.2037,0.12222 l -0.2445,0.0407 0.041,-0.16296 z m -12.1809,0.0815 0.2851,0.0407 -0.2851,0.89625 -0.2852,-0.0407 0.2852,-0.89626 z m 1.7925,0.16296 -0.1222,0.44812 0.611,0.12222 -0.4888,-0.57034 z m 19.5954,0 c 0.045,0.041 0.1551,0.11945 0.2037,0.16295 l -0.082,0.52961 -0.8963,2.85172 -0.5703,0.81477 0.3666,1.05922 -0.6518,-0.16296 -0.3667,2.07768 -0.5296,-0.12221 0,-0.97774 0.3259,-0.12221 0.082,-0.2037 0.163,-1.4666 0.4889,-0.57034 -0.1222,-0.12222 c 0.028,-0.0546 0.041,-0.12719 0.041,-0.20369 l 0.2036,-0.12222 -0.4073,-0.57034 0.3666,-0.12222 0.2444,0.0407 0.082,-1.14069 0.3667,-1.14069 0.5296,0.12222 0.163,-0.61108 z m 1.2629,0.0815 0.1222,0.16296 -0.163,-0.0407 0.041,-0.12222 z m 1.8332,0.12222 0.082,1.62956 0.4889,0.12221 0.2037,-0.20369 -0.2445,0.81477 c -0.1146,-0.18977 -0.1569,-0.28132 -0.2851,-0.48886 l -0.2037,0.0815 c -0.022,-0.0177 -0.055,-0.0241 -0.082,-0.0407 l -0.4074,-0.65182 0.4481,-1.26291 z m 0.5296,0 0.3667,0.0815 0,0.0815 -0.2445,0.36665 -0.2444,-0.0815 0.1222,-0.44813 z m 3.7887,0.16296 0.2037,0.0407 -0.1222,0.44813 -0.2037,-0.0815 0.1222,-0.40738 z m 1.7926,0.24443 0.2036,0.0815 0,1.05921 0,0.0407 c -0.05,0.0364 -0.1167,0.0642 -0.1629,0.12221 l -0.3667,-0.0815 0.326,-1.22217 z m -32.1023,0.0407 0.2445,0.0815 -0.9778,3.09615 -0.2444,-0.0407 0.9777,-3.13689 z m 29.5764,0.16295 0.082,0.0407 -0.1629,0.61109 -0.2037,-0.0407 0.1222,-0.44813 0.163,-0.16296 z m -14.0141,0.16296 0.2037,0 0,0.48887 -0.2037,0 0,-0.48887 z m 11.692,0.0815 0.2037,0.0815 0.041,0.24444 -0.2852,-0.2037 0.041,-0.12221 z m -24.2803,0.0815 -0.163,0.44813 0.6111,0.16296 0.1629,-0.48887 -0.611,-0.12222 z m 27.132,0.0407 0.2037,0.0407 0.041,0.69256 -0.4073,-0.12221 0.1629,-0.61109 z m -29.0468,0.0407 0.2852,0.0407 -0.2037,0.65182 -0.2444,-0.0815 0.1629,-0.61109 z m 31.5727,0.2037 0.4073,0.12221 -0.082,1.05921 -0.082,0.32591 -0.2444,-0.0815 0.082,-1.14069 c -0.055,-0.0125 -0.1121,-0.005 -0.163,0 l 0.082,-0.28517 z m -19.5547,0.24443 0.041,0 0,0.44813 -0.2037,0 0.163,-0.44813 z m -5.5405,0.0407 0.6926,0.16295 -0.5704,1.18143 -0.3259,0.44813 -0.082,0 0.2037,-0.61108 0,-1.05921 c 0.035,-0.0284 0.048,-0.0738 0.082,-0.12222 z m 5.9479,0.20369 0.4074,0 0,0.48887 0.2444,0 0.041,-0.0407 -0.041,0.28517 -0.3259,0.0815 -0.041,-0.12222 0.041,-0.20369 -0.3666,-0.0815 -0.163,0.0407 c 0.1408,-0.12156 0.2037,-0.25688 0.2037,-0.44813 z m 13.8919,0 0.2445,0.0407 0.1222,0.7333 -0.082,0.24443 -0.4074,-0.61108 0.1222,-0.40739 z m -11.8142,0.2037 0.082,0 -0.2037,0.89625 -0.082,0.0407 -0.2037,-0.20369 c -0.1035,0 -0.1645,0.009 -0.2444,0.0407 l 0.2036,-0.65183 0.4482,-0.12221 z m 0.774,0 0.4889,0 0.1629,0.0407 -0.2444,0.77403 -0.5296,0.32592 -0.2444,0 0.082,-0.2037 0.1629,0 0,-0.20369 0.2852,-0.0815 -0.2852,-0.28517 0.1222,-0.36665 z m 2.8517,0 0.6519,0 -0.082,0.20369 -0.6111,-0.12222 0.041,-0.0815 z m -22.5286,0.16295 0.6519,0.16296 -0.4889,0.61108 -0.3667,-0.0815 0.2037,-0.69256 z m 14.9512,0.12222 0.2037,0 0.3666,0.0815 -0.4073,0.20369 -0.041,0.2037 0.041,0.12221 -0.163,0.0407 -0.2037,0 0.2037,-0.65182 z m 20.0028,0.0407 0.2037,0.0407 -0.041,0.20369 -0.2037,-0.0407 0.041,-0.20369 z m -18.8214,0.16295 0.2445,0.0407 -0.041,0.2037 -0.2852,0.0407 0.082,-0.28518 z m 6.1923,0 0.2852,0.0407 -0.041,0.0815 -0.2444,-0.0815 0,-0.0407 z m 6.1516,0.2037 0.6518,0.12221 0.2852,0.85552 c 0.027,0.314 0.036,0.61618 -0.041,0.93699 l -0.2037,-0.0815 0.163,-0.44813 -0.5704,-0.12222 -0.041,0.2037 0.3259,0.81477 -0.3259,0.12222 c -0.1051,0.33294 -0.023,0.60721 0.2852,0.77404 -0.04,0.10991 -0.074,0.22 -0.1222,0.32591 l -0.2445,0.0815 0.1223,-0.40739 -0.5704,-0.12222 -0.2444,1.75177 c -0.1708,0.17433 -0.368,0.37122 -0.5704,0.52961 l 0.2037,-0.28517 c 0.09,-0.61376 -0.1265,-0.99034 -0.6111,-1.09995 l 0.1223,-0.40739 0.611,0.12222 0.1223,-0.28518 -0.3259,-0.28517 0.4481,-0.12222 0,-1.18142 0.5296,-1.79251 z m -27.3765,0.0407 0.8148,0.40739 -0.3259,1.09994 -0.2852,-0.0815 -0.3259,-1.01847 0.1222,-0.40739 z m 2.4851,0.0407 0.5703,0.12221 -0.082,0.2037 -0.5296,-0.12222 0.041,-0.20369 z m 32.0207,0.12221 0.2852,0.0407 -0.2037,0.69256 -0.2852,-0.0407 0.2037,-0.69256 z m -23.3026,0.0407 0.2037,0 0,0.2037 -0.2445,-0.0407 0.041,-0.16296 z m 10.144,0 0,0.0815 -0.041,0 0.041,-0.0815 z m 11.8142,0.28517 -0.3666,1.34439 -0.041,0 0.4074,-1.34439 z m -11.4883,0.0815 0.2444,0.0815 -0.082,0.20369 -0.2852,0.12222 0.1222,-0.40739 z m 10.3069,0 0.041,0 c 0.027,0.19875 0.01,0.41807 -0.041,0.65182 l -0.163,-0.0407 0.163,-0.61108 z m 1.5888,0 0.1222,0.0407 0,0.20369 -0.1629,-0.0407 0.041,-0.2037 z m -16.3363,0.12222 0.163,0 -0.4481,0.44812 -0.2037,0 0.4888,-0.44812 z m 3.1369,0 0.2852,0 -0.082,0.44812 -0.3259,0 0.1222,-0.44812 z m -22.4471,0.20369 0.082,0.12222 -0.041,0.0815 c -0.011,-0.0687 -0.041,-0.1361 -0.041,-0.2037 z m 20.1657,0 0.5297,0 0.082,0.0815 -0.082,0.32591 -0.6111,-0.12222 0.082,-0.28517 z m -18.9028,0.0815 0.2037,0.0407 0,0.24443 c -0.066,-0.0966 -0.1383,-0.18401 -0.2037,-0.28517 z m 10.7143,0.20369 -0.082,0.28518 -0.041,0.0815 -0.041,0.12222 -0.1629,-0.20369 0.3259,-0.28518 z m 19.7176,0 0.2037,0.0407 -0.082,0.16296 c -0.028,-0.0538 -0.092,-0.14667 -0.1222,-0.2037 z m -4.1553,0.0407 0.6111,0.12222 -0.081,0.24443 -0.6111,-0.16295 0.082,-0.2037 z m 7.9441,0 0.1629,0.0407 -0.2852,0.97773 -0.1222,-0.0407 0.2445,-0.97774 z m -29.4542,0.0815 1.2221,0.0815 -0.2037,0.61108 -1.2629,0 0.2445,-0.69256 z m 10.918,0.0407 0.6518,0 0,0.20369 -0.1222,0 -0.6111,-0.16295 c 0.029,-0.0137 0.051,-0.0271 0.082,-0.0407 z m 14.2993,0.0815 0.2852,0.40739 -0.2852,0.44812 -0.2444,-0.0407 0.2444,-0.81477 z m 1.1407,0.32591 0.1222,0.61108 -0.2852,-0.0815 0.163,-0.5296 z m 4.1554,0.0407 0.1222,0 c -0.064,0.20395 -0.057,0.39208 0,0.5296 l -0.041,0 -0.1222,0.40739 0.041,0.89626 -0.4074,0.48886 -0.2037,-0.0407 0.3259,-1.18142 -0.4481,-0.12222 0.2444,-0.81478 0.4074,0.12222 0.081,-0.28517 z m -17.2326,0.0407 0.3667,0 0,0.28517 -0.2445,0.0815 -0.1222,-0.0407 0,-0.32591 z m 0.7741,0 0.4074,0 -0.163,0.57034 -0.2444,-0.0407 -0.082,-0.0815 0.082,0 0,-0.44812 z m 2.0369,0 0.4074,0 -0.1222,0.69256 c -0.146,0.15267 -0.3488,0.24964 -0.5704,0.32591 l -0.611,-0.44813 c 0.097,0.029 0.2025,0.0644 0.3259,0.0815 0.414,0 0.5703,-0.19281 0.5703,-0.65182 z m -22.4471,0.0407 c 0.01,0.0179 0.071,0.0224 0.082,0.0407 l -0.082,0 0,-0.0407 z m 2.7702,0.0407 0.8148,0.2037 -0.082,0.20369 -0.8148,0.0815 c -0.02,-0.0217 -0.021,-0.0594 -0.041,-0.0815 l 0.1223,-0.40739 z m 21.4287,0 0.2852,0.16296 -0.082,0.20369 -0.2852,-0.0407 0.082,-0.32591 z m -2.3221,0.0815 0.2851,0.0815 -0.2851,0 0,-0.0815 z m -14.2994,0.36665 0.4889,0.52961 -0.2037,0.65182 -0.041,0 -0.2444,-0.32591 -0.5296,-0.12222 c -0.048,0.151 -0.1392,0.2794 -0.2445,0.36665 l -0.8555,-0.24443 c -0.047,-0.23182 -0.2221,-0.40089 -0.6111,-0.48887 l 0.041,-0.20369 0.5704,0.12221 0.2037,0.24444 c 0.1052,-0.3329 0.5689,-0.44606 1.4258,-0.52961 z m 3.1777,0.32591 0.3666,0.44813 -0.6518,-0.12222 0.2852,-0.32591 z m 21.673,0 0.1222,0.2037 c -0.02,0.075 -0.087,0.16363 -0.1222,0.24443 l -0.1222,-0.0407 0.1222,-0.40739 z m -1.3443,0.12222 0.2036,0.36665 -0.041,0.20369 -0.2444,-0.36665 c 0.023,-0.0703 0.061,-0.13194 0.082,-0.20369 z m -25.91,0.40739 0.2445,0.0407 -0.1223,0.40738 -0.2444,-0.0407 0.1222,-0.40739 z m -1.5073,0.0815 0.2037,0.0407 -0.041,0.12222 c -0.061,-0.0423 -0.1022,-0.11767 -0.163,-0.16296 z m -3.9109,0.0815 c 0.1983,0.0449 0.3656,0.10693 0.5296,0.12222 l 0.4888,0.61108 0,-0.48886 -0.1222,-0.12222 c 0.1736,-0.0109 0.3316,-0.0657 0.4481,-0.12222 0.1559,0.20014 0.3052,0.42706 0.4889,0.65182 l -0.3259,0.44813 -0.1222,-0.12221 -0.082,-0.16296 -0.2852,-0.0407 -0.6518,0.28517 0.041,0.61109 c -0.1697,-0.1506 -0.3284,-0.3246 -0.4889,-0.48887 l 0.082,-0.20369 -0.3666,-0.0815 c -0.1552,-0.17217 -0.3026,-0.34479 -0.4482,-0.52961 l 0.6519,0.12222 0.1629,-0.48887 z m 11.7328,0.24444 0.4481,0 0,0.48886 -0.4481,0 0,-0.48886 z m 11.692,0 0.163,0 0,0.12221 -0.163,-0.12221 z m -4.4405,0.0407 0.1629,0.28518 -0.041,0.16295 -0.9777,0 -0.2852,0 0,-0.0407 c 0.097,0.0219 0.1955,0.0613 0.2852,0.0407 0.1794,-0.0411 0.3596,-0.19639 0.4889,-0.40739 l 0.3666,-0.0407 z m -0.7333,0.0407 0,0.0407 -0.5296,0 0.5296,-0.0407 z m 2.1999,0.0407 c 0.1,0.0769 0.1569,0.22678 0.1629,0.36665 l -0.6925,0 0.1629,-0.28517 0.3667,-0.0815 z m 17.1103,0.0407 0.163,0.0407 -0.041,0.16296 -0.163,-0.0815 0.041,-0.12222 z m -21.1435,0.0407 0.1222,0 c 0.1262,0.0632 0.2198,0.1547 0.2445,0.28517 l -0.3667,0 0,-0.28517 z m 11.6921,0.44813 0.5296,0.12221 -0.082,0.24444 -0.5296,-0.12222 0.082,-0.24443 z m -13.0365,0.0815 0.163,0.12221 -0.081,0.2037 -0.082,-0.0407 0,-0.28517 z m -4.1146,0.0815 0.2445,0.0407 0.1222,0.0815 0.1629,0 -0.082,0.24443 -0.3666,0.2037 -0.1222,0.0407 0,-0.0815 0.1222,0.0407 0.041,-0.2037 -0.1222,-0.28517 0,-0.0815 z m 25.4211,0.0407 0.1222,0.44813 -0.1222,0.28517 0,-0.7333 z m -16.1734,0.16296 -0.041,0.20369 -0.041,0.48887 -0.937,-0.12222 -0.082,-0.0815 0.7741,-0.36665 -0.3667,-0.0815 0.6926,-0.0407 z m -3.5035,0.0407 -0.041,0.12221 -0.2852,-0.0815 0.3259,-0.0407 z m 4.7664,0 0.4482,0.0815 0,0.0407 0,0.2037 c -0.1905,-3e-5 -0.299,0.0478 -0.4074,0.12221 l -0.041,-0.44812 z m -2.5665,0.0407 -0.1222,0.44812 -0.6111,-0.0815 -0.2444,-0.24443 -0.082,0.2037 -0.2852,-0.0407 0.082,-0.24444 0.082,0 0.2037,0.0815 -0.041,-0.0815 0.2852,0 0.7333,-0.0407 z m 3.7887,0 0.1222,0.0407 -0.1222,0 0,-0.0407 z m -15.2771,0.0407 0.163,0.24444 0.2852,0 0.1629,-0.12222 0.2852,0.28517 -0.3259,0.36665 c -0.7619,0.018 -1.1994,0.12476 -1.2629,0.32591 l -0.082,0.2037 0.2851,0.0815 0.5297,0 -0.2445,0.28517 c -0.3067,1e-5 -0.7246,-0.1575 -1.1814,-0.36665 l 0.1222,-0.32591 -0.3666,-0.0815 -0.3259,0.16295 c -0.3254,-0.1839 -0.6736,-0.42524 -1.0593,-0.69256 0.53,0.11989 0.9409,0.021 1.2222,-0.28517 0.452,0.0971 0.8964,0.16296 1.3851,0.16296 l 0.082,0 0.163,0.0407 0.041,-0.16296 0.1222,-0.12222 z m 1.9148,0.0815 c 0.012,0.27819 0.175,0.47169 0.611,0.57035 l -0.041,0.12221 -0.1629,0.0815 c -0.4016,-0.0334 -0.7787,-0.0704 -1.1,-0.0815 0.1876,-0.17418 0.4654,-0.46552 0.6926,-0.69256 z m 25.1766,0 0.1222,0.0407 -0.2444,1.01847 -0.1223,-0.0407 0.2445,-1.01847 z m -10.9588,0.0815 0.2445,0.0815 -0.082,0.28517 -0.163,0 0,-0.36665 z m -20.8175,0.12222 c 0.2965,0.34461 0.6323,0.71225 0.9777,1.09995 l -0.7333,-0.16296 c -0.294,-0.2508 -0.5827,-0.52525 -0.8555,-0.81478 l 0.6111,-0.12221 z m -1.0592,0.24443 0.4481,0.7333 -0.3259,0 c -0.2314,-0.13532 -0.4738,-0.24994 -0.6926,-0.40739 0.047,-0.0675 0.091,-0.14686 0.1222,-0.24443 l 0.4482,-0.0815 z m 23.2211,0.16295 0.5704,0.12222 0,1.18143 -0.4482,0.12221 -0.5296,-0.12221 0.4074,-1.30365 z m 11.2847,0.12222 -0.2037,0.40739 0.082,-0.32591 0.1222,-0.0815 z m -16.2956,0.12222 0.2445,0 0,0.0815 -0.2445,-0.0407 0,-0.0407 z m -19.6768,0.12221 c 0.029,0.007 0.054,-0.005 0.081,0 l 0.082,0.0815 -0.3667,0 0.2037,-0.0815 z m 29.169,0.0407 -0.041,0.36665 -0.2852,-0.0815 c 0.1196,-0.0874 0.2148,-0.19178 0.3259,-0.28518 z m 3.8294,0 0,0.0815 -0.041,0 0.041,-0.0815 z m -0.9777,0.0407 0.2037,0.0815 c -0.072,0.0648 -0.1696,0.10081 -0.2444,0.16296 -0.192,0.1594 -0.3681,0.33853 -0.5704,0.48886 -0.078,-0.0803 -0.1397,-0.20168 -0.2037,-0.32591 0.1573,-0.0786 0.2844,-0.16146 0.4482,-0.24443 l 0.3259,0.0815 0.041,-0.2037 c 0.01,-0.003 -0.01,-0.0377 0,-0.0407 z m -23.5471,0.2037 -1.0999,0.5296 -0.163,0 0,-0.20369 c 0.1087,10e-6 0.2967,-0.11103 0.5296,-0.28517 l 0.7333,-0.0407 z m -4.9294,0.12221 c 0.1298,0.14533 0.2302,0.25609 0.3667,0.40739 l 0,0.2037 c -0.065,-0.0425 -0.139,-0.0782 -0.2037,-0.12222 l 0.041,-0.0815 -0.163,-0.0407 c -0.08,-0.0559 -0.1659,-0.10467 -0.2444,-0.16295 l 0.163,-0.0407 0.041,-0.16296 z m 10.0218,0.0815 0.3666,0.24443 -0.082,0.0815 -0.2037,0 c 0,-0.12072 -0.037,-0.22823 -0.082,-0.32591 z m -2.0369,0.32591 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 6.6404,0 0.4074,0 0,0.0815 -0.2445,0.12222 -0.1629,0 0,-0.2037 z m -3.0962,0.12222 0.4074,0.0815 -0.4074,0 0,-0.0815 z m 5.8257,0 0.2444,0.0407 0.2445,0.28517 0.082,0 0,0.40739 c -0.3616,0.0312 -0.758,0.0611 -1.1407,0.0815 l 0.3259,-0.48887 c 0.079,-0.004 0.1557,0 0.2444,0 l 0,-0.32591 z m -6.4775,0.32591 0.6518,0 0,0.48887 -1.0184,0 0.3666,-0.48887 z m 8.1885,0.0407 0.2852,0.0815 -0.041,0.12221 c -0.1062,0.0146 -0.2175,0.0272 -0.3259,0.0407 l 0.082,-0.24443 z m 9.4107,0.0407 c -0.02,0.28762 -0.041,0.56161 0.041,0.77404 l -0.163,0.0815 -0.1222,0.40739 -0.3259,-0.44813 0.5704,-0.81477 z m -12.0587,0.0407 c 0.01,-0.004 0.03,0.004 0.041,0 l 0.041,0.0407 -0.082,0.24444 -0.2444,-0.0407 c 0.043,-0.0934 0.1037,-0.18419 0.2444,-0.24443 z m -8.6366,0.16295 0.6518,0 0,0.2037 -0.6518,0.20369 0,-0.40739 z m 1.0184,0 0.4889,0 0,0.2037 -0.4889,0 0,-0.2037 z m 3.5851,0 0.3666,0 -0.3666,0.40739 -0.4889,0 0.4889,-0.40739 z m -15.1549,0.2037 0.041,0 0,0.20369 -0.4481,0 0,-0.0407 0.4074,-0.16295 z m 3.3406,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 4.9701,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 3.911,0 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 18.0473,0.0407 0.082,0 0,0.0407 -0.082,-0.0407 z m -2.7295,0.0815 0.041,0 -0.163,0.48887 -0.5296,-0.12222 0.041,-0.0815 c 0.1755,-0.0707 0.415,-0.20082 0.6111,-0.28517 z m 5.296,0 c 0.072,0.0901 0.1611,0.14842 0.2445,0.24444 l 0,0.0407 -0.4074,-0.0815 c -0.029,-0.0236 -0.055,-0.0579 -0.082,-0.0815 l 0.2444,-0.12222 z m -32.6318,0.28517 0.6518,0 0,0.24444 -0.6518,0 0,-0.24444 z m 2.9332,0 0.3666,0 -0.3666,0.52961 0,-0.52961 z m -3.5443,0.24444 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 9.3292,0 0.6111,0 1.0185,0.28517 1.2221,-0.28517 1.3037,0 0,0.48886 -5.1739,0 0,-0.20369 1.0185,-0.28517 z m 4.522,0 4.6035,0 -0.4481,0.48886 -0.2037,-0.20369 -1.0185,0.20369 -2.4851,0 -0.4481,-0.48886 z m 5.459,0 0.5704,0 0,0.28517 -0.5704,0 0,-0.28517 z m 15.3178,0 c -0.021,0.0666 -0.029,0.1361 -0.041,0.20369 l -0.041,0 0.041,-0.16295 0.041,-0.0407 z m -30.5134,0.28517 1.0185,0 0,0.20369 -1.0185,0 0,-0.20369 z"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.49142857;fill:#fce94f;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <path
+       id="path3646"
+       d="m -542.81241,163.54183 -2.5665,0.48886 0,1.34439 0.5703,-0.61109 0.6518,0 0,0.2037 -1.2221,0.40739 0,2.07768 0.2036,0 -0.2036,0.28517 0,0.85552 c -0.1243,0.11339 -0.1889,0.18925 -0.2852,0.28517 l 0,0.48886 c 0.096,-0.0462 0.1847,-0.0603 0.2852,-0.12221 l 0,0.7333 -0.2852,0.24443 0,8.55516 0.6111,2.24064 0.082,0.57034 c -0.028,0.0807 -0.061,0.16777 -0.082,0.24444 0.066,0.0489 0.1079,0.10817 0.1629,0.16295 l 0,0.16296 -0.2444,-0.0815 c -0.024,-0.006 -0.057,-0.001 -0.081,0 0.036,-0.12665 0.062,-0.25692 0.1222,-0.36665 l -0.163,-0.61108 -0.4073,0.0815 0,3.87019 c 0.014,-0.002 0.027,0.004 0.041,0 l 0.2037,-0.0407 0.041,-0.0407 0,0.85552 c -0.09,0.26172 -0.1903,0.50209 -0.2852,0.69256 l 0,0.97773 0.2444,0.0815 -0.041,0.16295 -0.2037,-0.0815 0,11.12172 0.163,-1.18143 0.1222,0.0407 0,1.01847 0.2037,0 0.4889,0.5296 c -0.1,0.0821 -0.1897,0.19341 -0.2445,0.36665 l -0.2037,-0.24443 -0.082,0 -0.1629,-0.65182 0,0.57034 -0.041,0 -0.2445,0.12222 0,0.89625 0.2852,-0.12221 0,0.32591 -0.1222,-0.0407 -0.1222,0.40739 0.2444,0.0407 0.3667,-0.12222 0,0.24443 -0.3667,0 0,0.85552 -0.2852,0.0815 0,0.20369 0.2852,-0.0815 0,0.0815 c 0.4141,4e-5 0.5704,-0.14215 0.5704,-0.44813 l -0.2037,-0.20369 0.5296,0 -0.1223,0.0815 -0.082,0.24443 0.1223,0 0,0.0815 0.2037,0.24443 0,0.28517 -1.0185,0 0,0.24444 3.3813,0 c 0.2347,-0.63833 0.527,-0.97774 0.937,-0.97774 l 0,-0.40738 -0.5703,0 -0.2852,0.20369 -0.163,0 -0.2444,-0.32591 0.082,-0.24443 -0.2444,0.0815 -0.6519,0 -0.3259,0.12222 0,-0.0407 -0.3666,-0.0815 -0.2852,0.2037 -0.4481,-0.2037 0,-0.24443 1.0592,0 0,-0.20369 -0.2037,-0.2037 0,-0.24443 0.4889,0.16295 -0.082,0.2037 0.5703,0.12222 0.2852,-0.0407 0.6111,0.20369 -0.082,0.24443 0.2851,0.0815 0.5704,-0.0407 0.6518,0.24444 0,0.20369 c -0.3219,7e-5 -0.8163,0.38652 -1.3851,1.18143 l 18.5769,0 c 0.082,-0.0802 0.1634,-0.16304 0.2444,-0.24444 0.2121,0.0756 0.5041,0.16494 0.7333,0.24444 l 1.4666,0 -0.2444,-0.40739 1.1407,0.0815 0.2037,0.0815 -0.041,0.16296 -0.5296,0.0815 0.7333,0 7.8626,0 0.041,-0.16296 c 0.061,0.0307 0.1355,0.0557 0.2037,0.0815 l -0.041,0.0815 1.3036,0 0.3667,-0.24444 -0.041,0.24444 2.5665,0 0.082,-0.24444 0.2444,0.0407 -0.082,0.2037 0.4482,0 0,-1.34439 -0.082,0.24444 -0.2445,-0.0407 0.1223,-0.40739 0.2037,0.0815 0,-9.04403 -0.1223,-0.0407 0.1223,-0.57034 0,-1.71104 -0.2852,0.0815 -0.041,0.2037 0.2037,0.32591 -0.6111,1.09995 -0.2037,-0.0407 0.937,-3.50354 0,-1.58882 -0.2852,0.12222 -0.041,1.05921 -0.6518,2.36285 -0.5703,0.28517 1.1814,-4.39979 0.3666,0.57034 0,-1.34438 -0.1629,-0.0407 0.1629,-0.57035 0,-1.83324 c -0.2597,-0.39209 -0.5238,-0.78278 -0.8147,-1.14069 l 0.8147,0.0407 0,-1.22217 -0.2037,0.85552 -0.2444,-0.0815 0.3259,-1.18143 0.1222,0.0407 0,-3.54428 -0.082,0.28517 -0.4481,-0.12222 0.5296,-2.03694 0,-7.98482 -0.041,0.12222 -0.8148,0 -0.6518,-0.36665 -0.8148,0 0.041,-0.20369 -0.3259,-0.52961 0.082,-0.28517 0.2037,0.0407 0.8555,0.77404 0.2852,-0.16296 0.082,-0.28517 c -0.3163,-0.38756 -1.7549,-1.08882 -4.3183,-2.07768 l -1.1,0 2.811,1.18142 -0.1222,0.40739 0.2852,-0.16295 0.6925,0.20369 -0.4888,0.81478 -0.2037,-0.0407 -0.163,-0.28517 -0.2444,-0.0407 -0.3667,0.12222 0.1222,-0.40739 0.3667,-0.16296 0,-0.0407 -0.2444,-0.28517 -0.2445,-0.0815 -0.2851,0.2037 -0.2445,-0.0407 -0.6925,-0.48887 -0.5704,0.36665 -1.5481,-1.2629 -1.8332,0 -0.082,0.32591 -0.2444,-0.0407 0.082,-0.28517 -3.2999,0 1.0185,1.54807 0.2037,0.0407 -0.163,0.69256 -0.4481,-0.12221 -0.082,0.20369 c 0.3276,0.0876 0.5624,0.55849 0.6926,1.38512 l -0.163,0.69256 -0.2444,-0.0815 0.1222,-0.44813 -0.7333,-0.2037 -0.163,0.44813 0.4889,0.12222 -0.2444,0.89625 -0.4889,-0.12221 -0.2037,0.93699 0.4481,0.12222 -0.1222,0.40739 -0.4481,-0.12222 -0.1222,0.40739 0.4481,0.12221 -0.163,0.69256 c -0.4096,-0.10951 -0.697,0.12321 -0.937,0.69257 -0.022,0.0836 -0.038,0.17514 -0.041,0.24443 l -0.2444,-0.28517 -0.2037,0.28517 c -0.01,-0.0895 -0.01,-0.18894 0,-0.28517 l 0.2037,0 0,-0.2037 -0.1629,-0.16295 c 0.014,-0.071 0.021,-0.12964 0.041,-0.2037 l 0.5296,0.16296 0.1629,-0.65182 -0.4074,-0.61109 0.937,-1.38512 -0.2037,-0.0407 0.2852,-0.16295 0.081,-0.28518 -0.2037,-1.46659 0.6518,-0.24444 -0.2444,-0.0815 0.4481,-0.61108 c 0.1537,-1.06751 -0.199,-1.68478 -1.0592,-1.91472 l 0.2852,-0.16296 0.082,-0.24443 -1.5888,0 0,0.0815 0.6925,0.16296 -0.937,0.7333 c 0.085,-0.31634 0.048,-0.64018 -0.041,-0.97773 l -1.5888,0 -0.2037,0.69256 -0.2444,-0.0407 0.1629,-0.65182 -0.937,0 0.2445,0.48886 -0.082,0.44813 -0.3667,-0.57034 0.082,-0.36665 -0.4481,0 -0.8555,3.09615 c -0.097,-0.0451 -0.1796,-0.0767 -0.2852,-0.12222 l -0.041,0 -0.1629,-0.24443 0.2851,-0.12222 0.082,-1.18142 0.3667,-1.42586 -0.4889,0 -0.6111,2.36285 -0.2444,0 0.6111,-2.36285 -2.6073,0 -0.041,0.16295 0.4481,0.12222 -0.2852,1.05921 c -0.9987,-0.37944 -1.8221,-0.65178 -2.4443,-0.65182 -0.1476,0.37417 -0.4354,0.62502 -0.774,0.77404 -0.016,-0.069 -0.022,-0.13369 -0.041,-0.2037 l -0.041,-0.20369 0.5703,-0.0815 0,-0.28517 c 10e-5,-0.20089 -0.2546,-0.36699 -0.774,-0.48887 l -0.041,-0.20369 -0.9778,0 c 10e-4,0.0136 0,0.0271 0,0.0407 l 0,0.24443 c -0.2786,-0.13728 -0.624,-0.21604 -1.0184,-0.28517 l -1.7111,0 0,0.16295 -0.2444,0.0815 -0.082,-0.24443 -0.5296,0 0.041,0.12221 -0.163,0.16296 -0.082,-0.28517 -2.7295,0 -0.2037,0.97773 -0.3259,0 0,-0.48887 c 0.085,-0.17617 0.1553,-0.35747 0.2037,-0.48886 l -2.4036,0 z m 36.2576,12.83274 0,-0.93699 -0.041,0.0407 -0.163,0.61109 0.2037,0.28517 z m -34.3429,-12.75127 -0.2851,0.44813 -0.4889,0.0815 0.082,-0.28517 0,-0.12222 0.6925,-0.12222 z m 13.4846,0.0407 0.4481,0.12222 -0.041,0.24443 -0.4481,-0.12221 0.041,-0.24444 z m -16.2956,0.36665 0,0.48887 -0.4481,0 0.4481,-0.48887 z m 7.8219,0 0.082,0.0407 0.2037,0.89626 c -0.2224,-0.0204 -0.4372,-0.0455 -0.6111,-0.0815 l 0.2037,-0.65182 -0.041,-0.16296 0.163,-0.0407 z m 1.4666,0 0.4074,0.48887 -0.4074,0 0,-0.48887 z m -2.5665,0.16296 0.082,0.28517 -0.1223,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.1516,0.0407 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 5.2146,0 0.2037,0 0,0.28517 -0.2037,0 0,-0.28517 z m -2.974,0.28517 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24443 -0.1629,0 c 0.038,-0.0691 0.088,-0.17948 0.1222,-0.24443 z m 13.0365,0 0.2037,0.0815 -0.163,0.65182 -0.3259,-0.57035 0.2852,-0.16295 z m 11.8142,0.0407 0.4482,0.12221 -0.1223,0.48887 -0.4888,-0.12222 0.1629,-0.48886 z m -5.8256,0.16295 0.2444,0.0407 -0.1629,1.58882 -0.2852,0.16295 -0.1222,0.48887 -0.5296,2.52581 -0.6519,-0.65182 1.1,-2.64803 -0.2444,-0.28517 0.082,-0.20369 0.5703,-1.01848 z m 0.9777,0.0407 0.5704,0.12222 -0.2852,0.16295 -0.082,0.2037 -0.7741,3.87019 -0.2851,0.16296 -0.082,1.14068 -0.2037,0.77404 -0.5704,0 0.163,-0.57034 c 0.2449,-0.0957 0.4481,-0.21289 0.4481,-0.36665 l -0.2852,-0.28517 1.3852,-5.21458 z m -17.7214,0.2037 0.2444,0 0.041,0.16295 -0.082,0.0407 -0.1222,0 -0.082,-0.20369 z m 14.5438,0.12221 0.2037,0.0407 -0.082,0.44813 -0.2445,-0.0815 0.1223,-0.40739 z m 12.629,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m -29.8208,0.0407 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m -2.0777,0.2037 1.0592,0 c -0.029,0.0977 -0.082,0.18868 -0.1222,0.28517 l -0.937,0 0,-0.28517 z m 11.855,0 0,0.5296 -0.4889,0 0.4889,-0.5296 z m 24.3618,0.16295 c -0.074,0.27639 0.1418,0.51308 0.5704,0.65182 l 0,-0.5296 -0.5704,-0.12222 z m -6.07,0.32591 0.4481,0.12222 -0.3667,1.30364 -0.4481,-0.12221 0,-1.18143 0.3667,-0.12222 z m -17.0696,0.44813 0,0.48887 -0.2037,0 -1.6703,0.24443 c 0.035,-0.18638 0.074,-0.3749 0.082,-0.57035 l 1.7925,-0.16295 z m 0.3666,0 0.6518,0.20369 0,0.28518 -0.8555,0 0.2037,-0.28518 0,-0.20369 z m 1.0185,0 0.041,0 0.2852,0.44813 -0.041,0.0407 -0.2852,0 0,-0.48887 z m 1.8332,0 -0.082,0.32591 -0.2851,0.0407 0.1222,-0.32591 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.2662,0 0.6519,0.36665 -0.082,0.20369 -0.4482,0.85552 c -0.076,0.61312 0.12,0.99046 0.5296,1.09995 l -0.1222,0.40739 -0.5296,-0.12222 -0.082,0.28517 0.2445,0.28518 -0.3667,0.12221 0.041,1.18143 -0.4889,1.79251 -0.5296,-0.12222 -0.4074,-1.30364 0.1223,-0.48887 0.2444,0.0407 -0.1222,0.48887 0.4481,0.12221 0.041,-0.20369 -0.2852,-0.81478 0.2852,-0.12221 c 0.1185,-0.44346 -0.079,-0.76489 -0.5703,-0.89626 l 0.6518,-0.28517 -0.1222,0.40739 0.4888,0.12221 0.3667,-3.21837 0.041,-0.20369 z m -20.4916,0.12222 0.2444,0.0407 0.1222,0.48887 -0.3259,-0.0815 0,-0.36665 -0.041,-0.0815 z m -7.7404,0.0815 0.4481,0 -0.4481,0.52961 0,-0.52961 z m 1.3036,0 0.8148,0 c -0.013,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2572,0.20542 -0.3429,0.30401 -0.5703,0.48887 l -0.2037,-0.24443 0,-0.28518 z m 1.3037,0 0.3666,0 0.4074,0 0,0.2037 -0.082,-0.0815 -0.4888,0.12222 0,0.24443 -0.082,0.0407 -0.2037,-0.24443 -0.082,0 0.1629,-0.28518 z m 1.1407,0 0.6111,0 -0.041,0.28518 -0.5704,0 0,-0.28518 z m 7.2922,0 0.6519,0 -0.082,0.24444 0.1222,0.44812 -0.2852,0.0407 -0.4074,-0.65182 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24444 -0.2037,0.0407 -0.082,-0.28518 z m 21.1435,0 0.8148,0 0.2444,0.0407 -0.082,0.2037 -1.0999,0.16295 0.1222,-0.40739 z m -12.9142,0.0815 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m 5.2553,0 -0.082,0.2037 0.4889,0.12221 0.041,-0.20369 -0.4482,-0.12222 z m 10.144,0.36665 0.4888,0.12222 0.4074,0.57034 -0.6518,0.32591 0.2852,0.0815 -0.6111,1.01847 c -0.3277,-0.0876 -0.363,-0.37134 -0.2444,-0.81478 l 0.2851,-0.16295 0.041,-0.20369 0,-0.937 z m -1.3851,0.28517 0.2444,0.0815 0.041,0.7333 -0.4481,-0.12222 0.1629,-0.69256 z m -25.5026,0.0407 0,0.40739 -0.2851,0 -0.082,-0.32591 0.3666,-0.0815 z m 23.9137,0.0407 0.2445,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -24.7284,0.0815 0.082,0.28517 -0.2445,0 0,-0.24443 0.163,-0.0407 z m -8.2293,0.0407 1.0185,0 c -0.101,0.0837 -0.1918,0.16587 -0.2852,0.24443 l -0.7333,0 0,-0.24443 z m 2.0777,0 0.4481,0 0,0.24443 -0.6111,0 0.163,-0.24443 z m 7.8626,0 0,0.24443 -0.2037,0 -0.041,-0.16295 0.2444,-0.0815 z m 3.748,0 0.4073,0 0,0.24443 -0.4073,0 0,-0.24443 z m 1.0592,0 0.8147,0 0,0.24443 -0.8147,0 0,-0.24443 z m 22.3656,0.0407 0.4481,0.12221 0.2852,0.28518 0.082,-0.40739 0.2444,0.0407 -0.1222,0.44812 -0.2037,-0.0815 0.163,0.28517 -0.1222,0.48886 c -0.3277,-0.0875 -0.6161,0.14207 -0.7741,0.7333 l -0.3666,-0.61108 0.3666,-1.30364 z m -31.0023,0.0407 0.2852,0.20369 -0.2037,0.0815 -0.082,-0.28517 z m -4.7257,0.0815 0.041,0.0815 -0.1222,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.98,0.0407 0.5296,0.16296 -0.041,0.20369 -0.5296,-0.12221 0.041,-0.24444 z m -20.4916,0.0407 0.3666,0 0,0.28517 -0.3666,0 0,-0.28517 z m 3.5443,0 0.2037,0 c 0.2933,0.10004 0.5027,0.25432 0.6518,0.48887 l -0.082,0.12221 c 0.049,0.098 0.1128,0.18842 0.1629,0.28518 l -0.3666,0 0,0.24443 0.5296,0.0815 c 0.074,0.1378 0.1679,0.27231 0.2444,0.40739 l -1.7925,0 0,-0.2037 c 0.5521,1.1e-4 0.8148,-0.22357 0.8148,-0.5296 l -0.3667,-0.40739 0,-0.48887 z m -9.2885,0.0407 0.1222,0.44813 -0.2037,0.0407 -0.082,-0.32591 0.163,-0.16296 z m -3.5035,0.0815 0.082,0.44812 -0.4482,0.12222 -0.041,-0.16295 0.326,-0.0407 0,-0.32591 0.082,-0.0407 z m 1.6295,0.0407 c 0.2851,1.0667 0.7124,1.54315 1.3037,1.38512 l 0.081,0.16295 -0.163,0.24444 -0.2444,-0.12222 c -0.5965,0.73087 -0.8709,1.45178 -0.6926,2.11842 l -0.8555,-0.65182 0.6111,-0.16296 -0.1222,-0.40739 c -0.3696,0.0988 -0.5984,-0.0975 -0.8148,-0.61108 l 0.9777,-0.7333 -0.4481,-0.93699 -0.041,-0.16296 0.4074,-0.12221 z m 23.5878,0.24443 0.4481,0.12222 -0.082,0.24443 -0.4481,-0.12222 0.082,-0.24443 z m -14.9511,0.0815 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 4.6034,0 0,0.0815 -0.041,0.16296 -0.2036,-0.0407 0.2444,-0.20369 z m -10.5513,0.0407 c 0.1566,0.1293 0.3291,0.24633 0.5703,0.36665 l 0,-0.16296 0.082,0.36665 0,0.0815 -0.4481,0.12221 -0.2037,-0.77403 z m 23.2211,0.0407 0.4482,0.12222 0,0.97773 -0.2852,0.12222 -0.041,0.2037 -0.163,1.46659 -0.4074,0.57035 0.2037,0.24443 -0.3259,0.2037 0.3667,0.57034 -0.2852,0.12222 -0.2444,-0.0407 -0.041,1.14069 -0.3259,1.14068 -0.4482,-0.16295 -0.2037,0.69256 c 0.013,0.0242 0.029,0.0565 0.041,0.0815 l -0.1222,0.0815 0.163,0.0407 c 0.083,0.20379 0.1422,0.44083 0.1629,0.69256 l -0.041,0.2037 -0.1629,-0.24443 -0.2852,-0.0815 -0.041,0.0407 0.2444,-1.54808 0.7741,-2.85172 0.4481,-0.81478 -0.2852,-1.05921 0.5296,0.16296 0.326,-2.07769 z m -28.4357,0.0407 -0.041,0.44813 -0.2852,0.0815 -0.2851,-0.16296 -0.2037,0.0815 0.3666,0.48887 -0.4888,0.61108 -0.326,-0.48887 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48887 -0.1629,0 -0.2037,0.28517 -0.2037,0 0.3666,-0.61108 1.2629,-0.2037 z m 4.8072,0 0.1629,0.65183 -0.2036,0.0407 -0.2037,-0.61108 0.2444,-0.0815 z m -7.0886,0.28518 0.2037,0 0,0.28517 -0.2037,0.24443 -0.2444,0 0,-0.32591 c 0.078,-0.065 0.1633,-0.13004 0.2444,-0.20369 z m 32.5911,0.40738 1.5074,1.34439 -0.1223,0.44812 -0.5296,-0.16295 -0.4888,1.79251 -0.2037,-0.0407 0.4074,-2.48507 -0.2852,0.12222 -0.3259,-0.0815 0.041,-0.937 z m 4.4813,0 0.774,0 -0.1222,0.40739 -0.6925,-0.20369 0.041,-0.2037 z m -27.4173,0.12222 0.041,0 0.2037,0.2037 -0.1629,0.0407 -0.082,-0.24443 z m 3.4221,0 0.5703,0 0,0.2037 -0.5703,0 0,-0.2037 z m 5.4998,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.16296 c -0.014,0.0596 -0.024,0.0991 -0.041,0.16295 l 0.4073,0.12222 c -0.1394,0.12918 -0.3454,0.16298 -0.6518,0.16295 l -0.2037,0 0,-0.20369 0.4889,-0.24443 z m -4.6443,0.0407 0.6518,0.20369 0,0.44813 c -0.414,0 -0.6518,0.1829 -0.6518,0.48886 l -0.1629,0 c 0,-0.45892 -0.1314,-0.73324 -0.4074,-0.7333 l 0,-0.20369 0.5703,-0.20369 z m 11.4476,0.0407 0.326,0.61109 -0.041,0.20369 -0.326,-0.61108 0.041,-0.2037 z m -18.088,0.0407 0.5703,0.28518 0.6519,2.36285 0,0.0815 -0.3667,-0.52961 -0.2037,0 0.5704,0.85552 0.041,0.65182 0.2851,0.12222 -0.3666,0.57034 -1.1814,-4.3998 z m 15.44,0 0.2445,0.0407 -0.2852,1.09995 -0.2445,-0.0407 0.2852,-1.09995 z m -7.0885,0.12222 0.5703,0.20369 0,0.24444 -0.774,0 0.2037,-0.24444 0,-0.20369 z m -9.2885,0.20369 0.4889,0.48887 0.041,0.16296 -0.4889,0.12221 -0.163,-0.65182 0.1223,-0.12222 z m 1.9962,0.12222 0.3259,0.32591 0,0.0815 0.082,0.0407 0.2037,0.24443 -0.1629,0.16296 0.6518,2.36285 -0.2852,-0.16295 -0.8148,-3.05542 z m -7.8219,0.0815 0.082,0.36665 -0.2037,0.0407 -0.082,-0.36665 0.2037,-0.0407 z m 2.4444,0.20369 -0.082,0.61109 0.082,0.24443 0.2444,0.16295 c -0.776,0.20744 -1.0756,0.74804 -0.937,1.71104 l 0.3667,0.57034 -0.2037,0.0407 0.5703,0.24443 -0.1629,1.30365 0.082,0.28517 0.2444,0.12222 -0.2037,0.0407 0.5703,0.85552 c -0.1409,0.11253 -0.2863,0.23952 -0.4481,0.40739 l -0.082,-0.2037 -0.4074,0.12222 -0.082,-0.36665 0.4074,-0.12222 -0.2037,-0.81477 -0.4481,0.12221 -0.2037,-0.81477 0.4074,-0.12222 -0.1222,-0.44813 -0.6519,0.2037 0.082,0.44812 -0.2037,0.0407 -0.1629,-0.61108 c 0.1174,-0.74568 0.3563,-1.1839 0.6518,-1.2629 l -0.082,-0.16296 -0.4074,0.0815 -0.1629,-0.61109 0.2037,-0.0407 1.3444,-2.03695 z m 31.3282,0.2037 0.2444,0.0407 0.2444,0.28517 0.2852,-0.12222 0.6926,0.16296 0.4481,2.28137 -0.041,0.2037 0.2852,0.0815 0.2851,-0.12222 0.2445,0.0407 -0.6926,2.64802 c -0.6159,-0.32291 -0.8481,-0.90564 -0.6111,-1.79251 l -0.2037,-0.0815 0.2852,-0.12222 0.1222,-0.48887 0.082,-1.18142 -0.5703,-0.12222 -0.6926,2.68876 0.2444,0.28518 -0.3666,0.12221 -0.041,0.2037 0.2037,2.1999 -0.8148,0 c -0.1161,0.56732 -0.1894,1.08429 -0.2444,1.50733 -0.1694,0.10755 -0.2849,0.39717 -0.4074,0.85552 l -0.3259,0.12222 -0.4482,-0.12222 -0.1629,-0.93699 0.5703,-0.48887 0,-0.12222 c 0.055,0.0879 0.1487,0.1672 0.2852,0.2037 l 0.2037,0.0407 0.082,-0.2037 0.2444,-1.87399 0.3667,-0.5296 0.7333,-3.62576 0.2444,-0.89625 -0.4481,-0.12222 -0.3667,1.34438 -0.3666,0.12222 0.2444,0.28517 -0.1222,0.48887 -0.5296,-0.16296 0.8148,-3.09615 z m -9.207,0.12221 0.2037,0.0407 -0.2445,0.89626 -0.2851,0.16295 -0.2037,-0.0815 0.5296,-1.01848 z m 6.0701,0 0.2037,0.0407 -0.082,0.40739 -0.2445,-0.0407 0.1222,-0.40739 z m -24.973,0.0815 0.2037,0.81478 -0.2037,0.0407 -0.2444,-0.77404 0.2444,-0.0815 z m -6.7219,0.0407 0.041,0 0.1222,0.44813 -0.2037,0.0407 -0.041,-0.12222 c 0.028,-0.10614 0.05,-0.23043 0.082,-0.32591 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.2614,0.0407 0.2444,0.0407 -0.2036,0.69256 -0.2037,-0.0407 0.1629,-0.69256 z m -26.5617,0.0407 0.1222,0.44813 -0.3259,0.48886 -0.082,-0.36665 0.2851,-0.57034 z m 13.8919,0.0815 0,0.0407 -0.3259,0.2037 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1891,-0.0178 0.3782,-0.0562 0.5296,-0.0815 z m -11.7328,0.24443 0.1223,0.12222 -0.2037,0.0815 -0.041,-0.16295 0.1222,-0.0407 z m 27.1321,0.12222 0.7741,0.20369 -0.041,0.24443 -0.7741,-0.20369 0.041,-0.24443 z m -8.7181,0.0407 0.5703,0.16296 -0.082,0.20369 -0.5296,-0.12221 0.041,-0.24444 z m -15.4808,0.0407 0,0.61109 0.4482,0 c 0,0.33785 0.036,0.62662 0.1222,0.81477 -0.2102,0.0426 -0.4006,0.0946 -0.5704,0.16296 l 0,-0.0407 -0.3666,-0.40739 -0.6518,0.2037 c 0,-0.11015 -0.034,-0.20771 -0.082,-0.28518 l -0.2445,-0.89625 1.3444,-0.16296 z m 2.8925,0 0.2852,0.2037 0.2037,0 1.8739,-0.2037 0,0.2037 -0.2851,0.65182 c 0.3992,-0.22119 0.7009,-0.47342 0.8148,-0.77404 0.071,0.0934 0.1312,0.1937 0.2036,0.28517 l -0.3666,0.0407 0,0.44813 0.4074,0 0.2444,0.28517 0.163,-0.24443 c 0.093,0.10678 0.1891,0.22207 0.2851,0.32591 l 0.041,0.16295 -0.2037,-0.20369 -0.2444,0.12222 0.041,0.69256 -0.2444,0.12221 -0.082,0.16296 -0.6518,-0.12222 c -0.065,-0.12871 -0.107,-0.24434 -0.1223,-0.36665 l 0.326,0 0.3666,0.0815 0.041,-0.20369 -0.2852,-0.52961 c -0.2711,-0.0725 -0.5057,-0.0647 -0.7333,-0.0815 l -0.2037,-0.20369 -0.082,0.16295 c -0.064,0.002 -0.1436,-0.007 -0.2037,0 l -0.5296,-0.61108 -1.0592,0.2037 -0.774,-0.2037 -0.4481,0.44813 -0.163,-0.24443 0,-0.2037 c 0.2415,3e-5 0.4326,0.0163 0.6111,0 0.5354,-0.049 0.774,-0.17787 0.774,-0.40739 z m 16.2955,0 0.2445,0.0815 -0.2445,0.89626 -0.2444,-0.0815 0.2444,-0.89626 z m -19.962,0.40739 0,0.44813 0.4074,0 0,-0.44813 -0.4074,0 z m -1.5481,0.0815 0.2445,0.28517 -0.2037,0.36665 -0.163,-0.5296 0,-0.0815 0.1222,-0.0407 z m -10.5106,0.12222 0.041,0.32591 -0.163,0.0407 0.1222,-0.36665 z m 21.836,0 0.163,0 0,0.24443 -0.163,0 0,-0.24443 z m -16.6622,0.0407 0.5296,0.93699 0.041,0.16295 -0.2037,0.28518 0.7741,1.83325 -0.5296,0.32591 -0.2852,-1.50734 -0.1222,-0.44813 -0.2444,-0.12222 -0.163,-1.42586 0.2037,-0.0407 z m -0.8962,0.0407 1.1407,4.23685 -0.326,-0.0815 0,-0.0815 -0.2851,-0.16295 -0.6926,-3.46281 -0.041,-0.20369 -0.2852,-0.12222 0.4889,-0.12222 z m 19.8805,0.0815 0.2445,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -7.7811,0.0815 0.6518,0 0,0.20369 c -0.1266,0.0362 -0.2232,0.0983 -0.3259,0.16296 l -0.3259,-0.0815 0,-0.28517 z m -9.207,0.12222 0.1222,0.36665 -0.2036,0.0407 -0.1223,-0.36665 0.2037,-0.0407 z m 15.1141,0.0407 0,0.12222 -0.082,0 0.082,-0.12222 z m 9.9811,0.24444 0.2444,0.0407 -0.163,0.48886 -0.2036,-0.0407 0.1222,-0.48886 z m 5.2553,0 0.2444,0.0407 -0.1629,0.48886 -0.2037,-0.0407 0.1222,-0.48886 z m -22.8138,0.0815 0.3667,0 c -0.095,0.17535 -0.2075,0.27297 -0.3667,0.28517 l 0,-0.28517 z m 7.1293,0 0.163,0 0,0.20369 -0.163,0 0,-0.20369 z m -1.5073,0.0407 0.2852,0.0815 -0.2852,0 0,-0.0815 z m 4.7257,0.0815 0.3259,0.61109 -0.1222,0.40738 -0.4481,-0.12221 0.2444,-0.89626 z m 1.0185,0.28517 0.2037,0.0407 c -0.079,0.2957 0.1602,0.56117 0.6518,0.69256 l -0.2445,0.89626 c -0.1373,-0.16028 -0.2847,-0.28993 -0.4481,-0.40739 l 0.041,-0.20369 -0.4481,-0.12222 0.2444,-0.89626 z m -5.8664,0.0407 0.1222,0 0.082,0.0407 -0.1222,0.44813 -0.163,-0.0815 0.082,-0.40739 z m 3.3813,0 0.5703,0 -0.082,0.2037 -0.2444,0 c -0.09,-0.0653 -0.1747,-0.12663 -0.2444,-0.2037 z m -7.4145,0.12222 c -0.014,0.0405 -0.029,0.0791 -0.041,0.12222 l -0.1222,-0.0407 0.1629,-0.0815 z m -15.603,0.16296 0.082,0.16295 0.3259,2.9332 0.4074,-0.12222 -0.1222,-0.36665 0.6111,0.24444 c -0.4434,0.11851 -0.6365,0.41476 -0.5296,0.81477 l 0.2444,0.12222 -0.2444,0.7333 0.041,0.20369 0.4481,-0.12221 -0.1222,-0.44813 0.2037,-0.0407 0.1222,0.44813 -0.3666,1.14069 -0.3667,-0.0815 c -0.056,0.071 -0.068,0.13431 -0.1222,0.20369 l -0.4481,-1.58881 0.041,-1.09995 -0.3259,-0.0815 0.2037,-0.28517 -0.041,-0.24443 -0.4889,0.12221 -0.082,-0.16295 0,-0.0815 0,-0.16296 c 0.3324,-0.11704 0.5134,-0.41156 0.4481,-0.93699 l -0.4481,-0.77404 -0.041,-0.16295 0.5703,-0.36665 z m 31.1653,0 0.5296,0.12221 -0.2037,0.69256 -0.5296,-0.12221 0.2037,-0.69256 z m -28.9246,0.28517 -0.4074,0.0815 0.041,0.20369 0.4074,-0.12222 -0.041,-0.16295 z m 4.7257,0 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 8.5144,0.0407 0.2037,0.0815 -0.2444,0 0.041,-0.0815 z m 16.9066,0 0.5296,0.12221 -0.1222,0.48887 0.4481,0.12222 0.163,-0.69256 0.4481,0.57034 -0.5703,0.81478 -0.163,1.87398 -0.4481,0.52961 -0.2444,-0.0407 c 0.5137,-1.92153 0.4109,-2.92097 -0.2445,-3.09615 l 0.2037,-0.69256 z m -20.0435,0.0815 0.2037,0 -0.1222,0.44813 -0.163,0 0,-0.20369 0.082,-0.24444 z m 1.7925,0 0.2037,0 c 0.1368,0.16132 0.1866,0.38537 0.163,0.65183 l -0.1222,0 -0.2445,-0.65183 z m -2.5665,0.12222 0.2037,0.36665 -0.2852,-0.0815 0.082,-0.28517 z m 12.5475,0.16296 0.2445,0.0815 0.2851,0.2037 -0.1629,0.24443 c -0.1007,-0.099 -0.2134,-0.17918 -0.3259,-0.24443 l -0.041,-0.28517 z m -7.17,0.16295 0.2852,0 c 0,0.0716 0.024,0.14662 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.7333,0.0815 0.4074,0.12222 -0.3259,0 -0.082,-0.12222 z m -6.7219,0.12222 0.2037,0.0815 -0.082,1.22217 -0.082,0.20369 -0.2037,-0.0815 0.041,-0.48887 0.2037,0 0,-0.65182 -0.082,-0.28517 z m 14.6252,0.0407 0.326,0.0815 -0.163,0.65182 -0.2037,-0.0815 -0.041,-0.52961 0.082,-0.12222 z m -15.3585,0.0407 0,0.2037 -0.1222,0 0.1222,-0.2037 z m -1.4666,0.16296 0.1222,0 0.1222,0.16295 0.082,0.28518 -0.3259,-0.40739 0,-0.0407 z m 4.522,0.0407 0.2037,0 -0.082,0.20369 -0.163,0 0.041,-0.20369 z m -5.2553,0.16295 -0.041,0.24444 c -0.1412,0.67657 -0.1364,1.03083 0.1222,1.09995 l -0.2444,0.20369 -0.082,0.16296 -0.041,0.24443 -0.1222,0.0407 -0.163,-0.57035 0.4481,-0.0815 c -0.2059,-0.77059 -0.1474,-1.24298 0.1223,-1.34439 z m 1.874,0 0.041,0.12222 0.082,-0.0815 0.1629,0.65182 0,0.12222 -0.4888,0.7333 0.2851,0.0815 -0.3259,0.12221 -0.082,0.24444 0.2445,0.28517 -0.082,0.16296 -0.4074,0.57034 0.041,0.85552 -0.6518,1.30364 0.2444,0.28517 -0.4889,-0.16295 0.3667,-1.34439 -1.1815,0.7333 0.2445,0.28518 -0.8555,0.44812 -0.082,1.01847 -0.4074,0.69256 c 0.08,-0.49941 0.011,-0.79803 -0.2037,-0.85551 l 0.2851,-0.16296 0.041,-0.20369 0.2037,-1.30364 c 0.1375,-0.1299 0.2765,-0.27149 0.4074,-0.40739 l 0.4482,0.32591 c -0.053,-0.21157 -0.1577,-0.37537 -0.2445,-0.52961 0.051,-0.0555 0.1128,-0.10648 0.163,-0.16295 l 0.2444,0.0407 0.082,-0.36665 0.3667,-0.16296 -0.163,-0.16296 c 0.072,-0.0919 0.134,-0.19121 0.2037,-0.28517 l 0.7333,0.0407 0.163,-0.61108 -0.4074,-0.12222 c 0.071,-0.1075 0.135,-0.2161 0.2037,-0.32591 l 0.2851,0.0815 0.2852,-1.05921 c 0.1084,-0.19992 0.2227,-0.4049 0.3259,-0.61108 l -0.1222,-0.16296 0.041,-0.12222 z m 11.7328,0.0407 0.2037,0.40739 0,0.0407 -0.4889,0 c 0.012,-0.0714 0.03,-0.13545 0.041,-0.20369 l 0.2444,-0.24444 z m -22.162,0.0407 0.082,0.28517 -0.082,0 0,-0.28517 z m 30.432,0.2037 0.4888,0.12221 -0.4074,0.937 c -0.091,-0.13612 -0.2088,-0.26481 -0.3666,-0.36665 l 0.2852,-0.69256 z m -10.8773,0.16295 0.2037,0.0407 -0.2037,0 0,-0.0407 z m 0.9777,0.0407 0.4074,0.12222 -0.041,0.16295 -0.2037,0.0407 -0.1629,-0.28517 c 0.01,-0.003 -0.01,-0.0375 0,-0.0407 z m -8.3922,0.32591 0.4074,0.0815 -0.163,0.65182 -0.2851,-0.57034 0.041,-0.16296 z m 23.9137,0.0407 c 0.452,0.27924 0.6049,0.76826 0.4074,1.50734 l -0.5296,1.05921 c -0.1997,1.12234 -0.2914,1.89101 -0.2852,2.40359 l -0.1629,-0.0407 0.041,-0.77404 0.1222,-0.48886 -0.3666,-0.77404 0.8962,-2.11842 -0.1222,-0.77404 z m -21.836,0.12222 0.2444,0 0,0.20369 -0.2444,0 0,-0.20369 z m 12.0994,0 0.041,0 -0.1629,0.57034 c -0.02,0.0768 -0.028,0.1306 -0.041,0.20369 l -0.041,0 0.2037,-0.77403 z m -19.962,0.0407 0.2037,0.0407 0.1222,0.24444 -0.3666,-0.12222 0.041,-0.16295 z m -4.1146,0.20369 0.041,0.20369 -0.2852,0.52961 -0.041,-0.16296 0.2852,-0.57034 z m 3.6257,0 c 0.1218,0.0561 0.2252,0.11426 0.4074,0.16295 l -0.082,0.36665 -0.1629,-0.24443 -0.082,-0.0407 -0.082,-0.24443 z m 31.1245,0.0815 0.2445,0.0815 -0.1223,0.48887 -0.2444,-0.0815 0.1222,-0.48886 z m -25.4618,0.0815 c 0.1306,0.006 0.286,0.0201 0.4482,0.0407 l -0.1223,0.36665 c -0.2956,-0.079 -0.5499,0.15923 -0.6925,0.69256 l -0.4481,-0.77403 c 0.047,-0.17471 0.2132,-0.25604 0.4888,-0.28518 l 0.3667,0 -0.041,-0.0407 z m 14.0142,0 0.082,0 0.1222,0.0407 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.24444 z m -8.1478,0.0407 0.2852,0 -0.1222,0.52961 -0.2445,-0.0815 c 0.037,-0.15395 0.063,-0.31014 0.082,-0.44813 z m 0.8555,0 0.5704,0 0,0.0815 -0.3667,0.57035 0.1223,0.16295 -0.6111,-0.16295 c 0.107,-0.16059 0.1904,-0.4143 0.2851,-0.65183 z m 1.0593,0 0.2444,0 -0.041,0.0815 -0.2037,-0.0407 0,-0.0407 z m 2.2406,0 0.4889,0 -0.1223,0.36665 -0.2037,0.0407 0,0.44813 0,0.0407 -0.082,0.16295 0.041,0.44813 -0.1629,0.0407 c -0.1809,-0.20535 -0.2427,-0.4948 -0.2037,-0.85552 0,-0.0259 0,-0.0547 0,-0.0815 0.012,-0.0827 0.017,-0.15377 0.041,-0.24444 l 0.2037,-0.36665 z m 0.8555,0 0.7333,0 0.3259,0 -0.041,0.2037 -0.2444,0 0,0.48886 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.28517 -0.4889,0.12222 -0.041,-0.52961 0.2444,-0.0407 0,-0.48886 -0.2851,0.0407 -0.041,-0.24444 z m -7.6996,0.0815 0,0.77404 c -0.2653,-0.0831 -0.4074,-0.28894 -0.4074,-0.65182 0.1826,2e-5 0.2999,-0.0425 0.4074,-0.12222 z m 5.5404,0 0.4074,0.12222 -0.082,0.36665 -0.4481,-0.12222 0,-0.0407 0.163,-0.20369 -0.082,0 0.041,-0.12222 z m 11.9365,0 0.1222,0.65182 c -0.026,-0.0119 -0.051,-0.0326 -0.082,-0.0407 l -0.3259,0.0815 -0.041,0.24444 0,0.28517 -0.041,0.0815 -0.2037,-0.0407 0.041,-0.2037 0.2445,-0.36665 0.1629,-0.28517 -0.4481,-0.12222 0.5703,-0.28517 z m -18.8213,0.0815 c 0.092,0.0158 0.1761,0.0407 0.2851,0.0407 l 0,0.65182 -0.2444,-0.0815 -0.041,0.12222 -0.1222,0 0,0.44813 0,0.0815 0.4481,0.12222 0.041,-0.20369 0.163,0 -0.5296,0.77403 -0.2445,-0.32591 -0.082,0.36665 0.2445,0.0815 -0.041,0.0407 0.5296,0.12222 0.082,0.24443 -0.1222,0.20369 c -0.155,0.0762 -0.2588,0.22703 -0.2852,0.44813 l -0.041,0.12222 -0.163,0 c 0,-0.0298 0.01,-0.0522 0,-0.0815 l 0.082,-0.44813 -0.1629,-0.0407 c -0.084,-0.43313 -0.1524,-0.79239 -0.2445,-1.05921 l 0.4482,-1.62955 z m -7.2923,0.44813 c 0.2126,0.11967 0.3124,0.32245 0.2852,0.61108 l -0.2037,-0.12222 -0.082,-0.48886 z m 18.3325,0 0.041,0 c -0.01,0.0299 -0.034,0.0522 -0.041,0.0815 -0.03,0.13716 -0.06,0.28313 -0.082,0.40739 -0.092,0.0158 -0.1761,0.0407 -0.2852,0.0407 l 0,0.48887 -0.2444,0 0.082,-0.937 0.5296,0 0,-0.0815 z m -12.3846,0.0815 0.2852,0 0.1222,0.0407 0,0.40739 -0.2037,0 0,0.2037 0.082,0.36665 c -0.1679,-0.14918 -0.2705,-0.48918 -0.2852,-1.01848 z m 25.3396,0.0407 0.4481,0.12222 -0.1222,0.40739 -0.4481,-0.12222 0.1222,-0.40739 z m -33.9355,0.0407 c -0.044,0.0495 -0.077,0.10969 -0.1222,0.16296 l -0.041,-0.12222 0.1629,-0.0407 z m -0.8963,0.0407 0.4482,0.93699 -0.2037,0.0407 -0.081,-0.0407 c 0.011,-0.0447 0.028,-0.075 0.041,-0.12221 l -0.2445,-0.0815 -0.2037,-0.69256 0.2445,-0.0407 z m 17.5178,0 0.4073,0.12222 -0.082,0.24443 -0.3666,-0.24443 0.041,-0.12222 z m 0.7332,0 0.2037,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.1222,-0.44813 z m 7.1294,0.0815 0.082,0.12222 0.2851,0.0815 0.082,-0.0407 -0.2037,1.34439 -0.6925,2.52581 -0.2444,0.48886 -0.082,-0.36665 0.2036,-0.28517 -0.2036,-0.20369 -0.2445,0.0815 -0.1629,-0.28517 0.2851,-0.12221 0.2037,0.0407 0.041,-1.05921 0.2852,-0.97773 0.4074,0.0815 0.1222,-0.52961 0.041,0 0,-0.0815 c -0.1251,-0.22969 -0.1809,-0.50833 -0.2037,-0.81478 z m 3.0554,0.0407 0.2444,0.0815 -0.082,0.24443 0,0.0407 -0.163,0.5296 -0.2037,-0.0815 0.2037,-0.81477 z m -20.2472,0.20369 0.4073,0.12222 -0.1222,0.36665 -0.2851,-0.48887 z m -10.6329,0.32591 0.041,0.16296 -0.1222,0.0407 0,-0.16296 0.082,-0.0407 z m 5.5405,0.0407 0.2037,0.0815 -0.082,0.36665 0.2037,0.0407 -0.2445,0.12221 -0.1222,0.48887 -0.1629,-0.61108 0.2037,-0.48887 z m 27.4172,0 0.3667,0.0815 c -0.05,0.18576 -0.024,0.33527 0,0.44813 l -0.3259,-0.0815 c 0.053,-0.20003 0.019,-0.33531 -0.041,-0.44813 z m -3.9516,0.0815 0.041,0 c -0.023,0.12023 -0.051,0.23874 -0.082,0.36665 l -0.041,0 0.082,-0.36665 z m -17.314,0.0407 0.2037,0.0407 -0.2445,0.81477 -0.2037,-0.0407 0.2445,-0.81478 z m 14.7474,0.0407 c 0.1068,0.0985 0.258,0.168 0.4074,0.24443 l -0.1629,0.32591 -0.163,-0.0407 -0.041,-0.0407 c -0.048,-0.0401 -0.1096,-0.0903 -0.1629,-0.12221 l 0.1222,-0.36665 z m -21.9175,0.16295 0.082,0 c 0.01,0.0632 0,0.14342 0,0.2037 l -0.082,-0.2037 z m 32.4689,0 0.3259,0.52961 -0.4481,-0.12222 0.1222,-0.40739 z m -33.2429,0.36665 0.041,0.12222 -0.163,-0.0407 0,-0.0407 0.1222,-0.0407 z m 6.7626,0.16296 0.2037,0.0815 -0.7333,2.81098 -0.2037,-0.0815 0.7333,-2.81098 z m 9.4515,0 -0.2037,0.81478 0,0.0815 c -0.07,0.01 -0.1708,0.0316 -0.2445,0.0407 l 0.2445,-0.89625 0.2037,-0.0407 z m 1.5888,0.16295 c 0,0.0512 0,0.10831 0,0.16296 -0.1404,0.17119 -0.5033,0.28724 -1.0185,0.40739 l 0.082,-0.24444 0.937,-0.32591 z m 8.5959,0.12222 c 0.1067,0.18437 0.2374,0.33745 0.3666,0.48887 l 0,0.12221 0.163,0.0407 c 0.068,0.0685 0.1301,0.14364 0.2037,0.2037 l -0.163,0.65182 -0.2037,-0.0407 c 0.071,-0.26674 -0.1676,-0.49256 -0.6111,-0.61108 l 0.2445,-0.85552 z m 1.0184,0.0407 0,0.12222 -0.082,-0.0815 0.082,-0.0407 z m 5.5813,0.0407 0.4481,0.12221 -0.041,0.2037 -0.4889,-0.12222 0.082,-0.20369 z m -24.1989,0.0407 0.1222,0.44812 0.2444,0.89626 -0.4481,0.7333 0.3259,-0.12222 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 -0.2037,-0.24443 -0.2444,-0.0815 -0.082,0.44813 -0.2445,-0.0407 0.6519,-2.40359 z m -1.2222,0.0815 0.2037,0.0815 -0.1222,0.52961 -0.2037,-0.0407 0.1222,-0.57035 z m 7.1293,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m 14.5438,0.0407 -0.082,0.24444 0.6926,0.16295 0.082,-0.20369 -0.6926,-0.2037 z m -28.6802,0.0815 c 0.026,-0.005 0.055,0.004 0.082,0 -0.1259,0.1796 -0.3023,0.32896 -0.5296,0.44813 l -0.041,-0.2037 c 0.1448,-0.11438 0.3062,-0.20677 0.4889,-0.24443 z m 13.3624,0.2037 c 0.1272,0.1138 0.2391,0.22321 0.2851,0.32591 l -0.2851,-0.0815 0,-0.24443 z m -12.955,0.20369 0.041,0 0.3259,0.12222 c 0.028,0.10641 0.051,0.19751 0.082,0.28517 l -0.2037,0.77404 -0.2037,-0.0407 c 0.1427,-0.53337 0.011,-0.85798 -0.2851,-0.937 l -0.2037,0.0815 0.041,-0.16295 0.3259,-0.0815 0.082,0 0,-0.0407 z m -2.5665,0.0407 0.082,0.24443 -0.1223,-0.0407 0.041,-0.20369 z m 13.4438,0 0.2037,0 c -0.015,0.10051 -0.023,0.21901 -0.041,0.32591 l -0.163,0.16295 0,-0.48886 z m 8.5552,0 0.3666,0 -0.041,0.16295 -0.4074,-0.12221 c 0.02,-0.0187 0.064,-0.0211 0.082,-0.0407 z m 1.0184,0 0.4074,0 0,0.20369 c -0.1951,4e-5 -0.3609,0.0365 -0.4889,0.0815 l 0.082,-0.28517 z m -19.4324,0.0815 0.1629,0.0407 -0.082,0.32591 -0.082,-0.36665 z m 13.8105,0.12221 0,0.52961 -0.041,0.0407 -0.041,0.16295 -0.2445,0 0.2037,-0.69256 0.1222,-0.0407 z m 0.8555,0 0.937,0 -0.041,0.16296 0,0.12221 -0.2445,0 -0.2851,-0.0407 -0.082,0.0407 -0.2852,0 c 0,0.0149 0,0.026 0,0.0407 l -0.082,-0.0407 0.082,-0.28517 z m 3.0554,0.16296 -0.082,0.36665 -0.3667,0 -0.1222,-0.12222 0.041,-0.16295 c 0.2044,-0.0207 0.3677,-0.0344 0.5296,-0.0815 z m 9.044,0 c 0.6945,0.36416 0.9331,1.0147 0.6926,1.91472 l -0.4889,-0.12221 -0.1629,0.5296 0.3666,0.57035 -0.8555,1.2629 0.2037,0.0407 -0.2444,0.12222 -0.082,0.28517 0.1629,1.30364 -0.5703,0.24444 0.2037,0.0407 -0.3667,0.57034 c -0.1386,0.96298 0.1611,1.5036 0.937,1.71103 l -0.2444,0.16296 -0.082,0.24443 0.082,0.61108 -1.3444,-2.03694 -0.2037,-0.0407 0.163,-0.61108 0.4481,0.0815 0.041,-0.16296 c -0.2956,-0.079 -0.5344,-0.51722 -0.6518,-1.2629 l 0.1629,-0.61109 0.2037,0.0407 -0.082,0.44813 0.6926,0.20369 0.082,-0.44812 -0.4074,-0.12222 0.2444,-0.81478 0.4074,0.12222 0.2037,-0.81478 -0.4074,-0.12221 0.082,-0.36665 0.4481,0.12221 0.082,-0.36665 -0.4073,-0.12221 0.1629,-0.61109 c 0.3695,0.0988 0.5984,-0.13822 0.8148,-0.65182 0.1069,-0.4 -0.01,-0.61477 -0.4481,-0.7333 l 0.1629,-0.61108 z m -24.5248,0.0407 0.4889,0.12221 -0.4074,0.57035 -0.2444,-0.0815 0.1629,-0.61108 z m 23.3027,0 c 0.1376,0.0728 0.2979,0.11503 0.4481,0.16295 l -0.1222,0.40739 -0.3259,-0.5296 0,-0.0407 z m -16.703,0.0815 0.6518,0 0.2037,0.24444 0.163,0 -0.163,0.61108 -0.611,0 -0.2445,-0.85552 z m 5.7035,0.2037 0.082,0 c -0.036,0.16125 -0.082,0.31655 -0.1222,0.44813 l -0.082,0 0.1222,-0.44813 z m 4.8886,0.0407 0,0.16295 -0.082,0.24444 -0.2037,0 0.041,-0.2037 0.2445,-0.20369 z m -7.7404,0.0815 0.2037,0.0407 -0.041,0.0815 -0.2037,0 0.041,-0.12221 z m -8.6366,0.0815 0.6518,0.36665 -0.2851,1.01847 -0.2037,-0.0815 -0.2445,-0.937 0.082,-0.36665 z m 20.899,0 0.4889,0.12222 0.3667,1.14069 -0.1223,0.44813 -0.2037,-0.0407 0.1223,-0.44813 -0.4482,-0.12222 -0.041,0.2037 0.2445,0.7333 -0.2445,0.12221 c -0.1069,0.40004 0.086,0.69627 0.5296,0.81478 l -0.5703,0.24443 0.082,-0.36665 -0.4074,-0.12221 -0.3259,2.9332 -0.082,0.16295 -0.5703,-0.32591 0.082,-0.20369 0.4073,-0.77404 c 0.069,-0.55307 -0.1193,-0.87896 -0.4888,-0.97774 l 0.1222,-0.36664 0.4889,0.12221 0.041,-0.24443 -0.2037,-0.28517 0.3259,-0.0815 -0.041,-1.09995 0.4481,-1.58882 z m -18.9843,0.0407 0.4074,0.12222 -0.041,0.20369 -0.4074,-0.12221 0.041,-0.2037 z m 11.2032,0 0.163,0 c 0.066,0.0585 0.1536,0.11741 0.2444,0.16296 l -0.041,0.12221 -0.082,0.28518 -0.2852,-0.52961 0,-0.0407 z m -19.962,0.0407 0.3259,0.48887 -0.2445,-0.24444 -0.2036,-0.0407 0.1222,-0.2037 z m 1.0999,0.0815 0.163,0.0407 0,0.16295 -0.163,0.65183 -0.2037,-0.0815 0.2037,-0.77404 z m 31.0838,0 c 0.044,0.10287 0.088,0.18377 0.1629,0.20369 l 0.2037,0.0407 0,0.44813 -1.711,6.35526 -0.4889,-0.12221 0.2852,-0.12222 0.041,-0.20369 0.6926,-3.46281 0.2851,-0.12221 0.041,-1.05922 0.4889,-1.95546 z m 1.0184,0 0.2037,0.0407 -0.2037,0.65182 -0.2036,-0.0815 0.1629,-0.57034 0.041,-0.0407 z m -15.6437,0.12222 0.041,0.44812 -0.1222,0.0407 -0.082,-0.32591 0.163,-0.16295 z m 12.792,0 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -9.5736,0.0407 c 0.1346,0.0336 0.3237,0.0613 0.4889,0.0815 l -0.1223,0.48887 -0.4481,-0.16296 0.082,-0.40739 z m -20.9805,0.32592 0.4888,0.12221 -0.082,0.2037 -0.1629,1.38512 c 0.01,-0.18442 -0.023,-0.3523 -0.082,-0.57035 l -0.2037,-0.81477 0.041,-0.32591 z m 3.2998,0.0407 0.4482,0.0815 c -0.1069,0.39999 -0.01,0.69501 0.2851,0.77404 l -0.041,0.20369 c -0.4433,-0.11854 -0.7027,-0.10371 -0.774,0.16296 l -0.2037,-0.0407 -0.082,-0.61108 0.3666,-0.57035 z m 16.8252,0.0407 0.2851,0 -0.082,0.24444 -0.2037,0 0,-0.24444 z m -13.7698,0.16296 0.2037,0.0407 -0.041,1.05921 -0.4074,-0.12222 0.2445,-0.97773 z m 20.125,0.20369 0.4482,0.16296 -0.041,0.16295 -0.4889,-0.12221 0.082,-0.2037 z m 3.0962,0 0.2037,0.0407 -0.4481,0.937 -0.2037,-0.0407 0.2037,-0.81478 0.2444,-0.12222 z m -19.5139,0.12222 0.937,0.0407 -0.1222,0.57034 -0.9778,0 0.163,-0.61108 z m 8.5959,0.16295 0.2037,0 0,0.0407 -0.2037,-0.0407 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3628,0 0.3259,0 0,0.2037 -0.3666,0 0,-0.12222 0.041,-0.0815 z m -19.5139,0.0407 0.3259,0.52961 -0.2852,0.12222 -0.2037,-0.0407 c 0.062,-0.23334 0.1327,-0.43446 0.163,-0.61109 z m -4.3183,0.16296 0.2037,0.0407 -0.1223,0.36665 -0.2036,-0.0407 0.1222,-0.36665 z m 32.3059,0 0.2037,0.0407 c -0.107,0.40001 -0.01,0.69504 0.2852,0.77404 l -1.4259,3.50354 0.2037,0.24443 -0.041,0.2037 -0.5296,0.89625 -0.2037,-0.0407 0.1629,-1.42586 0.2445,-0.12221 0.1222,-0.44813 0.6926,-3.42207 0.2851,-0.20369 z m -35.3613,0.12222 0.1222,0.85551 0.2037,0.12222 c -0.012,0.0966 -0.014,0.18349 -0.041,0.28517 l 0,0.0815 -0.041,-0.0815 -0.2037,0.0815 c 0.022,0.0838 0.035,0.13719 0.041,0.20369 l -0.3667,0.16296 c -0.01,-0.0436 -0.031,-0.0797 -0.041,-0.12222 l 0.1222,-0.0407 0.041,-0.20369 0.163,-1.34438 z m 9.4514,0.0407 0.6111,0.16296 -0.041,0.20369 -0.6926,0.0815 0.1222,-0.44813 z m -4.8072,0.24444 0.2037,0.0815 -0.163,0.5296 -0.2037,-0.0407 0.163,-0.57034 z m 28.9653,0 0.2037,0.0407 -0.2852,1.01847 -0.2037,-0.0815 0.2852,-0.97773 z m -20.4916,0.12221 0.3666,0.52961 -0.1629,0.61108 -0.2037,-0.32591 -0.4074,-0.12221 c -0.1069,0.40001 -0.4121,0.56665 -0.8555,0.44812 0.1069,-0.40002 0,-0.65551 -0.4482,-0.77404 l 0.041,-0.20369 0.4074,0.12222 0.163,0.24443 c 0.08,-0.29997 0.4464,-0.45431 1.0999,-0.52961 z m 10.8365,0.2037 0.1222,0 0,0.12222 -0.1222,-0.12222 z m 13.1179,0 0.8963,0.24443 -0.4481,1.75177 c -0.2956,-0.079 -0.3768,-0.54439 -0.163,-1.34438 l -0.4481,-0.0815 0.1629,-0.57034 z m -6.1515,0.0407 0.2851,0.5296 -0.041,0.2037 -0.2851,-0.57035 0.041,-0.16295 z m -28.558,0.0815 -0.2037,1.62955 -0.8148,0.24443 0.2445,-0.89625 c 0.449,-0.22295 0.7308,-0.54687 0.774,-0.97773 z m 0.6926,0 0.2444,0.0815 -0.082,0.36665 -0.2852,-0.0815 0.1223,-0.36665 z m 21.8767,0.0407 0.163,0.0407 0,0.24444 -0.4074,0 0.2444,-0.28518 z m -9.5329,0.0407 0.2037,0 0.163,0.24444 -0.2852,0 -0.082,0 0,-0.0407 0,-0.2037 z m -6.9663,0.24444 0.4889,0.12221 -0.082,0.24444 -0.5296,0.93699 -0.163,-0.24443 -0.2037,-0.0815 -0.5296,0.28517 0.041,0.65182 c -0.2956,-0.0791 -0.5041,0.0481 -0.6111,0.44813 l -0.1629,-0.24443 -0.2037,-0.0407 -0.2445,0.12222 0.2037,-1.62956 0.6111,0.16296 0.1222,-0.40739 c 0.7391,0.19754 1.1561,0.0741 1.2629,-0.32591 z m 2.8517,0.12221 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m -7.8626,0.0407 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m 6.6405,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2445,-0.0407 0.1222,-0.44813 z m -9.2885,0.12222 0.2037,0.0815 -0.2444,0.0815 0.041,-0.16295 z m -0.041,0.28517 0.163,0.12222 0,0.0407 -0.2037,-0.0407 0.041,-0.12222 z m 15.7252,0.0815 c 0,0.20653 -0.13,0.30826 -0.3259,0.36665 l -0.5296,0.0407 0,-0.16296 0,-0.0407 0.8555,-0.20369 z m 3.2591,0 c 0.013,0.005 0.029,-0.006 0.041,0 0.089,0.046 0.1749,0.11085 0.2037,0.20369 l -0.2444,0 0,-0.20369 z m 1.5481,0 0.4074,0 0.082,0.12221 -0.2037,0.81478 c -0.045,0.002 -0.075,0 -0.1222,0 l 0,0.2037 -0.2037,-0.2037 -0.4074,0 -0.163,-0.24443 0.1222,-0.44813 c 0.1893,0.0506 0.3495,-0.044 0.4889,-0.24443 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.0591 0,0.0815 -0.099,0.33787 -0.3274,0.59857 -0.6519,0.7333 l -0.1222,-0.0407 0.4482,-0.77404 z m 4.4405,0 -0.041,0.20369 -0.4889,0 0,-0.12222 c 0.2002,-0.0277 0.3723,-0.0507 0.5296,-0.0815 z m 8.8811,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m -26.847,0.0815 0.4074,0.12222 -0.1222,0.44813 -0.4074,-0.12222 0.1222,-0.44813 z m 9.7366,0.12222 0.163,0 -0.163,0.57035 0,-0.57035 z m -11.9772,0.16296 -0.082,0.36665 0.4074,0.12221 0.1222,-0.36665 -0.4481,-0.12221 z m 4.9702,0.0407 0.6925,0.20369 -0.1222,0.36665 0.4481,0.12222 0.163,-0.61109 0.3259,0.36665 c -0.3478,0.17232 -0.5887,0.44677 -0.7333,0.81478 -0.062,0.0265 -0.089,0.0462 -0.1222,0.0815 l -0.2037,-0.0407 c 0.1401,-0.44387 -0.02,-0.72709 -0.4074,-0.81478 l -0.2037,-0.0407 c 0.072,-0.11464 0.1184,-0.28147 0.163,-0.44812 z m 16.9066,0 0.4074,0.12221 -0.082,0.24444 -0.4074,-0.12222 0.082,-0.24443 z m -14.4216,0.20369 0.1222,0.0407 c -0.043,2.1e-4 -0.081,-0.002 -0.1222,0 l 0,-0.0407 z m -13.729,0.24443 0.4482,0.0815 -0.082,0.2037 -0.4074,-0.12222 0.041,-0.16296 z m 20.1658,0 0.1629,0.0815 -0.2037,0.0407 0.041,-0.12222 z m -10.4699,0.0407 0.1629,0.24444 0.2037,0.0407 c 0.1186,0.0317 0.2233,0.0419 0.3259,0.0407 -0.1473,0.0926 -0.295,0.12532 -0.4888,0.0815 l -0.2037,0.65182 c 0.3876,0.0877 0.6345,0.21898 0.774,0.44813 l -0.4889,0.24443 0.4074,0.0815 0.082,-0.28517 c 0.1221,0.22481 0.1522,0.50258 0.041,0.85552 l 0.6519,0.16295 -0.3667,1.09995 -0.6111,-0.12222 0,2.11842 -1.3444,1.14069 0.2037,0.32591 -1.7517,2.4036 0.4481,-0.12222 0.2444,0.0815 -0.1222,0.40739 -0.2852,-0.0407 -0.2851,-0.32591 -0.2852,-0.0407 -0.1222,0.48886 -0.2852,-0.0815 2.4851,-7.78113 0.2444,-0.0407 -0.2852,0.97774 0.6519,0.12221 0.4073,-1.30364 -0.4481,-0.0815 0.041,-0.12221 -0.2037,-0.0815 -0.2852,0 0.041,-0.12222 0.2852,-0.0407 0.082,-0.20369 -0.2444,-0.0815 0.1629,-0.57034 -0.2037,-0.28518 0.082,-0.20369 0.2852,-0.0815 z m 6.6811,0.0407 0.2037,0.0407 -0.041,0.12222 -0.1629,-0.16296 z m 7.8626,0 0.041,0.16296 -0.2851,-0.0815 0.2444,-0.0815 z m -20.0435,0.12222 0.4482,0.77404 -0.326,0.16295 -0.1629,-0.0407 0.041,-0.89625 z m -0.6925,0.0407 0.2037,0.0407 -0.1223,0.44812 -0.2037,-0.0407 0.1223,-0.44812 z m 19.8805,0.16295 -0.082,0.24444 -0.2037,-0.0407 0,-0.0815 0.2852,-0.12222 z m -1.3851,0.12222 0.082,0.12222 0,0.28517 -0.4481,-0.12222 0.1629,0 0.2037,-0.28517 z m 3.8702,0.12222 0.2444,0.0815 0,0.28517 0,0.65183 0,0.12221 -0.3259,0.12222 -0.4074,-0.0815 0.2852,-1.14069 0.041,0 c 0.064,-0.008 0.1028,-0.0322 0.163,-0.0407 z m -25.3803,0.12221 0.3666,0.48887 -0.4888,-0.12222 0.1222,-0.36665 z m 35.4021,0.0407 0.2037,0.0407 -0.1223,0.36665 -0.2037,-0.0407 0.1223,-0.36665 z m -11.4477,0.12222 -0.041,0.20369 -0.774,0.0815 -0.2037,-0.0815 0,-0.0407 1.0185,-0.16295 z m 6.4368,0 -0.041,0.20369 0.4074,0.0815 0.041,-0.16296 -0.4074,-0.12221 z m -27.1728,0.24443 0,0.20369 -0.4074,0.2037 0.3259,0.32591 -0.1222,0.0815 -0.2852,-0.0815 0.082,-0.32591 -0.1222,-0.0407 0,-0.0407 0.5296,-0.32591 z m 3.1369,0 0.3666,0.0815 -0.2444,0.69256 -0.3259,-0.0815 0.2037,-0.69256 z m 8.3107,0 0.4074,0 0,0.0407 -0.4074,0 0,-0.0407 z m -13.6068,0.0815 0.2037,0.0407 -0.3667,1.34438 c -0.019,-0.29822 -0.091,-0.48679 -0.2444,-0.57034 l 0.041,-0.32592 0.3667,-0.48886 z m 10.3069,0.0815 0.2445,0.0815 -0.1222,0.44813 -0.2852,-0.0407 0.1629,-0.48886 z m 2.1185,0.0407 0.2444,0.0407 -0.082,0.24444 0.041,0.16295 c -0.01,0.1969 0.032,0.3372 0.1222,0.44813 l 0,0.0815 -0.1629,0 -0.4074,0.44812 -0.2037,0 0.2444,-0.85551 0.163,-0.28517 -0.041,-0.0407 0.082,-0.24444 z m 1.3851,0.0407 0.2444,0.28518 0,0.28517 c -0.1625,-0.11746 -0.2809,-0.25347 -0.4074,-0.36665 l 0.163,-0.2037 z m -7.6997,0.2037 0.2852,0.0407 -0.163,0.48886 -0.2444,-0.0815 0.1222,-0.44813 z m 13.9735,0.0815 0.2037,0.0407 0.3259,0.48887 -0.082,0.24443 -0.2037,-0.0815 -0.082,-0.0815 0,-0.16296 -0.2037,0 c 0.013,-0.15533 0.042,-0.32188 0.041,-0.44812 z m -16.54,0.0815 -0.1222,0.36665 -0.041,1.42586 -0.6519,0.81478 0.3667,0.0815 -0.4481,0.12222 -0.082,0.24443 0.2851,0.32591 -0.041,0.20369 -0.5703,0.61109 0.082,0.97773 -0.8555,1.42586 0.2852,0.28517 -0.6111,-0.12221 0.4481,-1.54808 -1.5073,0.85551 0.2851,0.28518 -1.0184,0.44812 c -0.1112,-0.21926 -0.218,-0.41747 -0.326,-0.65182 -0.01,-0.0107 0,-0.03 0,-0.0407 l 0.1223,-0.77404 0.2851,0.0815 0.6926,0.44813 c -0.2006,-0.67951 -0.5592,-1.09062 -1.1407,-1.22217 l 0.2037,-0.69256 c 0.015,-0.0461 0.027,-0.077 0.041,-0.12221 l 0.1222,-0.0407 0.041,-0.2037 -0.081,-0.0407 c 0.068,-0.22572 0.108,-0.44975 0.163,-0.65182 l 0.1629,-0.12221 0.041,-0.2037 -0.041,-0.12221 c 0.059,-0.23984 0.045,-0.41042 0.082,-0.61109 0.2166,-0.0412 0.4501,-0.15496 0.6926,-0.36665 -0.087,0.52224 -0.036,0.8328 0.2444,0.89626 l -0.3259,0.20369 -0.041,0.0815 c -0.1805,0.11243 -0.3751,0.24349 -0.5296,0.36665 l -0.041,0.24443 0.4074,0.12222 -0.3259,1.67029 0.5703,0.12222 0.1222,-0.40739 0.4482,-0.20369 -0.2852,-0.28518 -0.2852,-0.0815 0.082,-0.2037 1.5074,0.12222 0.2037,-0.69256 -0.5296,-0.12222 0.1222,-0.40739 0.5703,0.12222 0.3667,-1.14069 0.2444,-0.16295 -0.2037,-0.0407 0.4889,-1.54808 0.3259,-0.12222 z m -6.1108,0.0407 0.2444,0.0815 -0.1222,0.36665 -0.2037,-0.0407 0.082,-0.40739 z m 24.0359,0 0.1629,0.24444 0.2037,0.0815 0.3259,-0.12221 -0.041,0.16295 c -0.3961,0.0368 -0.7256,0.11789 -0.9777,0.2037 l -0.041,0 -0.1629,-0.0407 0.2851,-0.44813 0.2445,-0.0815 z m -12.018,0.0815 0.6111,0.12222 -0.1222,0.40739 -0.4889,-0.52961 z m 3.9517,0.12222 0.3259,0.0815 -0.041,0.16296 -0.2852,0.0815 0,-0.0407 0,-0.28517 z m 4.8072,0.0407 0.2037,0.0407 0,0.0407 -0.2037,0 c 0,-0.0303 0,-0.052 0,-0.0815 z m -13.8105,0.0815 0.2852,0.0815 -0.082,0.61108 -0.3667,0.12222 0.041,-0.40739 0.1222,-0.40739 z m 29.5764,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -7.4552,0.32591 0.4074,0.12222 -0.082,0.44813 -0.4074,-0.24444 0.082,-0.32591 z m -26.358,0.0407 0.4073,0.12222 -0.082,0.20369 -0.4073,-0.12221 0.082,-0.2037 z m 1.6702,0 0.2037,0.24443 -0.041,0.2037 -0.3259,-0.32591 0.163,-0.12222 z m 18.1696,0.0407 c 0.1619,0.0875 0.2757,0.18387 0.4889,0.28517 -0.019,0.0576 -0.041,0.13961 -0.041,0.2037 l -0.5297,0 c 0.032,-0.17322 0.06,-0.33608 0.082,-0.48887 z m -3.2591,0.20369 0.1629,0 0,0.0407 -0.1629,-0.0407 z m -12.1402,0.2037 -0.082,0.57034 -0.041,0.24444 -0.2852,-0.0815 0.041,-0.61108 0.3667,-0.12222 z m -3.2999,0.0815 0.2445,0.0407 -0.1222,0.48886 -0.2852,-0.0407 0.1629,-0.48886 z m 10.7144,0.0407 0.7333,0.16295 0,0.0815 -0.082,0.24443 -0.082,0.12222 0,0.16295 0,0.0407 -0.1223,0.28518 -0.082,0 -0.2036,-0.28518 c 0.017,-0.3233 -0.065,-0.59919 -0.163,-0.81477 z m 20.0027,0 c -0.1782,0.66667 0.096,1.38754 0.6926,2.11842 l 0.2444,-0.12222 0.163,0.24443 -0.041,0.16296 c -0.2464,-0.0659 -0.4957,0.0124 -0.6926,0.16295 -0.042,-0.0157 -0.074,-0.0298 -0.1222,-0.0407 l -0.3666,0.12221 c 0.1402,-0.44386 0.062,-0.72708 -0.3259,-0.81478 l -0.4074,0.12222 -0.041,0.0815 -0.2852,-0.2037 c 0.2165,-0.51357 0.4453,-0.70986 0.8148,-0.61108 l 0.1222,-0.40739 -0.6111,-0.16295 0.8555,-0.65182 z m 2.4036,0.0407 0.326,0.48887 -0.1223,0.44813 -0.2851,-0.57035 0.082,-0.36665 z m -17.9658,0.0815 0.2852,0.0815 -0.1222,0.40739 -0.2445,-0.32591 0.082,-0.16296 z m -14.2586,0.0407 0.2852,0.0407 -0.082,0.20369 c -0.1131,0.033 -0.218,0.0873 -0.3259,0.12222 l 0.1222,-0.36665 z m 15.7659,0 0.7333,0 -0.082,0.2037 -0.6925,0.0815 c 0.022,-0.10671 0.02,-0.18393 0.041,-0.28517 z m -3.9924,0.0815 0.041,0 0,0.12222 -0.041,0 0,-0.12222 z m 19.6769,0 0.2037,0.0407 -0.2037,0.81478 -0.2037,-0.0407 0.2037,-0.81478 z m -28.4357,0.16295 0.5703,0.12222 -0.2444,0.69256 -0.3667,-0.61108 0.041,-0.2037 z m 2.1591,0.0407 -0.082,1.14069 0.6111,0.16296 0.082,-1.18143 -0.6111,-0.12222 z m 19.5547,0.12222 0.1629,0.0407 -0.1222,0.44813 -0.2037,-0.0407 0,-0.0407 0.041,0 0.1223,-0.40739 z m -13.4438,0.0407 0.1222,0 0.2852,0.7333 -0.1223,0.16295 -0.1629,0 -0.2037,-0.61108 c 0.01,-0.0113 0,-0.0293 0,-0.0407 l 0,-0.0407 c 0.026,-0.0655 0.056,-0.13405 0.082,-0.20369 z m 6.3145,0 0.4074,0 -0.082,0.48887 -0.3259,0 0,-0.48887 z m 4.0331,0 0.2445,0.0407 -0.041,0.16295 -0.2445,-0.0815 0.041,-0.12222 z m -25.7062,0.0815 0.082,0.0407 -0.041,0.20369 -0.082,-0.0407 0.041,-0.20369 z m 38.1723,0.0815 -0.041,0.16296 0.041,0.0407 0,-0.2037 z m -21.5508,0.0407 0.082,0 0,0.32591 -0.2037,-0.0407 0.1222,-0.28518 z m -10.918,0.24444 c 0.2732,-0.0456 0.6794,-0.0134 1.1814,0.0407 l -0.1222,0.40738 c -0.3876,-0.0877 -0.7501,0.1822 -0.937,0.77404 l -0.5704,-0.89625 c 0.053,-0.16645 0.1749,-0.28029 0.4482,-0.32591 z m 14.0956,0.0407 0.3259,0 -0.1222,0.20369 -0.2037,0 0,-0.20369 z m 0.774,0 0.082,0 0,0.20369 -0.041,0 -0.041,-0.20369 z m 15.1549,0.0407 0.4889,0.12222 -0.2852,1.01847 -0.3667,-0.48886 0.163,-0.65183 z m -17.9658,0.0407 0.2444,0.0407 -0.2852,0.0815 0.041,-0.12222 z m 10.8365,0 0.2037,0.0407 -0.041,0.12222 -0.2444,0.12222 0,0.0815 -0.041,0 0.041,-0.0815 0.082,-0.28518 z m 9.5736,0.12222 -0.1222,0.0815 -0.082,0.16295 0.2037,0.24444 0,-0.48887 z m -13.8104,0.0815 0.4073,0.0815 -0.3259,0.44812 -0.3259,-0.0815 -0.041,-0.16295 0.2852,-0.28517 z m -10.4292,0.0407 0.1222,0.0815 0,0.24444 -0.1629,-0.0407 c 0.032,-0.10244 0.017,-0.18859 0.041,-0.28517 z m 13.8512,0.0407 0.6111,0.5296 0.041,0.0407 -0.1222,0.61108 c -0.1738,-0.13018 -0.3351,-0.28385 -0.4889,-0.36665 -0.043,-0.24559 -0.071,-0.51516 -0.041,-0.81477 z m -8.5551,0.0407 0.3666,0 0,0.24444 -0.3666,0 0,-0.24444 z m -16.4585,0.0815 0.1629,0.0407 -0.1222,0.40739 -0.2852,-0.0815 0.082,-0.28517 0.163,-0.0815 z m 4.1961,0.2037 0.5296,0.12221 0,1.18143 c -0.3391,-0.0767 -0.521,-0.50905 -0.5296,-1.30364 z m 1.7925,0.16295 -0.2445,0.69256 0.6519,0.16296 0.2037,-0.69256 -0.6111,-0.16296 z m 3.0146,0.24443 c 0.537,0.1214 0.591,1.23746 0.163,3.29985 -0.149,0.24871 -0.3559,0.70204 -0.5703,1.14069 l -0.5704,-0.12222 -0.5296,-1.34438 c 0.3877,0.0877 0.5932,-0.0857 0.7333,-0.5296 l 0.082,-1.18143 0.2037,0.24443 0.6518,0.16296 -0.1629,-1.6703 z m 9.6959,0.0407 0.1222,0.12222 -0.2444,0.28517 -0.1222,0.44813 -0.1223,0 -0.2851,-0.0815 -0.041,-0.44813 0.082,-0.12221 0.2444,0.24443 0.3667,-0.44813 z m 5.3775,0 c 10e-5,0.30601 -0.1563,0.44816 -0.5703,0.44813 l 0,0.2037 0.4074,0 -0.3667,0.65182 -0.4074,-0.0815 0.082,-0.0815 0,-0.28517 -0.041,-0.0407 0.4074,-0.77404 c 0.1595,-0.009 0.3126,-0.0407 0.4889,-0.0407 z m -13.4438,0.0407 0.2852,0.0407 -0.4482,1.26291 -0.082,0.32591 c 0.198,0.0814 0.3667,0.16669 0.5297,0.24443 l -0.2445,0.44813 -0.1222,-0.2037 -0.3259,0.16296 -0.2444,-0.0407 c 0.067,-0.14188 0.1305,-0.2725 0.2037,-0.48887 l -0.2037,0 0.1629,-0.48886 0.041,0.0407 0.2852,0 0.1629,-1.30365 z m -8.1885,0.0815 0.5703,0.12222 -0.1629,0.40739 -0.4074,-0.52961 z m 13.1586,0.0815 0.082,0.0815 -0.1629,-0.0407 0.082,-0.0407 z m 4.3591,0 0.3259,0 c -0.046,0.25427 -0.075,0.44865 -0.081,0.65182 l -0.6111,0 0.082,-0.57034 0.2852,-0.0815 z m -3.1369,0.0815 0.082,0.48886 c -0.2042,-0.10677 -0.3488,-0.23499 -0.4481,-0.40739 l 0.3666,-0.0815 z m -1.7518,0.0815 -0.1222,0.48887 -0.1629,0 0,-0.40739 0.2851,-0.0815 z m 18.0066,0.0407 0.2037,0.0407 -0.1629,0.65182 -0.2037,-0.0815 0.1629,-0.61109 z m 0.6518,0 0.4889,0.12222 -0.4074,1.4666 -0.1629,-0.0407 c -0.083,-0.0188 -0.171,0.0209 -0.2445,0.0407 l 0,-0.36665 0.3259,-1.22217 z m -21.2249,0.0407 0.1222,0 0,0.0407 -0.1222,-0.0407 z m 3.5035,0.12222 c 0.081,0.0361 0.1343,0.0796 0.2037,0.12221 l -0.2444,0.0407 0.041,-0.16295 z m -12.1809,0.0815 0.2852,0.0407 -0.2852,0.89626 -0.2852,-0.0407 0.2852,-0.89625 z m 1.7925,0.16295 -0.1222,0.44813 0.6111,0.12221 -0.4889,-0.57034 z m 19.5954,0 c 0.045,0.041 0.1551,0.11945 0.2037,0.16296 l -0.082,0.5296 -0.8963,2.85172 -0.5703,0.81478 0.3667,1.05921 -0.6519,-0.16296 -0.3666,2.07769 -0.5296,-0.12222 0,-0.97773 0.3259,-0.12222 0.082,-0.20369 0.1629,-1.4666 0.4889,-0.57035 -0.1222,-0.12221 c 0.028,-0.0546 0.041,-0.1272 0.041,-0.2037 l 0.2037,-0.12221 -0.4074,-0.57035 0.3666,-0.12222 0.2445,0.0407 0.082,-1.14068 0.3666,-1.14069 0.5296,0.12221 0.163,-0.61108 z m 1.2629,0.0815 0.1222,0.16295 -0.1629,-0.0407 0.041,-0.12222 z m 1.8333,0.12222 0.082,1.62955 0.4888,0.12222 0.2037,-0.2037 -0.2444,0.81478 c -0.1147,-0.18977 -0.1569,-0.28133 -0.2852,-0.48887 l -0.2037,0.0815 c -0.022,-0.0177 -0.055,-0.0241 -0.082,-0.0407 l -0.4074,-0.65182 0.4482,-1.2629 z m 0.5296,0 0.3666,0.0815 0,0.0815 -0.2444,0.36665 -0.2444,-0.0815 0.1222,-0.44812 z m 3.7887,0.16295 0.2037,0.0407 -0.1222,0.44813 -0.2037,-0.0815 0.1222,-0.40739 z m 1.7925,0.24443 0.2037,0.0815 0,1.05921 0,0.0407 c -0.05,0.0364 -0.1167,0.0642 -0.163,0.12222 l -0.3666,-0.0815 0.3259,-1.22217 z m -32.1022,0.0407 0.2444,0.0815 -0.9777,3.09615 -0.2445,-0.0407 0.9778,-3.1369 z m 29.5764,0.16296 0.082,0.0407 -0.163,0.61108 -0.2037,-0.0407 0.1223,-0.44813 0.1629,-0.16295 z m -14.0142,0.16295 0.2037,0 0,0.48887 -0.2037,0 0,-0.48887 z m 11.6921,0.0815 0.2037,0.0815 0.041,0.24443 -0.2852,-0.20369 0.041,-0.12222 z m -24.2804,0.0815 -0.1629,0.44813 0.611,0.16295 0.163,-0.48886 -0.6111,-0.12222 z m 27.1321,0.0407 0.2037,0.0407 0.041,0.69256 -0.4074,-0.12222 0.163,-0.61108 z m -29.0468,0.0407 0.2852,0.0407 -0.2037,0.65182 -0.2445,-0.0815 0.163,-0.61108 z m 31.5726,0.20369 0.4074,0.12222 -0.082,1.05921 -0.082,0.32591 -0.2444,-0.0815 0.082,-1.14069 c -0.055,-0.0125 -0.1121,-0.005 -0.163,0 l 0.082,-0.28517 z m -19.5547,0.24443 0.041,0 0,0.44813 -0.2036,0 0.1629,-0.44813 z m -5.5404,0.0407 0.6925,0.16296 -0.5703,1.18143 -0.3259,0.44812 -0.082,0 0.2037,-0.61108 0,-1.05921 c 0.035,-0.0284 0.048,-0.0738 0.082,-0.12222 z m 5.9478,0.2037 0.4074,0 0,0.48886 0.2445,0 0.041,-0.0407 -0.041,0.28517 -0.326,0.0815 -0.041,-0.12221 0.041,-0.2037 -0.3666,-0.0815 -0.163,0.0407 c 0.1409,-0.12157 0.2037,-0.25689 0.2037,-0.44813 z m 13.892,0 0.2444,0.0407 0.1222,0.7333 -0.082,0.24443 -0.4074,-0.61108 0.1223,-0.40739 z m -11.8143,0.20369 0.082,0 -0.2037,0.89626 -0.082,0.0407 -0.2037,-0.2037 c -0.1035,0 -0.1645,0.009 -0.2444,0.0407 l 0.2037,-0.65182 0.4481,-0.12222 z m 0.7741,0 0.4888,0 0.163,0.0407 -0.2445,0.77404 -0.5296,0.32591 -0.2444,0 0.082,-0.20369 0.163,0 0,-0.2037 0.2851,-0.0815 -0.2851,-0.28517 0.1222,-0.36665 z m 2.8517,0 0.6518,0 -0.082,0.2037 -0.6111,-0.12222 0.041,-0.0815 z m -22.5286,0.16296 0.6518,0.16295 -0.4889,0.61109 -0.3666,-0.0815 0.2037,-0.69256 z m 14.9511,0.12221 0.2037,0 0.3667,0.0815 -0.4074,0.2037 -0.041,0.20369 0.041,0.12222 -0.163,0.0407 -0.2036,0 0.2036,-0.65183 z m 20.0028,0.0407 0.2037,0.0407 -0.041,0.2037 -0.2037,-0.0407 0.041,-0.2037 z m -18.8213,0.16296 0.2444,0.0407 -0.041,0.20369 -0.2852,0.0407 0.082,-0.28517 z m 6.1923,0 0.2852,0.0407 -0.041,0.0815 -0.2445,-0.0815 0,-0.0407 z m 6.1516,0.20369 0.6518,0.12222 0.2851,0.85552 c 0.027,0.31399 0.036,0.61618 -0.041,0.93699 l -0.2036,-0.0815 0.1629,-0.44813 -0.5703,-0.12221 -0.041,0.20369 0.3259,0.81478 -0.3259,0.12222 c -0.1052,0.33293 -0.023,0.60721 0.2851,0.77403 -0.041,0.10991 -0.074,0.22001 -0.1222,0.32591 l -0.2444,0.0815 0.1222,-0.40739 -0.5703,-0.12221 -0.2445,1.75177 c -0.1707,0.17432 -0.3679,0.37121 -0.5703,0.5296 l 0.2037,-0.28517 c 0.09,-0.61375 -0.1266,-0.99034 -0.6111,-1.09995 l 0.1222,-0.40739 0.6111,0.12222 0.1222,-0.28517 -0.3259,-0.28517 0.4481,-0.12222 0,-1.18143 0.5296,-1.79251 z m -27.3766,0.0407 0.8148,0.40739 -0.3259,1.09995 -0.2852,-0.0815 -0.3259,-1.01847 0.1222,-0.40739 z m 2.4851,0.0407 0.5703,0.12222 -0.082,0.20369 -0.5296,-0.12222 0.041,-0.20369 z m 32.0208,0.12222 0.2851,0.0407 -0.2037,0.69256 -0.2851,-0.0407 0.2037,-0.69256 z m -23.3027,0.0407 0.2037,0 0,0.20369 -0.2444,-0.0407 0.041,-0.16295 z m 10.144,0 0,0.0815 -0.041,0 0.041,-0.0815 z m 11.8143,0.28517 -0.3667,1.34438 -0.041,0 0.4074,-1.34438 z m -11.4884,0.0815 0.2444,0.0815 -0.082,0.2037 -0.2851,0.12221 0.1222,-0.40738 z m 10.3069,0 0.041,0 c 0.027,0.19875 0.01,0.41806 -0.041,0.65182 l -0.1629,-0.0407 0.1629,-0.61108 z m 1.5889,0 0.1222,0.0407 0,0.2037 -0.163,-0.0407 0.041,-0.20369 z m -16.3363,0.12221 0.1629,0 -0.4481,0.44813 -0.2037,0 0.4889,-0.44813 z m 3.1369,0 0.2851,0 -0.082,0.44813 -0.3259,0 0.1222,-0.44813 z m -22.4471,0.2037 0.082,0.12221 -0.041,0.0815 c -0.011,-0.0687 -0.041,-0.1361 -0.041,-0.20369 z m 20.1657,0 0.5296,0 0.082,0.0815 -0.082,0.32592 -0.6111,-0.12222 0.082,-0.28517 z m -18.9028,0.0815 0.2037,0.0407 0,0.24444 c -0.066,-0.0966 -0.1384,-0.18401 -0.2037,-0.28518 z m 10.7143,0.2037 -0.082,0.28517 -0.041,0.0815 -0.041,0.12221 -0.163,-0.20369 0.3259,-0.28517 z m 19.7176,0 0.2037,0.0407 -0.082,0.16295 c -0.028,-0.0538 -0.092,-0.14667 -0.1222,-0.20369 z m -4.1554,0.0407 0.6111,0.12221 -0.082,0.24444 -0.6111,-0.16296 0.082,-0.20369 z m 7.9441,0 0.163,0.0407 -0.2852,0.97773 -0.1222,-0.0407 0.2444,-0.97773 z m -29.4542,0.0815 1.2222,0.0815 -0.2037,0.61109 -1.2629,0 0.2444,-0.69256 z m 10.918,0.0407 0.6518,0 0,0.2037 -0.1222,0 -0.6111,-0.16296 c 0.029,-0.0137 0.051,-0.0271 0.082,-0.0407 z m 14.2994,0.0815 0.2851,0.40739 -0.2851,0.44813 -0.2445,-0.0407 0.2445,-0.81478 z m 1.1406,0.32591 0.1223,0.61109 -0.2852,-0.0815 0.1629,-0.52961 z m 4.1554,0.0407 0.1222,0 c -0.064,0.20396 -0.057,0.39209 0,0.52961 l -0.041,0 -0.1222,0.40739 0.041,0.89625 -0.4074,0.48887 -0.2037,-0.0407 0.3259,-1.18143 -0.4481,-0.12222 0.2444,-0.81477 0.4074,0.12221 0.082,-0.28517 z m -17.2325,0.0407 0.3666,0 0,0.28517 -0.2444,0.0815 -0.1222,-0.0407 0,-0.32591 z m 0.774,0 0.4074,0 -0.163,0.57034 -0.2444,-0.0407 -0.082,-0.0815 0.082,0 0,-0.44813 z m 2.037,0 0.4073,0 -0.1222,0.69256 c -0.1459,0.15267 -0.3487,0.24965 -0.5703,0.32591 l -0.6111,-0.44813 c 0.097,0.029 0.2025,0.0644 0.3259,0.0815 0.414,0 0.5704,-0.19281 0.5704,-0.65182 z m -22.4472,0.0407 c 0.01,0.0179 0.071,0.0224 0.082,0.0407 l -0.082,0 0,-0.0407 z m 2.7703,0.0407 0.8148,0.20369 -0.082,0.2037 -0.8148,0.0815 c -0.02,-0.0217 -0.021,-0.0594 -0.041,-0.0815 l 0.1222,-0.40739 z m 21.4286,0 0.2852,0.16295 -0.082,0.2037 -0.2852,-0.0407 0.082,-0.32591 z m -2.3221,0.0815 0.2852,0.0815 -0.2852,0 0,-0.0815 z m -14.2993,0.36665 0.4888,0.5296 -0.2037,0.65182 -0.041,0 -0.2444,-0.32591 -0.5296,-0.12221 c -0.048,0.151 -0.1391,0.27939 -0.2444,0.36664 l -0.8555,-0.24443 c -0.047,-0.23181 -0.2222,-0.40088 -0.6111,-0.48886 l 0.041,-0.2037 0.5703,0.12222 0.2037,0.24443 c 0.1053,-0.3329 0.5689,-0.44605 1.4259,-0.5296 z m 3.1776,0.32591 0.3667,0.44812 -0.6519,-0.12221 0.2852,-0.32591 z m 21.6731,0 0.1222,0.20369 c -0.02,0.075 -0.087,0.16363 -0.1222,0.24443 l -0.1222,-0.0407 0.1222,-0.40739 z m -1.3444,0.12221 0.2037,0.36665 -0.041,0.2037 -0.2445,-0.36665 c 0.023,-0.0703 0.061,-0.13194 0.082,-0.2037 z m -25.9099,0.40739 0.2444,0.0407 -0.1222,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -1.5074,0.0815 0.2037,0.0407 -0.041,0.12221 c -0.061,-0.0422 -0.1022,-0.11766 -0.1629,-0.16295 z m -3.9109,0.0815 c 0.1984,0.0449 0.3656,0.10692 0.5296,0.12221 l 0.4889,0.61109 0,-0.48887 -0.1222,-0.12222 c 0.1736,-0.0109 0.3316,-0.0657 0.4481,-0.12221 0.1559,0.20013 0.3052,0.42706 0.4889,0.65182 l -0.326,0.44813 -0.1222,-0.12222 -0.082,-0.16296 -0.2852,-0.0407 -0.6518,0.28517 0.041,0.61108 c -0.1697,-0.1506 -0.3284,-0.32459 -0.4888,-0.48887 l 0.082,-0.20369 -0.3667,-0.0815 c -0.1552,-0.17217 -0.3026,-0.34479 -0.4481,-0.5296 l 0.6518,0.12221 0.163,-0.48886 z m 11.7328,0.24443 0.4481,0 0,0.48887 -0.4481,0 0,-0.48887 z m 11.6921,0 0.1629,0 0,0.12222 -0.1629,-0.12222 z m -4.4406,0.0407 0.163,0.28517 -0.041,0.16296 -0.9778,0 -0.2851,0 0,-0.0407 c 0.097,0.0219 0.1954,0.0613 0.2851,0.0407 0.1795,-0.0411 0.3597,-0.1964 0.4889,-0.40739 l 0.3667,-0.0407 z m -0.7333,0.0407 0,0.0407 -0.5296,0 0.5296,-0.0407 z m 2.1999,0.0407 c 0.1,0.0769 0.157,0.22678 0.163,0.36665 l -0.6926,0 0.163,-0.28518 0.3666,-0.0815 z m 17.1103,0.0407 0.163,0.0407 -0.041,0.16296 -0.163,-0.0815 0.041,-0.12221 z m -21.1434,0.0407 0.1222,0 c 0.1262,0.0632 0.2198,0.15471 0.2444,0.28518 l -0.3666,0 0,-0.28518 z m 11.692,0.44813 0.5296,0.12222 -0.082,0.24443 -0.5296,-0.12221 0.082,-0.24444 z m -13.0364,0.0815 0.1629,0.12222 -0.082,0.20369 -0.082,-0.0407 0,-0.28517 z m -4.1146,0.0815 0.2444,0.0407 0.1222,0.0815 0.163,0 -0.082,0.24444 -0.3667,0.20369 -0.1222,0.0407 0,-0.0815 0.1222,0.0407 0.041,-0.20369 -0.1222,-0.28517 0,-0.0815 z m 25.421,0.0407 0.1222,0.44812 -0.1222,0.28518 0,-0.7333 z m -16.1733,0.16295 -0.041,0.2037 -0.041,0.48886 -0.937,-0.12221 -0.082,-0.0815 0.774,-0.36665 -0.3666,-0.0815 0.6925,-0.0407 z m -3.5036,0.0407 -0.041,0.12222 -0.2851,-0.0815 0.3259,-0.0407 z m 4.7665,0 0.4481,0.0815 0,0.0407 0,0.20369 c -0.1904,-2e-5 -0.2989,0.0479 -0.4074,0.12222 l -0.041,-0.44813 z m -2.5666,0.0407 -0.1222,0.44813 -0.6111,-0.0815 -0.2444,-0.24443 -0.082,0.20369 -0.2852,-0.0407 0.082,-0.24443 0.082,0 0.2037,0.0815 -0.041,-0.0815 0.2852,0 0.7333,-0.0407 z m 3.7888,0 0.1222,0.0407 -0.1222,0 0,-0.0407 z m -15.2771,0.0407 0.1629,0.24443 0.2852,0 0.163,-0.12221 0.2851,0.28517 -0.3259,0.36665 c -0.7618,0.018 -1.1993,0.12476 -1.2629,0.32591 l -0.082,0.20369 0.2852,0.0815 0.5296,0 -0.2444,0.28517 c -0.3068,2e-5 -0.7246,-0.15749 -1.1815,-0.36665 l 0.1223,-0.32591 -0.3667,-0.0815 -0.3259,0.16296 c -0.3254,-0.18391 -0.6735,-0.42525 -1.0592,-0.69256 0.5299,0.11988 0.9408,0.0209 1.2222,-0.28517 0.452,0.0971 0.8964,0.16295 1.3851,0.16295 l 0.082,0 0.1629,0.0407 0.041,-0.16295 0.1222,-0.12222 z m 1.9147,0.0815 c 0.012,0.27818 0.1751,0.47168 0.6111,0.57034 l -0.041,0.12222 -0.163,0.0815 c -0.4016,-0.0334 -0.7787,-0.0703 -1.0999,-0.0815 0.1875,-0.17418 0.4654,-0.46552 0.6925,-0.69256 z m 25.1766,0 0.1222,0.0407 -0.2444,1.01847 -0.1222,-0.0407 0.2444,-1.01847 z m -10.9587,0.0815 0.2444,0.0815 -0.082,0.28517 -0.1629,0 0,-0.36665 z m -20.8176,0.12222 c 0.2965,0.34462 0.6324,0.71226 0.9777,1.09995 l -0.7333,-0.16296 c -0.2939,-0.25079 -0.5827,-0.52525 -0.8555,-0.81477 l 0.6111,-0.12222 z m -1.0592,0.24443 0.4481,0.7333 -0.3259,0 c -0.2313,-0.13531 -0.4738,-0.24993 -0.6925,-0.40739 0.047,-0.0675 0.091,-0.14685 0.1222,-0.24443 l 0.4481,-0.0815 z m 23.2212,0.16296 0.5703,0.12222 0,1.18142 -0.4481,0.12222 -0.5296,-0.12222 0.4074,-1.30364 z m 11.2846,0.12222 -0.2037,0.40738 0.082,-0.32591 0.1222,-0.0815 z m -16.2955,0.12221 0.2444,0 0,0.0815 -0.2444,-0.0407 0,-0.0407 z m -19.6769,0.12222 c 0.029,0.007 0.054,-0.005 0.082,0 l 0.082,0.0815 -0.3666,0 0.2037,-0.0815 z m 29.169,0.0407 -0.041,0.36665 -0.2852,-0.0815 c 0.1196,-0.0874 0.2149,-0.19178 0.326,-0.28517 z m 3.8295,0 0,0.0815 -0.041,0 0.041,-0.0815 z m -0.9777,0.0407 0.2036,0.0815 c -0.072,0.0648 -0.1696,0.10082 -0.2444,0.16296 -0.1919,0.15941 -0.368,0.33853 -0.5703,0.48887 -0.078,-0.0803 -0.1398,-0.20169 -0.2037,-0.32591 0.1572,-0.0786 0.2843,-0.16146 0.4481,-0.24444 l 0.3259,0.0815 0.041,-0.20369 c 0.01,-0.003 -0.01,-0.0377 0,-0.0407 z m -23.5471,0.20369 -1.1,0.52961 -0.1629,0 0,-0.2037 c 0.1087,2e-5 0.2966,-0.11103 0.5296,-0.28517 l 0.7333,-0.0407 z m -4.9294,0.12222 c 0.1297,0.14533 0.2301,0.25609 0.3666,0.40739 l 0,0.20369 c -0.066,-0.0425 -0.1389,-0.0782 -0.2037,-0.12222 l 0.041,-0.0815 -0.1629,-0.0407 c -0.08,-0.0559 -0.166,-0.10467 -0.2445,-0.16296 l 0.163,-0.0407 0.041,-0.16295 z m 10.0217,0.0815 0.3667,0.24443 -0.082,0.0815 -0.2037,0 c 0,-0.12072 -0.037,-0.22823 -0.082,-0.32591 z m -2.0369,0.32591 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 6.6404,0 0.4074,0 0,0.0815 -0.2444,0.12222 -0.163,0 0,-0.20369 z m -3.0961,0.12221 0.4074,0.0815 -0.4074,0 0,-0.0815 z m 5.8256,0 0.2445,0.0407 0.2444,0.28517 0.082,0 0,0.40739 c -0.3615,0.0312 -0.758,0.0611 -1.1407,0.0815 l 0.3259,-0.48887 c 0.079,-0.004 0.1557,0 0.2445,0 l 0,-0.32591 z m -6.4774,0.32591 0.6518,0 0,0.48887 -1.0185,0 0.3667,-0.48887 z m 8.1885,0.0407 0.2851,0.0815 -0.041,0.12222 c -0.1062,0.0146 -0.2175,0.0272 -0.3259,0.0407 l 0.082,-0.24444 z m 9.4107,0.0407 c -0.02,0.28762 -0.042,0.56161 0.041,0.77404 l -0.163,0.0815 -0.1222,0.40739 -0.3259,-0.44813 0.5703,-0.81478 z m -12.0588,0.0407 c 0.01,-0.004 0.03,0.004 0.041,0 l 0.041,0.0407 -0.082,0.24443 -0.2444,-0.0407 c 0.043,-0.0934 0.1038,-0.18419 0.2444,-0.24443 z m -8.6366,0.16296 0.6518,0 0,0.20369 -0.6518,0.20369 0,-0.40738 z m 1.0185,0 0.4888,0 0,0.20369 -0.4888,0 0,-0.20369 z m 3.585,0 0.3666,0 -0.3666,0.40738 -0.4889,0 0.4889,-0.40738 z m -15.1549,0.20369 0.041,0 0,0.20369 -0.4481,0 0,-0.0407 0.4074,-0.16296 z m 3.3406,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 4.9702,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 3.9109,0 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 18.0473,0.0407 0.082,0 0,0.0407 -0.082,-0.0407 z m -2.7295,0.0815 0.041,0 -0.1629,0.48886 -0.5296,-0.12221 0.041,-0.0815 c 0.1754,-0.0707 0.4149,-0.20083 0.611,-0.28517 z m 5.2961,0 c 0.072,0.0901 0.1611,0.14842 0.2444,0.24443 l 0,0.0407 -0.4074,-0.0815 c -0.029,-0.0236 -0.055,-0.0579 -0.082,-0.0815 l 0.2444,-0.12221 z m -32.6319,0.28517 0.6519,0 0,0.24443 -0.6519,0 0,-0.24443 z m 2.9332,0 0.3667,0 -0.3667,0.5296 0,-0.5296 z m -3.5442,0.24443 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 9.3292,0 0.611,0 1.0185,0.28517 1.2222,-0.28517 1.3036,0 0,0.48887 -5.1738,0 0,-0.2037 1.0185,-0.28517 z m 4.522,0 4.6035,0 -0.4482,0.48887 -0.2037,-0.2037 -1.0184,0.2037 -2.4851,0 -0.4481,-0.48887 z m 5.459,0 0.5703,0 0,0.28517 -0.5703,0 0,-0.28517 z m 15.3178,0 c -0.021,0.0666 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.16296 0.041,-0.0407 z m -30.5134,0.28517 1.0184,0 0,0.2037 -1.0184,0 0,-0.2037 z"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <g
+       inkscape:export-ydpi="112"
+       inkscape:export-xdpi="112"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       transform="translate(-1144.3833,-670.93683)"
+       id="g4280">
+      <text
+         inkscape:export-ydpi="112"
+         inkscape:export-xdpi="112"
+         inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD\png\splashscreen.png"
+         xml:space="preserve"
+         style="font-size:38.92898941px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold"
+         x="448.67789"
+         y="763.05591"
+         id="text3608"
+         sodipodi:linespacing="125%"><tspan
+           style="fill:#cccccc;fill-opacity:1"
+           sodipodi:role="line"
+           id="tspan3610"
+           x="448.67789"
+           y="763.05591">Obeo</tspan></text>
+      <text
+         inkscape:export-ydpi="112"
+         inkscape:export-xdpi="112"
+         inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD\png\splashscreen.png"
+         xml:space="preserve"
+         style="font-size:38.92898941px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:url(#linearGradient4287);fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold"
+         x="448.19492"
+         y="762.7049"
+         id="text3652"
+         sodipodi:linespacing="125%"><tspan
+           style="fill:url(#linearGradient4287);fill-opacity:1"
+           sodipodi:role="line"
+           id="tspan3654"
+           x="448.19492"
+           y="762.7049">Obeo</tspan></text>
+      <path
+         inkscape:export-ydpi="112"
+         inkscape:export-xdpi="112"
+         inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD\png\splashscreen.png"
+         style="fill:none;stroke:url(#linearGradient4289);stroke-width:0.15828319;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 448.01488,762.98588 102.49656,0"
+         id="path3656" />
+    </g>
+    <g
+       inkscape:export-ydpi="112"
+       inkscape:export-xdpi="112"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       transform="translate(-1138.3833,-672.93683)"
+       id="g4320">
+      <text
+         inkscape:export-ydpi="112"
+         inkscape:export-xdpi="112"
+         inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD\png\splashscreen.png"
+         xml:space="preserve"
+         style="font-size:47.73044586px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold"
+         x="488.36356"
+         y="809.74487"
+         id="text3612"
+         sodipodi:linespacing="125%"><tspan
+           style="fill:#cccccc;fill-opacity:1"
+           sodipodi:role="line"
+           id="tspan3614"
+           x="488.36356"
+           y="809.74487">Designer</tspan></text>
+      <text
+         inkscape:export-ydpi="112"
+         inkscape:export-xdpi="112"
+         inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD\png\splashscreen.png"
+         xml:space="preserve"
+         style="font-size:47.73044586px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:url(#linearGradient4329);fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold"
+         x="488.69382"
+         y="810.61804"
+         id="text3648"
+         sodipodi:linespacing="125%"><tspan
+           style="fill:url(#linearGradient4329);fill-opacity:1"
+           sodipodi:role="line"
+           id="tspan3650"
+           x="488.69382"
+           y="810.61804">Designer</tspan></text>
+      <path
+         inkscape:export-ydpi="112"
+         inkscape:export-xdpi="112"
+         inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD\png\splashscreen.png"
+         style="fill:none;stroke:url(#linearGradient4331);stroke-width:0.15258449;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 493.67614,765.27527 0,42.91111"
+         id="path3658" />
+      <path
+         inkscape:export-ydpi="112"
+         inkscape:export-xdpi="112"
+         inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD\png\splashscreen.png"
+         style="fill:none;stroke:url(#linearGradient4333-5);stroke-width:0.15907384;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 576.75064,784.03042 124.6101,0"
+         id="path3660" />
+      <path
+         inkscape:export-ydpi="112"
+         inkscape:export-xdpi="112"
+         inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD\png\splashscreen.png"
+         style="fill:none;stroke:url(#linearGradient4335);stroke-width:0.13852334;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 703.19034,780.29296 0,15.01249"
+         id="path3662" />
+    </g>
+    <rect
+       y="300.51923"
+       x="-879.34717"
+       height="17.866808"
+       width="457.90967"
+       id="rect3666"
+       style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <text
+       inkscape:export-ydpi="112"
+       inkscape:export-xdpi="112"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       sodipodi:linespacing="125%"
+       id="text3670"
+       y="210.88388"
+       x="-649.24847"
+       style="font-size:30.67200089px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#314d5b;fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold"
+       xml:space="preserve"><tspan
+         y="210.88388"
+         x="-649.24847"
+         id="tspan3672"
+         sodipodi:role="line">2</tspan></text>
+    <text
+       inkscape:export-ydpi="112"
+       inkscape:export-xdpi="112"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       id="text3674"
+       y="211.43802"
+       x="-627.83978"
+       style="font-size:30.67200089px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#314d5b;fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold"
+       xml:space="preserve"><tspan
+         y="211.43802"
+         x="-627.83978"
+         id="tspan3676"
+         sodipodi:role="line">.</tspan></text>
+    <text
+       inkscape:export-ydpi="112"
+       inkscape:export-xdpi="112"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       id="text3678"
+       y="211.30322"
+       x="-617.69684"
+       style="font-size:30.67200089px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#304d5c;fill-opacity:1;stroke:none;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold"
+       xml:space="preserve"><tspan
+         y="211.30322"
+         x="-617.69684"
+         id="tspan3680"
+         sodipodi:role="line">0</tspan></text>
+    <path
+       inkscape:export-ydpi="112"
+       inkscape:export-xdpi="112"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.84883722;fill:#916f6f;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+       d="m -501.64797,33.032758 -2.56654,0.488853 0,1.344371 0.57032,-0.611081 0.65187,0 0,0.203696 -1.22219,0.407385 0,2.077651 0.20372,0 -0.20372,0.285169 0,0.855507 c -0.12429,0.113389 -0.1888,0.189245 -0.28519,0.285164 l 0,0.488853 c 0.0956,-0.04621 0.18478,-0.0603 0.28519,-0.122206 l 0,0.733291 -0.28519,0.244427 0,8.555036 0.61115,2.24061 0.0814,0.570332 c -0.0282,0.0807 -0.0612,0.167769 -0.0814,0.244438 0.0662,0.0489 0.10789,0.108168 0.16288,0.162947 l 0,0.162958 -0.24441,-0.08151 c -0.0239,-0.006 -0.057,-0.0011 -0.0815,0 0.0359,-0.126646 0.062,-0.256916 0.12218,-0.366642 l -0.16295,-0.611075 -0.40736,0.0815 0,3.870133 c 0.0133,-0.0023 0.0268,0.0039 0.0409,0 l 0.20372,-0.04071 0.0409,-0.04071 0,0.855512 c -0.0897,0.261711 -0.19028,0.502083 -0.28513,0.692549 l 0,0.977718 0.24435,0.0815 -0.0409,0.162947 -0.20365,-0.08149 0,11.121565 0.16295,-1.181406 0.12225,0.04071 0,1.018465 0.20365,0 0.48891,0.529585 c -0.0998,0.0821 -0.18978,0.193407 -0.24449,0.36665 l -0.20365,-0.244427 -0.0815,0 -0.16294,-0.651808 0,0.570328 -0.0408,0 -0.24442,0.122217 0,0.896241 0.28519,-0.122216 0,0.3259 -0.12225,-0.04077 -0.12225,0.407387 0.2445,0.04071 0.3666,-0.122211 0,0.244428 -0.3666,0 0,0.855509 -0.28519,0.08149 0,0.20369 0.28519,-0.08149 0,0.08149 c 0.41399,4.5e-5 0.57032,-0.142148 0.57032,-0.448125 l -0.20372,-0.20369 0.52962,0 -0.12224,0.08151 -0.0815,0.244421 0.12217,0 0,0.0815 0.20379,0.244433 0,0.285165 -1.01846,0 0,0.244433 3.38121,0 c 0.23471,-0.638315 0.52695,-0.977722 0.937,-0.977722 l 0,-0.407374 -0.57033,0 -0.28519,0.203684 -0.16295,0 -0.24435,-0.325908 0.0814,-0.244425 -0.24436,0.0815 -0.65186,0 -0.3259,0.122217 0,-0.04071 -0.36666,-0.0815 -0.28513,0.203695 -0.44821,-0.203695 0,-0.244421 1.0593,0 0,-0.203684 -0.20378,-0.203709 0,-0.244428 0.48891,0.162954 -0.0815,0.203697 0.57033,0.122217 0.28519,-0.04071 0.61102,0.203684 -0.0815,0.244428 0.28519,0.0815 0.57033,-0.04071 0.65187,0.244438 0,0.20369 c -0.32196,6.5e-5 -0.81637,0.386511 -1.38514,1.181406 l 18.57669,0 c 0.0816,-0.0802 0.16349,-0.163031 0.24452,-0.244433 0.21202,0.07559 0.50392,0.164935 0.73327,0.244433 l 1.46661,0 -0.24452,-0.40738 1.14071,0.0815 0.20365,0.0815 -0.0412,0.162948 -0.52955,0.0815 0.73327,0 7.86255,0 0.0412,-0.162954 c 0.0614,0.03068 0.13555,0.0557 0.20365,0.08149 l -0.0412,0.0815 1.30369,0 0.36663,-0.244427 -0.0412,0.244427 2.56652,0 0.0815,-0.244427 0.24437,0.04071 -0.0815,0.203696 0.44824,0 0,-1.344371 -0.0815,0.244433 -0.24445,-0.04071 0.12226,-0.407386 0.20365,0.0815 0,-9.043902 -0.12226,-0.04071 0.12226,-0.570333 0,-1.711017 -0.28518,0.0815 -0.0412,0.203698 0.20365,0.325907 -0.61108,1.099931 -0.20372,-0.04071 0.93699,-3.503487 0,-1.5888 -0.28518,0.122216 -0.0412,1.059197 -0.65182,2.362811 -0.57028,0.285171 1.18137,-4.399728 0.36671,0.570333 0,-1.344366 -0.16299,-0.04071 0.16299,-0.570339 0,-1.833212 c -0.25969,-0.392088 -0.52386,-0.782771 -0.81481,-1.140677 l 0.81481,0.04071 0,-1.222156 -0.20372,0.855508 -0.24452,-0.0815 0.32597,-1.181412 0.12227,0.04071 0,-3.544233 -0.0815,0.285169 -0.44817,-0.122222 0.52955,-2.036908 0,-7.984709 -0.0412,0.122216 -0.81473,0 -0.65188,-0.366642 -0.81473,0 0.0412,-0.203689 -0.32598,-0.529602 0.0815,-0.285164 0.20371,0.04072 0.85546,0.774028 0.28518,-0.162958 0.0815,-0.285165 c -0.31623,-0.387557 -1.7549,-1.088803 -4.31824,-2.07765 l -1.09998,0 2.8109,1.181401 -0.12212,0.407386 0.28511,-0.162947 0.69253,0.203684 -0.48881,0.81477 -0.20372,-0.04071 -0.16299,-0.285163 -0.24431,-0.04072 -0.3667,0.122215 0.12218,-0.407385 0.36671,-0.162959 0,-0.04072 -0.24444,-0.285163 -0.24445,-0.08151 -0.28519,0.203701 -0.24444,-0.04071 -0.69247,-0.488864 -0.57043,0.366642 -1.54807,-1.262881 -1.83318,0 -0.0815,0.325906 -0.24444,-0.04071 0.0815,-0.285169 -3.2998,0 1.01844,1.54805 0.20366,0.04071 -0.16293,0.692554 -0.44816,-0.122211 -0.0815,0.203684 c 0.32764,0.0876 0.56241,0.558486 0.69255,1.385103 l -0.16293,0.692549 -0.24444,-0.0815 0.12219,-0.448117 -0.73327,-0.203695 -0.16292,0.448122 0.48882,0.122221 -0.24444,0.896239 -0.48883,-0.122211 -0.20372,0.936975 0.44817,0.122222 -0.12227,0.407374 -0.44808,-0.122211 -0.12226,0.407385 0.44816,0.12221 -0.16299,0.69255 c -0.4096,-0.109508 -0.69701,0.123207 -0.93699,0.692547 -0.0217,0.0836 -0.0383,0.175154 -0.0412,0.244437 l -0.24437,-0.285163 -0.20372,0.285163 c -0.008,-0.0895 -0.008,-0.188935 0,-0.285163 l 0.20372,0 0,-0.2037 -0.16299,-0.162948 c 0.0138,-0.071 0.0202,-0.129638 0.0412,-0.203695 l 0.52962,0.162959 0.16299,-0.651811 -0.40744,-0.611082 0.937,-1.385102 -0.20366,-0.04071 0.28511,-0.162947 0.0815,-0.285174 -0.20372,-1.466571 0.6518,-0.244438 -0.24444,-0.0815 0.44816,-0.611075 c 0.15368,-1.067492 -0.19902,-1.684757 -1.05924,-1.914693 l 0.28517,-0.162958 0.0815,-0.244427 -1.5888,0 0,0.08151 0.69254,0.162958 -0.93699,0.733285 c 0.0846,-0.316334 0.0484,-0.640167 -0.0404,-0.977712 l -1.58888,0 -0.20364,0.692549 -0.24438,-0.04072 0.16292,-0.651812 -0.93699,0 0.24445,0.488854 -0.0815,0.448121 -0.36671,-0.570332 0.0815,-0.366643 -0.44809,0 -0.85553,3.096106 c -0.0967,-0.04508 -0.17968,-0.07669 -0.28526,-0.122218 l -0.0412,0 -0.16292,-0.244425 0.28518,-0.122216 0.0815,-1.181408 0.36665,-1.425839 -0.48876,0 -0.61116,2.362819 -0.24437,0 0.61101,-2.362819 -2.60726,0 -0.0409,0.162948 0.44807,0.122222 -0.28511,1.05919 c -0.99876,-0.379435 -1.82209,-0.651766 -2.44431,-0.651811 -0.1476,0.374165 -0.4354,0.625016 -0.77404,0.774033 -0.0169,-0.069 -0.0219,-0.133694 -0.0409,-0.203702 l -0.0409,-0.203684 0.57032,-0.0815 0,-0.285163 c 7e-5,-0.200889 -0.25463,-0.366984 -0.77403,-0.488865 l -0.0409,-0.203684 -0.97769,0 c 0,0.01361 0,0.02711 0,0.04071 l 0,0.244427 c -0.27872,-0.137283 -0.62412,-0.216041 -1.01846,-0.28517 l -1.71104,0 0,0.162949 -0.24443,0.0815 -0.0815,-0.244427 -0.52962,0 0.0409,0.122205 -0.16296,0.162959 -0.0815,-0.285164 -2.7295,0 -0.20366,0.977712 -0.32589,0 0,-0.488858 c 0.0847,-0.176172 0.15528,-0.357469 0.20373,-0.488854 l -2.40361,0 z m 36.25727,12.832559 0,-0.936975 -0.0412,0.04071 -0.16291,0.611081 0.20372,0.285169 z m -34.34259,-12.751091 -0.28518,0.448127 -0.48885,0.0815 0.0815,-0.285162 0,-0.122222 0.69249,-0.122217 z m 13.48451,0.04072 0.44802,0.122222 -0.0412,0.244427 -0.44802,-0.122212 0.0412,-0.244437 z m -16.29547,0.366649 0,0.488863 -0.44807,0 0.44807,-0.488863 z m 7.82182,0 0.0815,0.04071 0.20365,0.896244 c -0.22246,-0.02039 -0.43723,-0.04548 -0.6111,-0.0815 l 0.20364,-0.651812 -0.0408,-0.162958 0.16295,-0.04071 z m 1.46661,0 0.40737,0.488863 -0.40737,0 0,-0.488863 z m -2.56656,0.162958 0.0815,0.285162 -0.12225,0.04072 c -0.071,-0.0791 -0.0815,-0.189546 -0.0815,-0.285162 l 0.12224,-0.04072 z m -6.15148,0.04072 0.44807,0 0,0.285163 -0.44807,0 0,-0.285163 z m 5.2145,0 0.20365,0 0,0.285163 -0.20365,0 0,-0.285163 z m -2.97393,0.285163 c 0,-0.005 0.038,0.005 0.0409,0 l 0,0.244427 -0.16294,0 c 0.0379,-0.0691 0.0876,-0.179476 0.12224,-0.244427 z m 13.03634,0 0.20364,0.0815 -0.16299,0.651813 -0.32586,-0.570344 0.28521,-0.162947 z m 11.81409,0.04072 0.44823,0.122212 -0.12226,0.488864 -0.48889,-0.122221 0.16292,-0.488855 z m -5.82559,0.162948 0.24445,0.04071 -0.16284,1.588799 -0.28525,0.162946 -0.12219,0.488865 -0.52963,2.525772 -0.65181,-0.651805 1.09991,-2.647994 -0.24438,-0.285169 0.0815,-0.203685 0.57028,-1.018465 z m 0.9778,0.04071 0.57028,0.122223 -0.28518,0.162947 -0.0815,0.203695 -0.77407,3.870138 -0.28511,0.162954 -0.0815,1.140665 -0.20365,0.774033 -0.57035,0 0.16299,-0.570333 c 0.24487,-0.0957 0.44809,-0.212887 0.44809,-0.366648 l -0.28518,-0.285164 1.38509,-5.21451 z m -17.72128,0.203701 0.24449,0 0.0409,0.162948 -0.0815,0.04071 -0.12218,0 -0.0815,-0.203689 z m 14.5436,0.122206 0.20371,0.04071 -0.0815,0.448126 -0.24445,-0.0815 0.12219,-0.407385 z m 12.62896,0.04071 0.20372,0.0815 -0.0815,0.407385 -0.24452,-0.0815 0.12226,-0.407385 z m -29.82051,0.04071 0.65179,0 0,0.2037 -0.65179,0 0,-0.2037 z m -2.0777,0.2037 1.05923,0 c -0.0288,0.09769 -0.0825,0.188673 -0.12224,0.285163 l -0.93699,0 0,-0.285163 z m 11.85491,0 0,0.52959 -0.48884,0 0.48884,-0.52959 z m 24.36162,0.162948 c -0.074,0.276386 0.14176,0.513072 0.57035,0.651811 l 0,-0.529596 -0.57035,-0.122215 z m -6.07004,0.325907 0.4481,0.122213 -0.36664,1.303625 -0.44803,-0.122211 0,-1.181414 0.36657,-0.122213 z m -17.06948,0.448121 0,0.488863 -0.20364,0 -1.67026,0.244427 c 0.0345,-0.186376 0.0745,-0.374899 0.0815,-0.570342 l 1.79251,-0.162948 z m 0.36669,0 0.65179,0.203684 0,0.285179 -0.85544,0 0.20365,-0.285179 0,-0.203684 z m 1.01845,0 0.0409,0 0.28519,0.448121 -0.0408,0.04071 -0.2852,0 0,-0.488863 z m 1.83328,0 -0.0815,0.325905 -0.28511,0.04071 0.12212,-0.325906 c 0.0735,-0.01 0.15966,-0.03568 0.24444,-0.04071 z m 10.26609,0 0.65181,0.366642 -0.0815,0.20369 -0.44809,0.855506 c -0.0763,0.613114 0.11995,0.990449 0.52956,1.099934 l -0.1222,0.407385 -0.52955,-0.122216 -0.0816,0.285163 0.24451,0.285175 -0.36663,0.12221 0.0412,1.181413 -0.48883,1.792489 -0.52962,-0.122223 -0.40744,-1.303618 0.12226,-0.488864 0.24452,0.04071 -0.12226,0.488863 0.4481,0.122205 0.0404,-0.203683 -0.28518,-0.814771 0.28518,-0.12221 c 0.11857,-0.44345 -0.0788,-0.764876 -0.57036,-0.896244 l 0.65189,-0.285169 -0.12226,0.407385 0.48882,0.122211 0.36671,-3.218327 0.0412,-0.20369 z m -20.49151,0.122216 0.24443,0.04072 0.12224,0.488864 -0.32597,-0.0815 0,-0.366649 -0.0408,-0.0815 z m -7.74027,0.0815 0.44807,0 -0.44807,0.529602 0,-0.529602 z m 1.30359,0 0.81475,0 c -0.0127,0.01563 -0.0282,0.02521 -0.0409,0.04072 -0.25717,0.205415 -0.34287,0.304006 -0.57025,0.488865 l -0.20372,-0.244428 0,-0.285179 z m 1.30366,0 0.3666,0 0.40744,0 0,0.203695 -0.0815,-0.0815 -0.48884,0.122216 0,0.244426 -0.0815,0.04072 -0.20365,-0.244426 -0.0815,0 0.16295,-0.285175 z m 1.14071,0 0.61102,0 -0.0409,0.285175 -0.57032,0 0,-0.285175 z m 7.29213,0 0.6518,0 -0.0815,0.244437 0.12216,0.448112 -0.28512,0.04072 -0.40737,-0.651813 0,-0.0815 z m 1.26296,0 0.20364,0 0.0815,0.244437 -0.20372,0.04071 -0.0814,-0.285179 z m 21.14316,0 0.81488,0 0.24437,0.04072 -0.0815,0.203695 -1.0999,0.162948 0.12211,-0.407385 z m -12.91407,0.0815 0.20372,0.08151 -0.0815,0.407386 -0.24445,-0.08151 0.1222,-0.407386 z m 5.25537,0 -0.0815,0.203702 0.48883,0.122204 0.0404,-0.203683 -0.44817,-0.122223 z m 10.14383,0.366649 0.4889,0.122217 0.40736,0.570332 -0.65188,0.325905 0.28525,0.0815 -0.61115,1.01846 c -0.32764,-0.0876 -0.36289,-0.371336 -0.24438,-0.814771 l 0.28517,-0.162945 0.0412,-0.203697 0,-0.936979 z m -1.38508,0.285163 0.24445,0.08151 0.0412,0.733285 -0.44817,-0.122216 0.16299,-0.692549 z m -25.50233,0.04071 0,0.407385 -0.2852,0 -0.0815,-0.325906 0.36667,-0.0815 z m 23.91346,0.04071 0.24451,0.08151 -0.12226,0.407379 -0.20372,-0.04071 0.0815,-0.448124 z m -24.7282,0.08151 0.0814,0.285163 -0.24435,0 0,-0.244427 0.16296,-0.04071 z m -8.22919,0.04072 1.01847,0 c -0.10098,0.0837 -0.19176,0.165865 -0.2852,0.244426 l -0.73327,0 0,-0.244426 z m 2.07762,0 0.44815,0 0,0.244426 -0.61109,0 0.16294,-0.244426 z m 7.86253,0 0,0.244426 -0.20365,0 -0.0408,-0.162948 0.24442,-0.0815 z m 3.74797,0 0.40736,0 0,0.244426 -0.40736,0 0,-0.244426 z m 1.05915,0 0.81483,0 0,0.244426 -0.81483,0 0,-0.244426 z m 22.36551,0.04071 0.4481,0.122203 0.28517,0.28517 0.0815,-0.407373 0.24444,0.04071 -0.12226,0.448111 -0.20365,-0.0815 0.16299,0.285175 -0.12225,0.488852 c -0.32764,-0.0875 -0.616,0.142067 -0.77401,0.733291 l -0.36663,-0.611074 0.36663,-1.303618 z m -31.00199,0.04071 0.28512,0.203685 -0.20372,0.08151 -0.0814,-0.285169 z m -4.72573,0.0815 0.0409,0.0815 -0.12225,0 c 0.0274,-0.03109 0.0535,-0.04958 0.0815,-0.0815 z m 31.97977,0.04071 0.52955,0.162958 -0.0412,0.20369 -0.52955,-0.122222 0.0412,-0.244426 z m -20.49146,0.04071 0.3666,0 0,0.285168 -0.3666,0 0,-0.285168 z m 3.54424,0 0.20365,0 c 0.29334,0.100041 0.50276,0.254317 0.65188,0.488863 l -0.0816,0.122211 c 0.0484,0.098 0.11294,0.188415 0.16299,0.285174 l -0.36664,0 0,0.244427 0.52956,0.0815 c 0.0742,0.137797 0.16797,0.272307 0.24452,0.407385 l -1.7925,0 0,-0.203696 c 0.55214,1.07e-4 0.81473,-0.223568 0.81473,-0.529595 l -0.3666,-0.407385 0,-0.488859 z m -9.28843,0.04072 0.12225,0.448122 -0.20373,0.04071 -0.0815,-0.325911 0.16295,-0.162947 z m -3.50347,0.0815 0.0815,0.448112 -0.44807,0.122222 -0.0408,-0.162954 0.3259,-0.04072 0,-0.325901 0.0815,-0.04072 z m 1.62956,0.04071 c 0.28505,1.066685 0.71236,1.543127 1.30359,1.385097 l 0.0815,0.162948 -0.16294,0.244437 -0.2445,-0.122215 c -0.59637,0.73086 -0.87087,1.451755 -0.69257,2.118387 l -0.85551,-0.651812 0.61116,-0.162953 -0.12224,-0.407384 c -0.36956,0.0988 -0.59842,-0.0975 -0.81482,-0.611075 l 0.97777,-0.733291 -0.44815,-0.936975 -0.0409,-0.162959 0.40744,-0.122205 z m 23.5876,0.244427 0.44808,0.122215 -0.0815,0.244428 -0.44817,-0.122216 0.0815,-0.244427 z m -14.95104,0.0815 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 4.60341,0 0,0.0815 -0.0412,0.162959 -0.20365,-0.04072 0.24437,-0.203689 z m -10.55124,0.04071 c 0.15661,0.129303 0.32913,0.246326 0.57032,0.366649 l 0,-0.162959 0.0815,0.366643 0,0.08151 -0.44814,0.122204 -0.20365,-0.774017 z m 23.22093,0.04071 0.44818,0.122223 0,0.977712 -0.28519,0.122221 -0.0412,0.203695 -0.16299,1.46657 -0.40744,0.570345 0.20372,0.244426 -0.32591,0.203695 0.36671,0.570333 -0.28525,0.122215 -0.24437,-0.04071 -0.0412,1.140677 -0.32591,1.140665 -0.44823,-0.162949 -0.20365,0.692551 c 0.0137,0.02419 0.0288,0.0565 0.0412,0.0815 l -0.12219,0.0815 0.16291,0.04071 c 0.0833,0.203786 0.1422,0.440824 0.16293,0.692549 l -0.0412,0.203701 -0.16292,-0.244427 -0.2851,-0.0815 -0.0412,0.04071 0.24437,-1.548061 0.774,-2.851679 0.44824,-0.814764 -0.28525,-1.059197 0.52956,0.162959 0.3259,-2.077663 z m -28.43544,0.04072 -0.0409,0.448121 -0.28519,0.0815 -0.28519,-0.162958 -0.20373,0.0815 0.36667,0.488859 -0.48885,0.611075 -0.32597,-0.488865 c 0.0714,-0.01669 0.12789,-0.04071 0.2038,-0.04071 l 0,-0.488865 -0.16295,0 -0.20372,0.285169 -0.20372,0 0.36659,-0.611074 1.26296,-0.203695 z m 4.80713,0 0.16296,0.651822 -0.20373,0.04072 -0.20372,-0.611074 0.24449,-0.0815 z m -7.08855,0.285175 0.20372,0 0,0.285168 -0.20372,0.244427 -0.24442,0 0,-0.325906 c 0.0778,-0.065 0.16337,-0.130041 0.24442,-0.203689 z m 32.59084,0.407373 1.50735,1.344372 -0.12226,0.448116 -0.52962,-0.162948 -0.48882,1.792482 -0.20366,-0.04072 0.4073,-2.485031 -0.2851,0.122217 -0.32591,-0.0815 0.0412,-0.936992 z m 4.48117,0 0.77415,0 -0.12227,0.407385 -0.69254,-0.203684 0.0412,-0.203701 z m -27.41691,0.122222 0.0408,0 0.20365,0.203695 -0.16294,0.04072 -0.0815,-0.244425 z m 3.422,0 0.57031,0 0,0.203695 -0.57031,0 0,-0.203695 z m 5.4997,0 0.0412,0 0,0.203695 -0.0815,0 0.0412,-0.203695 z m 0.52962,0.162958 c -0.0138,0.0596 -0.0231,0.09909 -0.0412,0.162947 l 0.40729,0.122216 c -0.13945,0.129179 -0.34541,0.162983 -0.65174,0.162948 l -0.20372,0 0,-0.203684 0.48883,-0.244427 z m -4.64418,0.04072 0.65179,0.203684 0,0.448128 c -0.41406,0 -0.65179,0.182893 -0.65179,0.488853 l -0.16304,0 c 0,-0.458915 -0.13133,-0.733229 -0.40729,-0.733291 l 0,-0.20369 0.57033,-0.203684 z m 11.44749,0.04071 0.32591,0.61108 -0.0412,0.203684 -0.32591,-0.611069 0.0404,-0.203695 z m -18.08791,0.04071 0.57033,0.285174 0.65179,2.362815 0,0.0815 -0.3666,-0.5296 -0.20372,0 0.57032,0.855506 0.0408,0.651811 0.2852,0.122217 -0.36661,0.570332 -1.1814,-4.39974 z m 15.43986,0 0.24445,0.04072 -0.28518,1.099934 -0.24438,-0.04071 0.28511,-1.099934 z m -7.08849,0.122216 0.57028,0.203689 0,0.244432 -0.77393,0 0.20365,-0.244432 0,-0.203689 z m -9.28836,0.203689 0.48884,0.488859 0.0409,0.162958 -0.48891,0.122211 -0.16296,-0.651812 0.12225,-0.122216 z m 1.99616,0.122216 0.32589,0.325905 0,0.0815 0.0815,0.04071 0.20373,0.244428 -0.16296,0.162952 0.65179,2.36282 -0.28519,-0.162948 -0.81481,-3.055379 z m -7.82175,0.08151 0.0815,0.366643 -0.20365,0.04071 -0.0815,-0.366643 0.20372,-0.04071 z m 2.4443,0.203684 -0.0815,0.611081 0.0815,0.244426 0.24443,0.162948 c -0.77595,0.207437 -1.07559,0.748021 -0.93699,1.711019 l 0.36666,0.570333 -0.20372,0.04071 0.57032,0.244425 -0.16294,1.303629 0.0815,0.285169 0.24443,0.122216 -0.20372,0.04071 0.57032,0.855506 c -0.14091,0.112527 -0.28639,0.239515 -0.44807,0.407386 l -0.0815,-0.203695 -0.40737,0.122215 -0.0815,-0.366642 0.40736,-0.122222 -0.20372,-0.814759 -0.44807,0.122211 -0.20372,-0.814759 0.40737,-0.122217 -0.12225,-0.448126 -0.65172,0.2037 0.0815,0.44811 -0.20371,0.04071 -0.16295,-0.611068 c 0.11738,-0.745669 0.35632,-1.183884 0.65186,-1.262887 l -0.0815,-0.162952 -0.40737,0.0815 -0.16295,-0.611081 0.20364,-0.04072 1.34444,-2.036919 z m 31.32793,0.203696 0.24444,0.04071 0.24437,0.28517 0.28525,-0.122216 0.69255,0.162953 0.4481,2.281341 -0.0404,0.203695 0.28518,0.0815 0.28511,-0.122222 0.24451,0.04071 -0.69261,2.647983 c -0.61586,-0.322888 -0.84817,-0.90561 -0.61109,-1.792466 l -0.20372,-0.08151 0.28519,-0.122215 0.12218,-0.488865 0.0815,-1.181402 -0.57028,-0.122221 -0.69262,2.688726 0.24445,0.285174 -0.36657,0.12221 -0.0404,0.203696 0.20364,2.199867 -0.8148,0 c -0.11605,0.567314 -0.18942,1.084278 -0.24437,1.507313 -0.1695,0.107546 -0.28489,0.397163 -0.40744,0.855506 l -0.32591,0.122217 -0.44817,-0.122217 -0.16291,-0.936979 0.57028,-0.48886 0,-0.12222 c 0.0549,0.0879 0.1487,0.167198 0.28525,0.203701 l 0.20372,0.04071 0.0815,-0.2037 0.24445,-1.873962 0.36663,-0.529595 0.73327,-3.625706 0.24445,-0.89624 -0.44817,-0.122214 -0.36656,1.344359 -0.36671,0.122216 0.24445,0.285169 -0.12226,0.488859 -0.52955,-0.162953 0.81473,-3.096111 z m -9.20699,0.122209 0.20372,0.04072 -0.24438,0.89625 -0.28525,0.162947 -0.20364,-0.08151 0.52955,-1.018465 z m 6.0701,0 0.20372,0.04072 -0.0815,0.407385 -0.24445,-0.04071 0.12226,-0.407385 z m -24.9727,0.08151 0.20372,0.814765 -0.20372,0.04071 -0.24449,-0.774027 0.24449,-0.0815 z m -6.72188,0.04072 0.0408,0 0.12218,0.448122 -0.20372,0.04072 -0.0408,-0.122216 c 0.0274,-0.106142 0.0499,-0.23043 0.0815,-0.325906 0.007,-0.01328 -0.007,-0.02767 0,-0.04071 z m 34.26111,0.04071 0.24444,0.04072 -0.20371,0.692549 -0.20365,-0.04071 0.16292,-0.692547 z m -26.56153,0.04072 0.12224,0.448122 -0.32589,0.488853 -0.0815,-0.366648 0.28514,-0.570327 z m 13.8919,0.0815 0,0.04072 -0.32597,0.203695 -0.20365,-0.04072 c 0.0108,-0.04089 -0.007,-0.0837 0,-0.122217 0.18906,-0.01781 0.37812,-0.05621 0.52962,-0.0815 z m -11.73273,0.244426 0.12224,0.122217 -0.20371,0.0815 -0.0408,-0.162947 0.12224,-0.04071 z m 27.13187,0.122217 0.774,0.203689 -0.0412,0.244427 -0.77407,-0.20369 0.0412,-0.244426 z m -8.71802,0.04072 0.57028,0.162958 -0.0815,0.203689 -0.5297,-0.122211 0.0412,-0.244436 z m -15.4807,0.04071 0,0.611086 0.44815,0 c 0,0.337841 0.0358,0.626607 0.12224,0.814759 -0.21021,0.04267 -0.40055,0.0946 -0.57039,0.162953 l 0,-0.04071 -0.3666,-0.407379 -0.65188,0.203695 c 0,-0.110152 -0.0345,-0.207706 -0.0815,-0.285174 l -0.24442,-0.896239 1.34436,-0.162959 z m 2.89244,0 0.2852,0.2037 0.20365,0 1.87398,-0.2037 0,0.2037 -0.28517,0.651813 c 0.39928,-0.221188 0.70099,-0.473416 0.8148,-0.774034 0.0708,0.0934 0.13122,0.193698 0.20365,0.28517 l -0.36664,0.04071 0,0.448122 0.40744,0 0.24437,0.28517 0.16299,-0.244428 c 0.093,0.10678 0.18913,0.222067 0.28511,0.325907 l 0.0412,0.162947 -0.20372,-0.203689 -0.24445,0.12222 0.0412,0.692548 -0.24438,0.122206 -0.0815,0.162958 -0.65182,-0.122215 c -0.065,-0.128709 -0.10688,-0.244338 -0.12219,-0.366644 l 0.32598,0 0.36656,0.0815 0.0412,-0.203684 -0.28518,-0.529607 c -0.27116,-0.0725 -0.50564,-0.0647 -0.73327,-0.0815 l -0.20364,-0.203691 -0.0815,0.162948 c -0.0643,0.0023 -0.14371,-0.007 -0.20372,0 l -0.52956,-0.61107 -1.05919,0.203696 -0.7741,-0.203696 -0.44808,0.448122 -0.16295,-0.244426 0,-0.203696 c 0.24147,2.8e-5 0.43265,0.01641 0.61103,0 0.53539,-0.04901 0.7741,-0.177868 0.7741,-0.407385 z m 16.29535,0 0.24452,0.08151 -0.24452,0.896249 -0.24437,-0.0815 0.24437,-0.896249 z m -19.96176,0.407385 0,0.448128 0.40737,0 0,-0.448128 -0.40737,0 z m -1.54809,0.08151 0.24443,0.285164 -0.20372,0.366648 -0.16295,-0.529596 0,-0.0815 0.12224,-0.04071 z m -10.51054,0.122216 0.0409,0.325906 -0.16295,0.04072 0.12224,-0.366643 z m 21.83583,0 0.16292,0 0,0.244428 -0.16292,0 0,-0.244428 z m -16.6621,0.04072 0.52969,0.936987 0.0409,0.162947 -0.20372,0.285181 0.77404,1.833224 -0.52962,0.325905 -0.28519,-1.507318 -0.12217,-0.448127 -0.24444,-0.122217 -0.16294,-1.425839 0.20366,-0.04072 z m -0.89622,0.04071 1.14071,4.236793 -0.3259,-0.08151 0,-0.0815 -0.28519,-0.162958 -0.69257,-3.462753 -0.0408,-0.203685 -0.28519,-0.122216 0.48884,-0.122222 z m 19.8804,0.08151 0.24445,0.0815 -0.12226,0.407385 -0.20365,-0.04072 0.0815,-0.448122 z m -7.78107,0.0815 0.65186,0 0,0.20369 c -0.1266,0.03618 -0.22329,0.0983 -0.32591,0.162958 l -0.32595,-0.08151 0,-0.285163 z m -9.20688,0.122221 0.12225,0.366643 -0.20373,0.04071 -0.12218,-0.366643 0.20366,-0.04071 z m 15.11397,0.04071 0,0.122216 -0.0815,0 0.0815,-0.122216 z m 9.98098,0.244434 0.24437,0.04071 -0.16291,0.488852 -0.20372,-0.04071 0.12226,-0.488852 z m 5.25524,0 0.24444,0.04071 -0.16292,0.488852 -0.20372,-0.04071 0.1222,-0.488852 z m -22.81356,0.0815 0.36666,0 c -0.0955,0.175348 -0.20746,0.272965 -0.36666,0.285164 l 0,-0.285164 z m 7.12924,0 0.16292,0 0,0.20369 -0.16292,0 0,-0.20369 z m -1.50734,0.04072 0.28525,0.0815 -0.28525,0 0,-0.0815 z m 4.72567,0.0815 0.32598,0.611087 -0.12226,0.407373 -0.44816,-0.12221 0.24444,-0.89625 z m 1.01846,0.285169 0.20372,0.04071 c -0.079,0.295693 0.16031,0.561164 0.65181,0.692548 l -0.24452,0.896249 c -0.13728,-0.160281 -0.28474,-0.289924 -0.44802,-0.407384 l 0.0412,-0.203691 -0.44809,-0.122215 0.24437,-0.89625 z m -5.86632,0.04071 0.12219,0 0.0815,0.04071 -0.12219,0.448124 -0.16299,-0.0815 0.0815,-0.407385 z m 3.38125,0 0.57036,0 -0.0815,0.203696 -0.24445,0 c -0.0896,-0.0653 -0.17476,-0.126631 -0.24445,-0.203696 z m -7.41436,0.122216 c -0.0141,0.0405 -0.0296,0.0791 -0.0409,0.122221 l -0.12225,-0.04072 0.16296,-0.0815 z m -15.60287,0.162958 0.0815,0.162947 0.32598,2.933158 0.40736,-0.122216 -0.12217,-0.366642 0.61102,0.244431 c -0.44342,0.118509 -0.63651,0.414757 -0.52962,0.81476 l 0.24443,0.122221 -0.24443,0.733285 0.0408,0.203691 0.44815,-0.122212 -0.12224,-0.44812 0.20371,-0.04071 0.12225,0.448121 -0.36667,1.140677 -0.3666,-0.0815 c -0.0563,0.07109 -0.0683,0.134304 -0.12224,0.203685 l -0.44815,-1.588787 0.0409,-1.099933 -0.3259,-0.08151 0.20365,-0.285163 -0.0409,-0.244439 -0.48885,0.122217 -0.0815,-0.162949 0,-0.0815 0,-0.162958 c 0.33237,-0.117041 0.51341,-0.411552 0.44814,-0.936975 l -0.44814,-0.774034 -0.0409,-0.162946 0.57031,-0.366642 z m 31.16496,0 0.52963,0.122211 -0.20365,0.692548 -0.5297,-0.122211 0.20372,-0.692548 z m -28.92431,0.285169 -0.40744,0.0815 0.0409,0.20369 0.40744,-0.122223 -0.0409,-0.162946 z m 4.72566,0 0.12217,0.366643 -0.20365,0.04071 -0.12225,-0.366643 0.20373,-0.04071 z m 8.51431,0.04071 0.20372,0.0815 -0.24442,0 0.0408,-0.0815 z m 16.90652,0 0.52955,0.122204 -0.12219,0.488864 0.44816,0.122216 0.16299,-0.692547 0.44802,0.570331 -0.57027,0.814771 -0.16299,1.87395 -0.44817,0.529607 -0.24437,-0.04071 c 0.51366,-1.921503 0.41097,-2.920931 -0.24445,-3.09611 l 0.20372,-0.692549 z m -20.04331,0.0815 0.20365,0 -0.12225,0.448122 -0.16295,0 0,-0.203684 0.0815,-0.244438 z m 1.79244,0 0.20364,0 c 0.13683,0.161318 0.18661,0.385367 0.16302,0.651822 l -0.12218,0 -0.24448,-0.651822 z m -2.56655,0.122222 0.20371,0.366642 -0.28512,-0.0815 0.0815,-0.285164 z m 12.54749,0.162952 0.24438,0.08151 0.28518,0.203695 -0.16293,0.244427 c -0.10066,-0.099 -0.21339,-0.179174 -0.3259,-0.244427 l -0.0412,-0.285163 z m -7.17001,0.162948 0.28518,0 c 0,0.0716 0.0231,0.146621 0.0412,0.2037 l -0.40737,0 0.0815,-0.2037 z m 0.73327,0.0815 0.40737,0.122217 -0.32584,0 -0.0815,-0.122217 z m -6.72178,0.122217 0.20365,0.0815 -0.0815,1.22215 -0.0815,0.20369 -0.20372,-0.08151 0.0409,-0.488859 0.20372,0 0,-0.651812 -0.0815,-0.285167 z m 14.62513,0.04072 0.32584,0.0815 -0.16291,0.651813 -0.20365,-0.08151 -0.0404,-0.5296 0.0814,-0.122216 z m -15.35847,0.04071 0,0.203702 -0.12217,0 0.12217,-0.203702 z m -1.46654,0.162959 0.12217,0 0.12225,0.162947 0.0815,0.28518 -0.32597,-0.407384 0,-0.04071 z m 4.52194,0.04071 0.20364,0 -0.0814,0.203689 -0.16303,0 0.0409,-0.203689 z m -5.25529,0.162948 -0.0408,0.244437 c -0.14126,0.676563 -0.1364,1.030817 0.12225,1.099935 l -0.24442,0.203689 -0.0816,0.162958 -0.0408,0.244427 -0.12226,0.04072 -0.16294,-0.570343 0.44814,-0.0815 c -0.20597,-0.770582 -0.14738,-1.242963 0.12225,-1.344371 z m 1.87399,0 0.0409,0.122222 0.0815,-0.0815 0.16294,0.651811 0,0.122216 -0.48891,0.733292 0.28519,0.08151 -0.3259,0.122204 -0.0815,0.244437 0.2445,0.28517 -0.0815,0.162959 -0.40737,0.570327 0.0408,0.855512 -0.65179,1.303618 0.24443,0.285168 -0.48886,-0.162946 0.36667,-1.344372 -1.18148,0.733291 0.24449,0.285163 -0.85551,0.448122 -0.0815,1.01846 -0.40738,0.692548 c 0.0795,-0.499405 0.0113,-0.798017 -0.20365,-0.855495 l 0.28512,-0.162959 0.0409,-0.203689 0.20379,-1.303624 c 0.13732,-0.129895 0.27639,-0.271485 0.40731,-0.407379 l 0.44815,0.3259 c -0.0528,-0.211565 -0.15768,-0.375364 -0.24444,-0.529601 0.0507,-0.05551 0.11281,-0.106477 0.16295,-0.162947 l 0.24442,0.04071 0.0815,-0.366644 0.36666,-0.162958 -0.16294,-0.162958 c 0.0718,-0.0919 0.13393,-0.191205 0.20365,-0.285164 l 0.73334,0.04072 0.16294,-0.611075 -0.40737,-0.122216 c 0.0708,-0.107502 0.13507,-0.216097 0.20365,-0.325907 l 0.2852,0.0815 0.2852,-1.059193 c 0.10837,-0.19992 0.22259,-0.404898 0.32589,-0.611074 l -0.12224,-0.162959 0.0408,-0.122215 z m 11.7327,0.04072 0.20372,0.407385 0,0.04072 -0.4889,0 c 0.0123,-0.0714 0.0296,-0.135446 0.0404,-0.203684 l 0.24453,-0.244438 z m -22.16177,0.04071 0.0815,0.285169 -0.0815,0 0,-0.285169 z m 30.43169,0.203701 0.48882,0.122205 -0.40736,0.936987 c -0.0911,-0.136119 -0.20878,-0.264804 -0.36657,-0.366644 l 0.28511,-0.692548 z m -10.87717,0.162947 0.20364,0.04071 -0.20364,0 0,-0.04071 z m 0.97764,0.04071 0.40744,0.122215 -0.0412,0.162948 -0.20372,0.04071 -0.16291,-0.285163 c 0.007,-0.0028 -0.008,-0.03747 0,-0.04071 z m -8.39205,0.325905 0.40737,0.0815 -0.16295,0.651813 -0.28519,-0.570333 0.0408,-0.162959 z m 23.91344,0.04072 c 0.452,0.279232 0.60488,0.768247 0.40744,1.507319 l -0.52969,1.059191 c -0.19967,1.122326 -0.29139,1.890989 -0.28504,2.403557 l -0.16299,-0.04071 0.0412,-0.774028 0.12219,-0.488852 -0.36656,-0.774028 0.89626,-2.118394 -0.12226,-0.774028 z m -21.83574,0.122217 0.24443,0 0,0.203689 -0.24443,0 0,-0.203689 z m 12.09929,0 0.0412,0 -0.16299,0.570332 c -0.0202,0.0768 -0.0274,0.130595 -0.0412,0.20369 l -0.0412,0 0.20372,-0.774022 z m -19.96182,0.04071 0.20366,0.04072 0.12217,0.244438 -0.36667,-0.122223 0.0409,-0.162953 z m -4.11462,0.203695 0.0408,0.20369 -0.2852,0.529601 -0.0408,-0.162959 0.2852,-0.570332 z m 3.62571,0 c 0.12175,0.05611 0.2252,0.114263 0.40737,0.162948 l -0.0815,0.366648 -0.16294,-0.244426 -0.0815,-0.04071 -0.0815,-0.244426 z m 31.12425,0.08151 0.24445,0.0815 -0.12226,0.488864 -0.24445,-0.0815 0.12226,-0.488853 z m -25.46161,0.0815 c 0.13049,0.006 0.28597,0.0201 0.44808,0.04071 l -0.12211,0.366647 c -0.29562,-0.07899 -0.55004,0.159228 -0.69257,0.692549 l -0.44814,-0.774017 c 0.0471,-0.174709 0.21322,-0.256037 0.48884,-0.285179 l 0.36667,0 -0.0409,-0.04071 z m 14.01409,0 0.0815,0 0.12226,0.04071 -0.0412,0.203701 -0.0412,0 -0.32598,0 0.20372,-0.244439 z m -8.14774,0.04071 0.28518,0 -0.12219,0.529606 -0.24445,-0.0815 c 0.0369,-0.153946 0.0635,-0.310134 0.0815,-0.448122 z m 0.85553,0 0.57036,0 0,0.0815 -0.36671,0.570343 0.12226,0.162948 -0.61108,-0.162948 c 0.10702,-0.160589 0.19035,-0.414295 0.28517,-0.651822 z m 1.05918,0 0.24452,0 -0.0412,0.0815 -0.20379,-0.04071 0,-0.04071 z m 2.24054,0 0.48897,0 -0.12218,0.366647 -0.20372,0.04072 0,0.448122 0,0.04071 -0.0815,0.162947 0.0412,0.448128 -0.16298,0.04071 c -0.1809,-0.205348 -0.24272,-0.494795 -0.20372,-0.855513 0,-0.02588 -0.008,-0.05472 0,-0.0815 0.013,-0.0828 0.0166,-0.153768 0.0412,-0.244438 l 0.20365,-0.366643 z m 0.85554,0 0.73334,0 0.32597,0 -0.0412,0.203701 -0.24445,0 0,0.488852 0.20365,0 -0.0412,0.203695 -0.3259,0.529596 0,-0.285168 -0.48883,0.122214 -0.0412,-0.5296 0.24444,-0.04071 0,-0.488852 -0.28525,0.04071 -0.0412,-0.244437 z m -7.69957,0.0815 0,0.774027 c -0.2652,-0.0831 -0.4073,-0.288933 -0.40738,-0.651811 0.18275,2.3e-5 0.29999,-0.04251 0.40738,-0.122216 z m 5.54048,0 0.40737,0.122216 -0.0815,0.366648 -0.44817,-0.122221 0,-0.04071 0.16292,-0.203684 -0.0814,0 0.0404,-0.122221 z m 11.93642,0 0.12219,0.651812 c -0.0253,-0.01187 -0.0505,-0.0326 -0.0815,-0.04071 l -0.32598,0.0815 -0.0412,0.244438 0,0.28517 -0.0412,0.0815 -0.20372,-0.04071 0.0412,-0.203695 0.24444,-0.366649 0.16293,-0.285163 -0.44818,-0.122217 0.57043,-0.285168 z m -18.82119,0.0815 c 0.0917,0.01579 0.17611,0.04071 0.28512,0.04071 l 0,0.651811 -0.24441,-0.0815 -0.0409,0.122215 -0.12218,0 0,0.44813 0,0.0815 0.44807,0.122217 0.0409,-0.203685 0.16302,0 -0.52962,0.774017 -0.24449,-0.325906 -0.0815,0.366648 0.24443,0.0815 -0.0409,0.04071 0.52963,0.122221 0.0815,0.244428 -0.12218,0.203684 c -0.15499,0.0761 -0.25872,0.227029 -0.2852,0.448127 l -0.0409,0.122216 -0.16295,0 c -0.007,-0.0298 0.008,-0.0522 0,-0.08151 l 0.0815,-0.448121 -0.16296,-0.04071 c -0.0836,-0.433122 -0.15238,-0.792378 -0.24442,-1.059197 l 0.44815,-1.629523 z m -7.29221,0.448127 c 0.2126,0.119669 0.31239,0.322445 0.2852,0.61107 l -0.20378,-0.122216 -0.0815,-0.488854 z m 18.33231,0 0.0412,0 c -0.008,0.02991 -0.0339,0.0522 -0.0412,0.0815 -0.0303,0.13716 -0.0607,0.283131 -0.0815,0.407385 -0.0917,0.01579 -0.17621,0.04072 -0.28518,0.04072 l 0,0.488864 -0.24445,0 0.0815,-0.936987 0.52963,0 0,-0.0815 z m -12.38446,0.0815 0.28512,0 0.12225,0.04071 0,0.407385 -0.20372,0 0,0.203695 0.0815,0.366648 c -0.16787,-0.149179 -0.27047,-0.489172 -0.28511,-1.018465 z m 25.33932,0.04071 0.44802,0.122221 -0.12204,0.407385 -0.44816,-0.122221 0.12218,-0.407385 z m -33.93526,0.04072 c -0.0444,0.04951 -0.0768,0.109692 -0.1221,0.162959 l -0.0408,-0.122217 0.16289,-0.04071 z m -0.89621,0.04071 0.44814,0.936981 -0.20365,0.04071 -0.0815,-0.04071 c 0.0106,-0.04469 0.0282,-0.075 0.0409,-0.122212 l -0.24434,-0.0815 -0.20373,-0.692549 0.24443,-0.04071 z m 17.51764,0 0.40735,0.122222 -0.0815,0.244426 -0.36671,-0.244426 0.0412,-0.122222 z m 0.73327,0 0.20364,0.0815 -0.12219,0.407386 -0.20371,-0.04071 0.12226,-0.448128 z m 7.12921,0.0815 0.0815,0.122216 0.28524,0.08151 0.0815,-0.04071 -0.20372,1.344372 -0.69248,2.525773 -0.24451,0.488852 -0.0815,-0.366642 0.20373,-0.285169 -0.20373,-0.203684 -0.24437,0.0815 -0.16299,-0.285164 0.28511,-0.12221 0.20372,0.04071 0.0412,-1.059197 0.28509,-0.977718 0.40744,0.08151 0.12212,-0.529602 0.0412,0 0,-0.08151 c -0.12508,-0.229684 -0.1809,-0.508321 -0.20372,-0.814769 z m 3.05534,0.04071 0.24453,0.0815 -0.0816,0.244427 0,0.04071 -0.16292,0.529595 -0.20365,-0.0815 0.20365,-0.814759 z m -20.24697,0.203684 0.40736,0.122221 -0.12216,0.366643 -0.2852,-0.488864 z m -10.63279,0.325905 0.0408,0.162959 -0.12217,0.04071 0,-0.162958 0.0815,-0.04071 z m 5.54047,0.04071 0.20365,0.0815 -0.0815,0.366644 0.20372,0.04071 -0.24443,0.12221 -0.12224,0.488864 -0.16295,-0.611074 0.20365,-0.488865 z m 27.41706,0 0.36656,0.0815 c -0.0491,0.185755 -0.0245,0.335266 0,0.448123 l -0.32582,-0.0815 c 0.0534,-0.200034 0.0195,-0.335311 -0.0412,-0.448129 z m -3.95175,0.0815 0.0412,0 c -0.0224,0.120228 -0.0505,0.238736 -0.0815,0.366644 l -0.0412,0 0.0815,-0.366644 z m -17.31384,0.04071 0.20367,0.04071 -0.24435,0.814759 -0.20373,-0.04071 0.24441,-0.81477 z m 14.74739,0.04071 c 0.10667,0.0985 0.25788,0.167994 0.40744,0.244427 l -0.16306,0.325907 -0.16292,-0.04071 -0.0412,-0.04071 c -0.0477,-0.0401 -0.10962,-0.0903 -0.16299,-0.122211 l 0.12226,-0.366643 z m -21.91733,0.162949 0.0815,0 c 0.008,0.06319 -0.007,0.143415 0,0.203695 l -0.0815,-0.203695 z m 32.46853,0 0.32597,0.529601 -0.44809,-0.122216 0.12212,-0.407385 z m -33.24257,0.366642 0.0409,0.122221 -0.16295,-0.04071 0,-0.04071 0.12225,-0.04071 z m 6.76258,0.162959 0.20372,0.0815 -0.73334,2.810936 -0.20365,-0.0815 0.73327,-2.810941 z m 9.4514,0 -0.20372,0.81477 0,0.0815 c -0.0694,0.01 -0.1708,0.03159 -0.24445,0.04071 l 0.24445,-0.896238 0.20372,-0.04071 z m 1.5888,0.162946 c 0,0.05119 0,0.108308 0,0.162959 -0.14046,0.171187 -0.50334,0.287236 -1.01852,0.407384 l 0.0815,-0.244436 0.93706,-0.325907 z m 8.59575,0.122222 c 0.10666,0.184367 0.23751,0.337444 0.36671,0.488858 l 0,0.122211 0.16291,0.04071 c 0.0686,0.0685 0.13013,0.143642 0.20365,0.203696 l -0.16291,0.651812 -0.20365,-0.04071 c 0.0715,-0.266735 -0.16768,-0.492549 -0.61109,-0.611069 l 0.24438,-0.855506 z m 1.01845,0.04071 0,0.122217 -0.0815,-0.0815 0.0815,-0.04071 z m 5.58128,0.04072 0.44803,0.122205 -0.0404,0.203695 -0.48897,-0.122216 0.0815,-0.203684 z m -24.19876,0.04071 0.12226,0.44811 0.24435,0.89625 -0.44807,0.733291 0.32597,-0.122222 0.20365,0.04071 -0.12225,0.366648 -0.20365,-0.04071 -0.20372,-0.244428 -0.24443,-0.0815 -0.0815,0.448122 -0.24449,-0.04071 0.65185,-2.403557 z m -1.22211,0.0815 0.20366,0.0815 -0.12218,0.529601 -0.20372,-0.04071 0.12224,-0.570343 z m 7.12924,0 0.20365,0.04071 -0.0815,0.366643 -0.20364,-0.04072 0.0815,-0.366643 z m 14.54368,0.04071 -0.0816,0.244439 0.69261,0.162946 0.0815,-0.203689 -0.69254,-0.203696 z m -28.67999,0.08156 c 0.0261,-0.005 0.0549,0.0039 0.0815,0 -0.12598,0.179593 -0.30238,0.328952 -0.52962,0.448121 l -0.0409,-0.203695 c 0.14486,-0.114381 0.30625,-0.20677 0.48891,-0.244426 z m 13.36224,0.203695 c 0.12724,0.113797 0.23917,0.223198 0.28517,0.325906 l -0.28517,-0.08151 0,-0.244426 z m -12.9548,0.203684 0.0409,0 0.32591,0.122222 c 0.0289,0.106409 0.0514,0.197506 0.0815,0.285163 l -0.20365,0.774033 -0.20372,-0.04071 c 0.1426,-0.533376 0.0106,-0.857971 -0.2852,-0.936992 l -0.20365,0.0815 0.0408,-0.162948 0.32591,-0.0815 0.0815,0 0,-0.04071 z m -2.56654,0.04072 0.0815,0.244427 -0.12225,-0.04071 0.0409,-0.203684 z m 13.44368,0 0.20365,0 c -0.0148,0.100512 -0.0233,0.219009 -0.0409,0.325907 l -0.16295,0.162946 0,-0.488853 z m 8.55506,0 0.36663,0 -0.0412,0.162954 -0.40729,-0.122211 c 0.0195,-0.01871 0.0635,-0.02112 0.0815,-0.04071 z m 1.01852,0 0.40736,0 0,0.20369 c -0.19512,3.9e-5 -0.36093,0.03652 -0.48883,0.0815 l 0.0815,-0.285162 z m -19.43232,0.0815 0.16294,0.04071 -0.0815,0.325916 -0.0815,-0.366649 z m 13.81038,0.12221 0,0.529601 -0.0412,0.04071 -0.0412,0.162947 -0.24444,0 0.20371,-0.692548 0.12219,-0.04071 z m 0.85546,0 0.93713,0 -0.0412,0.162953 0,0.122211 -0.24444,0 -0.28526,-0.04071 -0.0815,0.04071 -0.28518,0 c 0,0.0149 0,0.02599 0,0.04071 l -0.0815,-0.04071 0.0815,-0.285164 z m 3.05541,0.162953 -0.0815,0.366648 -0.36671,0 -0.12212,-0.122221 0.0412,-0.162948 c 0.20437,-0.02072 0.36772,-0.03439 0.52955,-0.0815 z m 9.04399,0 c 0.6945,0.364156 0.9331,1.014691 0.69255,1.914698 l -0.48883,-0.12221 -0.16299,0.52959 0.36657,0.570344 -0.85546,1.26288 0.20372,0.04071 -0.24445,0.122222 -0.0815,0.285162 0.16291,1.303624 -0.57035,0.244437 0.20372,0.04071 -0.36671,0.570332 c -0.13859,0.962964 0.16111,1.503579 0.93706,1.711006 l -0.24445,0.162953 -0.0815,0.244428 0.0815,0.611077 -1.34435,-2.036917 -0.20372,-0.04071 0.16299,-0.611066 0.44817,0.08149 0.0412,-0.162958 c -0.29565,-0.07899 -0.53446,-0.517212 -0.65189,-1.262881 l 0.16292,-0.61108 0.20372,0.04071 -0.0815,0.448122 0.69261,0.203689 0.0815,-0.448115 -0.40736,-0.122216 0.24437,-0.814771 0.40737,0.122216 0.20379,-0.814764 -0.40744,-0.122211 0.0815,-0.366643 0.44817,0.122205 0.0815,-0.366642 -0.40737,-0.122211 0.16299,-0.61108 c 0.36953,0.0988 0.59831,-0.138219 0.81473,-0.651812 0.10681,-0.399992 -0.008,-0.614759 -0.44809,-0.73329 l 0.16299,-0.611069 z m -24.52459,0.04071 0.48883,0.122211 -0.40736,0.570343 -0.24443,-0.0815 0.16296,-0.611069 z m 23.30243,0 c 0.13757,0.07281 0.29789,0.11503 0.4481,0.162953 l -0.1222,0.40738 -0.3259,-0.52959 0,-0.04071 z m -16.70279,0.08151 0.65179,0 0.20372,0.244437 0.16294,0 -0.16294,0.611069 -0.61103,0 -0.24448,-0.855506 z m 5.70336,0.203695 0.0815,0 c -0.0353,0.16125 -0.0825,0.316546 -0.12226,0.448127 l -0.0815,0 0.12219,-0.448127 z m 4.88867,0.04071 0,0.162946 -0.0815,0.244438 -0.20378,0 0.0412,-0.203695 0.2443,-0.203689 z m -7.7403,0.0815 0.20365,0.04071 -0.0412,0.0815 -0.20365,0 0.0412,-0.122205 z m -8.63663,0.0815 0.65186,0.366648 -0.28519,1.018455 -0.20372,-0.08151 -0.24436,-0.936985 0.0814,-0.366644 z m 20.89882,0 0.48889,0.122222 0.36664,1.14067 -0.12219,0.448127 -0.20365,-0.04071 0.12219,-0.448128 -0.4481,-0.122215 -0.0412,0.203695 0.24445,0.733291 -0.24445,0.12221 c -0.10688,0.400031 0.0863,0.696256 0.52962,0.814763 l -0.57036,0.244428 0.0816,-0.366642 -0.40744,-0.122211 -0.3259,2.933158 -0.0815,0.162952 -0.57035,-0.325906 0.0815,-0.203689 0.40737,-0.774027 c 0.0693,-0.553065 -0.1193,-0.878948 -0.48883,-0.977729 l 0.12219,-0.366643 0.48882,0.122216 0.0412,-0.244427 -0.20372,-0.285163 0.32598,-0.08151 -0.0412,-1.099934 0.44817,-1.588797 z m -18.98407,0.04071 0.40737,0.122222 -0.0408,0.203684 -0.40745,-0.122205 0.0409,-0.203701 z m 11.20304,0 0.16306,0 c 0.0657,0.05851 0.15353,0.11741 0.24431,0.162958 l -0.0412,0.122211 -0.0815,0.285174 -0.28518,-0.5296 0,-0.04071 z m -19.96185,0.04071 0.3259,0.488864 -0.24435,-0.244438 -0.20372,-0.04071 0.12217,-0.203695 z m 1.10001,0.08151 0.16295,0.04071 0,0.162946 -0.16295,0.651813 -0.20372,-0.08151 0.20372,-0.774028 z m 31.08344,0 c 0.044,0.102864 0.0885,0.183766 0.16291,0.203684 l 0.20373,0.04072 0,0.448128 -1.71099,6.355167 -0.4889,-0.12221 0.28518,-0.122217 0.0412,-0.203684 0.69254,-3.462763 0.28511,-0.122216 0.0412,-1.059196 0.48889,-1.955435 z m 1.01845,0 0.20371,0.04071 -0.20371,0.651811 -0.20372,-0.0815 0.16292,-0.570332 0.0412,-0.04071 z m -15.64358,0.122216 0.0412,0.448115 -0.12226,0.04072 -0.0815,-0.325907 0.16291,-0.162947 z m 12.79188,0 0.20371,0.04071 -0.12226,0.366648 -0.20364,-0.04071 0.12219,-0.366648 z m -9.57355,0.04071 c 0.13468,0.0336 0.32367,0.0613 0.48897,0.0815 l -0.12226,0.488859 -0.44817,-0.162952 0.0815,-0.407386 z m -20.98037,0.325916 0.48891,0.122206 -0.0815,0.203701 -0.16295,1.385096 c 0.008,-0.184416 -0.0233,-0.352293 -0.0815,-0.570338 l -0.20364,-0.814758 0.0409,-0.325907 z m 3.29982,0.04071 0.44814,0.0815 c -0.10689,0.399987 -0.01,0.695002 0.2852,0.774034 l -0.0409,0.203684 c -0.44336,-0.118536 -0.70271,-0.10371 -0.77404,0.162958 l -0.20365,-0.04072 -0.0815,-0.61107 0.36667,-0.570343 z m 16.82502,0.04071 0.28518,0 -0.0815,0.244438 -0.20372,0 0,-0.244438 z m -13.76963,0.162958 0.20373,0.04071 -0.0409,1.059198 -0.40737,-0.122222 0.24442,-0.977717 z m 20.12484,0.203684 0.44817,0.162959 -0.0412,0.162948 -0.48875,-0.122206 0.0815,-0.203701 z m 3.09615,0 0.20372,0.04071 -0.44809,0.936986 -0.2038,-0.04071 0.2038,-0.814764 0.24437,-0.122222 z m -19.51372,0.122222 0.93692,0.04071 -0.12219,0.570332 -0.97768,0 0.16295,-0.611075 z m 8.59582,0.162948 0.20372,0 0,0.04071 -0.20372,-0.04071 z m 3.74789,0 0.3259,0 -0.0412,0.203695 -0.28517,0 0,-0.203695 z m 2.36287,0 0.32598,0 0,0.203695 -0.36671,0 0,-0.122216 0.0412,-0.0815 z m -19.51372,0.04071 0.3259,0.529602 -0.28519,0.122217 -0.20366,-0.04071 c 0.062,-0.233337 0.13267,-0.43445 0.16295,-0.611081 z m -4.31828,0.162959 0.20365,0.04071 -0.12217,0.366644 -0.20372,-0.04071 0.12224,-0.366642 z m 32.30564,0 0.20372,0.04071 c -0.10703,0.400004 -0.0101,0.695032 0.28511,0.774029 l -1.42582,3.503489 0.20372,0.244428 -0.0404,0.203697 -0.52962,0.896235 -0.20365,-0.04071 0.16292,-1.425838 0.24437,-0.122211 0.12226,-0.448121 0.69254,-3.422023 0.28518,-0.203684 z m -35.36103,0.122218 0.12218,0.855494 0.20371,0.122223 c -0.012,0.0966 -0.0133,0.183486 -0.0409,0.285162 l 0,0.08151 -0.0409,-0.08151 -0.20365,0.08151 c 0.0218,0.0838 0.0345,0.137188 0.0408,0.203684 l -0.36666,0.1646 c -0.01,-0.04357 -0.0317,-0.0797 -0.0408,-0.122217 l 0.12224,-0.04072 0.0408,-0.203689 0.16296,-1.34436 z m 9.4513,0.04071 0.6111,0.162959 -0.0408,0.203684 -0.69258,0.0815 0.12225,-0.448121 z m -4.80712,0.244439 0.20365,0.0815 -0.16295,0.529594 -0.20366,-0.04071 0.16296,-0.570331 z m 28.96506,0 0.20365,0.04071 -0.28511,1.018454 -0.20365,-0.0815 0.28511,-0.977717 z m -20.49151,0.122204 0.36673,0.529606 -0.16295,0.611069 -0.20378,-0.325905 -0.40731,-0.122205 c -0.10697,0.400004 -0.41209,0.566641 -0.85552,0.44811 0.10698,-0.400013 -0.007,-0.655502 -0.44815,-0.774027 l 0.0409,-0.203689 0.4073,0.122222 0.16302,0.244425 c 0.0803,-0.299967 0.44638,-0.454305 1.09986,-0.529606 z m 10.83651,0.203701 0.12218,0 0,0.122215 -0.12218,-0.122215 z m 13.11771,0 0.8964,0.244427 -0.44816,1.751745 c -0.29558,-0.079 -0.37682,-0.544383 -0.16306,-1.344361 l -0.4481,-0.08151 0.16292,-0.570331 z m -6.15149,0.04071 0.28517,0.529589 -0.0412,0.203701 -0.28518,-0.570343 0.0412,-0.162947 z m -28.55764,0.0815 -0.20372,1.62953 -0.81474,0.244427 0.24442,-0.896239 c 0.44906,-0.222946 0.73081,-0.546863 0.77404,-0.977718 z m 0.69257,0 0.24442,0.08151 -0.0815,0.366642 -0.28519,-0.0815 0.12224,-0.366649 z m 21.87656,0.04071 0.16292,0.04071 0,0.244438 -0.40736,0 0.24444,-0.285176 z m -9.5328,0.04071 0.20365,0 0.16301,0.244438 -0.28519,0 -0.0815,0 0,-0.04071 0,-0.203695 z m -6.96631,0.244438 0.48885,0.12221 -0.0815,0.244433 -0.52955,0.936979 -0.16295,-0.244426 -0.20371,-0.0815 -0.52955,0.285169 0.0408,0.651811 c -0.29562,-0.0791 -0.50406,0.04811 -0.61109,0.448122 l -0.16295,-0.244427 -0.20366,-0.04071 -0.24449,0.122205 0.20372,-1.629522 0.6111,0.162957 0.12224,-0.407386 c 0.73898,0.197534 1.156,0.0741 1.26282,-0.325905 z m 2.85175,0.12221 0.20364,0.0815 -0.0815,0.366648 -0.24443,-0.04071 0.12224,-0.407385 z m -7.86253,0.04071 0.20365,0.0815 -0.0815,0.366648 -0.24443,-0.04071 0.12224,-0.407385 z m 6.64034,0.04071 0.20371,0.0815 -0.0815,0.407386 -0.24442,-0.04071 0.12224,-0.448122 z m -9.28843,0.122217 0.20372,0.0815 -0.24442,0.0815 0.0408,-0.162948 z m -0.0408,0.285168 0.16294,0.122217 0,0.04071 -0.20365,-0.04071 0.0409,-0.122217 z m 15.72511,0.0815 c 0,0.206528 -0.12999,0.308257 -0.32597,0.366642 l -0.52955,0.04071 0,-0.162953 0,-0.04072 0.85552,-0.203689 z m 3.25903,0 c 0.0122,0.005 0.0288,-0.006 0.0404,0 0.0891,0.04599 0.17483,0.110851 0.20372,0.203689 l -0.24438,0 0,-0.203689 z m 1.54807,0 0.40744,0 0.0815,0.12221 -0.20372,0.814765 c -0.0448,0.0023 -0.0747,0 -0.12226,0 l 0,0.203701 -0.20365,-0.203701 -0.40744,0 -0.16291,-0.244427 0.12219,-0.448123 c 0.1892,0.05058 0.34952,-0.04402 0.48882,-0.244425 z m 1.22217,0 0.32583,0 c 0.0144,0.01898 -0.0101,0.05909 0,0.0815 -0.0984,0.337864 -0.32727,0.598556 -0.65174,0.733285 l -0.12218,-0.04071 0.44809,-0.774028 z m 4.4405,0 -0.0412,0.203689 -0.48889,0 0,-0.122222 c 0.20018,-0.02772 0.37227,-0.05069 0.52962,-0.0815 z m 8.881,0 0.20365,0.04071 -0.0814,0.366642 -0.20371,-0.04071 0.0815,-0.366642 z m -26.84669,0.0815 0.40744,0.122215 -0.12225,0.448123 -0.40737,-0.122216 0.12218,-0.448122 z m 9.7365,0.122215 0.16292,0 -0.16292,0.570344 0,-0.570344 z m -11.97708,0.162959 -0.0815,0.366643 0.40737,0.122211 0.12217,-0.366648 -0.44814,-0.122206 z m 4.97007,0.04071 0.69257,0.203684 -0.12224,0.366649 0.44814,0.122216 0.16295,-0.611079 0.3259,0.366641 c -0.34774,0.172319 -0.58864,0.446767 -0.73327,0.81477 -0.062,0.02649 -0.0885,0.04621 -0.12225,0.0815 l -0.20365,-0.04071 c 0.14013,-0.443861 -0.0197,-0.72708 -0.40744,-0.814765 l -0.20365,-0.04071 c 0.0715,-0.114637 0.11844,-0.281466 0.16294,-0.448116 z m 16.90647,0 0.40735,0.122206 -0.0815,0.244438 -0.40736,-0.122217 0.0815,-0.244427 z m -14.42139,0.203684 0.12217,0.04072 c -0.0429,2.13e-4 -0.0808,-0.0023 -0.12217,0 l 0,-0.04072 z m -13.72896,0.244427 0.44814,0.0815 -0.0814,0.203695 -0.40743,-0.122215 0.0408,-0.162958 z m 20.1656,0 0.16292,0.0815 -0.20365,0.04071 0.0412,-0.122222 z m -10.4698,0.04071 0.16295,0.244437 0.20371,0.04071 c 0.1186,0.0317 0.22323,0.0419 0.32591,0.04071 -0.14732,0.0926 -0.29498,0.125319 -0.48892,0.0815 l -0.20365,0.651805 c 0.38766,0.0877 0.63454,0.218981 0.77404,0.448128 l -0.48884,0.244426 0.40737,0.0815 0.0815,-0.285165 c 0.12196,0.224807 0.1521,0.502574 0.0409,0.855506 l 0.6518,0.162947 -0.36668,1.099932 -0.61102,-0.12221 0,2.118384 -1.34444,1.140676 0.20373,0.325907 -1.75174,2.403568 0.44815,-0.122223 0.24434,0.0815 -0.12224,0.407387 -0.28506,-0.04071 -0.28519,-0.325901 -0.2852,-0.04071 -0.12217,0.488854 -0.2852,-0.0815 2.48502,-7.781019 0.24449,-0.04071 -0.2852,0.977728 0.65179,0.122203 0.40737,-1.303618 -0.44807,-0.0815 0.0408,-0.12221 -0.20365,-0.0815 -0.28526,0 0.0409,-0.122217 0.28519,-0.04071 0.0815,-0.203689 -0.24436,-0.0815 0.16295,-0.570333 -0.20372,-0.285179 0.0815,-0.203684 0.2852,-0.08151 z m 6.68111,0.04071 0.20372,0.04072 -0.0412,0.122221 -0.16299,-0.16296 z m 7.86256,0 0.0412,0.162959 -0.2851,-0.0815 0.24437,-0.0815 z m -20.04336,0.122223 0.44813,0.774027 -0.32589,0.162948 -0.16294,-0.04071 0.0408,-0.896239 z m -0.69258,0.04071 0.20373,0.04071 -0.12225,0.44811 -0.20365,-0.04071 0.12217,-0.44811 z m 19.88041,0.162947 -0.0815,0.244427 -0.20379,-0.04071 0,-0.08151 0.28525,-0.122215 z m -1.38509,0.122217 0.0815,0.12221 0,0.285174 -0.44803,-0.122221 0.16293,0 0.20364,-0.285163 z m 3.87022,0.12221 0.24437,0.0815 0,0.285168 0,0.651817 0,0.12221 -0.3259,0.122218 -0.40736,-0.0815 0.2851,-1.140676 0.0412,0 c 0.0635,-0.008 0.10283,-0.0322 0.16292,-0.04071 z m -25.38015,0.122215 0.36659,0.488864 -0.48877,-0.122221 0.12218,-0.366643 z m 35.40179,0.04072 0.20365,0.04071 -0.12219,0.366643 -0.20365,-0.04071 0.12219,-0.366642 z m -11.44752,0.122217 -0.0412,0.20369 -0.77408,0.0815 -0.20371,-0.0815 0,-0.04071 1.01844,-0.162947 z m 6.43666,0 -0.0412,0.20369 0.40736,0.0815 0.0412,-0.162959 -0.40737,-0.122204 z m -27.17259,0.244426 0,0.20369 -0.40737,0.203695 0.32589,0.325905 -0.12225,0.0815 -0.28519,-0.0815 0.0815,-0.325905 -0.12224,-0.04071 0,-0.04071 0.52961,-0.325906 z m 3.1368,0 0.36673,0.0815 -0.24449,0.692552 -0.32589,-0.0815 0.20365,-0.692554 z m 8.31073,0 0.40738,0 0,0.04072 -0.40738,0 0,-0.04072 z m -13.60671,0.0815 0.20372,0.04071 -0.36659,1.34436 c -0.019,-0.298213 -0.0905,-0.486778 -0.2445,-0.570334 l 0.0408,-0.325914 0.36667,-0.488855 z m 10.3069,0.0815 0.24442,0.08151 -0.12225,0.448121 -0.28512,-0.04071 0.16295,-0.488854 z m 2.1184,0.04071 0.24442,0.04072 -0.0815,0.244438 0.0409,0.162947 c -0.01,0.196904 0.0324,0.3372 0.12225,0.448129 l 0,0.0815 -0.16295,0 -0.40738,0.448118 -0.20371,0 0.24449,-0.855499 0.16295,-0.285165 -0.0409,-0.04071 0.0814,-0.244438 z m 1.38507,0.04072 0.24449,0.285181 0,0.285162 c -0.1626,-0.11746 -0.28096,-0.253465 -0.40744,-0.366642 l 0.16295,-0.203701 z m -7.69958,0.203701 0.28519,0.04071 -0.16294,0.488853 -0.24442,-0.0815 0.12217,-0.448124 z m 13.97335,0.0815 0.20372,0.04072 0.3259,0.488863 -0.0815,0.244427 -0.20372,-0.0815 -0.0815,-0.0815 0,-0.162954 -0.20372,0 c 0.013,-0.155332 0.0419,-0.321875 0.0412,-0.448113 z m -16.5399,0.0815 -0.12217,0.366645 -0.0408,1.42584 -0.65179,0.814768 0.36666,0.0815 -0.4482,0.12221 -0.0814,0.244434 0.28513,0.325908 -0.0408,0.203684 -0.57032,0.611084 0.0814,0.977715 -0.85545,1.42584 0.2852,0.285163 -0.61117,-0.122216 0.44815,-1.548044 -1.50731,0.855492 0.28519,0.285177 -1.01846,0.448112 c -0.11119,-0.219249 -0.21802,-0.417466 -0.3259,-0.651809 -0.007,-0.01068 0.007,-0.03003 0,-0.04071 l 0.12225,-0.774026 0.28506,0.08149 0.69257,0.448131 c -0.20049,-0.679503 -0.55913,-1.090607 -1.14064,-1.222156 l 0.20371,-0.692551 c 0.0148,-0.04611 0.0268,-0.077 0.0408,-0.122211 l 0.12225,-0.04071 0.0408,-0.203697 -0.0815,-0.04071 c 0.0676,-0.225718 0.10802,-0.449745 0.16295,-0.651808 l 0.16295,-0.122211 0.0408,-0.203696 -0.0408,-0.122211 c 0.0591,-0.239834 0.045,-0.41041 0.0815,-0.611077 0.21653,-0.04123 0.45003,-0.154953 0.69256,-0.366645 -0.087,0.522228 -0.0359,0.83279 0.24436,0.896243 l -0.32591,0.20369 -0.0409,0.0815 c -0.18048,0.112427 -0.37512,0.243488 -0.52962,0.366644 l -0.0409,0.244427 0.40737,0.122217 -0.3259,1.670267 0.57039,0.122223 0.12225,-0.407388 0.44807,-0.20369 -0.28519,-0.285171 -0.28513,-0.0815 0.0815,-0.203703 1.50731,0.122223 0.20372,-0.692551 -0.52961,-0.122217 0.12224,-0.407388 0.57032,0.122223 0.3666,-1.140675 0.2445,-0.162947 -0.20366,-0.04071 0.48878,-1.548063 0.3259,-0.122216 z m -6.11072,0.04071 0.24443,0.0815 -0.12225,0.366648 -0.20365,-0.04071 0.0815,-0.407384 z m 24.0357,0 0.16299,0.244435 0.20365,0.0815 0.32598,-0.122211 -0.0412,0.162948 c -0.39625,0.03678 -0.72569,0.117895 -0.9778,0.203703 l -0.0412,0 -0.16292,-0.04071 0.28518,-0.448129 0.24444,-0.0815 z m -12.01784,0.0815 0.61102,0.122222 -0.12217,0.40738 -0.48885,-0.529602 z m 3.95161,0.122222 0.32597,0.0815 -0.0408,0.162961 -0.28527,0.08149 0,-0.04072 0,-0.285163 z m 4.80717,0.04071 0.20372,0.04071 0,0.04071 -0.20372,0 c 0.007,-0.03029 -0.008,-0.05197 0,-0.0815 z m -13.8104,0.0815 0.28519,0.0815 -0.0815,0.611071 -0.36661,0.122217 0.0408,-0.407387 0.12224,-0.407381 z m 29.57617,0.04071 0.20371,0.04071 -0.12211,0.366638 -0.20386,-0.04071 0.12226,-0.366645 z m -7.45505,0.325901 0.40736,0.122217 -0.0816,0.44813 -0.40736,-0.24444 0.0815,-0.325907 z m -26.35794,0.04071 0.40745,0.122217 -0.0815,0.20369 -0.40738,-0.122211 0.0815,-0.203696 z m 1.67034,0 0.20365,0.244427 -0.0408,0.203697 -0.32589,-0.325907 0.16294,-0.122217 z m 18.16932,0.04071 c 0.16191,0.08751 0.27579,0.183869 0.4889,0.285165 -0.0188,0.05763 -0.0412,0.139607 -0.0412,0.203703 l -0.52955,0 c 0.0318,-0.173219 0.0607,-0.336075 0.0815,-0.488868 z m -3.25906,0.203691 0.16299,0 0,0.04071 -0.16299,-0.04071 z m -12.14006,0.203697 -0.0815,0.570334 -0.0409,0.244434 -0.2852,-0.0815 0.0408,-0.611066 0.36661,-0.122223 z m -3.29982,0.0815 0.24449,0.04071 -0.12224,0.488848 -0.2852,-0.04072 0.16295,-0.488854 z m 10.71426,0.04071 0.73328,0.162947 0,0.0815 -0.0815,0.244427 -0.0815,0.122217 0,0.162947 0,0.04071 -0.12224,0.285177 -0.0815,0 -0.20365,-0.285177 c 0.0169,-0.323296 -0.0655,-0.59918 -0.16295,-0.814762 z m 20.00264,0 c -0.17823,0.666658 0.096,1.38752 0.69246,2.11839 l 0.24445,-0.122223 0.16292,0.244428 -0.0404,0.162959 c -0.24633,-0.0658 -0.49568,0.01235 -0.69247,0.162948 -0.0426,-0.01569 -0.0738,-0.02978 -0.12226,-0.04071 l -0.36664,0.12221 c 0.14025,-0.443853 0.0621,-0.727069 -0.3259,-0.814768 l -0.40736,0.122217 -0.0412,0.0815 -0.28525,-0.203698 c 0.2165,-0.513563 0.44528,-0.709851 0.81487,-0.61107 l 0.12212,-0.407388 -0.61109,-0.162947 0.85554,-0.651808 z m 2.40353,0.04071 0.3259,0.488862 -0.12218,0.448124 -0.28518,-0.570341 0.0815,-0.366645 z m -17.96573,0.0815 0.28518,0.08149 -0.12219,0.407388 -0.24445,-0.325907 0.0815,-0.162954 z m -14.25848,0.04071 0.2852,0.04071 -0.0815,0.203684 c -0.1131,0.03299 -0.21802,0.0873 -0.3259,0.122223 l 0.12218,-0.36665 z m 15.76583,0 0.73334,0 -0.0815,0.203698 -0.69262,0.0815 c 0.0224,-0.106711 0.0202,-0.183926 0.0412,-0.28517 z m -3.9924,0.08149 0.0408,0 0,0.122224 -0.0408,0 0,-0.122224 z m 19.6767,0 0.20366,0.04071 -0.20366,0.814774 -0.20364,-0.04071 0.20364,-0.814775 z m -28.43544,0.162947 0.57033,0.122224 -0.24443,0.692551 -0.3666,-0.611071 0.0409,-0.203704 z m 2.15918,0.04071 -0.0815,1.140682 0.6111,0.162953 0.0815,-1.181412 -0.61102,-0.122223 z m 19.55449,0.122223 0.16292,0.04071 -0.12226,0.448124 -0.20364,-0.04071 0,-0.04071 0.0412,0 0.12219,-0.407386 z m -13.44377,0.04071 0.12224,0 0.2852,0.733294 -0.12224,0.162947 -0.16296,0 -0.20372,-0.611077 c 0.008,-0.01132 -0.007,-0.02926 0,-0.04071 l 0,-0.04071 c 0.0261,-0.0655 0.0556,-0.134044 0.0815,-0.203684 z m 6.31442,0 0.40743,0 -0.0815,0.488867 -0.32591,0 0,-0.488867 z m 4.03321,0 0.24437,0.04071 -0.0412,0.162947 -0.24437,-0.0815 0.0412,-0.122217 z m -25.70601,0.0815 0.0815,0.04071 -0.0408,0.203691 -0.0815,-0.04071 0.0409,-0.203691 z m 38.17198,0.0815 -0.0404,0.16296 0.0404,0.04071 0,-0.203703 z m -21.55062,0.04071 0.0815,0 0,0.325907 -0.20371,-0.04071 0.12226,-0.285177 z m -10.91802,0.24444 c 0.27324,-0.0456 0.67948,-0.01338 1.18149,0.04071 l -0.12225,0.407375 c -0.38758,-0.0877 -0.75003,0.182197 -0.93699,0.774025 l -0.57039,-0.896235 c 0.0521,-0.166453 0.17492,-0.28029 0.44814,-0.325907 z m 14.09555,0.04071 0.32591,0 -0.12227,0.203684 -0.20364,0 0,-0.203684 z m 0.77407,0 0.0815,0 0,0.203684 -0.0412,0 -0.0412,-0.203684 z m 15.15462,0.04071 0.48896,0.122217 -0.2851,1.018452 -0.36679,-0.488855 0.16293,-0.651814 z m -17.96566,0.04071 0.24445,0.04071 -0.28518,0.08149 0.0412,-0.122217 z m 10.83652,0 0.20371,0.04071 -0.0412,0.122217 -0.24453,0.12221 0,0.08149 -0.0412,0 0.0412,-0.08149 0.0815,-0.28517 z m 9.57354,0.122216 -0.12226,0.0815 -0.0815,0.162948 0.20372,0.24444 0,-0.488867 z m -13.8104,0.0815 0.40744,0.08151 -0.32591,0.448117 -0.32591,-0.08149 -0.0412,-0.162948 0.28517,-0.28517 z m -10.42903,0.04071 0.12224,0.0815 0,0.244441 -0.16296,-0.04071 c 0.0324,-0.102434 0.0169,-0.18859 0.0409,-0.285164 z m 13.85116,0.04071 0.61108,0.529604 0.0412,0.04071 -0.12226,0.611071 c -0.17382,-0.130172 -0.33515,-0.283846 -0.48889,-0.366643 -0.0434,-0.245586 -0.0715,-0.515154 -0.0412,-0.814768 z m -8.5551,0.04071 0.36656,0 0,0.244441 -0.36656,0 0,-0.244441 z m -16.45841,0.0815 0.16295,0.04071 -0.12225,0.407388 -0.28512,-0.0815 0.0815,-0.285164 0.16295,-0.0815 z m 4.19604,0.203696 0.52961,0.122211 0,1.181412 c -0.33906,-0.0767 -0.52095,-0.509043 -0.52961,-1.303623 z m 1.79257,0.162947 -0.24449,0.692558 0.65179,0.162954 0.20373,-0.692551 -0.61103,-0.162961 z m 3.01455,0.244428 c 0.53695,0.1214 0.5911,1.237449 0.16295,3.299809 -0.149,0.248705 -0.35582,0.702038 -0.57032,1.140682 l -0.57032,-0.122223 -0.52955,-1.344366 c 0.38758,0.0877 0.59307,-0.08569 0.73327,-0.529591 l 0.0815,-1.181419 0.20365,0.244427 0.65187,0.162961 -0.16303,-1.67028 z m 9.69579,0.04071 0.12226,0.122223 -0.24452,0.285164 -0.12211,0.448118 -0.12227,0 -0.2851,-0.08149 -0.0412,-0.448124 0.0815,-0.12221 0.24438,0.244427 0.36671,-0.448124 z m 5.37749,0 c 8e-5,0.306009 -0.15627,0.448156 -0.57035,0.448131 l 0,0.203689 0.40744,0 -0.36671,0.651815 -0.40729,-0.0815 0.0815,-0.0815 0,-0.285171 -0.0412,-0.04071 0.40736,-0.774024 c 0.15952,-0.009 0.31262,-0.04072 0.4889,-0.04072 z m -13.44365,0.04071 0.28513,0.04071 -0.44815,1.262892 -0.0815,0.325907 c 0.19801,0.0814 0.36673,0.16669 0.52968,0.244428 l -0.24442,0.448124 -0.12225,-0.203698 -0.32589,0.162954 -0.24443,-0.04071 c 0.0669,-0.141872 0.13048,-0.272495 0.20366,-0.488861 l -0.20366,0 0.16294,-0.488855 0.0409,0.04071 0.2852,0 0.16294,-1.303629 z m -8.18848,0.0815 0.57031,0.122217 -0.16294,0.407387 -0.40737,-0.529604 z m 13.15857,0.0815 0.0815,0.0815 -0.16299,-0.04071 0.0815,-0.04071 z m 4.35897,0 0.3259,0 c -0.0462,0.254267 -0.0753,0.448645 -0.0815,0.651808 l -0.61108,0 0.0815,-0.570328 0.2851,-0.0815 z m -3.13688,0.0815 0.0815,0.488855 c -0.20415,-0.106769 -0.3488,-0.234986 -0.4481,-0.407387 l 0.36656,-0.0815 z m -1.75172,0.0815 -0.12226,0.488861 -0.16292,0 0,-0.407381 0.28518,-0.0815 z m 18.00639,0.04071 0.20371,0.04071 -0.16299,0.651808 -0.20365,-0.0815 0.16293,-0.611078 z m 0.65188,0 0.48883,0.122217 -0.40744,1.466576 -0.16292,-0.04071 c -0.0833,-0.01884 -0.17101,0.0209 -0.24445,0.04071 l 0,-0.366638 0.32598,-1.222155 z m -21.22482,0.04071 0.12225,0 0,0.04071 -0.12225,-0.04071 z m 3.50354,0.122216 c 0.0814,0.03608 0.13432,0.0796 0.20371,0.12221 l -0.24451,0.04071 0.0412,-0.162954 z m -12.1808,0.0815 0.28519,0.04071 -0.28519,0.896248 -0.28519,-0.04071 0.28519,-0.896236 z m 1.7925,0.162947 -0.12225,0.448125 0.61102,0.12221 -0.48877,-0.570335 z m 19.59521,0 c 0.0448,0.04103 0.15504,0.119452 0.20365,0.16296 l -0.0815,0.529591 -0.89625,2.851679 -0.57036,0.814775 0.36663,1.059196 -0.6518,-0.162961 -0.36664,2.077661 -0.52962,-0.122217 0,-0.977722 0.3259,-0.12221 0.0815,-0.20369 0.16292,-1.466576 0.48896,-0.570348 -0.12226,-0.122204 c 0.0282,-0.0546 0.0412,-0.127202 0.0412,-0.203704 l 0.20365,-0.122203 -0.40737,-0.570342 0.36663,-0.122223 0.24446,0.04077 0.0815,-1.140669 0.36664,-1.140669 0.52963,0.122204 0.16291,-0.611071 z m 1.26289,0.0815 0.12212,0.162948 -0.16291,-0.04071 0.0412,-0.122211 z m 1.83319,0.122204 0.0815,1.629543 0.48889,0.122216 0.20372,-0.203696 -0.24451,0.814768 c -0.11468,-0.189766 -0.15693,-0.281325 -0.28511,-0.488861 l -0.20372,0.08149 c -0.0217,-0.01768 -0.0556,-0.02406 -0.0815,-0.04071 l -0.40737,-0.651808 0.4481,-1.262898 z m 0.52962,0 0.36656,0.08151 0,0.08149 -0.2443,0.366651 -0.24445,-0.0815 0.12219,-0.448123 z m 3.78869,0.16296 0.20372,0.04071 -0.12219,0.44813 -0.20372,-0.0815 0.12219,-0.407381 z m 1.79245,0.244428 0.20371,0.0815 0,1.059202 0,0.04071 c -0.0499,0.0364 -0.11669,0.06418 -0.16291,0.12221 l -0.36664,-0.0815 0.32584,-1.222149 z m -32.10193,0.04071 0.24449,0.0815 -0.97776,3.096113 -0.24444,-0.04072 0.97771,-3.136855 z m 29.57621,0.16296 0.0815,0.04071 -0.16299,0.611071 -0.20372,-0.04071 0.12219,-0.448124 0.16299,-0.162947 z m -14.01412,0.162947 0.20372,0 0,0.488861 -0.20372,0 0,-0.488861 z m 11.69204,0.0815 0.20365,0.0815 0.0412,0.244427 -0.28518,-0.20369 0.0412,-0.122217 z m -24.28015,0.0815 -0.16295,0.448124 0.61103,0.162947 0.16295,-0.488854 -0.61103,-0.122217 z m 27.13185,0.04071 0.20365,0.04071 0.0404,0.692545 -0.40751,-0.122217 0.16299,-0.611065 z m -29.04659,0.04071 0.28511,0.04071 -0.20365,0.651807 -0.24442,-0.08149 0.16296,-0.611078 z m 31.57232,0.20369 0.40736,0.122211 -0.0815,1.059201 -0.0815,0.325902 -0.24452,-0.0815 0.0815,-1.140668 c -0.0556,-0.01248 -0.11208,-0.0051 -0.16292,0 l 0.0815,-0.285171 z m -19.55446,0.244421 0.0412,0 0,0.448124 -0.20366,0 0.16293,-0.448124 z m -5.54049,0.04071 0.69257,0.16296 -0.57031,1.181418 -0.3259,0.448112 -0.0815,0 0.20365,-0.611071 0,-1.059202 c 0.0345,-0.02843 0.0472,-0.0737 0.0815,-0.122217 z m 5.94785,0.203696 0.40743,0 0,0.488856 0.24446,0 0.0412,-0.04071 -0.0412,0.285171 -0.32598,0.0815 -0.0412,-0.12221 0.0412,-0.203697 -0.36664,-0.0815 -0.16291,0.04071 c 0.14074,-0.121554 0.20364,-0.256872 0.20364,-0.448111 z m 13.89186,0 0.24445,0.04077 0.12212,0.733296 -0.0814,0.24442 -0.40737,-0.611071 0.12219,-0.407382 z m -11.81423,0.203691 0.0815,0 -0.20364,0.896249 -0.0815,0.04077 -0.20364,-0.203703 c -0.10349,0 -0.16459,0.009 -0.24453,0.04071 l 0.20372,-0.651809 0.4481,-0.122216 z m 0.77414,0 0.48883,0 0.16291,0.04077 -0.24438,0.774025 -0.52962,0.325913 -0.24444,0 0.0815,-0.20369 0.16299,0 0,-0.203703 0.28518,-0.0815 -0.28518,-0.285164 0.12226,-0.366638 z m 2.85156,0 0.65188,0 -0.0815,0.203697 -0.61109,-0.122216 0.0412,-0.0815 z m -22.52832,0.162954 0.65188,0.162953 -0.48892,0.611084 -0.3666,-0.0815 0.20364,-0.692552 z m 14.95101,0.122211 0.20372,0 0.36664,0.0815 -0.40744,0.203691 -0.0412,0.20369 0.0412,0.122217 -0.16292,0.04072 -0.20364,0 0.20364,-0.651814 z m 20.00262,0.04077 0.20365,0.04071 -0.0404,0.203703 -0.20364,-0.04077 0.0412,-0.203697 z m -18.82118,0.16296 0.24445,0.04071 -0.0412,0.203691 -0.28511,0.04071 0.0815,-0.285163 z m 6.19222,0 0.28518,0.04071 -0.0412,0.0815 -0.24445,-0.0815 0,-0.04071 z m 6.15149,0.203684 0.65189,0.122217 0.28517,0.855511 c 0.0274,0.313984 0.0361,0.616172 -0.0412,0.936979 l -0.20378,-0.0815 0.16306,-0.448131 -0.57035,-0.122204 -0.0404,0.203684 0.32591,0.814769 -0.32591,0.122223 c -0.10514,0.332917 -0.0224,0.6072 0.28511,0.774019 -0.0404,0.109907 -0.0737,0.220007 -0.12219,0.3259 l -0.24445,0.0815 0.12226,-0.407381 -0.57036,-0.122217 -0.24451,1.751754 c -0.17065,0.174317 -0.36786,0.371197 -0.57028,0.529591 l 0.20372,-0.285165 c 0.0901,-0.61374 -0.12653,-0.990327 -0.61101,-1.099938 l 0.12218,-0.407381 0.61109,0.122217 0.12225,-0.285164 -0.32597,-0.28517 0.44802,-0.122211 0,-1.181418 0.52962,-1.79249 z m -27.37621,0.04077 0.81474,0.407381 -0.3259,1.099932 -0.28519,-0.0815 -0.3259,-1.018459 0.12225,-0.407387 z m 2.48507,0.04071 0.57032,0.122217 -0.0815,0.20369 -0.52962,-0.122216 0.0409,-0.203691 z m 32.0205,0.122217 0.2851,0.04071 -0.20372,0.692557 -0.2851,-0.04071 0.20372,-0.692552 z m -23.30246,0.04071 0.20365,0 0,0.20369 -0.24442,-0.04071 0.0408,-0.162954 z m 10.14387,0 0,0.0815 -0.0412,0 0.0412,-0.0815 z m 11.81417,0.28517 -0.36664,1.34436 -0.0412,0 0.40737,-1.34436 z m -11.48827,0.08151 0.24446,0.08149 -0.0815,0.203704 -0.28518,0.122203 0.12226,-0.407374 z m 10.30682,0 0.0404,0 c 0.0274,0.198744 0.008,0.41805 -0.0404,0.651807 l -0.16291,-0.04071 0.16291,-0.611071 z m 1.58881,0 0.12226,0.04071 0,0.203697 -0.16299,-0.04077 0.0404,-0.203684 z m -16.3362,0.122203 0.16307,0 -0.44817,0.448124 -0.20372,0 0.48882,-0.448124 z m 3.13695,0 0.28518,0 -0.0816,0.448124 -0.32576,0 0.12219,-0.448124 z m -22.44697,0.203697 0.0815,0.12221 -0.0408,0.0815 c -0.0105,-0.0687 -0.0409,-0.136095 -0.0409,-0.203684 z m 20.16555,0 0.52963,0 0.0815,0.0815 -0.0815,0.325907 -0.61108,-0.122217 0.0815,-0.285164 z m -18.90267,0.0815 0.20381,0.04071 0,0.24444 c -0.0662,-0.09659 -0.13838,-0.184004 -0.20381,-0.285171 z m 10.71428,0.20369 -0.0815,0.285171 -0.0409,0.0815 -0.0408,0.122211 -0.16296,-0.20369 0.32591,-0.285165 z m 19.71745,0 0.20372,0.04077 -0.0816,0.162947 c -0.0282,-0.05376 -0.0916,-0.146669 -0.12212,-0.20369 z m -4.15533,0.04077 0.61109,0.122204 -0.0815,0.24444 -0.61109,-0.16296 0.0815,-0.203684 z m 7.94395,0 0.16299,0.04071 -0.28518,0.977715 -0.12218,-0.04071 0.24437,-0.977715 z m -29.45391,0.08149 1.2221,0.08151 -0.20364,0.611077 -1.26289,0 0.24443,-0.692557 z m 10.9179,0.04077 0.65189,0 0,0.203698 -0.12227,0 -0.61101,-0.162967 c 0.0296,-0.0137 0.0505,-0.02714 0.0815,-0.04072 z m 14.2993,0.0815 0.2851,0.407388 -0.2851,0.448124 -0.24453,-0.04071 0.24453,-0.814774 z m 1.14064,0.325907 0.12218,0.611085 -0.28517,-0.08149 0.16299,-0.529617 z m 4.15532,0.04071 0.12218,0 c -0.0643,0.203967 -0.0578,0.392093 0,0.529611 l -0.0412,0 -0.12218,0.40738 0.0404,0.896236 -0.40743,0.48886 -0.20366,-0.04071 0.32592,-1.181412 -0.44817,-0.122217 0.24452,-0.814768 0.40737,0.12221 0.0815,-0.285164 z m -17.23246,0.04077 0.36671,0 0,0.285164 -0.24445,0.0815 -0.12226,-0.04071 0,-0.325908 z m 0.77408,0 0.40743,0 -0.16299,0.570328 -0.24444,-0.04077 -0.0815,-0.08149 0.0815,0 0,-0.448125 z m 2.03697,0 0.40743,0 -0.12226,0.692551 c -0.14601,0.15267 -0.34873,0.249644 -0.57036,0.325907 l -0.61107,-0.44813 c 0.0967,0.02907 0.20248,0.06438 0.3259,0.08151 0.41408,0 0.57036,-0.192808 0.57036,-0.651821 z m -22.44697,0.04071 c 0.01,0.01794 0.0708,0.02238 0.0815,0.04071 l -0.0815,0 0,-0.04071 z m 2.77021,0.04071 0.81481,0.203691 -0.0815,0.203691 -0.81482,0.0815 c -0.0204,-0.02167 -0.0204,-0.05936 -0.0409,-0.0815 l 0.12219,-0.407382 z m 21.42854,0 0.28511,0.162947 -0.0815,0.203698 -0.28518,-0.04072 0.0815,-0.325907 z m -2.32214,0.0815 0.28517,0.0815 -0.28517,0 0,-0.0815 z m -14.29929,0.366651 0.48893,0.529591 -0.20372,0.651808 -0.0409,0 -0.24436,-0.325901 -0.52968,-0.122216 c -0.0472,0.151004 -0.13914,0.279388 -0.24442,0.366637 l -0.85552,-0.24417 c -0.0472,-0.231808 -0.2221,-0.400878 -0.61109,-0.488847 l 0.0409,-0.203704 0.57032,0.122217 0.20372,0.244427 c 0.1052,-0.332892 0.56891,-0.44604 1.42576,-0.529591 z m 3.17766,0.325901 0.36666,0.448118 -0.65186,-0.122211 0.2852,-0.325907 z m 21.67297,0 0.12212,0.20369 c -0.0203,0.075 -0.0868,0.163629 -0.12212,0.244428 l -0.12226,-0.04072 0.12226,-0.407381 z m -1.34443,0.122204 0.20372,0.366644 -0.0412,0.203696 -0.24452,-0.366637 c 0.0223,-0.0703 0.0614,-0.131941 0.0815,-0.203703 z m -25.90971,0.407393 0.24449,0.04071 -0.12225,0.407381 -0.24442,-0.04071 0.12218,-0.407375 z m -1.50733,0.0815 0.20373,0.04071 -0.0408,0.12221 c -0.0613,-0.04219 -0.10226,-0.117657 -0.16295,-0.162947 z m -3.9109,0.08149 c 0.19837,0.04489 0.36561,0.106916 0.52963,0.12221 l 0.48891,0.611078 0,-0.488855 -0.12225,-0.122223 c 0.17359,-0.01093 0.33161,-0.06569 0.44815,-0.12221 0.15583,0.200127 0.30519,0.427061 0.48876,0.651808 l -0.32581,0.44813 -0.12225,-0.122216 -0.0815,-0.162954 -0.28513,-0.04071 -0.65179,0.285163 0.0409,0.611071 c -0.1697,-0.150598 -0.32843,-0.324588 -0.48892,-0.488866 l 0.0815,-0.203684 -0.36666,-0.08151 c -0.15513,-0.172163 -0.30251,-0.344777 -0.44807,-0.529584 l 0.65179,0.12221 0.16294,-0.488861 z m 11.73266,0.244433 0.44814,0 0,0.488855 -0.44814,0 0,-0.488855 z m 11.69207,0 0.16292,0 0,0.122211 -0.16292,-0.122211 z m -4.44057,0.04071 0.16298,0.285164 -0.0412,0.16296 -0.97772,0 -0.28518,0 0,-0.04071 c 0.0968,0.02193 0.19541,0.06135 0.28518,0.04071 0.17946,-0.04109 0.35956,-0.196397 0.48882,-0.407387 l 0.36671,-0.04071 z m -0.73335,0.04071 0,0.04071 -0.52955,0 0.52955,-0.04071 z m 2.19989,0.04071 c 0.0999,0.07689 0.15707,0.226767 0.16306,0.366644 l -0.69261,0 0.16299,-0.285171 0.36656,-0.08151 z m 17.1102,0.04077 0.16291,0.04072 -0.0412,0.16296 -0.16291,-0.08149 0.0412,-0.122223 z m -21.14319,0.04072 0.12211,0 c 0.12616,0.06322 0.21982,0.154702 0.24445,0.285171 l -0.36656,0 0,-0.285171 z m 11.69189,0.44813 0.52956,0.122211 -0.0815,0.244427 -0.52962,-0.12221 0.0815,-0.244428 z m -13.03635,0.08149 0.16295,0.122224 -0.0815,0.20369 -0.0815,-0.04071 0,-0.28517 z m -4.11455,0.08151 0.24442,0.04071 0.12224,0.08149 0.16295,0 -0.0815,0.24444 -0.36667,0.203691 -0.12218,0.04071 0,-0.0815 0.12218,0.04071 0.0409,-0.20369 -0.12217,-0.285158 0,-0.08151 z m 25.42076,0.04071 0.12225,0.448112 -0.12225,0.285176 0,-0.733288 z m -16.17314,0.162947 -0.0412,0.203697 -0.0412,0.488854 -0.93699,-0.12221 -0.0815,-0.0815 0.77407,-0.366644 -0.36671,-0.08151 0.69262,-0.04071 z m -3.50351,0.04071 -0.0412,0.122217 -0.28513,-0.0815 0.32586,-0.04071 z m 4.76634,0 0.44816,0.0815 0,0.04071 0,0.203691 c -0.19043,-2.6e-5 -0.2989,0.04785 -0.40736,0.12221 l -0.0412,-0.448112 z m -2.56645,0.04071 -0.1222,0.448118 -0.61107,-0.0815 -0.24445,-0.244433 -0.0815,0.203691 -0.28518,-0.04071 0.0815,-0.244421 0.0815,0 0.20372,0.0815 -0.0412,-0.0815 0.28525,0 0.73327,-0.04071 z m 3.78869,0 0.12218,0.04071 -0.12218,0 0,-0.04071 z m -15.27695,0.04071 0.16296,0.244414 0.28519,0 0.16296,-0.122204 0.28512,0.285164 -0.32597,0.366644 c -0.76179,0.01801 -1.19923,0.124764 -1.26282,0.325907 l -0.0815,0.203691 0.28512,0.0815 0.52963,0 -0.24443,0.285171 c -0.30675,1.3e-5 -0.72461,-0.157493 -1.18142,-0.36665 l 0.12225,-0.325908 -0.36667,-0.08149 -0.3259,0.162961 c -0.3254,-0.183915 -0.67355,-0.425255 -1.0593,-0.692552 0.52996,0.119876 0.94086,0.02097 1.22225,-0.28517 0.45195,0.0971 0.89644,0.16294 1.38507,0.16294 l 0.0815,0 0.16296,0.04071 0.0408,-0.162941 0.12225,-0.122211 z m 1.9147,0.08149 c 0.012,0.27818 0.17506,0.47167 0.61108,0.570335 l -0.0408,0.122216 -0.16296,0.0815 c -0.40166,-0.03338 -0.77868,-0.0703 -1.1,-0.0815 0.18753,-0.174176 0.46539,-0.465514 0.69257,-0.692551 z m 25.17634,0 0.12225,0.04071 -0.24445,1.018446 -0.1221,-0.04071 0.2443,-1.018458 z m -10.95863,0.0815 0.24444,0.0815 -0.0815,0.285164 -0.16307,0 0,-0.366644 z m -20.81735,0.122217 c 0.29646,0.344616 0.63236,0.712257 0.97769,1.099932 l -0.73327,-0.162947 c -0.29393,-0.250795 -0.58272,-0.525243 -0.85551,-0.814761 l 0.61109,-0.122224 z m -1.05924,0.244421 0.44815,0.733301 -0.3259,0 c -0.23132,-0.135305 -0.47378,-0.249933 -0.69257,-0.407388 0.0472,-0.0675 0.0914,-0.146842 0.12225,-0.244427 l 0.44807,-0.0815 z m 23.22094,0.162959 0.57042,0.122224 0,1.181412 -0.44816,0.122211 -0.52962,-0.122211 0.40736,-1.303636 z m 11.28461,0.122224 -0.20372,0.407381 0.0815,-0.325914 0.12226,-0.0815 z m -16.29539,0.122211 0.24437,0 0,0.0815 -0.24437,-0.04071 0,-0.04071 z m -19.67669,0.122223 c 0.0288,0.0058 0.0543,-0.0051 0.0815,0 l 0.0815,0.0815 -0.36668,0 0.20373,-0.0815 z m 29.1687,0.04071 -0.0412,0.366645 -0.2851,-0.08149 c 0.11951,-0.0874 0.21484,-0.191773 0.32591,-0.285171 z m 3.82949,0 0,0.0815 -0.0412,0 0.0412,-0.0815 z m -0.97772,0.04072 0.20365,0.0815 c -0.0722,0.0648 -0.16963,0.100814 -0.24437,0.162967 -0.19195,0.159404 -0.36801,0.338526 -0.57036,0.488854 -0.0776,-0.0803 -0.13973,-0.20169 -0.20372,-0.325907 0.15721,-0.07859 0.28431,-0.161455 0.44816,-0.244426 l 0.32592,0.08149 0.0412,-0.203691 c 0.008,-0.0032 -0.007,-0.03775 0,-0.04071 z m -23.54694,0.20369 -1.09986,0.529605 -0.16296,0 0,-0.203704 c 0.10873,2e-5 0.29661,-0.111032 0.52956,-0.285157 l 0.73326,-0.04071 z m -4.9293,0.122211 c 0.12972,0.145332 0.23014,0.256093 0.36667,0.407394 l 0,0.20369 c -0.0655,-0.04251 -0.139,-0.07821 -0.20373,-0.12223 l 0.0409,-0.08149 -0.16295,-0.04071 c -0.0795,-0.05589 -0.16598,-0.104679 -0.24442,-0.16296 l 0.16294,-0.04071 0.0408,-0.162947 z m 10.02163,0.0815 0.36667,0.244427 -0.0815,0.0815 -0.20365,0 c 0,-0.120718 -0.0366,-0.228226 -0.0815,-0.325907 z m -2.03693,0.325907 0.65187,0 0,0.203684 -0.65187,0 0,-0.203684 z m 6.64041,0 0.40743,0 0,0.0815 -0.24444,0.122223 -0.16299,0 0,-0.203684 z m -3.0961,0.122204 0.40738,0.08151 -0.40738,0 0,-0.08151 z m 5.82561,0 0.24445,0.04071 0.24438,0.285171 0.0815,0 0,0.407385 c -0.36143,0.03119 -0.75789,0.0611 -1.14064,0.08149 l 0.32592,-0.488858 c 0.079,-0.0039 0.15569,0 0.24444,0 l 0,-0.325908 z m -6.47747,0.325907 0.65186,0 0,0.488859 -1.01847,0 0.36661,-0.488859 z m 8.18846,0.04071 0.28525,0.08151 -0.0412,0.122208 c -0.1063,0.0146 -0.21759,0.02721 -0.32598,0.04077 l 0.0815,-0.244426 z m 9.41063,0.04071 c -0.0202,0.287618 -0.0419,0.561598 0.0412,0.774023 l -0.16299,0.0815 -0.12212,0.407382 -0.32597,-0.448119 0.57035,-0.814772 z m -12.05861,0.04077 c 0.0101,-0.0039 0.0303,0.0039 0.0412,0 l 0.0412,0.04071 -0.0815,0.244434 -0.24445,-0.04072 c 0.0426,-0.0934 0.1037,-0.184184 0.24445,-0.244427 z m -8.63658,0.162965 0.65179,0 0,0.203678 -0.65179,0.20369 0,-0.407368 z m 1.01847,0 0.48884,0 0,0.203678 -0.48884,0 0,-0.203678 z m 3.58501,0 0.3666,0 -0.3666,0.407368 -0.48892,0 0.48892,-0.407368 z m -15.1548,0.203678 0.0408,0 0,0.20369 -0.44814,0 0,-0.04071 0.40737,-0.162966 z m 3.3406,0 0.61116,0 0,0.20369 -0.61116,0 0,-0.20369 z m 4.97014,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 3.91091,0 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 18.04715,0.04071 0.0815,0 0,0.04072 -0.0815,-0.04072 z m -2.72952,0.0815 0.0412,0 -0.16299,0.488848 -0.52962,-0.122197 0.0412,-0.08151 c 0.17548,-0.07069 0.41502,-0.200828 0.61102,-0.285163 z m 5.29596,0 c 0.0722,0.0901 0.16119,0.148412 0.24445,0.244421 l 0,0.04071 -0.40744,-0.0815 c -0.0288,-0.0236 -0.0556,-0.05782 -0.0814,-0.08149 l 0.24438,-0.122217 z m -32.63144,0.285164 0.65171,0 0,0.244427 -0.65171,0 0,-0.244427 z m 2.93314,0 0.3666,0 -0.3666,0.529592 0,-0.529592 z m -3.54431,0.244427 0.44822,0 0,0.285165 -0.44822,0 0,-0.285165 z m 9.32921,0 0.61102,0 1.01846,0.285165 1.22212,-0.285165 1.30366,0 0,0.488868 -5.17373,0 0,-0.203703 1.01847,-0.285165 z m 4.52193,0 4.6035,0 -0.44817,0.488868 -0.20372,-0.203703 -1.01845,0.203703 -2.48502,0 -0.44814,-0.488868 z m 5.45896,0 0.57028,0 0,0.285165 -0.57028,0 0,-0.285165 z m 15.31767,0 c -0.0202,0.0666 -0.0296,0.136103 -0.0412,0.203697 l -0.0412,0 0.0412,-0.162953 0.0412,-0.04072 z m -30.51314,0.285165 1.01847,0 0,0.203703 -1.01847,0 0,-0.203703 z"
+       id="path2872-6-8-5-7-0" />
+    <path
+       inkscape:export-ydpi="112"
+       inkscape:export-xdpi="112"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+       d="m -523.35174,43.484319 -2.56652,0.488854 0,1.344369 0.57033,-0.61108 0.65182,0 0,0.203695 -1.22215,0.407385 0,2.077647 0.20369,0 -0.20369,0.28517 0,0.855504 c -0.12423,0.113388 -0.18884,0.189253 -0.28518,0.285169 l 0,0.488855 c 0.0956,-0.04619 0.18474,-0.0603 0.28518,-0.122209 l 0,0.733288 -0.28518,0.244425 0,8.555038 0.61109,2.240611 0.0815,0.570328 c -0.0281,0.0807 -0.061,0.167763 -0.0815,0.244443 0.0661,0.04891 0.10795,0.108164 0.16295,0.162939 l 0,0.16296 -0.24443,-0.08149 c -0.0241,-0.006 -0.0571,-0.0013 -0.0815,0 0.0359,-0.12665 0.0625,-0.256919 0.12222,-0.366641 l -0.16296,-0.611077 -0.40738,0.08149 0,3.870132 c 0.0135,-0.002 0.0267,0.004 0.0407,0 l 0.2037,-0.04072 0.0407,-0.04072 0,0.855512 c -0.0897,0.261716 -0.19028,0.502086 -0.28519,0.692553 l 0,0.977717 0.24444,0.08149 -0.0407,0.162953 -0.20369,-0.08151 0,11.12157 0.16296,-1.181417 0.12222,0.04072 0,1.018451 0.20368,0 0.48886,0.529593 c -0.0998,0.08211 -0.1897,0.193415 -0.24443,0.366648 l -0.20369,-0.244429 -0.0815,0 -0.16295,-0.651812 0,0.570335 -0.0407,0 -0.24444,0.122205 0,0.89624 0.28517,-0.122198 0,0.3259 -0.12221,-0.04072 -0.12222,0.407388 0.24443,0.04072 0.36666,-0.122218 0,0.244423 -0.36666,0 0,0.855512 -0.28517,0.08149 0,0.203701 0.28517,-0.0815 0,0.0815 c 0.41405,3.4e-5 0.57035,-0.142159 0.57034,-0.44813 l -0.20368,-0.203688 0.52959,0 -0.12222,0.08149 -0.0815,0.24443 0.1222,0 0,0.08149 0.20372,0.244429 0,0.285164 -1.01847,0 0,0.244429 3.38127,0 c 0.23466,-0.638304 0.52694,-0.977717 0.93699,-0.977717 l 0,-0.407369 -0.57033,0 -0.28516,0.203688 -0.16297,0 -0.24443,-0.325919 0.0815,-0.244423 -0.24443,0.08149 -0.65182,0 -0.32591,0.122232 0,-0.04072 -0.36665,-0.0815 -0.28515,0.203693 -0.44812,-0.203693 0,-0.244423 1.05919,0 0,-0.203681 -0.20369,-0.203708 0,-0.244422 0.48886,0.162939 -0.0815,0.203707 0.57033,0.122218 0.28517,-0.04072 0.61109,0.203695 -0.0815,0.244416 0.28516,0.08151 0.57035,-0.04072 0.65182,0.244429 0,0.203701 c -0.32192,6.7e-5 -0.81629,0.386502 -1.38512,1.181392 l 18.57668,0 c 0.0815,-0.08019 0.16348,-0.163026 0.24447,-0.244423 0.2121,0.0756 0.504,0.164943 0.73324,0.244423 l 1.46664,0 -0.24446,-0.407369 1.14065,0.08149 0.20372,0.0815 -0.0408,0.162953 -0.52961,0.08149 0.73332,0 7.8625,0 0.0408,-0.162953 c 0.0608,0.03074 0.13556,0.05569 0.20371,0.0815 l -0.0408,0.0815 1.30362,0 0.36666,-0.244429 -0.0408,0.244429 2.56658,0 0.0814,-0.244429 0.24445,0.04072 -0.0815,0.203688 0.44818,0 0,-1.344365 -0.0816,0.244436 -0.24445,-0.04072 0.12219,-0.407388 0.20373,0.08149 0,-9.043901 -0.1222,-0.04072 0.1222,-0.570325 0,-1.711019 -0.2852,0.0815 -0.0411,0.203701 0.20373,0.3259 -0.6111,1.099941 -0.20365,-0.04072 0.93694,-3.503492 0,-1.588787 -0.28518,0.122211 -0.0411,1.0592 -0.65176,2.362809 -0.57038,0.28517 1.18141,-4.399731 0.36665,0.570341 0,-1.344371 -0.16293,-0.04072 0.16293,-0.570342 0,-1.833215 c -0.25976,-0.392086 -0.52387,-0.782767 -0.81476,-1.140677 l 0.81476,0.04066 0,-1.222146 -0.20365,0.855506 -0.24446,-0.0815 0.32592,-1.181418 0.12219,0.04066 0,-3.544226 -0.0815,0.285164 -0.44811,-0.122219 0.52957,-2.036913 0,-7.984701 -0.0411,0.122216 -0.81483,0 -0.65176,-0.366646 -0.81478,0 0.0408,-0.203682 -0.3259,-0.529606 0.0815,-0.285165 0.20371,0.04069 0.85554,0.774029 0.28511,-0.16296 0.0816,-0.285164 c -0.31632,-0.38756 -1.75499,-1.088807 -4.31833,-2.077654 l -1.09991,0 2.81093,1.181403 -0.1222,0.407385 0.28515,-0.162944 0.69256,0.203685 -0.48885,0.814769 -0.20371,-0.04069 -0.16295,-0.28517 -0.24439,-0.04069 -0.36665,0.122221 0.12219,-0.407385 0.36665,-0.162955 0,-0.0407 -0.24445,-0.28517 -0.24439,-0.0815 -0.28523,0.203695 -0.24438,-0.04069 -0.69257,-0.488858 -0.57037,0.366644 -1.548,-1.262883 -1.83322,0 -0.0815,0.325903 -0.24446,-0.04069 0.0815,-0.285164 -3.29978,0 1.01847,1.548048 0.20363,0.04069 -0.16296,0.692549 -0.4481,-0.12221 -0.0815,0.20369 c 0.32768,0.0876 0.56243,0.558481 0.69256,1.385098 l -0.16296,0.692549 -0.24439,-0.08149 0.1222,-0.448125 -0.73332,-0.203696 -0.16294,0.448125 0.48885,0.122215 -0.24438,0.896239 -0.48886,-0.122209 -0.20371,0.936978 0.4481,0.12222 -0.1222,0.407379 -0.44817,-0.122214 -0.12219,0.407384 0.44817,0.12221 -0.16296,0.692548 c -0.40964,-0.109511 -0.69709,0.123208 -0.93703,0.692561 -0.0222,0.0836 -0.0378,0.175137 -0.0408,0.244424 l -0.24439,-0.285164 -0.20371,0.285164 c -0.008,-0.0895 -0.008,-0.188935 0,-0.285164 l 0.20371,0 0,-0.203695 -0.16295,-0.16295 c 0.0141,-0.071 0.0208,-0.129638 0.0408,-0.203701 l 0.52953,0.162961 0.16296,-0.651808 -0.40735,-0.611086 0.93697,-1.385098 -0.20371,-0.04069 0.28522,-0.16295 0.0815,-0.285175 -0.20372,-1.466567 0.65181,-0.244436 -0.24447,-0.0815 0.44817,-0.61107 c 0.15368,-1.067492 -0.19902,-1.684755 -1.05921,-1.914691 l 0.28515,-0.162961 0.0815,-0.244423 -1.58882,0 0,0.08149 0.69256,0.162962 -0.93695,0.733289 c 0.0847,-0.316336 0.0482,-0.640173 -0.0408,-0.97772 l -1.58884,0 -0.20363,0.692554 -0.24447,-0.04069 0.16295,-0.651816 -0.93694,0 0.24439,0.488854 -0.0815,0.448125 -0.36666,-0.570334 0.0814,-0.366645 -0.4481,0 -0.85552,3.096107 c -0.0967,-0.04508 -0.17958,-0.07671 -0.28514,-0.122216 l -0.0408,0 -0.16295,-0.24443 0.28515,-0.122214 0.0815,-1.181402 0.36665,-1.425845 -0.48884,0 -0.61113,2.362817 -0.24439,0 0.61105,-2.362817 -2.60722,0 -0.0408,0.162949 0.4481,0.12222 -0.28515,1.059196 c -0.99878,-0.379437 -1.82216,-0.651771 -2.44434,-0.651816 -0.14758,0.374168 -0.4354,0.625014 -0.774,0.774029 -0.0164,-0.06899 -0.0223,-0.133685 -0.0408,-0.203694 l -0.0408,-0.203689 0.57029,-0.0815 0,-0.285165 c 7e-5,-0.200889 -0.25456,-0.366989 -0.774,-0.488865 l -0.0408,-0.203685 -0.9777,0 c 7.4e-4,0.01358 0,0.02711 0,0.04069 l 0,0.244426 c -0.27869,-0.137275 -0.62406,-0.216032 -1.01848,-0.285165 l -1.71102,0 0,0.162949 -0.24442,0.0815 -0.0815,-0.244425 -0.5296,0 0.0407,0.122209 -0.16296,0.162956 -0.0815,-0.285165 -2.72947,0 -0.20369,0.97772 -0.32591,0 0,-0.488866 c 0.0847,-0.176167 0.15525,-0.357463 0.20371,-0.488854 l -2.40359,0 z m 36.25717,12.832555 0,-0.936979 -0.0411,0.04069 -0.16301,0.611086 0.20373,0.285164 z m -34.34247,-12.751086 -0.28516,0.44812 -0.48887,0.0815 0.0815,-0.285165 0,-0.122221 0.69257,-0.12222 z m 13.48443,0.04069 0.44811,0.122216 -0.0408,0.24443 -0.4481,-0.12221 0.0408,-0.244436 z m -16.29537,0.366646 0,0.488859 -0.44813,0 0.44813,-0.488859 z m 7.82176,0 0.0815,0.0407 0.20369,0.896243 c -0.22244,-0.0204 -0.4372,-0.04551 -0.61107,-0.08149 l 0.2037,-0.651815 -0.0407,-0.162954 0.16293,-0.04069 z m 1.46656,0 0.40741,0.488859 -0.40741,0 0,-0.488859 z m -2.56649,0.162953 0.0815,0.285165 -0.12221,0.04069 c -0.0711,-0.0791 -0.0815,-0.189545 -0.0815,-0.285164 l 0.12221,-0.04069 z m -6.1515,0.04069 0.44812,0 0,0.285164 -0.44812,0 0,-0.285164 z m 5.21452,0 0.20368,0 0,0.285164 -0.20368,0 0,-0.285164 z m -2.97391,0.285164 c 0.003,-0.005 0.0382,0.005 0.0407,0 l 0,0.24443 -0.16294,0 c 0.0379,-0.0691 0.0875,-0.179478 0.1222,-0.24443 z m 13.03627,0 0.2037,0.0815 -0.16295,0.65181 -0.3259,-0.57034 0.28515,-0.162949 z m 11.81416,0.04069 0.4481,0.122209 -0.12219,0.488865 -0.48886,-0.122221 0.16295,-0.488853 z m -5.82557,0.16295 0.24439,0.04069 -0.16294,1.5888 -0.28515,0.162949 -0.1222,0.48886 -0.52961,2.525777 -0.65181,-0.651814 1.09991,-2.647993 -0.24439,-0.285164 0.0814,-0.203683 0.57035,-1.018471 z m 0.97771,0.04069 0.57029,0.122221 -0.28514,0.16295 -0.0815,0.203696 -0.77401,3.870135 -0.28515,0.162955 -0.0815,1.140662 -0.2037,0.774029 -0.57037,0 0.16303,-0.570328 c 0.2449,-0.0957 0.44809,-0.212888 0.44809,-0.366645 l -0.28514,-0.28517 1.38503,-5.214505 z m -17.72122,0.203702 0.24442,0 0.0407,0.162944 -0.0815,0.04069 -0.12221,0 -0.0815,-0.203684 z m 14.54364,0.122203 0.2037,0.04069 -0.0815,0.448125 -0.24447,-0.08149 0.1222,-0.407384 z m 12.62891,0.04069 0.20365,0.0815 -0.0815,0.407384 -0.24446,-0.0815 0.12219,-0.407386 z m -29.82054,0.04069 0.65181,0 0,0.203701 -0.65181,0 0,-0.203701 z m -2.07767,0.203701 1.05921,0 c -0.0287,0.0977 -0.0825,0.188675 -0.12222,0.285163 l -0.93699,0 0,-0.285163 z m 11.85489,0 0,0.529594 -0.48885,0 0.48885,-0.529594 z m 24.36159,0.162943 c -0.0738,0.276388 0.14168,0.513078 0.5703,0.651816 l 0,-0.529596 -0.5703,-0.12222 z m -6.07005,0.32591 0.4481,0.122216 -0.36658,1.303623 -0.44818,-0.12221 0,-1.181413 0.36666,-0.122216 z m -17.06937,0.44812 0,0.488865 -0.2037,0 -1.67028,0.244429 c 0.0349,-0.18638 0.0745,-0.374899 0.0815,-0.570345 l 1.79247,-0.162949 z m 0.36666,0 0.65181,0.203689 0,0.285176 -0.85552,0 0.20371,-0.285176 0,-0.203689 z m 1.0184,0 0.0408,0 0.28523,0.448125 -0.0408,0.04069 -0.28521,0 0,-0.488859 z m 1.83329,0 -0.0815,0.32591 -0.28521,0.04069 0.12226,-0.325905 c 0.0735,-0.01 0.15961,-0.03571 0.24439,-0.0407 z m 10.26602,0 0.6518,0.36665 -0.0814,0.203684 -0.44817,0.85551 c -0.0762,0.613109 0.11998,0.990443 0.52961,1.099933 l -0.12219,0.407385 -0.52961,-0.122221 -0.0815,0.285165 0.24447,0.285175 -0.36666,0.12221 0.0408,1.181413 -0.48885,1.792484 -0.52961,-0.122215 -0.40734,-1.303625 0.12219,-0.488863 0.24439,0.04069 -0.12219,0.488866 0.4481,0.122209 0.0408,-0.203689 -0.28514,-0.814765 0.28514,-0.122209 c 0.11856,-0.443457 -0.0788,-0.764881 -0.57028,-0.896249 l 0.6518,-0.285165 -0.1222,0.407385 0.48886,0.12221 0.36666,-3.218327 0.0408,-0.20369 z m -20.4914,0.12222 0.24441,0.0407 0.12223,0.488865 -0.32591,-0.0815 0,-0.366645 -0.0407,-0.08149 z m -7.7403,0.0815 0.44812,0 -0.44812,0.529604 0,-0.529604 z m 1.30364,0 0.81476,0 c -0.0125,0.01557 -0.0279,0.02517 -0.0407,0.04069 -0.25722,0.205419 -0.34293,0.30401 -0.57033,0.488865 l -0.2037,-0.244425 0,-0.285181 z m 1.30362,0 0.36664,0 0.4074,0 0,0.2037 -0.0815,-0.0815 -0.48885,0.12222 0,0.244431 -0.0815,0.04069 -0.20369,-0.24443 -0.0815,0 0.16294,-0.285176 z m 1.14068,0 0.61106,0 -0.0407,0.285181 -0.57035,0 0,-0.285181 z m 7.29219,0 0.65181,0 -0.0815,0.244441 0.12219,0.448113 -0.28515,0.04069 -0.40734,-0.651815 0,-0.08149 z m 1.26286,0 0.2037,0 0.0815,0.244441 -0.20371,0.04069 -0.0815,-0.285177 z m 21.14323,0 0.81476,0 0.24446,0.04069 -0.0815,0.2037 -1.0999,0.162944 0.12219,-0.407385 z m -12.91407,0.0815 0.20371,0.0815 -0.0815,0.407386 -0.24439,-0.0815 0.1222,-0.407386 z m 5.25528,0 -0.0815,0.203696 0.48885,0.12221 0.0408,-0.203689 -0.44809,-0.122217 z m 10.14389,0.366646 0.48878,0.122215 0.40741,0.570334 -0.6518,0.325905 0.28515,0.08149 -0.61105,1.01846 c -0.32768,-0.0876 -0.36295,-0.371336 -0.24446,-0.81477 l 0.28522,-0.162949 0.0408,-0.203685 0,-0.936991 z m -1.38513,0.285164 0.24439,0.0815 0.0408,0.733289 -0.44809,-0.122215 0.16294,-0.69255 z m -25.50226,0.0407 0,0.407385 -0.28517,0 -0.0815,-0.325904 0.36665,-0.0815 z m 23.91343,0.04069 0.24447,0.08149 -0.12227,0.407385 -0.20363,-0.0407 0.0814,-0.448119 z m -24.7282,0.08149 0.0815,0.285169 -0.24444,0 0,-0.244428 0.16296,-0.04069 z m -8.22916,0.04069 1.01847,0 c -0.10098,0.0837 -0.19174,0.16587 -0.28518,0.244429 l -0.73329,0 0,-0.244429 z m 2.07766,0 0.44813,0 0,0.244429 -0.61109,0 0.16296,-0.244429 z m 7.86252,0 0,0.244429 -0.20371,0 -0.0407,-0.16295 0.24444,-0.0815 z m 3.74793,0 0.40742,0 0,0.244429 -0.40742,0 0,-0.244429 z m 1.05922,0 0.81476,0 0,0.244429 -0.81476,0 0,-0.244429 z m 22.36532,0.04069 0.44818,0.12221 0.28519,0.285175 0.0815,-0.407385 0.24439,0.04069 -0.12219,0.448113 -0.20365,-0.0815 0.16292,0.285165 -0.12219,0.488854 c -0.32767,-0.0875 -0.61605,0.14207 -0.77403,0.733289 l -0.36664,-0.611069 0.36664,-1.303623 z m -31.00187,0.04069 0.28515,0.20369 -0.2037,0.0815 -0.0815,-0.285166 z m -4.72566,0.0815 0.0407,0.08149 -0.12221,0 c 0.0274,-0.0311 0.0537,-0.04962 0.0815,-0.08149 z m 31.97966,0.0407 0.52961,0.162955 -0.0408,0.203689 -0.52961,-0.122209 0.0408,-0.244435 z m -20.49143,0.04069 0.36666,0 0,0.285164 -0.36666,0 0,-0.285164 z m 3.54425,0 0.20372,0 c 0.29323,0.100038 0.50265,0.254317 0.6518,0.488861 l -0.0815,0.122209 c 0.049,0.098 0.11284,0.18842 0.16295,0.285175 l -0.36666,0 0,0.244431 0.52962,0.08149 c 0.0742,0.137799 0.16792,0.272306 0.24439,0.407383 l -1.79247,0 0,-0.203693 c 0.5521,1.04e-4 0.81476,-0.223573 0.81476,-0.529594 l -0.36666,-0.407385 0,-0.488866 z m -9.28839,0.04069 0.12222,0.448118 -0.20368,0.04069 -0.0815,-0.325905 0.16295,-0.162954 z m -3.50348,0.08149 0.0815,0.448114 -0.44811,0.12222 -0.0407,-0.162949 0.32591,-0.04069 0,-0.325905 0.0815,-0.04069 z m 1.62952,0.04069 c 0.28512,1.066685 0.7124,1.543131 1.30364,1.385099 l 0.0815,0.162949 -0.16293,0.244437 -0.24445,-0.122216 c -0.59642,0.730855 -0.87083,1.451759 -0.69256,2.118387 l -0.85549,-0.651809 0.61107,-0.162959 -0.12222,-0.407386 c -0.36952,0.0988 -0.59835,-0.0975 -0.81477,-0.611069 l 0.97773,-0.733289 -0.44812,-0.936979 -0.0407,-0.162955 0.40738,-0.12221 z m 23.58757,0.244426 0.4481,0.12222 -0.0815,0.244429 -0.4481,-0.122219 0.0815,-0.24443 z m -14.951,0.0815 0.65181,0 0,0.203683 -0.65181,0 0,-0.203683 z m 4.6034,0 0,0.08149 -0.0408,0.162962 -0.20363,-0.04069 0.24439,-0.203689 z m -10.55123,0.0407 c 0.15658,0.129295 0.32912,0.246326 0.57034,0.366644 l 0,-0.16296 0.0815,0.366644 0,0.0815 -0.44812,0.12221 -0.2037,-0.774024 z m 23.22091,0.04069 0.44809,0.122215 0,0.977719 -0.28515,0.122221 -0.0408,0.203694 -0.16296,1.466568 -0.40742,0.570344 0.20372,0.244425 -0.32591,0.203696 0.36666,0.570334 -0.28514,0.12222 -0.24446,-0.04069 -0.0408,1.140674 -0.3259,1.140663 -0.4481,-0.16295 -0.20371,0.692549 c 0.0134,0.02423 0.0282,0.0565 0.0408,0.0815 l -0.1222,0.0815 0.16288,0.0407 c 0.0834,0.20379 0.14224,0.440823 0.16303,0.69255 l -0.0408,0.203695 -0.16296,-0.244424 -0.28521,-0.0815 -0.0408,0.04069 0.24447,-1.548059 0.774,-2.851682 0.4481,-0.814764 -0.28514,-1.059199 0.5296,0.16296 0.32591,-2.077664 z m -28.43542,0.0407 -0.0407,0.448125 -0.28517,0.0815 -0.28516,-0.162955 -0.20371,0.08149 0.36665,0.48886 -0.48885,0.611074 -0.32591,-0.488864 c 0.0713,-0.01669 0.1278,-0.04069 0.20369,-0.04069 l 0,-0.488858 -0.16295,0 -0.2037,0.285164 -0.20368,0 0.36664,-0.611075 1.26289,-0.203694 z m 4.80713,0 0.16296,0.65182 -0.2037,0.04069 -0.2037,-0.611069 0.24444,-0.0815 z m -7.08849,0.285175 0.2037,0 0,0.285165 -0.2037,0.244431 -0.24443,0 0,-0.325905 c 0.0778,-0.065 0.16333,-0.130039 0.24443,-0.203691 z m 32.59076,0.407375 1.50731,1.344368 -0.12227,0.448114 -0.52953,-0.162944 -0.48885,1.792483 -0.20371,-0.04069 0.40734,-2.485037 -0.28514,0.122221 -0.32591,-0.0815 0.0408,-0.936989 z m 4.48122,0 0.77395,0 -0.12219,0.407385 -0.69256,-0.203691 0.0411,-0.203694 z m -27.41698,0.122221 0.0407,0 0.20368,0.203694 -0.16294,0.04069 -0.0815,-0.244431 z m 3.42204,0 0.57037,0 0,0.203694 -0.57037,0 0,-0.203694 z m 5.49967,0 0.0408,0 0,0.203694 -0.0815,0 0.0408,-0.203694 z m 0.52961,0.162954 c -0.0141,0.0596 -0.0237,0.0991 -0.0408,0.162949 l 0.40741,0.122216 c -0.13949,0.129177 -0.3455,0.162982 -0.65187,0.162949 l -0.20365,0 0,-0.203684 0.48886,-0.24443 z m -4.64416,0.04069 0.65181,0.20369 0,0.448124 c -0.41403,0 -0.65181,0.182893 -0.65181,0.48885 l -0.16295,0 c 0,-0.458911 -0.1314,-0.733229 -0.40741,-0.73329 l 0,-0.203684 0.57036,-0.20369 z m 11.44743,0.0407 0.32591,0.611079 -0.0408,0.20369 -0.32589,-0.611069 0.0408,-0.2037 z m -18.08781,0.04069 0.57034,0.285175 0.6518,2.362816 0,0.0815 -0.36664,-0.529598 -0.20368,0 0.57032,0.855508 0.0407,0.651809 0.28516,0.122221 -0.36663,0.570328 -1.18142,-4.399735 z m 15.43984,0 0.24447,0.0407 -0.28515,1.099934 -0.24447,-0.04069 0.28515,-1.099934 z m -7.08842,0.122219 0.57028,0.203684 0,0.244436 -0.774,0 0.20372,-0.244436 0,-0.203684 z m -9.28841,0.203684 0.48887,0.488866 0.0407,0.162956 -0.48887,0.122209 -0.16294,-0.651809 0.12221,-0.122222 z m 1.9962,0.122222 0.32589,0.325903 0,0.0815 0.0815,0.04069 0.2037,0.244429 -0.16296,0.162954 0.65183,2.362817 -0.28519,-0.162949 -0.81475,-3.055371 z m -7.82179,0.08149 0.0815,0.366646 -0.20369,0.04069 -0.0815,-0.366645 0.20368,-0.04069 z m 2.44431,0.20369 -0.0815,0.611081 0.0815,0.244423 0.24443,0.16295 c -0.77596,0.207438 -1.0756,0.748031 -0.93698,1.711013 l 0.36665,0.570334 -0.2037,0.04069 0.57034,0.244423 -0.16295,1.303633 0.0815,0.285166 0.24443,0.12222 -0.20367,0.04069 0.57032,0.85551 c -0.14094,0.112523 -0.28636,0.239512 -0.44812,0.407379 l -0.0815,-0.203694 -0.40738,0.12222 -0.0815,-0.366646 0.40737,-0.12222 -0.20369,-0.814758 -0.4481,0.122209 -0.20372,-0.814759 0.4074,-0.12222 -0.12222,-0.448123 -0.65181,0.203699 0.0815,0.448115 -0.20369,0.04069 -0.16294,-0.611074 c 0.11741,-0.745669 0.35624,-1.183881 0.65181,-1.262878 l -0.0815,-0.16296 -0.40739,0.0815 -0.16294,-0.611079 0.20368,-0.04069 1.34437,-2.036918 z m 31.32781,0.203695 0.24447,0.0407 0.24439,0.285163 0.28522,-0.122214 0.69256,0.162954 0.4481,2.281337 -0.0411,0.203701 0.28512,0.0815 0.28526,-0.12222 0.24439,0.04069 -0.69257,2.647989 c -0.61587,-0.322907 -0.8481,-0.905632 -0.61106,-1.792489 l -0.2037,-0.08149 0.28515,-0.122222 0.12226,-0.488859 0.0815,-1.181402 -0.57036,-0.122221 -0.69256,2.688721 0.24446,0.285176 -0.36665,0.122209 -0.0408,0.203696 0.20371,2.199874 -0.81483,0 c -0.11611,0.567306 -0.18938,1.084271 -0.24439,1.507303 -0.1694,0.107546 -0.28485,0.397161 -0.40741,0.855505 l -0.3259,0.122225 -0.4481,-0.122225 -0.16296,-0.936968 0.57031,-0.488865 0,-0.122218 c 0.0548,0.0879 0.14861,0.167198 0.2852,0.203695 l 0.20372,0.04072 0.0814,-0.203701 0.24447,-1.873964 0.36665,-0.529588 0.73324,-3.625711 0.24447,-0.896233 -0.44817,-0.122221 -0.36658,1.344358 -0.36666,0.12222 0.24446,0.285164 -0.12226,0.488867 -0.52962,-0.162956 0.81477,-3.096106 z m -9.20687,0.12221 0.20371,0.04069 -0.24446,0.896245 -0.28515,0.162948 -0.2037,-0.08149 0.5296,-1.018464 z m 6.07004,0 0.2037,0.04069 -0.0815,0.407384 -0.24447,-0.04069 0.12228,-0.407385 z m -24.97265,0.08149 0.20369,0.81477 -0.20369,0.0407 -0.24443,-0.774029 0.24443,-0.0815 z m -6.72184,0.04069 0.0406,0 0.12222,0.448125 -0.20369,0.04069 -0.0407,-0.12222 c 0.0277,-0.106136 0.0503,-0.230425 0.0815,-0.325905 0.004,-0.0133 -0.004,-0.02767 0,-0.04069 z m 34.26102,0.04069 0.2444,0.04069 -0.20364,0.692548 -0.20371,-0.04069 0.16295,-0.692549 z m -26.56145,0.04069 0.12221,0.448125 -0.32591,0.488854 -0.0815,-0.366646 0.28518,-0.570333 z m 13.89177,0.0815 0,0.04069 -0.3259,0.203696 -0.20371,-0.04069 c 0.0111,-0.04091 -0.008,-0.0837 0,-0.122221 0.18916,-0.0178 0.37825,-0.05619 0.52961,-0.0815 z m -11.73264,0.244424 0.12223,0.122221 -0.20371,0.0815 -0.0407,-0.162949 0.12222,-0.0407 z m 27.13174,0.122221 0.77411,0.203684 -0.0411,0.24443 -0.77411,-0.20369 0.0411,-0.244424 z m -8.71801,0.04069 0.57037,0.162956 -0.0815,0.203689 -0.52961,-0.122209 0.0408,-0.244436 z m -15.48054,0.04069 0,0.61108 0.4481,0 c 0,0.337841 0.0364,0.62661 0.1222,0.814758 -0.2101,0.04257 -0.40051,0.0946 -0.5703,0.162955 l 0,-0.0407 -0.36666,-0.407384 -0.65181,0.2037 c 0,-0.11015 -0.0341,-0.207709 -0.0815,-0.285175 l -0.24446,-0.896238 1.34436,-0.162961 z m 2.89238,0 0.28521,0.203695 0.20372,0 1.8739,-0.203695 0,0.203695 -0.28515,0.651809 c 0.39918,-0.221187 0.70095,-0.473413 0.81476,-0.77403 0.0705,0.0934 0.13125,0.1937 0.2037,0.285171 l -0.36665,0.04069 0,0.44812 0.40741,0 0.24439,0.285169 0.16294,-0.24443 c 0.093,0.106779 0.1891,0.222071 0.28523,0.325905 l 0.0408,0.162949 -0.20371,-0.20369 -0.24445,0.122221 0.0408,0.692549 -0.24439,0.12221 -0.0815,0.162959 -0.65182,-0.122219 c -0.0645,-0.128708 -0.10697,-0.244337 -0.12226,-0.366645 l 0.32597,0 0.36658,0.0815 0.0408,-0.203684 -0.28515,-0.529605 c -0.27119,-0.0725 -0.50578,-0.06469 -0.73332,-0.08149 l -0.20371,-0.20369 -0.0814,0.16295 c -0.0646,0.0022 -0.14364,-0.007 -0.2037,0 l -0.52962,-0.611069 -1.05921,0.203694 -0.77401,-0.203694 -0.44809,0.448119 -0.16295,-0.244425 0,-0.203694 c 0.24149,2.8e-5 0.43258,0.0163 0.61104,0 0.53541,-0.04901 0.77409,-0.177869 0.77401,-0.407384 z m 16.29537,0 0.24445,0.0815 -0.24445,0.896245 -0.2444,-0.0815 0.2444,-0.896243 z m -19.96183,0.407379 0,0.448125 0.40742,0 0,-0.448125 -0.40742,0 z m -1.54806,0.0815 0.24446,0.285164 -0.20371,0.366645 -0.16295,-0.529595 0,-0.08149 0.1222,-0.04069 z m -10.51049,0.122214 0.0407,0.325911 -0.16293,0.04069 0.1222,-0.366644 z m 21.83579,0 0.16295,0 0,0.24443 -0.16295,0 0,-0.24443 z m -16.662,0.04069 0.52961,0.936979 0.0407,0.16295 -0.20369,0.285176 0.77404,1.833221 -0.52961,0.325906 -0.28517,-1.507319 -0.12222,-0.448126 -0.24443,-0.122213 -0.16294,-1.425839 0.2037,-0.04069 z m -0.89625,0.04069 1.14068,4.23679 -0.32592,-0.08149 0,-0.0815 -0.28516,-0.162943 -0.69255,-3.462762 -0.0407,-0.20369 -0.28518,-0.122214 0.48886,-0.122221 z m 19.88033,0.0815 0.24447,0.08149 -0.12228,0.407385 -0.20363,-0.04069 0.0814,-0.448125 z m -7.78098,0.08149 0.65179,0 0,0.20369 c -0.12664,0.03621 -0.22329,0.0983 -0.3259,0.162955 l -0.32589,-0.0815 0,-0.285164 z m -9.20692,0.12222 0.12222,0.366645 -0.2037,0.0407 -0.12222,-0.366644 0.2037,-0.0407 z m 15.11392,0.0407 0,0.122214 -0.0815,0 0.0815,-0.122214 z m 9.98094,0.244434 0.2444,0.0407 -0.16295,0.488854 -0.20364,-0.04069 0.12219,-0.488855 z m 5.25527,0 0.24438,0.0407 -0.16292,0.488854 -0.20372,-0.04069 0.12226,-0.488855 z m -22.81349,0.0815 0.36659,0 c -0.0955,0.175352 -0.20742,0.272966 -0.36659,0.285169 l 0,-0.285169 z m 7.12918,0 0.16295,0 0,0.203688 -0.16295,0 0,-0.203688 z m -1.50731,0.0407 0.28514,0.0815 -0.28514,0 0,-0.0815 z m 4.72567,0.0815 0.3259,0.611079 -0.1222,0.407375 -0.44817,-0.12221 0.24447,-0.896244 z m 1.01845,0.285164 0.20364,0.04069 c -0.0791,0.295697 0.16028,0.561163 0.65188,0.692549 l -0.24446,0.89625 c -0.13735,-0.160278 -0.28478,-0.289927 -0.4481,-0.407386 l 0.0408,-0.203688 -0.44811,-0.122216 0.2444,-0.896249 z m -5.86632,0.04069 0.1222,0 0.0815,0.04069 -0.12219,0.448126 -0.16303,-0.0815 0.0815,-0.407386 z m 3.38129,0 0.5703,0 -0.0815,0.203694 -0.2444,0 c -0.0895,-0.06529 -0.17475,-0.126627 -0.24446,-0.203694 z m -7.41439,0.122219 c -0.0141,0.04047 -0.0289,0.0791 -0.0408,0.122216 l -0.12226,-0.0407 0.16294,-0.0815 z m -15.60284,0.162956 0.0815,0.16295 0.32591,2.933156 0.40738,-0.122215 -0.12221,-0.366645 0.61107,0.244436 c -0.44338,0.118505 -0.63647,0.414753 -0.52958,0.814758 l 0.24442,0.122216 -0.24442,0.733289 0.0406,0.203688 0.44812,-0.122204 -0.12222,-0.448131 0.20369,-0.04072 0.12222,0.448124 -0.36665,1.140676 -0.36664,-0.08149 c -0.0562,0.071 -0.0686,0.134308 -0.12222,0.203687 l -0.44811,-1.588793 0.0407,-1.099931 -0.3259,-0.0815 0.2037,-0.285164 -0.0407,-0.244429 -0.48886,0.122209 -0.0815,-0.16295 0,-0.08149 0,-0.162955 c 0.33237,-0.117042 0.51341,-0.411554 0.44814,-0.936978 l -0.44814,-0.77403 -0.0407,-0.162949 0.57035,-0.366645 z m 31.16489,0 0.5296,0.12221 -0.20371,0.692548 -0.52961,-0.122208 0.20372,-0.69255 z m -28.92427,0.28517 -0.40738,0.0815 0.0407,0.203684 0.40739,-0.122216 -0.0407,-0.16295 z m 4.72565,0 0.12222,0.366644 -0.20369,0.0407 -0.12222,-0.366649 0.20369,-0.0407 z m 8.51437,0.04069 0.20364,0.0815 -0.2444,0 0.0408,-0.0815 z m 16.90642,0 0.52961,0.122203 -0.12226,0.488866 0.44816,0.12222 0.16296,-0.692555 0.44809,0.570335 -0.57036,0.814768 -0.16296,1.873953 -0.44809,0.529604 -0.24439,-0.04073 c 0.51365,-1.921504 0.41089,-2.920929 -0.24446,-3.096104 l 0.2037,-0.692554 z m -20.04333,0.0815 0.20371,0 -0.12219,0.448124 -0.16296,0 0,-0.203689 0.0815,-0.244435 z m 1.79254,0 0.20363,0 c 0.13683,0.16132 0.18656,0.385363 0.16296,0.651821 l -0.1222,0 -0.24439,-0.651821 z m -2.56654,0.122221 0.2037,0.366644 -0.28522,-0.0815 0.0815,-0.285164 z m 12.54741,0.162954 0.24447,0.0815 0.28514,0.203701 -0.16294,0.244424 c -0.10075,-0.099 -0.21338,-0.179178 -0.32592,-0.244424 l -0.0408,-0.28517 z m -7.16994,0.162949 0.28515,0 c 0,0.0716 0.0237,0.146617 0.0408,0.203697 l -0.40734,0 0.0814,-0.203697 z m 0.73325,0.0815 0.40741,0.12222 -0.3259,0 -0.0815,-0.12222 z m -6.72184,0.12222 0.2037,0.0815 -0.0815,1.222152 -0.0815,0.203684 -0.2037,-0.0815 0.0408,-0.488864 0.20371,0 0,-0.651808 -0.0815,-0.285165 z m 14.62509,0.04069 0.32591,0.0815 -0.16295,0.651809 -0.20364,-0.0815 -0.0408,-0.529604 0.0814,-0.122215 z m -15.35833,0.0407 0,0.203694 -0.12219,0 0.12219,-0.203694 z m -1.46662,0.162953 0.12223,0 0.12221,0.16295 0.0815,0.285175 -0.32592,-0.407384 0,-0.04069 z m 4.52201,0.04069 0.20363,0 -0.0815,0.203688 -0.16296,0 0.0408,-0.203688 z m -5.25529,0.162949 -0.0407,0.244436 c -0.14123,0.676559 -0.1364,1.030818 0.12222,1.099933 l -0.24443,0.203691 -0.0815,0.162953 -0.0407,0.24443 -0.1222,0.0407 -0.16296,-0.570346 0.44812,-0.08149 c -0.20596,-0.770581 -0.14745,-1.242962 0.12222,-1.344369 z m 1.87399,0 0.0408,0.122221 0.0814,-0.0815 0.16303,0.651815 0,0.122215 -0.48893,0.73329 0.28523,0.0815 -0.32591,0.122205 -0.0815,0.244441 0.24439,0.285165 -0.0815,0.162956 -0.40739,0.570335 0.0407,0.855505 -0.6518,1.303616 0.24443,0.285171 -0.48886,-0.162946 0.36664,-1.34437 -1.18142,0.733287 0.24443,0.285178 -0.8555,0.448116 -0.0815,1.018452 -0.40738,0.692546 c 0.0795,-0.499399 0.0113,-0.798016 -0.20369,-0.855499 l 0.28517,-0.162953 0.0407,-0.203688 0.20368,-1.303622 c 0.13742,-0.129896 0.27644,-0.271484 0.4074,-0.407382 l 0.44811,0.325906 c -0.0529,-0.211566 -0.15769,-0.375371 -0.24442,-0.529607 0.0511,-0.05549 0.11278,-0.106474 0.16294,-0.162946 l 0.24444,0.04066 0.0815,-0.366641 0.36664,-0.16296 -0.16296,-0.16296 c 0.0718,-0.0919 0.13396,-0.191204 0.2037,-0.285164 l 0.73328,0.04073 0.16296,-0.611072 -0.40738,-0.122221 c 0.0709,-0.107493 0.13505,-0.216091 0.2037,-0.325903 l 0.28516,0.0815 0.28519,-1.059199 c 0.10839,-0.199914 0.22265,-0.404896 0.32591,-0.611068 l -0.12227,-0.162961 0.0408,-0.122214 z m 11.73265,0.04069 0.20371,0.407386 0,0.04069 -0.48893,0 c 0.0119,-0.0714 0.0297,-0.135449 0.0408,-0.203684 l 0.24447,-0.244441 z m -22.16171,0.04069 0.0815,0.285164 -0.0815,0 0,-0.285164 z m 30.43163,0.203694 0.48885,0.122209 -0.40741,0.93699 c -0.0912,-0.13612 -0.20876,-0.26481 -0.36666,-0.366645 l 0.28522,-0.692554 z m -10.87721,0.162949 0.2037,0.04069 -0.2037,0 0,-0.04069 z m 0.97778,0.04069 0.40734,0.122222 -0.0408,0.162943 -0.20372,0.04069 -0.16294,-0.285165 c 0.008,-0.0027 -0.008,-0.03748 0,-0.0407 z m -8.39212,0.325906 0.40735,0.08149 -0.16295,0.651815 -0.28515,-0.570335 0.0408,-0.162955 z m 23.91342,0.04069 c 0.45192,0.279237 0.60486,0.768251 0.40738,1.507318 l -0.52958,1.059195 c -0.19977,1.122325 -0.29145,1.890984 -0.28522,2.403557 l -0.16288,-0.04065 0.0408,-0.77403 0.1222,-0.488859 -0.36666,-0.774028 0.89628,-2.118386 -0.12228,-0.774028 z m -21.8358,0.122219 0.24446,0 0,0.203685 -0.24446,0 0,-0.203685 z m 12.09931,0 0.0408,0 -0.16295,0.57033 c -0.0207,0.0768 -0.0275,0.130599 -0.0408,0.20369 l -0.0408,0 0.20372,-0.77402 z m -19.9618,0.04069 0.20368,0.04069 0.1222,0.244436 -0.36662,-0.12222 0.0407,-0.162944 z m -4.11459,0.203683 0.0407,0.203689 -0.28518,0.529601 -0.0407,-0.162956 0.28517,-0.570334 z m 3.62572,0 c 0.12177,0.05611 0.22518,0.114259 0.40738,0.16295 l -0.0815,0.366644 -0.16294,-0.244424 -0.0815,-0.04069 -0.0815,-0.24443 z m 31.1241,0.0815 0.24447,0.0815 -0.1222,0.488864 -0.24446,-0.0815 0.12219,-0.488853 z m -25.46148,0.0815 c 0.13058,0.0061 0.28596,0.02007 0.44818,0.04069 l -0.12227,0.366644 c -0.29562,-0.079 -0.54996,0.15923 -0.69257,0.692549 l -0.44809,-0.774017 c 0.0468,-0.17471 0.21321,-0.256035 0.48885,-0.285176 l 0.36666,0 -0.0408,-0.04069 z m 14.01405,0 0.0814,0 0.12228,0.04069 -0.0408,0.203696 -0.0408,0 -0.3259,0 0.20363,-0.244436 z m -8.14772,0.04069 0.28523,0 -0.12227,0.5296 -0.2444,-0.0815 c 0.0372,-0.153946 0.0639,-0.310136 0.0814,-0.448126 z m 0.85552,0 0.57036,0 0,0.08149 -0.36666,0.570345 0.1222,0.162944 -0.61105,-0.162944 c 0.10704,-0.160587 0.19043,-0.414297 0.28515,-0.651825 z m 1.05922,0 0.24439,0 -0.0408,0.08149 -0.20363,-0.04069 0,-0.04069 z m 2.24056,0 0.48893,0 -0.12227,0.366644 -0.20364,0.0407 0,0.448125 0,0.04069 -0.0815,0.162947 0.0408,0.448124 -0.16295,0.04065 c -0.18092,-0.205344 -0.24268,-0.494793 -0.20371,-0.85551 0,-0.0259 0,-0.05468 0,-0.08149 0.0127,-0.0827 0.0164,-0.153769 0.0408,-0.244437 l 0.20372,-0.366644 z m 0.85552,0 0.73331,0 0.32591,0 -0.0408,0.203696 -0.24446,0 0,0.488854 0.20372,0 -0.0408,0.203694 -0.32591,0.529596 0,-0.285165 -0.48884,0.122213 -0.0408,-0.529599 0.24447,-0.04069 0,-0.488854 -0.28522,0.04069 -0.0408,-0.244435 z m -7.69956,0.08149 0,0.774031 c -0.26518,-0.0831 -0.40734,-0.288935 -0.40734,-0.651809 0.18263,1.6e-5 0.29992,-0.04253 0.40734,-0.122222 z m 5.54043,0 0.40742,0.122222 -0.0815,0.366644 -0.4481,-0.122221 0,-0.04069 0.16296,-0.203685 -0.0815,0 0.0408,-0.122219 z m 11.93636,0 0.1222,0.651815 c -0.0252,-0.01193 -0.0505,-0.0326 -0.0814,-0.0407 l -0.32598,0.0815 -0.0408,0.244438 0,0.285164 -0.0408,0.0815 -0.20364,-0.04065 0.0408,-0.203695 0.24439,-0.366648 0.16296,-0.285164 -0.44811,-0.122221 0.57038,-0.285165 z m -18.82115,0.08149 c 0.0917,0.0158 0.17616,0.0407 0.28522,0.0407 l 0,0.651808 -0.24447,-0.0815 -0.0408,0.122215 -0.12219,0 0,0.448122 0,0.08149 0.44809,0.122225 0.0408,-0.203688 0.16295,0 -0.52961,0.774016 -0.2444,-0.325906 -0.0815,0.366647 0.24439,0.0815 -0.0408,0.04066 0.5296,0.122211 0.0815,0.244429 -0.12219,0.203688 c -0.15501,0.0762 -0.25872,0.227022 -0.28514,0.448124 l -0.0408,0.122217 -0.16302,0 c -0.008,-0.02974 0.008,-0.05217 0,-0.0815 l 0.0815,-0.448117 -0.16296,-0.04065 c -0.0836,-0.433126 -0.15233,-0.792381 -0.24439,-1.059201 l 0.44811,-1.629528 z m -7.29217,0.44812 c 0.2126,0.119669 0.31238,0.322445 0.28519,0.611073 l -0.2037,-0.122218 -0.0815,-0.488855 z m 18.33226,0 0.0408,0 c -0.008,0.02988 -0.0341,0.05223 -0.0408,0.0815 -0.0297,0.137157 -0.0601,0.283125 -0.0815,0.407386 -0.0918,0.01577 -0.17616,0.04072 -0.28521,0.04072 l 0,0.488859 -0.2444,0 0.0815,-0.936984 0.52961,0 0,-0.0815 z m -12.38447,0.0815 0.28522,0 0.1222,0.04069 0,0.407386 -0.20371,0 0,0.203694 0.0815,0.366647 c -0.16785,-0.149066 -0.27052,-0.489065 -0.28514,-1.018351 z m 25.33929,0.04069 0.44818,0.122215 -0.12226,0.407382 -0.44811,-0.122211 0.12219,-0.407386 z m -33.93507,0.0407 c -0.0441,0.04952 -0.0769,0.109684 -0.12221,0.162954 l -0.0407,-0.122214 0.16297,-0.04069 z m -0.89625,0.04069 0.44813,0.936973 -0.20369,0.04072 -0.0815,-0.04072 c 0.0105,-0.04471 0.0281,-0.07499 0.0407,-0.122204 l -0.24443,-0.0815 -0.20369,-0.692547 0.24442,-0.0407 z m 17.5175,0 0.40741,0.122215 -0.0815,0.24443 -0.36665,-0.24443 0.0408,-0.122215 z m 0.73332,0 0.2037,0.08149 -0.1222,0.407387 -0.2037,-0.04073 0.1222,-0.448125 z m 7.12924,0.08149 0.0815,0.122223 0.28522,0.08149 0.0815,-0.04066 -0.20371,1.34437 -0.69257,2.525776 -0.24439,0.488845 -0.0815,-0.366641 0.20363,-0.285164 -0.20363,-0.203687 -0.24447,0.08149 -0.16296,-0.285164 0.28523,-0.122205 0.20363,0.04073 0.0408,-1.059193 0.28521,-0.977723 0.40735,0.0815 0.12226,-0.529593 0.0408,0 0,-0.0815 c -0.12509,-0.229684 -0.18093,-0.50832 -0.20372,-0.814767 z m 3.05533,0.0407 0.24446,0.08149 -0.0815,0.244437 0,0.04072 -0.16295,0.529586 -0.20371,-0.08149 0.20371,-0.81476 z m -20.24696,0.203691 0.40742,0.122212 -0.12228,0.366647 -0.28514,-0.488859 z m -10.63273,0.325906 0.0407,0.162953 -0.12223,0.04072 0,-0.162959 0.0815,-0.04066 z m 5.54042,0.04072 0.2037,0.08149 -0.0815,0.36664 0.2037,0.04066 -0.24444,0.122211 -0.1222,0.488866 -0.16296,-0.611077 0.20369,-0.488865 z m 27.41696,0 0.36665,0.08149 c -0.0498,0.185755 -0.0245,0.335267 0,0.448123 l -0.32589,-0.08149 c 0.0534,-0.200034 0.0193,-0.335307 -0.0408,-0.448123 z m -3.9516,0.08149 0.0408,0 c -0.023,0.120227 -0.0512,0.238733 -0.0815,0.36664 l -0.0408,0 0.0815,-0.36664 z m -17.31384,0.04065 0.20372,0.04073 -0.24447,0.814757 -0.20371,-0.04066 0.24446,-0.814771 z m 14.74729,0.04073 c 0.10669,0.0985 0.25799,0.167996 0.40735,0.244429 l -0.16295,0.325906 -0.16295,-0.04073 -0.0408,-0.04065 c -0.0475,-0.04006 -0.10957,-0.09031 -0.16296,-0.122212 l 0.12228,-0.366647 z m -21.91726,0.162946 0.0815,0 c 0.009,0.06321 -0.004,0.143416 0,0.203694 l -0.0815,-0.203694 z m 32.46853,0 0.32585,0.5296 -0.44804,-0.122211 0.12219,-0.407389 z m -33.24256,0.366647 0.0407,0.122218 -0.16297,-0.04072 0,-0.04072 0.12222,-0.04072 z m 6.76259,0.162953 0.20371,0.0815 -0.73332,2.810939 -0.2037,-0.08149 0.73331,-2.810946 z m 9.45127,0 -0.20365,0.81477 0,0.08149 c -0.0697,0.01 -0.17074,0.0316 -0.24446,0.04066 l 0.24446,-0.896234 0.20365,-0.04072 z m 1.58882,0.162953 c 0,0.05117 0,0.108311 0,0.162959 -0.14038,0.171183 -0.50326,0.287233 -1.01846,0.407375 l 0.0815,-0.244429 0.93696,-0.325905 z m 8.59583,0.122217 c 0.10667,0.184365 0.23741,0.337444 0.36665,0.488859 l 0,0.122211 0.16295,0.04066 c 0.0683,0.06851 0.13015,0.143636 0.20364,0.2037 l -0.16295,0.651812 -0.20364,-0.04072 c 0.0713,-0.266733 -0.1677,-0.492551 -0.61112,-0.611076 l 0.24447,-0.855519 z m 1.01846,0.04072 0,0.122218 -0.0815,-0.08149 0.0815,-0.04065 z m 5.58106,0.04066 0.44819,0.122204 -0.0411,0.203701 -0.48884,-0.122224 0.0815,-0.203681 z m -24.19851,0.04072 0.1222,0.448117 0.24439,0.896241 -0.4481,0.733288 0.3259,-0.122212 0.20371,0.04066 -0.12219,0.36664 -0.20371,-0.04066 -0.20371,-0.244428 -0.2444,-0.08149 -0.0815,0.448123 -0.24446,-0.04072 0.65179,-2.403557 z m -1.22218,0.08149 0.20372,0.08149 -0.12227,0.529606 -0.20364,-0.04072 0.12219,-0.570348 z m 7.12926,0 0.20363,0.04072 -0.0815,0.366647 -0.20364,-0.04066 0.0815,-0.366647 z m 14.5436,0.04072 -0.0815,0.244436 0.69257,0.162946 0.0815,-0.203688 -0.69255,-0.203694 z m -28.67987,0.08149 c 0.0261,-0.0047 0.0548,0.004 0.0815,0 -0.12596,0.1796 -0.30237,0.32896 -0.5296,0.448124 l -0.0407,-0.203695 c 0.14479,-0.11438 0.30616,-0.206769 0.48886,-0.244429 z m 13.3622,0.203701 c 0.12724,0.113801 0.23912,0.223203 0.28515,0.325905 l -0.28515,-0.08149 0,-0.244429 z m -12.95482,0.203681 0.0407,0 0.32592,0.122224 c 0.0284,0.106409 0.0514,0.197507 0.0815,0.285164 l -0.20369,0.77403 -0.20368,-0.04066 c 0.14265,-0.533366 0.0105,-0.857968 -0.28518,-0.936988 l -0.20369,0.0815 0.0407,-0.162953 0.3259,-0.0815 0.0815,0 0,-0.04072 z m -2.56651,0.04066 0.0815,0.244429 -0.12221,-0.04066 0.0407,-0.203687 z m 13.44365,0 0.2037,0 c -0.0149,0.100513 -0.023,0.219011 -0.0408,0.325906 l -0.16295,0.162952 0,-0.488858 z m 8.55505,0 0.36666,0 -0.0408,0.162953 -0.40733,-0.122211 c 0.02,-0.0187 0.0639,-0.02109 0.0815,-0.04066 z m 1.01848,0 0.4074,0 0,0.203694 c -0.19509,4e-5 -0.36087,0.03646 -0.48885,0.08149 l 0.0815,-0.285164 z m -19.4322,0.0815 0.16296,0.04065 -0.0815,0.325906 -0.0815,-0.36664 z m 13.81032,0.122204 0,0.529606 -0.0408,0.04066 -0.0408,0.162953 -0.24445,0 0.2037,-0.69256 0.12219,-0.04066 z m 0.85553,0 0.93695,0 -0.0408,0.16296 0,0.122211 -0.24439,0 -0.28522,-0.04072 -0.0815,0.04072 -0.28515,0 c 0,0.01491 0,0.02602 0,0.04066 l -0.0815,-0.04066 0.0815,-0.285171 z m 3.05538,0.16296 -0.0815,0.366646 -0.36667,0 -0.12219,-0.122217 0.0408,-0.162947 c 0.20437,-0.02069 0.3677,-0.0344 0.5296,-0.0815 z m 9.04393,0 c 0.69441,0.364158 0.93309,1.014685 0.69256,1.914691 l -0.48893,-0.122204 -0.16295,0.529594 0.36666,0.570334 -0.85552,1.262888 0.20371,0.04072 -0.24439,0.122218 -0.0815,0.285164 0.16296,1.303623 -0.57038,0.244436 0.20372,0.04072 -0.36666,0.570321 c -0.13861,0.962972 0.16101,1.503584 0.93702,1.711011 l -0.24446,0.162953 -0.0815,0.244429 0.0815,0.61107 -1.34437,-2.036903 -0.20371,-0.04072 0.16295,-0.611084 0.44818,0.0815 0.0408,-0.16296 c -0.2956,-0.07899 -0.53443,-0.51721 -0.6518,-1.26288 l 0.16295,-0.611083 0.20364,0.04072 -0.0815,0.448123 0.69249,0.203688 0.0815,-0.448117 -0.40734,-0.122211 0.24439,-0.814771 0.40742,0.122219 0.20371,-0.814772 -0.40741,-0.122211 0.0815,-0.36664 0.44811,0.122205 0.0815,-0.366641 -0.40735,-0.122211 0.16296,-0.611077 c 0.36947,0.09879 0.59828,-0.138227 0.81474,-0.651817 0.10683,-0.399997 -0.008,-0.614763 -0.44817,-0.733288 l 0.16296,-0.61107 z m -24.52455,0.04072 0.48886,0.122211 -0.40737,0.570341 -0.24444,-0.08149 0.16295,-0.611076 z m 23.30237,0 c 0.13765,0.0728 0.29792,0.115031 0.4481,0.162953 l -0.12219,0.407375 -0.32591,-0.529587 0,-0.04072 z m -16.70271,0.08149 0.65181,0 0.20364,0.244435 0.16295,0 -0.16295,0.611077 -0.61106,0 -0.24439,-0.855512 z m 5.70338,0.203701 0.0814,0 c -0.0356,0.161249 -0.0825,0.31655 -0.1222,0.448124 l -0.0815,0 0.12227,-0.448124 z m 4.88855,0.04072 0,0.162946 -0.0815,0.244436 -0.2037,0 0.0408,-0.203694 0.24439,-0.203688 z m -7.74024,0.0815 0.20363,0.04072 -0.0408,0.08149 -0.20371,0 0.0408,-0.122204 z m -8.63657,0.08149 0.6518,0.36664 -0.28517,1.018459 -0.2037,-0.0815 -0.24441,-0.936981 0.0815,-0.366641 z m 20.89876,0 0.48893,0.122218 0.36658,1.140676 -0.12219,0.448124 -0.2037,-0.04066 0.12226,-0.448124 -0.44817,-0.122224 -0.0408,0.203701 0.24446,0.733288 -0.24446,0.122211 c -0.10691,0.400035 0.0862,0.696259 0.52961,0.814763 l -0.57037,0.244429 0.0815,-0.36664 -0.40735,-0.122211 -0.3259,2.933151 -0.0815,0.162952 -0.57036,-0.325905 0.0815,-0.203688 0.40742,-0.77403 c 0.0683,-0.553068 -0.11937,-0.878946 -0.48885,-0.977723 l 0.1222,-0.366633 0.48885,0.122204 0.0408,-0.244429 -0.20371,-0.285157 0.32592,-0.0815 -0.0408,-1.099935 0.44809,-1.588793 z m -18.98403,0.04066 0.40734,0.122217 -0.0408,0.203688 -0.4074,-0.122205 0.0408,-0.2037 z m 11.20304,0 0.16295,0 c 0.0661,0.05849 0.1536,0.117406 0.2444,0.162959 l -0.0408,0.122205 -0.0815,0.285177 -0.28514,-0.529607 0,-0.04065 z m -19.96183,0.04065 0.32591,0.488865 -0.24445,-0.244435 -0.20368,-0.04065 0.12222,-0.203701 z m 1.09994,0.0815 0.16295,0.04073 0,0.162939 -0.16295,0.651825 -0.20369,-0.0815 0.20369,-0.774029 z m 31.0834,0 c 0.0438,0.102862 0.0884,0.18376 0.16295,0.203682 l 0.2037,0.04066 0,0.448123 -1.71101,6.355173 -0.48886,-0.122212 0.28515,-0.122211 0.0408,-0.203694 0.69256,-3.462757 0.28515,-0.122212 0.0408,-1.059199 0.48893,-1.955434 z m 1.01846,0 0.20372,0.04073 -0.20372,0.651804 -0.2037,-0.0815 0.16295,-0.570328 0.0408,-0.04072 z m -15.64356,0.122211 0.0408,0.448117 -0.12219,0.04066 -0.0815,-0.325906 0.16295,-0.162952 z m 12.79188,0 0.20371,0.04066 -0.12227,0.366647 -0.20364,-0.04066 0.1222,-0.366647 z m -9.57353,0.04066 c 0.13467,0.0336 0.32368,0.06129 0.48885,0.08149 l -0.12219,0.488865 -0.44817,-0.162953 0.0815,-0.407382 z m -20.9803,0.325919 0.48887,0.122204 -0.0815,0.203695 -0.16296,1.385105 c 0.008,-0.184418 -0.0231,-0.352295 -0.0815,-0.570341 l -0.2037,-0.814764 0.0407,-0.325899 z m 3.29983,0.04066 0.44811,0.08149 c -0.10689,0.399989 -0.0105,0.695001 0.28518,0.774029 l -0.0407,0.203688 c -0.44334,-0.118538 -0.70269,-0.103707 -0.77404,0.162953 l -0.20368,-0.04065 -0.0815,-0.61107 0.36666,-0.570334 z m 16.82495,0.04072 0.28515,0 -0.0815,0.244429 -0.20364,0 0,-0.244429 z m -13.76957,0.16296 0.20369,0.04072 -0.0407,1.059194 -0.40738,-0.122225 0.24443,-0.97771 z m 20.12476,0.203681 0.44809,0.162959 -0.0408,0.162946 -0.48879,-0.122211 0.0814,-0.203694 z m 3.09615,0 0.20362,0.04065 -0.44809,0.936989 -0.2037,-0.04066 0.2037,-0.814764 0.24447,-0.122224 z m -19.51373,0.122224 0.93697,0.04066 -0.12219,0.570328 -0.97772,0 0.16294,-0.61107 z m 8.59584,0.16294 0.2037,0 0,0.04065 -0.2037,-0.04065 z m 3.74787,0 0.32598,0 -0.0408,0.2037 -0.28522,0 0,-0.2037 z m 2.36284,0 0.3259,0 0,0.2037 -0.36659,0 0,-0.122217 0.0408,-0.08149 z m -19.51367,0.04065 0.32591,0.529607 -0.28517,0.122225 -0.2037,-0.04066 c 0.0624,-0.233344 0.13267,-0.434464 0.16296,-0.61109 z m -4.31827,0.162966 0.20369,0.04066 -0.12222,0.366641 -0.20369,-0.04066 0.12222,-0.366647 z m 32.30557,0 0.20371,0.04066 c -0.10699,0.400003 -0.0105,0.695021 0.28515,0.774029 l -1.4259,3.503486 0.20371,0.244428 -0.0408,0.203695 -0.52961,0.896233 -0.20364,-0.04072 0.16295,-1.42584 0.24439,-0.122204 0.1222,-0.448131 0.69257,-3.422009 0.28521,-0.203694 z m -35.36094,0.122218 0.12221,0.855493 0.20368,0.122218 c -0.012,0.0966 -0.0135,0.183487 -0.0407,0.285164 l 0,0.08151 -0.0407,-0.08151 -0.20369,0.08151 c 0.0223,0.08379 0.0346,0.137183 0.0407,0.203682 l -0.36665,0.162966 c -0.0102,-0.04358 -0.0315,-0.0797 -0.0407,-0.122225 l 0.12222,-0.04072 0.0407,-0.203688 0.16296,-1.344357 z m 9.45129,0.04066 0.61108,0.162953 -0.0407,0.203688 -0.69256,0.0815 0.12222,-0.44813 z m -4.80713,0.244437 0.2037,0.08149 -0.16296,0.529593 -0.20369,-0.04066 0.16295,-0.570335 z m 28.965,0 0.2037,0.04065 -0.28515,1.018459 -0.2037,-0.0815 0.28515,-0.977717 z m -20.49143,0.122204 0.36666,0.5296 -0.16296,0.611077 -0.2037,-0.325913 -0.40735,-0.122204 c -0.1069,0.400009 -0.41209,0.566641 -0.85551,0.448117 0.10699,-0.400017 -0.008,-0.655498 -0.44809,-0.77403 l 0.0408,-0.203687 0.40736,0.122218 0.16295,0.244422 c 0.0803,-0.299962 0.44638,-0.454298 1.09997,-0.5296 z m 10.83645,0.203701 0.12219,0 0,0.122218 -0.12219,-0.122218 z m 13.11777,0 0.89622,0.244423 -0.44811,1.751745 c -0.29554,-0.079 -0.37678,-0.544377 -0.16293,-1.344363 l -0.44811,-0.08149 0.16293,-0.570335 z m -6.15154,0.04066 0.28522,0.529593 -0.0408,0.203695 -0.28522,-0.570342 0.0408,-0.162946 z m -28.55759,0.08149 -0.2037,1.629528 -0.81477,0.244423 0.24444,-0.896234 c 0.44905,-0.222951 0.73082,-0.546867 0.77403,-0.977717 z m 0.69255,0 0.24443,0.0815 -0.0815,0.36664 -0.28516,-0.0815 0.12221,-0.366641 z m 21.87652,0.04072 0.16295,0.04066 0,0.244437 -0.40741,0 0.24446,-0.285178 z m -9.53277,0.04066 0.20371,0 0.16295,0.244437 -0.28522,0 -0.0815,0 0,-0.04073 0,-0.203701 z m -6.96627,0.244437 0.48885,0.122204 -0.0815,0.244449 -0.52959,0.936969 -0.16297,-0.24443 -0.20369,-0.0815 -0.5296,0.28517 0.0407,0.651811 c -0.29559,-0.07909 -0.50411,0.04804 -0.61108,0.44813 l -0.16294,-0.244435 -0.20369,-0.04073 -0.24444,0.122218 0.2037,-1.629534 0.61109,0.162953 0.12219,-0.407376 c 0.73904,0.197532 1.15603,0.07409 1.26291,-0.325912 z m 2.85165,0.122204 0.20371,0.0815 -0.0815,0.36664 -0.2444,-0.04072 0.1222,-0.407383 z m -7.86248,0.04066 0.20369,0.0815 -0.0815,0.366641 -0.24441,-0.04073 0.12222,-0.407375 z m 6.64035,0.04065 0.20371,0.0815 -0.0815,0.407389 -0.24444,-0.04072 0.12223,-0.44813 z m -9.28836,0.122225 0.2037,0.08149 -0.24443,0.08151 0.0407,-0.162953 z m -0.0407,0.285157 0.16295,0.122225 0,0.04072 -0.20369,-0.04072 0.0407,-0.122225 z m 15.72501,0.08151 c 0,0.206522 -0.12992,0.308246 -0.3259,0.366641 l -0.52961,0.04072 0,-0.162967 0,-0.04072 0.85551,-0.203681 z m 3.2591,0 c 0.0134,0.0047 0.0289,-0.006 0.0408,0 0.0891,0.04598 0.17483,0.11084 0.20371,0.203681 l -0.24447,0 0,-0.203681 z m 1.54808,0 0.40734,0 0.0815,0.122197 -0.2037,0.814772 c -0.0453,0.002 -0.0747,0 -0.12219,0 l 0,0.203693 -0.20372,-0.203693 -0.40734,0 -0.16295,-0.244423 0.12219,-0.448124 c 0.18924,0.05057 0.34951,-0.04405 0.48886,-0.244422 z m 1.22209,0 0.32591,0 c 0.0149,0.01903 -0.0104,0.05909 0,0.08149 -0.0984,0.337863 -0.32732,0.598554 -0.6518,0.733287 l -0.1222,-0.04072 0.44809,-0.774022 z m 4.44053,0 -0.0408,0.203681 -0.48885,0 0,-0.122218 c 0.20015,-0.02768 0.3723,-0.05077 0.52961,-0.08149 z m 8.88096,0 0.2037,0.04072 -0.0815,0.366641 -0.2037,-0.04072 0.0815,-0.366648 z m -26.84662,0.08149 0.40739,0.122211 -0.12223,0.448123 -0.40737,-0.122211 0.12221,-0.448123 z m 9.7365,0.122211 0.16295,0 -0.16295,0.570348 0,-0.570348 z m -11.97712,0.162959 -0.0815,0.366648 0.40739,0.122211 0.1222,-0.366641 -0.44812,-0.122218 z m 4.97012,0.04073 0.69257,0.203687 -0.12226,0.366648 0.44816,0.122211 0.16296,-0.611077 0.3259,0.366641 c -0.34781,0.172321 -0.58871,0.446773 -0.73332,0.814771 -0.0623,0.02648 -0.0885,0.04618 -0.12219,0.08149 l -0.20371,-0.04072 c 0.14016,-0.443859 -0.02,-0.72708 -0.40742,-0.814771 l -0.20363,-0.04072 c 0.0713,-0.114633 0.11841,-0.281465 0.16294,-0.448117 z m 16.90643,0 0.40734,0.122211 -0.0815,0.244436 -0.40741,-0.122225 0.0815,-0.244422 z m -14.4214,0.203687 0.1222,0.04073 c -0.043,1.99e-4 -0.0808,-0.002 -0.1222,0 l 0,-0.04073 z m -13.72886,0.244423 0.44813,0.08149 -0.0815,0.203701 -0.40739,-0.122218 0.0407,-0.162953 z m 20.16555,0 0.16289,0.08149 -0.20363,0.04072 0.0408,-0.122211 z m -10.4698,0.04072 0.16295,0.244436 0.20373,0.04072 c 0.11848,0.03174 0.22322,0.04192 0.32589,0.04073 -0.14736,0.09259 -0.29501,0.125319 -0.48885,0.08149 l -0.20372,0.651811 c 0.38761,0.0877 0.63452,0.218979 0.77402,0.448124 l -0.48887,0.244429 0.40742,0.08149 0.0815,-0.285158 c 0.12205,0.224807 0.15218,0.502572 0.0408,0.855513 l 0.6518,0.162932 -0.36665,1.099942 -0.61105,-0.122212 0,2.11838 -1.34441,1.140676 0.2037,0.325904 -1.75176,2.403577 0.44813,-0.122232 0.24443,0.0815 -0.12221,0.407388 -0.28518,-0.04072 -0.28517,-0.325899 -0.28518,-0.04072 -0.12221,0.488859 -0.28515,-0.08151 2.48504,-7.781017 0.24442,-0.04073 -0.28516,0.977731 0.65181,0.122204 0.40738,-1.303622 -0.44813,-0.08149 0.0407,-0.122211 -0.2037,-0.08149 -0.28517,0 0.0407,-0.122225 0.28516,-0.04072 0.0815,-0.203688 -0.24442,-0.0815 0.16296,-0.570328 -0.20371,-0.285177 0.0815,-0.203688 0.28518,-0.08149 z m 6.68109,0.04072 0.20372,0.04073 -0.0408,0.122224 -0.16296,-0.162966 z m 7.86252,0 0.0408,0.162966 -0.28514,-0.08151 0.2444,-0.08149 z m -20.04331,0.122225 0.44813,0.774029 -0.32589,0.16294 -0.16296,-0.04072 0.0407,-0.896227 z m -0.69254,0.04073 0.20371,0.04072 -0.12224,0.448111 -0.20368,-0.04072 0.12221,-0.448103 z m 19.88032,0.162939 -0.0815,0.24443 -0.20363,-0.04073 0,-0.08149 0.28514,-0.122224 z m -1.38504,0.122219 0.0814,0.122211 0,0.285171 -0.44809,-0.122218 0.16294,0 0.20372,-0.285164 z m 3.87007,0.122211 0.24446,0.08151 0,0.285164 0,0.651819 0,0.122211 -0.3259,0.122224 -0.40741,-0.08151 0.28521,-1.140677 0.0408,0 c 0.0638,-0.008 0.10274,-0.0322 0.16294,-0.04072 z m -25.37999,0.122218 0.36666,0.488865 -0.48887,-0.122225 0.12221,-0.36664 z m 35.4017,0.04072 0.2037,0.04072 -0.12228,0.366641 -0.2037,-0.04072 0.12228,-0.366641 z m -11.44751,0.122218 -0.0408,0.203682 -0.774,0.08151 -0.2037,-0.08151 0,-0.04072 1.01846,-0.162945 z m 6.43669,0 -0.0408,0.203682 0.40734,0.08151 0.0408,-0.16296 -0.40742,-0.122211 z m -27.17253,0.244423 0,0.203694 -0.4074,0.203695 0.32591,0.325899 -0.12222,0.08151 -0.28516,-0.08151 0.0815,-0.325899 -0.12222,-0.04073 0,-0.04072 0.52961,-0.325906 z m 3.13685,0 0.36663,0.08151 -0.24442,0.692546 -0.32592,-0.0815 0.20371,-0.692554 z m 8.31061,0 0.40741,0 0,0.04072 -0.40741,0 0,-0.04072 z m -13.60661,0.08151 0.20368,0.04072 -0.36663,1.344357 c -0.0187,-0.298219 -0.0905,-0.486775 -0.24443,-0.570328 l 0.0407,-0.325919 0.36666,-0.488851 z m 10.30682,0.08149 0.24439,0.08149 -0.1222,0.448124 -0.28514,-0.04072 0.16295,-0.488852 z m 2.11837,0.04072 0.24447,0.04073 -0.0815,0.244435 0.0408,0.162953 c -0.0104,0.196901 0.0326,0.337191 0.12219,0.44813 l 0,0.08149 -0.16296,0 -0.40734,0.448104 -0.20371,0 0.24447,-0.855499 0.16295,-0.285157 -0.0408,-0.04073 0.0814,-0.244436 z m 1.38512,0.04073 0.24446,0.285177 0,0.285164 c -0.16258,-0.11746 -0.28097,-0.253472 -0.40742,-0.366641 l 0.16296,-0.2037 z m -7.69955,0.2037 0.28517,0.04073 -0.16296,0.488851 -0.24443,-0.08149 0.12222,-0.448124 z m 13.9733,0.0815 0.20363,0.04072 0.32598,0.488859 -0.0815,0.244429 -0.2037,-0.0815 -0.0815,-0.08149 0,-0.162953 -0.20371,0 c 0.0127,-0.155335 0.0416,-0.321881 0.0408,-0.448117 z m -16.53982,0.0815 -0.12221,0.36664 -0.0407,1.425841 -0.65181,0.814777 0.36664,0.08149 -0.44813,0.122218 -0.0815,0.244429 0.28517,0.325906 -0.0407,0.203688 -0.57035,0.611076 0.0815,0.977717 -0.8555,1.425838 0.28515,0.285164 -0.61107,-0.122198 0.44812,-1.548063 -1.50732,0.855497 0.28518,0.285177 -1.01847,0.448117 c -0.11114,-0.219264 -0.21797,-0.417476 -0.32591,-0.651825 -0.004,-0.01065 0.004,-0.03001 0,-0.04072 l 0.12222,-0.77402 0.28517,0.08149 0.69255,0.448123 c -0.20055,-0.679502 -0.5592,-1.090604 -1.14067,-1.222151 l 0.2037,-0.692545 c 0.0146,-0.04605 0.0265,-0.07701 0.0407,-0.122212 l 0.12222,-0.04072 0.0407,-0.203695 -0.0815,-0.04072 c 0.0679,-0.225719 0.10797,-0.449748 0.16295,-0.651825 l 0.16296,-0.122198 0.0407,-0.203701 -0.0407,-0.122211 c 0.0591,-0.239831 0.0446,-0.410409 0.0815,-0.611076 0.21655,-0.04125 0.45006,-0.154968 0.69256,-0.366647 -0.0869,0.522227 -0.0361,0.832796 0.24443,0.896253 l -0.3259,0.203681 -0.0407,0.08149 c -0.18052,0.112429 -0.37515,0.243484 -0.52961,0.366646 l -0.0407,0.244429 0.40739,0.122212 -0.3259,1.67027 0.57033,0.122224 0.1222,-0.407389 0.44814,-0.203688 -0.28518,-0.285177 -0.28516,-0.08149 0.0815,-0.203694 1.50731,0.122211 0.20371,-0.692552 -0.52961,-0.122212 0.12222,-0.407382 0.57035,0.122218 0.36663,-1.140676 0.24444,-0.162947 -0.2037,-0.04072 0.48885,-1.548058 0.32592,-0.122225 z m -6.11076,0.04072 0.24442,0.08149 -0.1222,0.366641 -0.20369,-0.04073 0.0815,-0.407382 z m 24.03562,0 0.16303,0.244436 0.20363,0.0815 0.3259,-0.122212 -0.0408,0.162947 c -0.39613,0.0368 -0.72561,0.117893 -0.97771,0.203694 l -0.0408,0 -0.16294,-0.04073 0.28514,-0.448123 0.24446,-0.08149 z m -12.0178,0.08149 0.61113,0.122218 -0.12227,0.40739 -0.48886,-0.529608 z m 3.95167,0.122218 0.32591,0.0815 -0.0408,0.162959 -0.28521,0.08149 0,-0.04072 0,-0.285157 z m 4.80711,0.04072 0.2037,0.04072 0,0.04072 -0.2037,0 c 0,-0.03034 0,-0.05203 0,-0.08149 z m -13.81034,0.0815 0.28518,0.0815 -0.0815,0.61107 -0.36664,0.122211 0.0407,-0.407382 0.12222,-0.407375 z m 29.57609,0.04072 0.20371,0.04072 -0.12227,0.366641 -0.20363,-0.04072 0.12219,-0.36664 z m -7.45516,0.325906 0.40741,0.122225 -0.0815,0.448117 -0.40735,-0.244437 0.0814,-0.325905 z m -26.35773,0.04072 0.4074,0.122225 -0.0815,0.203681 -0.40737,-0.122205 0.0815,-0.203701 z m 1.67029,0 0.20368,0.244429 -0.0406,0.203701 -0.3259,-0.325905 0.16295,-0.122225 z m 18.16932,0.04072 c 0.1619,0.08751 0.27578,0.183866 0.48884,0.285171 -0.0186,0.05762 -0.0408,0.139604 -0.0408,0.203701 l -0.52962,0 c 0.0312,-0.173226 0.0601,-0.336073 0.0815,-0.488872 z m -3.25904,0.203695 0.16295,0 0,0.04072 -0.16295,-0.04072 z m -12.14007,0.2037 -0.0815,0.570328 -0.0407,0.244437 -0.28515,-0.08149 0.0407,-0.611077 0.36665,-0.122211 z m -3.29982,0.08149 0.24442,0.04072 -0.12219,0.488851 -0.28519,-0.04072 0.16296,-0.488858 z m 10.71422,0.04072 0.73325,0.162953 0,0.08149 -0.0814,0.244422 -0.0815,0.122225 0,0.162946 0,0.04072 -0.12227,0.285177 -0.0814,0 -0.20371,-0.285177 c 0.017,-0.323297 -0.0653,-0.599179 -0.16295,-0.814757 z m 20.00257,0 c -0.17824,0.666655 0.0961,1.387527 0.6925,2.118386 l 0.24446,-0.122211 0.16295,0.244422 -0.0408,0.16296 c -0.24632,-0.06587 -0.49568,0.01244 -0.69256,0.162946 -0.0424,-0.01571 -0.0735,-0.02987 -0.1222,-0.04072 l -0.36666,0.122205 c 0.14024,-0.443852 0.0616,-0.72706 -0.3259,-0.814765 l -0.40734,0.122212 -0.0408,0.0815 -0.28522,-0.203694 c 0.21647,-0.513564 0.44527,-0.709846 0.81475,-0.611076 l 0.12227,-0.407382 -0.61112,-0.162946 0.85551,-0.651812 z m 2.40351,0.04072 0.32594,0.488865 -0.12222,0.448124 -0.28514,-0.570335 0.0815,-0.366654 z m -17.96563,0.0815 0.28522,0.0815 -0.12228,0.407381 -0.24438,-0.325905 0.0815,-0.162953 z m -14.25843,0.04072 0.28518,0.04072 -0.0815,0.203688 c -0.11305,0.033 -0.218,0.08731 -0.32591,0.122224 l 0.12221,-0.366653 z m 15.76575,0 0.73332,0 -0.0815,0.203701 -0.69257,0.08151 c 0.0222,-0.106713 0.02,-0.183939 0.0408,-0.28517 z m -3.99235,0.0815 0.0408,0 0,0.122225 -0.0408,0 0,-0.122225 z m 19.67667,0 0.20371,0.04072 -0.20371,0.814765 -0.2037,-0.04073 0.2037,-0.81477 z m -28.43542,0.162947 0.57034,0.122224 -0.24443,0.692553 -0.36665,-0.611077 0.0407,-0.2037 z m 2.15914,0.04072 -0.0815,1.14067 0.61108,0.162966 0.0815,-1.181418 -0.61107,-0.122218 z m 19.55443,0.122218 0.16296,0.04072 -0.1222,0.448124 -0.2037,-0.04072 0,-0.04072 0.0408,0 0.1222,-0.407396 z m -13.44367,0.04072 0.1222,0 0.28521,0.733288 -0.12227,0.162953 -0.16294,0 -0.20364,-0.611083 c 0.008,-0.01131 -0.008,-0.02927 0,-0.04073 l 0,-0.04072 c 0.0259,-0.06547 0.0556,-0.134049 0.0814,-0.203688 z m 6.31442,0 0.40743,0 -0.0815,0.488859 -0.3259,0 0,-0.488859 z m 4.03311,0 0.24446,0.04073 -0.0408,0.162946 -0.24447,-0.0815 0.0408,-0.122205 z m -25.7059,0.08149 0.0815,0.04072 -0.0407,0.203694 -0.0815,-0.04072 0.0407,-0.203688 z m 38.17188,0.08149 -0.0411,0.162952 0.0411,0.04073 0,-0.203688 z m -21.55059,0.04072 0.0814,0 0,0.325906 -0.20363,-0.04072 0.12219,-0.285171 z m -10.91792,0.244442 c 0.27319,-0.04558 0.67943,-0.01344 1.18141,0.04073 l -0.12222,0.407362 c -0.38754,-0.0877 -0.75002,0.182195 -0.93697,0.774035 l -0.57035,-0.896233 c 0.0525,-0.166453 0.17492,-0.280288 0.44813,-0.325913 z m 14.09552,0.04073 0.3259,0 -0.12227,0.20368 -0.20363,0 0,-0.20368 z m 0.774,0 0.0815,0 0,0.20368 -0.0408,0 -0.0408,-0.20368 z m 15.15471,0.04072 0.48886,0.122211 -0.28523,1.018458 -0.36658,-0.488852 0.16295,-0.651817 z m -17.96565,0.04072 0.24439,0.04072 -0.28513,0.08149 0.0408,-0.122206 z m 10.83639,0 0.2037,0.04072 -0.0408,0.122212 -0.24447,0.122218 0,0.08149 -0.0408,0 0.0408,-0.08149 0.0815,-0.285177 z m 9.57354,0.122204 -0.12219,0.0815 -0.0816,0.162946 0.20372,0.244442 0,-0.488864 z m -13.81035,0.0815 0.40742,0.0815 -0.3259,0.44811 -0.32591,-0.08149 -0.0408,-0.162947 0.28514,-0.28517 z m -10.42897,0.04072 0.12219,0.08149 0,0.244436 -0.16295,-0.04073 c 0.0327,-0.102436 0.0171,-0.188583 0.0408,-0.285164 z m 13.85103,0.04073 0.61104,0.529593 0.0408,0.04072 -0.1222,0.61107 c -0.1738,-0.130169 -0.33511,-0.28384 -0.48885,-0.36664 -0.0431,-0.245588 -0.0713,-0.515155 -0.0408,-0.814758 z m -8.55507,0.04072 0.36666,0 0,0.244442 -0.36666,0 0,-0.244442 z m -16.45832,0.0815 0.16296,0.04072 -0.12222,0.407381 -0.28517,-0.0815 0.0815,-0.285171 0.16295,-0.08149 z m 4.19605,0.203694 0.5296,0.122212 0,1.18141 c -0.33907,-0.0767 -0.52094,-0.50904 -0.5296,-1.303622 z m 1.7925,0.162946 -0.24443,0.692553 0.65181,0.162959 0.20369,-0.692559 -0.61107,-0.162953 z m 3.01461,0.244423 c 0.53697,0.121399 0.59101,1.237449 0.16303,3.299808 -0.14907,0.248702 -0.35591,0.702028 -0.57038,1.140676 l -0.57035,-0.122217 -0.52962,-1.344358 c 0.38775,0.0877 0.59316,-0.0857 0.73332,-0.529593 l 0.0815,-1.181422 0.20372,0.244435 0.65179,0.162953 -0.16294,-1.670282 z m 9.6958,0.04072 0.1222,0.122218 -0.24448,0.285164 -0.12219,0.44813 -0.12219,0 -0.28515,-0.08149 -0.0408,-0.448124 0.0815,-0.122218 0.24446,0.244436 0.36667,-0.44813 z m 5.37748,0 c 0,0.306004 -0.15635,0.448157 -0.57038,0.448123 l 0,0.203701 0.40742,0 -0.36667,0.651811 -0.4074,-0.08149 0.0815,-0.0815 0,-0.285164 -0.0408,-0.04072 0.40734,-0.774029 c 0.15954,-0.009 0.31262,-0.04072 0.48893,-0.04072 z m -13.44369,0.04072 0.28514,0.04073 -0.44809,1.262901 -0.0815,0.325906 c 0.19799,0.08141 0.36667,0.166676 0.52961,0.244426 l -0.24446,0.448117 -0.12219,-0.203694 -0.32591,0.162953 -0.24446,-0.04072 c 0.0668,-0.141874 0.13051,-0.272495 0.2037,-0.488859 l -0.2037,0 0.16295,-0.488856 0.0408,0.04072 0.28523,0 0.16295,-1.303635 z m -8.18845,0.08151 0.57035,0.122204 -0.16296,0.407395 -0.40739,-0.529599 z m 13.1585,0.08149 0.0815,0.08149 -0.16295,-0.04072 0.0815,-0.04072 z m 4.35902,0 0.3259,0 c -0.0468,0.254264 -0.0753,0.448642 -0.0815,0.651804 l -0.61106,0 0.0815,-0.570328 0.28515,-0.0815 z m -3.13684,0.08149 0.0815,0.488852 c -0.20422,-0.106761 -0.34884,-0.234988 -0.44817,-0.407376 l 0.36665,-0.0815 z m -1.75178,0.0815 -0.12219,0.488864 -0.16296,0 0,-0.407388 0.28515,-0.08149 z m 18.00639,0.04072 0.20371,0.04072 -0.16296,0.651819 -0.2037,-0.0815 0.16295,-0.611083 z m 0.65181,0 0.48887,0.122212 -0.40736,1.466573 -0.16295,-0.04072 c -0.0834,-0.01883 -0.17104,0.02089 -0.24447,0.04072 l 0,-0.366639 0.32591,-1.222146 z m -21.22467,0.04072 0.12219,0 0,0.04073 -0.12219,-0.04073 z m 3.50349,0.122218 c 0.0814,0.03606 0.1343,0.0796 0.20364,0.122205 l -0.24439,0.04073 0.0408,-0.162946 z m -12.18082,0.0815 0.28518,0.04072 -0.28518,0.896253 -0.28516,-0.04072 0.28516,-0.896234 z m 1.7925,0.162939 -0.12221,0.448124 0.61107,0.122211 -0.48886,-0.570335 z m 19.5952,0 c 0.0453,0.04098 0.15508,0.119444 0.2037,0.162967 l -0.0815,0.529592 -0.89628,2.851666 -0.57036,0.814777 0.36665,1.059194 -0.6518,-0.16296 -0.36666,2.077672 -0.52961,-0.122225 0,-0.977717 0.32598,-0.122218 0.0814,-0.203694 0.16295,-1.466575 0.48886,-0.570335 -0.12219,-0.122212 c 0.0282,-0.05463 0.0408,-0.127194 0.0408,-0.203707 l 0.20372,-0.122198 -0.40742,-0.570341 0.36666,-0.122218 0.24446,0.04072 0.0815,-1.140663 0.36659,-1.140675 0.5296,0.122212 0.16295,-0.611076 z m 1.26285,0.08151 0.12227,0.162939 -0.16303,-0.04072 0.0408,-0.122211 z m 1.83322,0.122204 0.0815,1.629526 0.48885,0.122231 0.20371,-0.203708 -0.24438,0.814771 c -0.11478,-0.189761 -0.15695,-0.281325 -0.28523,-0.488865 l -0.2037,0.08149 c -0.0222,-0.0177 -0.0557,-0.02409 -0.0815,-0.04072 l -0.40741,-0.651805 0.4481,-1.262885 z m 0.52961,0 0.36666,0.08151 0,0.08149 -0.24446,0.366648 -0.2444,-0.0815 0.1222,-0.44811 z m 3.78871,0.162953 0.20365,0.04072 -0.1222,0.448123 -0.20371,-0.08149 0.12226,-0.407395 z m 1.79243,0.244422 0.20373,0.0815 0,1.059198 0,0.04072 c -0.0503,0.0364 -0.11678,0.06421 -0.16292,0.122218 l -0.36665,-0.0815 0.32584,-1.222143 z m -32.10183,0.04072 0.24444,0.0815 -0.97773,3.096101 -0.24444,-0.04072 0.97773,-3.136856 z m 29.57609,0.162966 0.0815,0.04072 -0.16294,0.611061 -0.20372,-0.04072 0.12219,-0.448123 0.16296,-0.162944 z m -14.01405,0.162938 0.2037,0 0,0.488858 -0.2037,0 0,-0.488858 z m 11.69198,0.0815 0.2037,0.08149 0.0408,0.244429 -0.28521,-0.203694 0.0408,-0.122204 z m -24.28011,0.08149 -0.16295,0.448124 0.61107,0.162953 0.16295,-0.488866 -0.61107,-0.122211 z m 27.13179,0.04072 0.2037,0.04073 0.0408,0.692552 -0.40742,-0.122218 0.16295,-0.611069 z m -29.0465,0.04073 0.28517,0.04072 -0.2037,0.651811 -0.24442,-0.0815 0.16295,-0.611064 z m 31.57228,0.203693 0.4073,0.122219 -0.0814,1.059199 -0.0816,0.3259 -0.24446,-0.08149 0.0816,-1.140676 c -0.0555,-0.01251 -0.11206,-0.0053 -0.16299,0 l 0.0816,-0.285171 z m -19.55447,0.244424 0.0408,0 0,0.44813 -0.20363,0 0.16288,-0.44813 z m -5.54042,0.04072 0.69256,0.162959 -0.57029,1.181411 -0.32598,0.448111 -0.0815,0 0.20371,-0.61107 0,-1.0592 c 0.0349,-0.02835 0.0475,-0.07379 0.0815,-0.122211 z m 5.94784,0.203694 0.40734,0 0,0.488858 0.24446,0 0.0408,-0.04072 -0.0408,0.285158 -0.32591,0.08149 -0.0408,-0.122205 0.0408,-0.203695 -0.36666,-0.08149 -0.16295,0.04073 c 0.14084,-0.121573 0.20372,-0.256899 0.20372,-0.44813 z m 13.89178,0 0.24446,0.04072 0.1222,0.733288 -0.0815,0.244429 -0.40734,-0.61107 0.12219,-0.407395 z m -11.81417,0.203694 0.0815,0 -0.20362,0.896241 -0.0815,0.04072 -0.20371,-0.2037 c -0.10349,0 -0.16451,0.009 -0.24447,0.04072 l 0.20372,-0.651811 0.44809,-0.122219 z m 0.77407,0 0.48886,0 0.16296,0.04073 -0.24447,0.774028 -0.52954,0.3259 -0.24447,0 0.0815,-0.203682 0.16295,0 0,-0.203694 0.28515,-0.0815 -0.28515,-0.285158 0.12219,-0.366653 z m 2.85169,0 0.65181,0 -0.0815,0.203695 -0.61105,-0.122218 0.0408,-0.08149 z m -22.52835,0.16296 0.65182,0.162939 -0.48887,0.611083 -0.36665,-0.0815 0.2037,-0.692546 z m 14.95099,0.122204 0.20372,0 0.36666,0.08149 -0.40742,0.203695 -0.0408,0.203694 0.0408,0.122212 -0.16296,0.04072 -0.2037,0 0.2037,-0.651811 z m 20.00255,0.04073 0.20373,0.04072 -0.0411,0.203694 -0.20373,-0.04072 0.0411,-0.203701 z m -18.82113,0.162959 0.24447,0.04072 -0.0408,0.203694 -0.28521,0.04073 0.0815,-0.285171 z m 6.19223,0 0.28515,0.04072 -0.0408,0.0815 -0.24439,-0.0815 0,-0.04072 z m 6.15155,0.203688 0.65181,0.122217 0.28514,0.855506 c 0.0275,0.313995 0.0364,0.616174 -0.0408,0.936975 l -0.20372,-0.08149 0.16296,-0.448124 -0.5703,-0.122198 -0.0408,0.203674 0.3259,0.814771 -0.3259,0.122218 c -0.10519,0.332919 -0.023,0.607197 0.28515,0.774023 -0.0408,0.109901 -0.0735,0.219996 -0.12219,0.325905 l -0.24447,0.08149 0.12219,-0.407382 -0.57029,-0.122211 -0.24446,1.751759 c -0.17075,0.174311 -0.36792,0.371191 -0.5703,0.529586 l 0.20364,-0.285164 c 0.0901,-0.613744 -0.1265,-0.990339 -0.61106,-1.099941 l 0.1222,-0.407388 0.61112,0.122218 0.1222,-0.285171 -0.3259,-0.285164 0.4481,-0.122211 0,-1.181412 0.52961,-1.792487 z m -27.37624,0.04072 0.81476,0.407376 -0.3259,1.099942 -0.28518,-0.0815 -0.32591,-1.018452 0.12223,-0.407388 z m 2.48504,0.04073 0.57033,0.122218 -0.0815,0.203694 -0.52961,-0.122225 0.0407,-0.203687 z m 32.02039,0.122218 0.28511,0.04072 -0.20358,0.692552 -0.28526,-0.04072 0.20373,-0.692545 z m -23.30237,0.04072 0.20372,0 0,0.203688 -0.24447,-0.04073 0.0408,-0.162959 z m 10.14383,0 0,0.0815 -0.0408,0 0.0408,-0.0815 z m 11.81416,0.285164 -0.36666,1.344364 -0.0408,0 0.4074,-1.344364 z m -11.48825,0.08149 0.24446,0.0815 -0.0815,0.203694 -0.28515,0.122219 0.1222,-0.40739 z m 10.30684,0 0.0408,0 c 0.0275,0.19875 0.008,0.418061 -0.0408,0.651805 l -0.16295,-0.04072 0.16295,-0.611069 z m 1.58883,0 0.12219,0.04072 0,0.203701 -0.16295,-0.04072 0.0408,-0.203681 z m -16.33612,0.122211 0.16295,0 -0.4481,0.448124 -0.20371,0 0.48886,-0.448124 z m 3.13683,0 0.28522,0 -0.0815,0.448124 -0.32599,0 0.12228,-0.448124 z m -22.44685,0.203701 0.0815,0.122205 -0.0407,0.0815 c -0.0109,-0.06871 -0.0407,-0.136111 -0.0407,-0.203688 z m 20.16553,0 0.52961,0 0.0814,0.0815 -0.0814,0.325898 -0.61113,-0.122204 0.0815,-0.285164 z m -18.90265,0.0815 0.2037,0.04072 0,0.244435 c -0.0664,-0.0966 -0.13833,-0.183998 -0.2037,-0.28517 z m 10.71425,0.203694 -0.0815,0.285164 -0.0408,0.08149 -0.0408,0.122205 -0.16296,-0.203688 0.32591,-0.285164 z m 19.71735,0 0.2037,0.04073 -0.0815,0.162946 c -0.0282,-0.05376 -0.0917,-0.146671 -0.1222,-0.203681 z m -4.15531,0.04073 0.61105,0.122212 -0.0815,0.244428 -0.61105,-0.162952 0.0815,-0.203688 z m 7.94401,0 0.16296,0.04072 -0.28523,0.977704 -0.12219,-0.04072 0.24446,-0.97771 z m -29.4539,0.08149 1.22215,0.0815 -0.20369,0.611084 -1.26288,0 0.24442,-0.692553 z m 10.91791,0.04072 0.65179,0 0,0.203701 -0.12219,0 -0.61112,-0.162953 c 0.0297,-0.01371 0.0504,-0.02708 0.0815,-0.04073 z m 14.29919,0.0815 0.28515,0.407375 -0.28515,0.448124 -0.24447,-0.04073 0.24447,-0.81477 z m 1.14065,0.325899 0.1222,0.611089 -0.28514,-0.0815 0.16294,-0.5296 z m 4.15534,0.04072 0.12226,0 c -0.0647,0.20396 -0.0571,0.392085 0,0.5296 l -0.0411,0 -0.12234,0.407388 0.0411,0.896234 -0.4073,0.488872 -0.20373,-0.04073 0.32592,-1.181416 -0.44809,-0.122226 0.24436,-0.81475 0.40746,0.122211 0.0814,-0.285171 z m -17.23235,0.04072 0.36666,0 0,0.285171 -0.24446,0.08149 -0.1222,-0.04072 0,-0.325899 z m 0.77399,0 0.40742,0 -0.16295,0.570328 -0.24447,-0.04072 -0.0814,-0.0815 0.0814,0 0,-0.448124 z m 2.03694,0 0.40741,0 -0.12226,0.692546 c -0.14596,0.152666 -0.3487,0.249653 -0.5703,0.325906 l -0.61105,-0.448064 c 0.0966,0.02901 0.20245,0.06441 0.32591,0.0815 0.41394,0 0.57029,-0.192809 0.57029,-0.651818 z m -22.44686,0.04072 c 0.0101,0.01796 0.0709,0.02242 0.0815,0.04072 l -0.0815,0 0,-0.04072 z m 2.77022,0.04072 0.81478,0.20368 -0.0815,0.203702 -0.81476,0.0815 c -0.02,-0.02169 -0.0207,-0.05935 -0.0407,-0.0815 l 0.12222,-0.407382 z m 21.42842,0 0.28515,0.162946 -0.0815,0.2037 -0.28514,-0.04072 0.0815,-0.3259 z m -2.32207,0.08149 0.28514,0.0815 -0.28514,0 0,-0.0815 z m -14.29923,0.366653 0.48887,0.529581 -0.20368,0.651817 -0.0407,0 -0.24444,-0.325906 -0.5296,-0.122211 c -0.0477,0.150996 -0.13914,0.279388 -0.24441,0.366641 l -0.85552,-0.24443 c -0.0468,-0.231807 -0.22213,-0.400867 -0.61107,-0.488851 l 0.0407,-0.203701 0.57033,0.122217 0.20368,0.244424 c 0.10526,-0.332893 0.56893,-0.446035 1.42585,-0.529581 z m 3.17761,0.325893 0.36666,0.448116 -0.65187,-0.122204 0.28521,-0.325912 z m 21.67285,0 0.1222,0.203688 c -0.02,0.075 -0.0868,0.163631 -0.1222,0.244428 l -0.12226,-0.04072 0.12226,-0.407389 z m -1.34437,0.122217 0.20364,0.366641 -0.0408,0.203701 -0.24439,-0.366647 c 0.0222,-0.0703 0.0608,-0.131939 0.0814,-0.203695 z m -25.90965,0.407382 0.24443,0.04073 -0.12221,0.407382 -0.24444,-0.04072 0.12222,-0.407389 z m -1.50733,0.08149 0.2037,0.04072 -0.0407,0.122211 c -0.0614,-0.04225 -0.10219,-0.117667 -0.16297,-0.162946 z m -3.91088,0.08149 c 0.19838,0.04491 0.3656,0.106914 0.52961,0.122211 l 0.48885,0.611083 0,-0.488865 -0.12221,-0.122218 c 0.17362,-0.01084 0.33161,-0.06567 0.44811,-0.122211 0.15589,0.200134 0.3052,0.427057 0.48886,0.651817 l -0.32589,0.448124 -0.12223,-0.122218 -0.0815,-0.162959 -0.28517,-0.04072 -0.65181,0.285164 0.0407,0.611069 c -0.16971,-0.150596 -0.32843,-0.324588 -0.48887,-0.488851 l 0.0815,-0.203695 -0.36665,-0.08149 c -0.1552,-0.172175 -0.30256,-0.344796 -0.44811,-0.529593 l 0.65181,0.122204 0.16295,-0.488858 z m 11.73271,0.244429 0.4481,0 0,0.488865 -0.4481,0 0,-0.488865 z m 11.69189,0 0.16295,0 0,0.122218 -0.16295,-0.122218 z m -4.44052,0.04072 0.16296,0.28517 -0.0408,0.16296 -0.97772,0 -0.28515,0 0,-0.04072 c 0.0969,0.02189 0.19547,0.06122 0.28515,0.04072 0.17944,-0.04112 0.35961,-0.196395 0.48886,-0.407388 l 0.36667,-0.04072 z m -0.73324,0.04073 0,0.04072 -0.52961,0 0.52961,-0.04072 z m 2.19981,0.04072 c 0.0999,0.0769 0.15701,0.226763 0.16302,0.366647 l -0.69256,0 0.16295,-0.285184 0.36659,-0.0815 z m 17.11016,0.04072 0.16293,0.04072 -0.0411,0.162946 -0.16299,-0.08149 0.0411,-0.122224 z m -21.1432,0.04072 0.1222,0 c 0.12613,0.06321 0.21975,0.154696 0.2444,0.285171 l -0.3666,0 0,-0.285171 z m 11.6919,0.448124 0.52961,0.122205 -0.0815,0.244429 -0.52961,-0.122204 0.0815,-0.24443 z m -13.03626,0.08149 0.16295,0.122225 -0.0815,0.203681 -0.0815,-0.04072 0,-0.285171 z m -4.11462,0.0815 0.24447,0.04072 0.12219,0.08149 0.16295,0 -0.0815,0.244429 -0.36665,0.203694 -0.12219,0.04072 0,-0.08149 0.12219,0.04072 0.0408,-0.203695 -0.1222,-0.285164 0,-0.08149 z m 25.4208,0.04072 0.12217,0.448111 -0.12217,0.28517 0,-0.733281 z m -16.17317,0.16294 -0.0408,0.203701 -0.0408,0.488852 -0.93696,-0.122212 -0.0815,-0.08149 0.774,-0.36664 -0.36666,-0.0815 0.69256,-0.04072 z m -3.50349,0.04072 -0.0408,0.122218 -0.28522,-0.0815 0.32597,-0.04072 z m 4.76634,0 0.44817,0.0815 0,0.04072 0,0.203687 c -0.19048,-1.3e-5 -0.29895,0.04791 -0.40741,0.122225 l -0.0408,-0.44813 z m -2.56646,0.04072 -0.12227,0.448123 -0.61106,-0.0815 -0.24438,-0.244429 -0.0815,0.203694 -0.28523,-0.04073 0.0815,-0.244429 0.0815,0 0.20371,0.0815 -0.0408,-0.0815 0.28514,0 0.73333,-0.04072 z m 3.78864,0 0.12219,0.04072 -0.12219,0 0,-0.04072 z m -15.27689,0.04072 0.16295,0.244436 0.28517,0 0.16295,-0.122218 0.28517,0.285158 -0.32592,0.366647 c -0.76182,0.0181 -1.19934,0.124767 -1.26288,0.325913 l -0.0815,0.20368 0.28517,0.0815 0.5296,0 -0.24443,0.285164 c -0.30674,2e-5 -0.72457,-0.157484 -1.18142,-0.366647 l 0.12222,-0.325899 -0.36666,-0.08149 -0.3259,0.162953 c -0.32533,-0.183913 -0.6735,-0.425241 -1.05919,-0.692554 0.52996,0.11989 0.94083,0.02089 1.22216,-0.285157 0.452,0.09709 0.89641,0.162953 1.38509,0.162953 l 0.0815,0 0.16295,0.04073 0.0407,-0.162953 0.12223,-0.122211 z m 1.9147,0.08149 c 0.012,0.278178 0.17506,0.471679 0.61109,0.570342 l -0.0407,0.122211 -0.16297,0.0815 c -0.40159,-0.0334 -0.77866,-0.0703 -1.09992,-0.0815 0.18752,-0.174184 0.46538,-0.465516 0.69255,-0.692553 z m 25.17636,0 0.12219,0.04072 -0.24446,1.018459 -0.1222,-0.04073 0.24447,-1.018452 z m -10.95867,0.0815 0.24447,0.0815 -0.0815,0.285164 -0.16296,0 0,-0.366641 z m -20.81731,0.122225 c 0.29648,0.344616 0.63234,0.712248 0.97771,1.099942 l -0.73329,-0.162973 c -0.29396,-0.250777 -0.58272,-0.525235 -0.8555,-0.814751 l 0.61108,-0.122218 z m -1.0592,0.244429 0.44812,0.733287 -0.32592,0 c -0.23131,-0.135312 -0.47377,-0.249924 -0.69254,-0.407388 0.0469,-0.06751 0.0914,-0.146844 0.12221,-0.244422 l 0.44813,-0.0815 z m 23.22088,0.162946 0.57038,0.122225 0,1.181404 -0.44818,0.122218 -0.5296,-0.122218 0.4074,-1.303629 z m 11.28456,0.122225 -0.20371,0.407369 0.0815,-0.325893 0.1222,-0.0815 z m -16.29536,0.122211 0.24439,0 0,0.08149 -0.24439,-0.04072 0,-0.04072 z m -19.67666,0.122205 c 0.0287,0.007 0.0541,-0.0053 0.0815,0 l 0.0815,0.08151 -0.36665,0 0.20369,-0.08151 z m 29.16867,0.04072 -0.0408,0.366641 -0.28514,-0.0815 c 0.11952,-0.08739 0.21484,-0.191778 0.32589,-0.285164 z m 3.82947,0 0,0.0815 -0.0408,0 0.0408,-0.0815 z m -0.97778,0.04072 0.20371,0.0815 c -0.072,0.06481 -0.16963,0.10082 -0.24439,0.16296 -0.19199,0.159413 -0.36808,0.338528 -0.57037,0.488865 -0.0776,-0.0803 -0.13978,-0.201685 -0.20371,-0.325912 0.1573,-0.0786 0.28433,-0.161449 0.44818,-0.244429 l 0.3259,0.0815 0.0408,-0.203681 c 0.008,-0.0027 -0.008,-0.03766 0,-0.04072 z m -23.54678,0.203688 -1.09993,0.529606 -0.16295,0 0,-0.203694 c 0.1087,2e-5 0.29662,-0.111033 0.52959,-0.285164 l 0.73329,-0.04072 z m -4.92934,0.122231 c 0.12971,0.14532 0.23015,0.256073 0.36664,0.407375 l 0,0.203688 c -0.0655,-0.04252 -0.13897,-0.0782 -0.2037,-0.122211 l 0.0407,-0.0815 -0.16295,-0.04072 c -0.0796,-0.05589 -0.16597,-0.104665 -0.24444,-0.162952 l 0.16296,-0.04072 0.0407,-0.162952 z m 10.02162,0.08149 0.36666,0.244423 -0.0815,0.0815 -0.20364,0 c 0,-0.12072 -0.0372,-0.228227 -0.0815,-0.325905 z m -2.03685,0.325906 0.6518,0 0,0.203695 -0.6518,0 0,-0.203695 z m 6.64033,0 0.40734,0 0,0.0815 -0.24439,0.122212 -0.16295,0 0,-0.203682 z m -3.09615,0.122204 0.40741,0.0815 -0.40741,0 0,-0.0815 z m 5.82564,0 0.24439,0.04072 0.24446,0.285158 0.0815,0 0,0.407388 c -0.36162,0.03127 -0.75804,0.06109 -1.14074,0.0815 l 0.32591,-0.488864 c 0.0789,-0.004 0.15575,0 0.24447,0 l 0,-0.325893 z m -6.47745,0.325906 0.65181,0 0,0.488865 -1.01847,0 0.36666,-0.488865 z m 8.1884,0.04072 0.28522,0.08149 -0.0408,0.122218 c -0.10625,0.01458 -0.21752,0.02715 -0.32591,0.04072 l 0.0814,-0.24443 z m 9.41058,0.04072 c -0.02,0.287606 -0.0416,0.561591 0.0408,0.774028 l -0.16295,0.08149 -0.1222,0.407389 -0.32589,-0.448124 0.57035,-0.814764 z m -12.05856,0.04072 c 0.0104,-0.004 0.0304,0.004 0.0408,0 l 0.0408,0.04072 -0.0815,0.244429 -0.24439,-0.04073 c 0.0431,-0.0934 0.10378,-0.184192 0.24439,-0.244429 z m -8.6365,0.162959 0.65181,0 0,0.203681 -0.65181,0.203688 0,-0.407369 z m 1.01847,0 0.48885,0 0,0.203681 -0.48885,0 0,-0.203681 z m 3.58493,0 0.36665,0 -0.36665,0.407369 -0.48886,0 0.48886,-0.407369 z m -15.15466,0.203681 0.0406,0 0,0.203688 -0.44813,0 0,-0.04072 0.40738,-0.162953 z m 3.34052,0 0.61111,0 0,0.203688 -0.61111,0 0,-0.203688 z m 4.9701,0 0.61108,0 0,0.203688 -0.61108,0 0,-0.203688 z m 3.91091,0 0.6518,0 0,0.203688 -0.6518,0 0,-0.203688 z m 18.04708,0.04072 0.0815,0 0,0.04072 -0.0815,-0.04072 z m -2.72949,0.08151 0.0408,0 -0.16295,0.488845 -0.52954,-0.122204 0.0408,-0.08149 c 0.17551,-0.0707 0.41492,-0.200821 0.61106,-0.285165 z m 5.29603,0 c 0.072,0.0901 0.1611,0.148414 0.24439,0.244429 l 0,0.04072 -0.40734,-0.08149 c -0.0282,-0.02362 -0.0549,-0.05789 -0.0815,-0.0815 l 0.24446,-0.122204 z m -32.63148,0.285164 0.65181,0 0,0.244423 -0.65181,0 0,-0.244423 z m 2.93317,0 0.36666,0 -0.36666,0.529594 0,-0.529594 z m -3.54424,0.244423 0.44812,0 0,0.285171 -0.44812,0 0,-0.285171 z m 9.3291,0 0.61109,0 1.01847,0.285171 1.2221,-0.285171 1.30369,0 0,0.488864 -5.17381,0 0,-0.203693 1.01846,-0.285171 z m 4.52193,0 4.60347,0 -0.4481,0.488864 -0.2037,-0.203693 -1.01847,0.203693 -2.48503,0 -0.44817,-0.488864 z m 5.45899,0 0.57029,0 0,0.285171 -0.57029,0 0,-0.285171 z m 15.31765,0 c -0.0207,0.06659 -0.0289,0.136098 -0.0408,0.203707 l -0.0408,0 0.0408,-0.162966 0.0408,-0.04072 z m -30.51309,0.285171 1.01846,0 0,0.203693 -1.01846,0 0,-0.203693 z"
+       id="path2878-8-3-0-24" />
+    <path
+       inkscape:export-ydpi="112"
+       inkscape:export-xdpi="112"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       style="font-size:52.63950729px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#7a5c5c;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:FFF Tusj;-inkscape-font-specification:FFF Tusj Bold"
+       d="m -549.13023,61.885803 c 0,0.0369 -0.0187,0.0828 -0.0562,0.13798 -0.0374,0.0552 -0.0187,0.10122 0.0562,0.13797 -0.0749,2e-5 -0.12431,-0.046 -0.1493,-0.13797 -0.0254,-0.0919 0.0254,-0.13794 0.1493,-0.13798 l 0,0 z m -14.9292,1.26934 0,0.11033 c 0,0.092 0.0374,0.14719 0.11229,0.16556 -0.24888,-0.0736 -0.2863,-0.16552 -0.11229,-0.27594 l 0,0 z m -0.18657,0.77264 c 0.12429,0.092 0.17415,0.23917 0.14929,0.44152 -0.0254,0.20237 -0.0374,0.40473 -0.0374,0.60706 -0.0749,-0.14715 -0.11227,-0.30811 -0.11227,-0.4829 0,-0.17474 0,-0.3633 0,-0.56568 l 0,0 z m 15.48908,13.052077 c -0.0494,0.092 -0.10559,0.16558 -0.16801,0.22076 -0.0628,0.0552 -0.0935,0.12879 -0.0935,0.22075 -0.12431,1e-5 -0.17403,-0.0229 -0.14929,-0.069 0.0254,-0.0459 0.0374,-0.11501 0.0374,-0.20695 -0.0749,0.0369 -0.13099,0.14718 -0.16788,0.33112 -0.0374,0.18398 0,0.29436 0.13099,0.33113 0.12431,-0.0368 0.1493,-0.10579 0.0749,-0.20696 -0.0749,-0.10111 -0.0494,-0.12416 0.0749,-0.0689 0,0.092 -0.0374,0.20235 -0.11227,0.33112 -0.0749,0.12879 -0.13687,0.25296 -0.1866,0.37253 -0.0495,0.11958 -0.0749,0.22536 -0.0749,0.31733 0,0.092 0.0628,0.16557 0.18661,0.22075 0.12429,0.0552 0.168,0.0644 0.13097,0.0276 -0.0374,-0.0368 -0.0801,0.0184 -0.13097,0.16555 -0.12431,0.14719 -0.17404,0.30815 -0.14931,0.48292 0.0254,0.17477 0.0628,0.33573 0.11228,0.48287 0.1243,-0.0919 0.1803,-0.20693 0.168,-0.3449 -0.0134,-0.13796 -0.0186,-0.30815 -0.0186,-0.5105 0.0749,0.0735 0.10559,0.16098 0.0935,0.26215 -0.0134,0.10123 -0.0254,0.20235 -0.0374,0.30353 -0.0134,0.10123 -0.0134,0.18858 0,0.26215 0.0134,0.0736 0.0682,0.12879 0.16801,0.16556 0.0749,0.092 0.0682,0.16097 -0.0187,0.20696 -0.0868,0.046 -0.16801,0.0966 -0.24261,0.15177 -0.0494,1e-5 -0.0682,-0.0185 -0.0561,-0.0552 0.0134,-0.0367 0,-0.0552 -0.0561,-0.0552 -0.0749,1e-5 -0.0935,0.0369 -0.0561,0.11044 0.0374,0.0736 0.0561,0.13799 0.0561,0.19317 0,0.0369 0.0495,0.0369 0.1493,0 0.0989,-0.0367 0.17428,1e-5 0.22402,0.11033 -0.0254,0.092 -0.0495,0.14719 -0.0749,0.16556 -0.0254,0.0185 -0.0134,0.0643 0.0374,0.13797 -0.0749,0.0369 -0.19915,0.0552 -0.3733,0.0552 -0.0749,0.0919 -0.0868,0.17938 -0.0374,0.26214 0.0495,0.0828 0.0989,0.12418 0.14916,0.12418 0.19917,0.0185 0.19917,-0.046 0,-0.19317 0.12432,0.31274 0.15559,0.68988 0.0935,1.13136 -0.0628,0.44154 -0.0682,0.90145 -0.0186,1.37971 -0.1243,-0.0367 -0.16173,-0.1011 -0.11227,-0.19314 0.0494,-0.092 0.0374,-0.18397 -0.0374,-0.27594 -0.12431,0.0367 -0.17416,0.14717 -0.14931,0.33112 0.0254,0.18398 0.0628,0.29435 0.11228,0.33113 0.0749,0 0.0989,-0.0185 0.0749,-0.0552 -0.0254,-0.0367 -0.0374,-0.0828 -0.0374,-0.13798 0.0494,0.14719 0.1493,0.22538 0.29861,0.23457 0.14916,0.009 0.21157,0.10578 0.18671,0.28973 -1.3e-4,0.0552 -0.1243,0.0736 -0.37332,0.0552 0,0.25753 0.0134,0.50589 0.0374,0.74505 0.0254,0.23915 0.0374,0.5059 0.0374,0.80021 -0.12429,0.0552 -0.16788,0.0414 -0.13097,-0.0413 0.0374,-0.0828 0,-0.0966 -0.13099,-0.0413 -0.0495,1e-5 -0.0615,0.0551 -0.0374,0.16556 0.0254,0.11034 0.0254,0.21156 0,0.30354 0.0749,1e-5 0.16801,1e-5 0.28001,0 0.11228,1e-5 0.19287,0.046 0.24259,0.13796 -1.4e-4,0.18396 -0.1243,0.26676 -0.37331,0.24835 l 0,0.30354 c 0.29859,0.34954 0.71535,0.63467 1.25039,0.85544 0.53504,0.22073 1.05124,0.4323 1.54886,0.63466 0.0494,0 0.0442,-0.0185 -0.0187,-0.0552 -0.0628,-0.0367 -0.0561,-0.0828 0.0187,-0.13798 0.24888,0.12879 0.50389,0.27136 0.76519,0.42771 0.26132,0.15637 0.52878,0.29434 0.80251,0.41394 0.27361,0.11956 0.55977,0.21153 0.85824,0.27591 0.29859,0.0643 0.60961,0.0782 0.93321,0.0413 0.0494,0.0921 0.16788,0.14716 0.3546,0.16557 0.18659,0.0184 0.41675,0.0276 0.69049,0.0276 0.0254,-0.0369 0.0374,-0.10125 0.0374,-0.19317 0,-0.092 0.0134,-0.17936 0.0374,-0.26213 0.0254,-0.0828 0.0682,-0.15177 0.131,-0.20696 0.0614,-0.0552 0.18029,-0.0828 0.35445,-0.0828 0,0.092 0.0186,0.18856 0.0561,0.28975 0.0374,0.10124 0.0441,0.22534 0.0186,0.37251 0.24888,-0.0736 0.51018,-0.0736 0.78392,0 -0.0494,0.0921 -0.12431,0.17478 -0.22402,0.24837 -0.0989,0.0736 -0.28616,0.092 -0.5599,0.0552 0,0.23916 0,0.49211 0,0.75884 0,0.26675 0.0374,0.52889 0.11228,0.78645 0.32345,0.0367 0.60949,0.0644 0.8585,0.0828 0.24873,0.0185 0.5722,0.0276 0.97036,0.0276 -0.0254,0.0552 -0.0186,0.12877 0.0187,0.22075 0.0374,0.0921 0.0561,0.18397 0.0561,0.27594 -0.27359,0.0367 -0.56604,0.046 -0.87694,0.0275 -0.31116,-0.0185 -0.66576,-0.009 -1.06379,0.0276 -0.0749,0.0552 -0.12431,0.12418 -0.1493,0.20697 -0.0254,0.0828 -0.0628,0.14257 -0.11228,0.17935 -0.1243,0 -0.23016,-0.0507 -0.3173,-0.15176 -0.0869,-0.10125 -0.15545,-0.15176 -0.20518,-0.15176 -1.11967,-0.0736 -2.3202,-0.0551 -3.60159,0.0552 -1.28155,0.11033 -2.51939,0.20236 -3.71377,0.27594 -0.1493,0.38632 -0.2176,0.80023 -0.2053,1.24174 0.0134,0.44152 -0.0935,0.9014 -0.31717,1.37971 -0.12431,-0.38632 -0.17416,-0.80025 -0.14931,-1.24175 0.0254,-0.4415 -0.0254,-0.83701 -0.14929,-1.18654 -0.1493,-0.11045 -0.34217,-0.17478 -0.57848,-0.19316 -0.23631,-0.0185 -0.48519,-0.0138 -0.7465,0.0138 -0.26116,0.0276 -0.52862,0.0688 -0.80236,0.12418 -0.27373,0.0552 -0.52261,0.0921 -0.74662,0.11035 -0.17402,-0.12879 -0.24875,-0.22996 -0.22389,-0.30356 -1.26897,-0.0367 -2.49436,-0.0275 -3.67618,0.0276 -1.1821,0.0552 -2.2332,0.10125 -3.15385,0.13799 -0.12431,0.0367 -0.18659,0.046 -0.18659,0.0276 0,-0.0185 -0.0254,-0.0276 -0.0749,-0.0276 -0.10024,0.0551 -0.24273,0.0919 -0.4293,0.11034 -0.1866,0.0185 -0.37948,0.0276 -0.57849,0.0276 -0.19915,0 -0.39818,-0.005 -0.59733,-0.0138 -0.19903,-0.009 -0.36062,-0.005 -0.48505,0.0138 0,0.20237 0.0186,0.40011 0.0561,0.59329 0.0374,0.19317 -0.0815,0.31733 -0.35459,0.3725 0,0.14717 0.0254,0.29895 0.0749,0.45532 0.0495,0.15637 -0.0254,0.26214 -0.22402,0.31733 -0.1243,-0.14717 -0.2116,-0.38171 -0.2613,-0.70364 -0.0495,-0.32195 -0.0749,-0.60249 -0.0749,-0.84163 0,-0.092 -0.0989,-0.13796 -0.29847,-0.13796 -0.19915,0 -0.36075,0 -0.48519,0 -0.39818,0 -0.81493,0.0229 -1.2504,0.0689 -0.43532,0.046 -0.87707,0.0783 -1.32483,0.0966 -0.44803,0.0185 -0.87708,0.009 -1.28781,-0.0276 -0.41048,-0.0367 -0.77737,-0.13797 -1.10096,-0.30354 -0.34833,0.0367 -0.71522,0.0598 -1.10096,0.0689 -0.38562,0.009 -0.67821,0.0599 -0.87722,0.15178 -0.1243,-0.092 -0.30474,-0.11959 -0.54106,-0.0828 -0.23644,0.0367 -0.3546,0.10124 -0.3546,0.19317 -0.27374,-0.0736 -0.51633,-0.0873 -0.72777,-0.0413 -0.21159,0.046 -0.45418,0.0506 -0.72779,0.0138 l 0,-0.11034 c 0.1243,-0.14716 0.30475,-0.21616 0.54119,-0.20695 0.23631,0.009 0.49134,-0.005 0.76507,-0.0413 0,-0.0919 0,-0.20694 0,-0.34491 0,-0.13797 -0.0254,-0.25294 -0.0749,-0.34493 0,-0.0367 -0.0494,-0.0414 -0.14942,-0.0138 -0.0989,0.0276 -0.18659,-0.005 -0.26132,-0.0966 0,-0.18396 0.22402,-0.27595 0.67192,-0.27595 0.0495,-0.0367 0.11762,-0.0873 0.20517,-0.15176 0.0868,-0.0644 0.20543,-0.14258 0.3546,-0.23457 -0.0494,-0.092 -0.11228,-0.15176 -0.1866,-0.17935 -0.0749,-0.0276 -0.14916,-0.0413 -0.22387,-0.0413 -0.0749,0 -0.13687,0.005 -0.18659,0.0138 -0.0494,0.009 -0.0749,-0.0138 -0.0749,-0.0689 0,-0.14716 0.0815,-0.22074 0.24247,-0.22074 0.16172,0 0.30474,-0.0276 0.42917,-0.0828 0,-0.14717 -0.0186,-0.28055 -0.0561,-0.40012 -0.0374,-0.11958 -0.0561,-0.30813 -0.0561,-0.56569 -0.0495,-0.0367 -0.14302,-0.0552 -0.28003,-0.0552 -0.13673,10e-6 -0.16788,-0.0736 -0.0935,-0.22077 0.19903,-0.0552 0.37319,-0.12876 0.52248,-0.22073 0.14918,-0.0921 0.28616,-0.18397 0.4106,-0.27595 0.0749,0.0736 0.0989,0.14717 0.0749,0.22075 -0.0254,0.0736 -0.0134,0.13798 0.0374,0.19317 0.52234,-0.0369 1.0761,-0.0644 1.66073,-0.0828 0.58476,-0.0185 1.16324,-0.0506 1.73558,-0.0966 0.5722,-0.046 1.11967,-0.12417 1.64228,-0.23453 0.52247,-0.11034 0.9828,-0.28515 1.38099,-0.52431 0.0254,-0.0919 -0.0134,-0.14256 -0.1123,-0.15176 -0.10024,-0.009 -0.13698,-0.0873 -0.11226,-0.23455 0.0749,-0.0552 0.17429,-0.0873 0.29872,-0.0966 0.12431,-0.009 0.24876,-0.0138 0.37319,-0.0138 0.19902,-0.18396 0.29232,-0.41391 0.28002,-0.68984 -0.0134,-0.27595 -0.0561,-0.56109 -0.13098,-0.85544 -0.0494,-0.33113 -0.0815,-0.66225 -0.0935,-0.99339 -0.0134,-0.33114 -0.0802,-0.64384 -0.20516,-0.93819 -0.1243,0.29435 -0.20529,0.56569 -0.2426,0.81401 -0.0374,0.24837 -0.0561,0.4921 -0.0561,0.73126 0,0.23915 0,0.4829 0.0187,0.73124 0.0134,0.24836 0.0186,0.51969 0.0186,0.81403 -0.14943,-0.31272 -0.21785,-0.64386 -0.20529,-0.99339 0.0134,-0.34952 0.0561,-0.70825 0.13098,-1.07617 0.0749,-0.36791 0.15544,-0.72663 0.24259,-1.07617 0.0869,-0.34953 0.13099,-0.68066 0.13099,-0.99341 -0.0749,-0.0552 -0.16172,-0.0966 -0.26117,-0.12417 -0.10025,-0.0276 -0.14943,-0.0873 -0.1493,-0.17935 0.0749,-0.0367 0.14302,-0.0644 0.20516,-0.0828 0.0628,-0.0185 0.14303,-0.0552 0.24273,-0.11035 0,-0.20236 -0.0374,-0.40931 -0.11227,-0.62088 -0.0749,-0.21155 -0.0749,-0.4185 0,-0.62087 0,-0.0552 0.0254,-0.12416 0.0749,-0.20695 0.0495,-0.0828 0.0749,-0.14256 0.0749,-0.17937 -0.0749,-0.092 -0.13701,-0.19315 -0.18659,-0.30353 -0.0494,-0.11034 -0.0628,-0.23915 -0.0374,-0.38632 -0.0749,-0.73583 -0.13099,-1.4671 -0.168,-2.19374 -0.0374,-0.72665 -0.0495,-1.4625 -0.0374,-2.20755 0.0134,-0.74504 0.0374,-1.50847 0.0749,-2.29033 0.0374,-0.78181 0.0935,-1.60504 0.16802,-2.46968 0.0495,3e-5 0.0749,-0.0275 0.0749,-0.0828 0,-0.0552 0.0614,-0.0644 0.18659,-0.0277 0.0254,-0.47827 0,-0.94739 -0.0749,-1.407307 -0.0749,-0.45988 -0.10024,-0.85541 -0.0749,-1.18654 0.0749,0.25755 0.13687,0.56109 0.18659,0.91061 0.0494,0.34953 0.0869,0.717467 0.11228,1.103757 0.0253,0.38634 0.0495,0.77266 0.0749,1.15896 0.0254,0.38635 0.0614,0.74507 0.11227,1.07619 0.0749,2e-5 0.0935,-0.0552 0.0561,-0.16558 -0.0374,-0.11033 -0.0561,-0.18394 -0.0561,-0.22074 0.0749,2e-5 0.12431,0.0138 0.1493,0.0414 0.0254,0.0277 0.0628,0.0507 0.11226,0.069 0,-0.14715 0,-0.27133 0.0186,-0.37252 0.0134,-0.10114 0.0187,-0.19775 0.0187,-0.28974 -0.0749,1e-5 -0.11229,0.0184 -0.11229,0.0552 0,0.0369 0,0.0782 0.0187,0.12417 0.0134,0.0461 0,0.0873 -0.0187,0.12418 -0.0254,0.0369 -0.0868,0.0552 -0.18657,0.0552 0.0254,-0.14714 0.0628,-0.29433 0.11227,-0.44151 0.0494,-0.14714 0.0749,-0.29432 0.0749,-0.44151 0.0494,0.0184 0.0628,0.0598 0.0374,0.12417 -0.0254,0.0644 -0.0374,0.1242 -0.0374,0.17938 0.1243,-0.23914 0.14929,-0.47829 0.0749,-0.71747 -0.0749,-0.23913 -0.0495,-0.47826 0.0749,-0.71745 -0.0494,-0.0184 -0.0869,-0.0138 -0.11227,0.0138 -0.0254,0.0277 -0.0749,0.0138 -0.14917,-0.0414 -0.0495,0.0552 -0.0682,0.138 -0.0561,0.24835 0.0134,0.11046 0,0.19318 -0.0561,0.24836 l 0,-0.689867 c 0.0494,2e-5 0.0935,-0.0367 0.13098,-0.11033 0.0374,-0.0736 0.0935,-0.0644 0.16788,0.0277 l 0,-0.5519 c -0.12431,-0.0184 -0.23016,-0.0184 -0.31719,0 -0.0869,0.0184 -0.15558,0.009 -0.20529,-0.0275 0.0749,-0.25754 0.12429,-0.48288 0.14917,-0.67605 0.0254,-0.19314 0.0749,-0.39091 0.1493,-0.5933 0.10024,0.092 0.143,0.184 0.13098,0.27595 -0.0134,0.092 -0.0442,0.17938 -0.0935,0.26215 -0.0495,0.0828 -0.0869,0.16098 -0.11226,0.23454 -0.0254,0.0736 -0.0134,0.138 0.0374,0.19316 0.27375,-0.0367 0.36088,-0.0966 0.2613,-0.17935 -0.0989,-0.0828 -0.17415,-0.15175 -0.224,-0.20697 0.0495,-0.0367 0.0868,-0.0736 0.11226,-0.11034 0.0254,-0.0367 0.0749,-0.0184 0.1493,0.0552 -0.1243,-0.3127 -0.15558,-0.65302 -0.0935,-1.02098 0.0615,-0.36789 0.0307,-0.68064 -0.0935,-0.9382 -0.0989,0.23917 -0.11763,0.48752 -0.0561,0.74503 0.0615,0.25758 0.0561,0.48753 -0.0187,0.68987 -0.12432,-0.29431 -0.16789,-0.60705 -0.131,-0.9382 0.0374,-0.33111 0.0561,-0.59786 0.0561,-0.80024 l 0.1493,0 c 0,-0.0736 0.0134,-0.12874 0.0374,-0.16556 l 0.0749,-0.11034 c 0.0495,-0.0736 0.0495,-0.12875 0,-0.16557 -0.0254,-0.0184 -0.0614,-0.0275 -0.11226,-0.0276 0.0254,-0.14714 0.0749,-0.25753 0.14928,-0.33113 0.0749,-0.0736 0.0749,-0.19313 0,-0.35873 -0.0494,4e-5 -0.0682,0.0322 -0.0561,0.0966 0.0134,0.0644 0,0.0966 -0.0561,0.0966 -0.0749,-0.20233 -0.0749,-0.39548 0,-0.57948 0.0749,-0.18394 0.0869,-0.37709 0.0374,-0.57947 -0.0989,0.34955 -0.16158,0.68988 -0.18657,1.02098 -0.0254,0.33116 -0.0374,0.57031 -0.0374,0.71745 0,0.092 0.0186,0.1426 0.0561,0.15177 0.0374,0.009 0.0186,-0.005 -0.0561,-0.0414 -0.0749,-1.12214 -0.0374,-2.25351 0.11228,-3.39409 -0.0495,-0.0367 -0.1493,-0.0506 -0.29861,-0.0415 -0.1493,0.009 -0.22388,-0.005 -0.22388,-0.0414 -0.0749,0.0552 -0.11228,0.184 -0.11228,0.38632 -0.0749,-0.0919 -0.12429,-0.17473 -0.14929,-0.24834 -0.0254,-0.0736 -0.0628,-0.15634 -0.11226,-0.24835 0.17401,-0.7726 0.31704,-1.59123 0.42904,-2.45589 0.11228,-0.8646 0.0682,-1.78439 -0.13098,-2.75942 -0.19903,0.0552 -0.3919,0.0644 -0.57849,0.0276 -0.18659,-0.0367 -0.37946,-0.0552 -0.57848,-0.0552 0.0254,-0.18393 0.16173,-0.27591 0.41046,-0.27595 -0.37318,-0.23911 -0.78364,-0.43226 -1.23166,-0.57947 -0.44777,-0.14714 -0.91438,-0.26671 -1.39957,-0.35873 -0.48519,-0.0919 -0.98908,-0.17472 -1.51156,-0.24834 -0.52248,-0.0736 -1.04509,-0.16555 -1.56758,-0.27596 -0.1243,0.0369 -0.18658,0.14721 -0.18658,0.33113 0,0.18401 -0.0374,0.29438 -0.11228,0.33115 -0.0254,3e-5 -0.0374,-0.0275 -0.0374,-0.0828 0,-0.0367 0.0134,-0.0736 0.0374,-0.11034 -0.0494,0.0552 -0.0935,0.10123 -0.13098,0.13797 -0.0374,0.0369 -0.11762,0.0552 -0.24274,0.0552 -0.0494,-0.0919 -0.0868,-0.18853 -0.11226,-0.28974 -0.0254,-0.10112 -0.0614,-0.22533 -0.11228,-0.37253 -0.0749,-0.0552 -0.16172,-0.10113 -0.26116,-0.13797 -0.0989,-0.0367 -0.14932,-0.12874 -0.14932,-0.27594 -0.12429,0.0369 -0.19286,0.11961 -0.20529,0.24835 -0.0134,0.12881 0.0187,0.23918 0.0935,0.33114 -0.19903,-0.0552 -0.28002,-0.12875 -0.2426,-0.22077 0.0374,-0.0919 0.0307,-0.18393 -0.0187,-0.27594 -0.1243,-0.0552 -0.29244,-0.0782 -0.50389,-0.069 -0.21159,0.01 -0.42304,0.0184 -0.63462,0.0275 -0.21145,0.009 -0.40419,0.005 -0.57848,-0.0138 -0.17416,-0.0183 -0.29861,-0.0736 -0.37319,-0.16556 0.27374,-0.12873 0.59106,-0.16094 0.95167,-0.0966 0.36088,0.0644 0.74034,0.0782 1.13851,0.0414 0.0254,-0.0919 0,-0.15173 -0.0935,-0.17935 -0.0869,-0.0275 -0.13099,-0.069 -0.13099,-0.12418 0.27373,-0.38628 0.41689,-0.80479 0.42931,-1.25554 0.0134,-0.45067 0.0682,-0.86917 0.16801,-1.25553 0.27374,-0.12875 0.49134,-0.12875 0.65306,0 0.16187,0.12879 0.37947,0.23918 0.65319,0.33111 -0.0749,0.092 -0.0749,0.15642 0,0.19317 0.0749,0.0369 0.0989,0.12882 0.0749,0.27594 1.24427,-0.0183 2.38251,-0.0505 3.41516,-0.0966 1.03253,-0.0459 2.1335,-0.0598 3.30302,-0.0414 0,-0.29429 -0.0614,-0.54725 -0.18659,-0.75884 -0.1243,-0.21151 -0.13686,-0.44606 -0.0374,-0.70365 0.12431,-0.0183 0.19902,4e-5 0.22389,0.0552 0.0254,0.0553 0.0374,0.12422 0.0374,0.20696 0,0.0828 0,0.17021 -0.0187,0.26215 -0.0134,0.092 0.0187,0.14721 0.0935,0.16556 0.1493,-0.2575 0.21761,-0.53804 0.20531,-0.84163 -0.0134,-0.30347 0,-0.60243 0.0186,-0.8968 0.22388,0.0553 0.35459,0.15641 0.39189,0.30353 0.0374,0.14721 0.0441,0.30818 0.0187,0.4829 -0.0254,0.17481 -0.0494,0.35876 -0.0749,0.55189 -0.0253,0.19319 0.0134,0.36336 0.11229,0.5105 0.0494,0.092 0.0615,0.1564 0.0374,0.19316 -0.0254,0.0369 -0.0374,0.10123 -0.0374,0.19315 l 0,0.19317 c 2.01545,0.0369 4.10549,0.0644 6.27039,0.0828 2.16462,0.0184 4.55327,0.0736 7.16593,0.16557 0.0749,-0.0736 0.0989,-0.16093 0.0749,-0.26215 -0.0254,-0.10112 -0.0561,-0.20692 -0.0935,-0.31733 -0.0374,-0.11034 -0.0495,-0.21613 -0.0374,-0.31734 0.0134,-0.10112 0.0935,-0.18853 0.24259,-0.26213 0.0749,0.0552 0.1243,0.13339 0.14929,0.23454 0.0254,0.10123 0.0374,0.20699 0.0374,0.31732 0,0.11046 0,0.2208 -0.0186,0.33114 -0.0134,0.11045 0,0.2024 0.0561,0.27595 1.21926,0.092 2.35136,0.1242 3.39645,0.0966 1.04508,-0.0275 2.12734,-0.0782 3.24714,-0.15176 0.10024,-0.11033 0.17415,-0.23911 0.22402,-0.38632 0.0494,-0.14714 0.10559,-0.2897 0.16775,-0.42771 0.0628,-0.13793 0.14314,-0.25291 0.24271,-0.34494 0.0989,-0.0919 0.24875,-0.15631 0.44776,-0.19315 -0.0749,0.34957 -0.0307,0.6347 0.131,0.85542 0.16172,0.22079 0.24245,0.43234 0.24258,0.63467 0.42291,0.0369 0.78379,0.0369 1.08225,0 0.2986,-0.0367 0.57234,0.0369 0.82121,0.22075 -0.27373,0.092 -0.5722,0.1518 -0.89578,0.17936 -0.32334,0.0277 -0.72151,0.0874 -1.19426,0.17937 0.0494,0.29438 0.10024,0.58872 0.14929,0.88302 0.0495,0.29438 0.21145,0.51511 0.4852,0.66225 -0.0989,0.0369 -0.16174,0.0782 -0.1866,0.12419 -0.0254,0.0461 -0.0628,0.0691 -0.11227,0.069 0,0.092 0.0254,0.15181 0.0749,0.17937 0.0495,0.0276 0.11227,0.0598 0.18658,0.0966 -0.1243,0.092 -0.19915,0.22539 -0.22388,0.40012 -0.0254,0.1748 -0.0494,0.33576 -0.0749,0.4829 -0.0749,-0.0552 -0.13686,-0.11034 -0.18659,-0.16557 -0.0494,-0.0552 -0.0628,-0.12873 -0.0374,-0.22075 -0.12432,-0.0736 -0.19302,-0.0782 -0.20531,-0.0138 -0.0134,0.0644 -0.0815,0.0874 -0.2053,0.069 l 0,-0.27594 c -0.67178,-0.0184 -1.32497,0.0138 -1.95946,0.0966 -0.63449,0.0828 -1.24425,0.1886 -1.82888,0.31733 -0.58476,0.12881 -1.15696,0.28057 -1.71687,0.45531 -0.55977,0.17479 -1.10108,0.35415 -1.62343,0.53808 -0.12431,2.42833 -0.21159,4.87961 -0.2613,7.35388 -0.0495,2.4743 -0.0749,4.94399 -0.0749,7.409057 -0.0254,0.092 -0.0307,0.20698 -0.0187,0.34492 0.0134,0.13799 -0.0441,0.28055 -0.16802,0.42771 0.0494,0.5887 0.0749,1.18658 0.0749,1.79362 0,0.6071 0.0134,1.29695 0.0374,2.06957 0,0.0552 0.0307,0.11046 0.0935,0.16557 0.0615,0.0552 0.11762,0.11035 0.16801,0.16557 l 0,0 z m -0.33601,-8.140317 c 0,0.0184 -0.0134,0.0599 -0.0374,0.12419 -0.0254,0.0644 -0.0494,0.1288 -0.0749,0.19316 -0.0253,0.0644 -0.0374,0.12419 -0.0374,0.17938 0,0.0552 0.0374,0.0828 0.11226,0.0828 -0.0494,-0.0736 -0.0561,-0.14256 -0.0186,-0.20696 0.0374,-0.0644 0.0749,-0.11954 0.11229,-0.16557 0.0374,-0.046 0.0628,-0.0828 0.0749,-0.11033 0.0134,-0.0275 -0.0307,-0.0597 -0.13099,-0.0966 l 0,0 z m -14.07083,-17.08083 c 0.0254,-0.0919 0.0307,-0.20692 0.0186,-0.34492 -0.0134,-0.13793 -0.0561,-0.18853 -0.131,-0.15177 0.0254,3e-5 0.0374,0.0276 0.0374,0.0828 0,0.0552 0,0.11045 -0.0187,0.16555 -0.0134,0.0553 -0.0186,0.11046 -0.0186,0.16556 0,0.0552 0.0374,0.0828 0.11228,0.0828 l 0,0 z m 0.22402,1.18656 c 0.24873,4e-5 0.57861,0.005 0.98908,0.0138 0.41047,0.009 0.82095,0.0184 1.23169,0.0276 0.41047,0.01 0.79608,0.01 1.15696,0 0.36074,-0.01 0.6282,-0.0412 0.80249,-0.0966 -0.19916,2e-5 -0.47903,-0.009 -0.83978,-0.0277 -0.36089,-0.0183 -0.74034,-0.0367 -1.13839,-0.0552 -0.39804,-0.0183 -0.79621,-0.0183 -1.19439,0 -0.39804,0.0184 -0.73405,0.0644 -1.00766,0.13797 l 0,0 z m 13.95867,0.52429 0,0.11034 c 0.24901,3e-5 0.53504,0.0138 0.8585,0.0413 0.32359,0.0277 0.64078,0.0507 0.95179,0.0691 0.31104,0.0184 0.60335,0.0277 0.87722,0.0277 0.27347,5e-5 0.50991,-0.0183 0.70907,-0.0552 -0.52262,-0.0736 -1.11981,-0.13335 -1.79146,-0.17937 -0.67189,-0.046 -1.20695,-0.0505 -1.60512,-0.0137 l 0,0 z m -2.20191,0.0828 c 0.0989,4e-5 0.23017,0.009 0.39189,0.0276 0.16174,0.0184 0.32974,0.0322 0.50377,0.0414 0.17429,0.01 0.3483,0.005 0.52261,-0.0138 0.17415,-0.0183 0.31102,-0.0644 0.41047,-0.13796 -0.27362,2e-5 -0.56592,0.0138 -0.87708,0.0414 -0.31104,0.0277 -0.6282,0.0414 -0.95166,0.0414 l 0,0 z m 8.88292,0.16556 0.37319,0 c 0,-0.0919 -0.0628,-0.12873 -0.1866,-0.11033 -0.12431,0.0184 -0.18672,0.0552 -0.18659,0.11033 l 0,0 z m -22.35655,-0.4415 c -0.1243,0.0369 -0.26759,0.0507 -0.42918,0.0413 -0.16174,-0.009 -0.27988,0.005 -0.3546,0.0414 0.1243,4e-5 0.27374,0.01 0.44788,0.0276 0.17404,0.0184 0.28618,-0.0183 0.3359,-0.11034 l 0,0 z m 22.61772,0.71745 c -1.11967,-0.0367 -2.27662,-0.0413 -3.47102,-0.0138 -1.19439,0.0277 -2.35136,0.023 -3.47116,-0.0138 0.19915,0.1472 0.4356,0.22079 0.70921,0.22075 0.27373,4e-5 0.54746,4e-5 0.82121,0 0.87078,0.0184 1.69186,0.0321 2.46335,0.0414 0.77123,0.01 1.51772,-0.0138 2.23921,-0.069 0.12431,0.0184 0.28002,0.0322 0.46661,0.0414 0.18659,0.009 0.35461,-0.0598 0.5039,-0.20694 -0.0254,-0.0183 -0.0494,-0.0275 -0.0749,-0.0276 -0.10024,3e-5 -0.16173,0.01 -0.18659,0.0276 l 0,0 z m -23.66269,-0.33113 c -0.79633,-0.0183 -1.57998,-0.0183 -2.35133,0 -0.77137,0.0184 -1.41828,0.0552 -1.94088,0.11033 1.11966,0.0184 2.22062,0.0414 3.30301,0.0691 1.08238,0.0276 2.1586,-0.023 3.22843,-0.15177 -0.39805,-0.0552 -0.77136,-0.0735 -1.11968,-0.0552 -0.34832,0.0184 -0.7215,0.0277 -1.11955,0.0277 l 0,0 z m 13.06302,0.13796 c -1.24409,0.0369 -2.57522,0.0598 -3.99349,0.069 -1.41839,0.01 -2.66251,0.0322 -3.73233,0.0691 -0.0495,4e-5 -0.13098,4e-5 -0.24273,0 -0.11227,4e-5 -0.22387,4e-5 -0.33588,0 -0.11228,4e-5 -0.18672,4e-5 -0.22389,0 -0.0374,4e-5 0,4e-5 0.13099,0 0.52249,0.0552 0.9268,0.0736 1.2131,0.0552 0.28604,-0.0183 0.6282,-0.0275 1.02625,-0.0277 0.5972,0.0184 1.2814,0.0322 2.05275,0.0414 0.77136,0.01 1.57372,0.0184 2.40735,0.0276 0.83352,0.01 1.67958,0.01 2.53808,0 0.85824,-0.01 1.67316,-0.0322 2.44453,-0.0691 -0.72151,-0.0183 -1.34985,-0.0507 -1.88476,-0.0966 -0.53504,-0.046 -1.00151,-0.069 -1.39956,-0.069 l 0,0 z m -19.2214,0.38633 c 0.12431,0.0368 0.20517,0.0368 0.24259,0 0.0374,-0.0367 0.0561,-0.0874 0.0561,-0.15177 0,-0.0644 0,-0.12414 0,-0.17936 0,-0.0552 0.0374,-0.0919 0.11227,-0.11034 -0.0495,4e-5 -0.11227,-0.0275 -0.18659,-0.0828 -0.0749,-0.0552 -0.13699,-0.10112 -0.18672,-0.13797 -0.0254,0.1472 -0.0561,0.25758 -0.0935,0.33113 -0.0374,0.0736 -0.0187,0.18401 0.0561,0.33113 l 0,0 z m 22.84161,0.16556 0,0.46911 c 0.39817,-0.0183 0.87106,-0.0183 1.41839,0 0.54735,0.0184 1.11954,0.0369 1.71687,0.0552 0.59707,0.0184 1.1881,0.0322 1.77286,0.0413 0.58465,0.01 1.12583,-0.005 1.62344,-0.0413 0.12431,5e-5 0.27375,-0.0138 0.4479,-0.0414 0.17417,-0.0275 0.28618,-0.11488 0.33589,-0.26214 -0.54733,-0.0736 -1.11338,-0.115 -1.69815,-0.12418 -0.58476,-0.01 -1.18812,-0.01 -1.81016,0 -0.62219,0.01 -1.25026,0.01 -1.88488,0 -0.63436,-0.01 -1.27526,-0.0414 -1.92216,-0.0966 l 0,0 z m -13.84668,-0.0552 c 0,0.1472 0,0.28057 -0.0187,0.40012 -0.0134,0.11961 0.0442,0.20699 0.16803,0.26215 2.01531,-0.0183 4.0308,-0.0322 6.04625,-0.0414 2.01546,-0.01 4.00592,-0.0138 5.97168,-0.0138 0.19901,3e-5 0.44775,0.01 0.74648,0.0277 0.29861,0.0184 0.48518,-0.0183 0.55976,-0.11035 l 0,-0.4691 c -2.23933,-0.0367 -4.46638,-0.0597 -6.68073,-0.0691 -2.21461,-0.009 -4.47881,-0.005 -6.79275,0.0138 l 0,0 z m -6.53158,-0.13797 c 0.12431,4e-5 0.26746,0.01 0.42932,0.0276 0.16159,0.0184 0.24246,-0.0183 0.24246,-0.11033 -0.12431,-0.0183 -0.24875,-0.01 -0.37317,0.0277 -0.12431,0.0369 -0.22402,0.0552 -0.29861,0.0552 l 0,0 z m 6.15827,0.11034 c 0,0.0369 0,0.115 0.0186,0.23456 0.0134,0.1196 0.0441,0.1334 0.0935,0.0414 -0.0495,-0.0919 -0.0628,-0.15173 -0.0374,-0.17936 0.0254,-0.0275 0.0374,-0.0597 0.0374,-0.0966 l -0.11229,0 z m -7.05405,0.13798 c 0.3483,0.25757 0.8025,0.42314 1.36239,0.49669 0.55977,0.0736 1.16312,0.11045 1.81003,0.11034 0.64706,2e-5 1.29397,-0.01 1.94088,-0.0277 0.64691,-0.0183 1.23167,3e-5 1.75416,0.0552 0.0254,-0.14714 0.0374,-0.2897 0.0374,-0.4277 0,-0.13793 0,-0.25291 0,-0.34494 -1.3187,-0.0367 -2.51923,-0.0137 -3.60162,0.0691 -1.08251,0.0828 -2.18348,0.10579 -3.30314,0.0691 l 0,0 z m 22.80444,0.74504 c -0.27373,3e-5 -0.56618,-0.0183 -0.87721,-0.0552 -0.31104,-0.0367 -0.5412,0.0644 -0.69049,0.30354 0.2986,0.0369 0.65935,0.0598 1.08238,0.0691 0.42304,0.01 0.85851,0.01 1.30626,0 0.4479,-0.01 0.88965,-0.0275 1.32511,-0.0552 0.43533,-0.0275 0.81479,-0.069 1.13825,-0.12418 0.19915,0.0184 0.38575,0.0184 0.5599,0 0.17417,-0.0183 0.2986,-0.10112 0.37332,-0.24835 -0.57233,0.0369 -1.25053,0.0552 -2.03419,0.0552 -0.78378,4e-5 -1.51155,0.0184 -2.18333,0.0552 l 0,0 z m -24.52132,-0.38632 -0.0374,0.11034 c 0.0749,4e-5 0.1616,4e-5 0.2613,0 0.0989,4e-5 0.16174,-0.0275 0.1866,-0.0828 -0.0749,-0.0183 -0.14301,-0.0367 -0.20531,-0.0552 -0.0614,-0.0183 -0.13099,-0.009 -0.2053,0.0276 l 0,0 z m 21.64736,0.41392 c -0.84607,0.0369 -1.74787,0.0369 -2.70583,0 -0.95794,-0.0367 -1.92215,-0.0367 -2.89266,0 -0.87081,-0.0183 -1.69817,-0.0138 -2.48193,0.0138 -0.78379,0.0276 -1.57373,0.0598 -2.37008,0.0966 -0.32332,3e-5 -0.6655,-0.01 -1.02637,-0.0277 -0.36076,-0.0183 -0.71522,0.0461 -1.06367,0.19316 1.51784,0.0736 3.07913,0.0782 4.68411,0.0138 1.60487,-0.0644 3.26573,-0.0782 4.9826,-0.0414 0.59706,-0.0367 1.20681,-0.0275 1.82888,0.0277 0.62192,0.0552 1.19424,0.0369 1.71685,-0.0552 0.0241,-0.20231 -0.0495,-0.2989 -0.22399,-0.28974 -0.17418,0.009 -0.32346,0.0322 -0.44791,0.0691 l 0,0 z m -13.95867,0.13797 c -0.52261,-0.0183 -1.00781,-0.0275 -1.45583,-0.0276 -0.44777,3e-5 -0.83351,0.0276 -1.15683,0.0828 0.19887,0.092 0.44162,0.1518 0.72777,0.17935 0.28604,0.0276 0.59707,0.0322 0.93295,0.0138 0.33603,-0.0183 0.67819,-0.0414 1.02652,-0.0691 0.34831,-0.0275 0.67177,-0.0505 0.97023,-0.069 -0.0749,-0.0919 -0.2176,-0.13332 -0.42905,-0.12417 -0.21157,0.01 -0.41689,0.0139 -0.61576,0.0138 l 0,0 z m 17.2431,0.41391 c -0.39817,3e-5 -0.77135,0.005 -1.11967,0.0138 -0.34832,0.01 -0.58477,0.0874 -0.70907,0.23455 0.49749,0.11046 0.91437,0.138 1.25027,0.0828 0.33588,-0.0552 0.70291,-0.12873 1.10096,-0.22075 0.1243,0.092 0.3173,0.11046 0.57848,0.0552 0.2613,-0.0552 0.45404,-0.12872 0.57861,-0.22074 -0.3236,-0.0183 -0.6159,-0.023 -0.87708,-0.0138 -0.2613,0.01 -0.52876,0.0322 -0.8025,0.069 l 0,0 z m -1.82874,-0.0277 c -1.4e-4,0.092 0.0869,0.11961 0.26118,0.0828 0.0749,-0.0183 0.16173,-0.0367 0.2613,-0.0552 -0.0749,-0.0183 -0.18057,-0.0414 -0.3173,-0.069 -0.13674,-0.0275 -0.20532,-0.0137 -0.20518,0.0414 l 0,0 z m -13.47375,0.0277 c -0.0495,0.092 -0.0682,0.18859 -0.0561,0.28974 0.0134,0.10123 0.0187,0.19779 0.0187,0.28974 1.26897,0.0369 2.61264,0.0507 4.03091,0.0413 1.41828,-0.009 2.82412,-0.0321 4.21739,-0.0691 0.57232,3e-5 1.12595,-0.0275 1.661,-0.0828 0.5349,-0.0552 1.03881,-0.0735 1.51156,-0.0552 0.27374,-0.0367 0.52876,-0.0367 0.76507,0 0.23645,0.0369 0.45417,-0.0183 0.6532,-0.16556 -0.12431,-0.0367 -0.16801,-0.0552 -0.13099,-0.0552 0.0374,3e-5 0.0815,-0.046 0.13099,-0.13797 -2.13977,-0.12875 -4.28596,-0.16094 -6.43815,-0.0966 -2.15246,0.0644 -4.27352,0.0782 -6.3637,0.0414 l 0,0 z m -3.135,0.24835 c 0.44775,0.092 0.80864,0.1794 1.08237,0.26215 0.27361,0.0828 0.64693,0.0966 1.11954,0.0414 0,-0.0919 0,-0.18851 0.0187,-0.28973 0.0134,-0.10113 0.0186,-0.19774 0.0186,-0.28975 -0.1243,3e-5 -0.20517,0.0369 -0.24245,0.11034 -0.0374,0.0736 -0.0935,0.13802 -0.168,0.19315 -0.0254,-0.0919 -0.11764,-0.15632 -0.28004,-0.19315 -0.16158,-0.0367 -0.33575,-0.0505 -0.52233,-0.0414 -0.1866,0.01 -0.37947,0.0322 -0.57862,0.0691 -0.19902,0.0369 -0.34832,0.0828 -0.44776,0.13797 l 0,0 z m 16.42204,0.68985 c 0.19901,4e-5 0.28616,-0.0552 0.2613,-0.16556 -0.0255,-0.11034 -0.0628,-0.18392 -0.11228,-0.22076 -0.0749,0.0369 -0.10024,0.0966 -0.0749,0.17936 0.0254,0.0828 0,0.15181 -0.0749,0.20696 l 0,0 z m 1.19438,-0.16556 c 0.24887,4e-5 0.37317,-0.0644 0.37332,-0.19316 -0.12431,3e-5 -0.20532,0.0184 -0.24273,0.0552 -0.0374,0.0369 -0.0801,0.0828 -0.13099,0.13796 l 0,0 z m -7.57667,-0.0552 c -0.92066,0.0369 -1.8536,0.0828 -2.79924,0.13797 -0.94538,0.0552 -1.84117,0.0736 -2.68724,0.0552 -0.27374,3e-5 -0.56592,-0.01 -0.87708,-0.0276 -0.31103,-0.0183 -0.50377,0.0461 -0.57848,0.19315 0.1243,0.14719 0.28001,0.1978 0.4666,0.15177 0.1866,-0.046 0.34204,-0.0598 0.46648,-0.0414 1.64228,-0.0183 3.40887,-0.005 5.2999,0.0414 1.89102,0.0461 3.69502,0.0322 5.41177,-0.0414 0.0254,-0.0736 0.0815,-0.11954 0.168,-0.13798 0.0869,-0.0183 0.18044,-0.0275 0.27988,-0.0277 0.0989,4e-5 0.19289,-0.005 0.28003,-0.0138 0.0868,-0.009 0.14302,-0.0322 0.16788,-0.069 -0.0495,-0.0552 -0.0427,-0.10579 0.0186,-0.15177 0.0615,-0.046 0.0561,-0.0966 -0.0186,-0.15176 -0.84594,-0.0367 -1.7293,-0.0275 -2.64982,0.0275 -0.92065,0.0552 -1.90358,0.0736 -2.94868,0.0552 l 0,0 z m 1.00779,0.77263 c -0.99536,0.0369 -2.0093,0.0139 -3.04183,-0.069 -1.03266,-0.0827 -2.10875,-0.0597 -3.22843,0.069 0.39805,0.11045 0.87093,0.2208 1.41827,0.33113 0.54734,0.11046 1.11967,0.14722 1.71687,0.11046 0.79621,0.0184 1.61114,0.0322 2.44464,0.0413 0.83351,0.009 1.71072,-0.005 2.63137,-0.0413 0.64692,0.0184 1.21284,0.0276 1.69816,0.0275 0.48518,4e-5 0.80236,-0.18392 0.95166,-0.55188 -0.79622,-0.0736 -1.56141,-0.069 -2.29535,0.0138 -0.73407,0.0828 -1.49928,0.10579 -2.29536,0.069 l 0,0 z m -7.20335,-0.0275 c 0,0.1472 0.0869,0.22078 0.2613,0.22075 0.0749,-0.0552 0.17404,-0.0919 0.29847,-0.11034 0.12431,-0.0183 0.16187,-0.046 0.11228,-0.0828 -0.0749,0.0369 -0.17403,0.0461 -0.29859,0.0277 -0.12431,-0.0183 -0.24887,-0.0367 -0.37319,-0.0552 l 0,0 z m 12.42855,4.19433 c 0,-0.0919 0.0134,-0.19314 0.0374,-0.30354 0.0254,-0.11033 -0.0254,-0.16553 -0.1493,-0.16556 0,0.20239 -0.0134,0.32657 -0.0374,0.37252 -0.0254,0.0461 0.0628,0.14259 0.26132,0.28974 -0.0749,0.0552 -0.087,0.0966 -0.0374,0.12418 0.0495,0.0277 -0.0241,0.0229 -0.22389,-0.0138 l 0,0.66226 c 0.27376,-0.0367 0.40434,-0.15635 0.3919,-0.35874 -0.0134,-0.20233 0,-0.40467 0.0187,-0.60706 0.10025,-0.62544 0.15558,-1.2739 0.168,-1.9454 0.0134,-0.67143 0,-1.27388 -0.0561,-1.80743 -1.3e-4,-0.0736 -0.0374,-0.11033 -0.11228,-0.11033 -0.1243,0.27597 -0.19273,0.55651 -0.20516,0.84162 -0.0134,0.28518 0,0.5887 0.0187,0.91061 0.0254,0.32195 0.0374,0.6577 0.0374,1.00718 0,0.34957 -0.0374,0.71749 -0.11227,1.10378 l 0,0 z m -9.70388,-3.09056 c 1.19426,-0.0183 2.31392,-0.009 3.35888,0.0277 1.0451,0.0369 2.05289,0.046 3.02327,0.0276 0.27361,-0.0552 0.5599,-0.0782 0.85837,-0.069 0.29859,0.009 0.54747,-0.0598 0.7465,-0.20695 -0.12431,-0.14715 -0.34205,-0.22072 -0.65308,-0.22075 -0.31104,3e-5 -0.56605,3e-5 -0.7652,0 -1.39341,-0.0736 -2.81784,-0.0782 -4.27352,-0.0138 -1.45556,0.0644 -2.78054,0.0783 -3.97493,0.0414 0.10024,0.16559 0.23644,0.28057 0.41074,0.34492 0.17403,0.0644 0.3669,0.092 0.57849,0.0828 0.21144,-0.009 0.42904,-0.0507 0.65305,-0.12416 0.22402,-0.0736 0.42304,-0.15635 0.5972,-0.24838 -0.0749,0.092 -0.16801,0.15183 -0.28001,0.17938 -0.11228,0.0277 -0.20518,0.0874 -0.27976,0.17936 l 0,0 z m -3.65775,0.13799 c 0.1243,-0.0367 0.28003,-0.046 0.46661,-0.0277 0.18659,0.0184 0.37947,0.009 0.57848,-0.0275 -0.10024,-0.0367 -0.21786,-0.0828 -0.35459,-0.13797 -0.13687,-0.0552 -0.26118,-0.0919 -0.37319,-0.11046 -0.11228,-0.0183 -0.19915,-0.009 -0.26144,0.0276 -0.0615,0.0369 -0.0802,0.12881 -0.0561,0.27594 l 0,0 z m 6.79275,0.24833 c -0.72149,-0.0367 -1.41199,-0.0828 -2.07133,-0.13797 -0.65948,-0.0552 -1.27525,-0.0367 -1.84758,0.0552 -0.0749,0.0184 -0.16803,0.0598 -0.27989,0.12417 -0.11228,0.0644 -0.22402,0.12881 -0.33589,0.19317 -0.11227,0.0644 -0.19916,0.1288 -0.26131,0.19316 -0.0614,0.0644 -0.0815,0.10579 -0.0561,0.12417 1.8413,3e-5 3.53944,0.0139 5.09472,0.0413 1.555,0.0277 3.12873,-0.0138 4.72128,-0.12417 0.0494,-0.0919 0.0615,-0.17474 0.0374,-0.24836 -0.0254,-0.0736 -0.0374,-0.18393 -0.0374,-0.33112 -0.72149,-0.0183 -1.51785,-0.0138 -2.38864,0.0138 -0.87093,0.0277 -1.7293,0.0599 -2.57537,0.0966 l 0,0 z m -6.94205,0.0552 c 0,0.092 0.0254,0.1564 0.0749,0.19317 0.0494,0.0369 0.0749,0.12881 0.0749,0.27594 0.42304,0.0552 0.87079,0.0276 1.34369,-0.0828 0.47276,-0.11034 0.80864,-0.26671 1.00767,-0.46912 -0.5972,5e-5 -1.04509,0.0139 -1.34356,0.0414 -0.29874,0.0276 -0.68434,0.0414 -1.15711,0.0414 l 0,0 z m 10.67437,0.66227 c -0.72148,-0.0184 -1.48054,-0.0184 -2.27675,0 -0.79608,0.0184 -1.60486,0.0414 -2.42594,0.0689 -0.82107,0.0277 -1.62972,0.0506 -2.42593,0.069 -0.79636,0.0184 -1.55514,0.0184 -2.27677,0 -0.0495,0.092 -0.13099,0.1656 -0.2426,0.22075 -0.11228,0.0552 -0.2053,0.1288 -0.28001,0.22077 1.79171,-0.0552 3.47115,-0.0644 5.03872,-0.0277 1.56744,0.0369 3.07286,0.0184 4.51612,-0.0552 0.1243,4e-5 0.27988,0.005 0.46661,0.0138 0.18658,0.009 0.3606,0.005 0.52246,-0.0138 0.16174,-0.0184 0.31104,-0.0552 0.44777,-0.11034 0.137,-0.0552 0.21788,-0.13794 0.2426,-0.24835 -0.12431,-0.0552 -0.32346,-0.0919 -0.59707,-0.11033 -0.27373,-0.0183 -0.51004,-0.0275 -0.70921,-0.0275 l 0,0 z m -10.56235,0.11034 c 0,0.092 -0.0134,0.19779 -0.0374,0.31732 -0.0254,0.11961 0.0253,0.207 0.1493,0.26215 0.44776,-0.12874 0.67164,-0.3587 0.67178,-0.68984 -0.0749,0.0552 -0.19289,0.0736 -0.35461,0.0552 -0.16174,-0.0183 -0.30475,3e-5 -0.42918,0.0552 l 0,0 z m -0.7092,1.79363 c 0,-0.33111 -0.0254,-0.62085 -0.0749,-0.86922 -0.0495,-0.24833 -0.13688,-0.47368 -0.26131,-0.67606 0,0.092 -0.0254,0.22538 -0.0749,0.40012 -0.0495,0.17478 -0.0815,0.34495 -0.0935,0.51049 -0.0134,0.16559 0.0134,0.31276 0.0749,0.44149 0.0615,0.12882 0.20517,0.19322 0.42905,0.19318 l 0,0 z m 0.6719,-0.93822 c 1.84118,0.092 3.75706,0.17021 5.74767,0.23456 1.99047,0.0644 4.08065,0.0966 6.27026,0.0966 0,-0.0919 0,-0.18854 0.0186,-0.28975 0.0134,-0.10112 0.0187,-0.19772 0.0187,-0.28974 -2.04032,0.0552 -4.08064,0.0828 -6.12097,0.0828 -2.04032,5e-5 -4.01837,0.0552 -5.93426,0.16558 l 0,0 z m 2.61252,0.35873 c -0.47275,-0.0184 -0.92679,-0.0229 -1.36226,-0.0138 -0.43533,0.009 -0.85222,0.0874 -1.25026,0.23457 0.0494,0.0552 0.0615,0.0966 0.0374,0.12416 -0.0254,0.0277 -0.0374,0.0873 -0.0374,0.17937 1.56743,0.0369 3.14757,0.0783 4.73999,0.12418 1.59244,0.0461 3.17243,0.0873 4.74,0.12417 0.24889,-0.0184 0.54119,-0.0275 0.87708,-0.0276 0.33589,2e-5 0.64693,-0.0138 0.93308,-0.0414 0.28604,-0.0275 0.51018,-0.0736 0.67192,-0.13797 0.16159,-0.0644 0.1803,-0.17013 0.0561,-0.31734 -1.39339,-0.0367 -2.91739,-0.0782 -4.5721,-0.12417 -1.6546,-0.046 -3.26572,-0.0874 -4.8333,-0.12417 l 0,0 z m -3.84419,1.65565 c 0.12431,0.0369 0.21145,0.0322 0.26116,-0.0138 0.0494,-0.046 0.13687,-0.0413 0.26131,0.0138 0,-0.14713 -0.0134,-0.2759 -0.0374,-0.38632 -0.0254,-0.11033 -0.0134,-0.23911 0.0374,-0.38632 -0.12431,4e-5 -0.21145,-0.0183 -0.26131,-0.0552 -0.0495,-0.0367 -0.13672,-0.0552 -0.26116,-0.0552 l 0,0.88301 z m 1.97803,-0.55188 c -0.12431,-0.0552 -0.19902,-0.115 -0.22387,-0.17937 -0.0254,-0.0644 -0.17417,-0.0689 -0.44791,-0.0138 -0.0495,0.092 -0.0441,0.207 0.0186,0.34494 0.0628,0.13799 0.0561,0.28057 -0.0186,0.42771 1.04509,-0.0552 2.06519,-0.0782 3.06042,-0.069 0.99523,0.009 1.99061,0.0277 2.98598,0.0552 0.99523,0.0276 1.98431,0.0413 2.96711,0.0413 0.98295,10e-6 1.98433,-0.0367 3.00442,-0.11034 l 0,-0.57949 c -0.87079,0.0369 -1.80386,0.0506 -2.7991,0.0414 -0.99524,-0.009 -1.99061,-0.0184 -2.98585,-0.0277 -0.99523,-0.009 -1.96573,-0.0138 -2.91126,-0.0138 -0.94551,4e-5 -1.82887,0.0277 -2.64994,0.0828 l 0,0 z m 0.85851,0.88301 c -0.27375,3e-5 -0.53505,-0.009 -0.78379,-0.0275 -0.24888,-0.0184 -0.51005,0.0184 -0.78378,0.11033 l 0,0.38632 c 1.79143,-0.0367 3.7509,-0.0414 5.87837,-0.0138 2.12733,0.0276 4.17395,0.0414 6.13956,0.0414 l 0,-0.4967 c -1.76658,-0.0367 -3.50217,-0.0505 -5.20648,-0.0414 -1.70443,0.009 -3.45245,0.0229 -5.24388,0.0414 l 0,0 z m 11.75675,0.71747 c 0.0749,-0.14716 0.0989,-0.27592 0.0749,-0.38632 -0.0254,-0.11035 0,-0.23912 0.0749,-0.38633 -0.19901,0.0369 -0.28604,0.1518 -0.26117,0.34493 0.0254,0.19319 0.0614,0.33575 0.11226,0.42772 l 0,0 z m -0.11226,0 c -0.0749,0.092 -0.0989,0.18857 -0.0749,0.28974 0.0241,0.10123 0.0374,0.19777 0.0374,0.28973 0.12431,3e-5 0.16173,-0.0367 0.11228,-0.11034 -0.0494,-0.0736 -0.0494,-0.13795 0,-0.19315 0,0.0552 0.0254,0.10123 0.0749,0.13795 l 0.0749,0.0552 c 0,-0.0919 0.0187,-0.20693 0.0561,-0.34493 0.0374,-0.13795 0.0307,-0.17933 -0.0186,-0.12418 0,0.092 -0.0307,0.12421 -0.0935,0.0966 -0.0628,-0.0275 -0.11762,-0.0598 -0.168,-0.0966 l 0,0 z m -5.11332,-0.0277 c -0.44776,0.0184 -0.98282,0.0277 -1.60487,0.0277 -0.62204,2e-5 -1.26896,-0.005 -1.94087,-0.0138 -0.67164,-0.009 -1.33728,-0.0138 -1.99676,-0.0138 -0.65933,1e-5 -1.25025,0.0184 -1.77273,0.0552 -0.12431,2e-5 -0.26131,-0.005 -0.4106,-0.0138 -0.1493,-0.009 -0.23644,0.0598 -0.26118,0.20696 1.11968,0.11044 2.34507,0.1702 3.67619,0.17936 1.33126,0.009 2.63137,0.0322 3.90034,0.069 0.69677,0.0184 1.44929,0.0599 2.25806,0.12417 0.80865,0.0644 1.53643,0.0506 2.18333,-0.0414 -0.0749,-0.0919 -0.1176,-0.17474 -0.13098,-0.24834 -0.0134,-0.0736 0,-0.15635 0.0187,-0.24837 -0.7215,-0.0552 -1.39341,-0.0644 -2.01533,-0.0275 -0.62205,0.0368 -1.25667,0.0184 -1.90358,-0.0552 l 0,0 z m -7.98701,0.63466 c 0,0.092 0,0.18398 0.0187,0.27595 0.0134,0.092 0.0441,0.16558 0.0935,0.22074 1.91588,-0.0184 3.69504,0.0139 5.33719,0.0966 1.64214,0.0828 3.24713,0.115 4.8147,0.0966 0.12432,4e-5 0.29233,0.009 0.50391,0.0276 0.21144,0.0184 0.40419,0.0229 0.57848,0.0138 0.17415,-0.009 0.31717,-0.0413 0.42932,-0.0966 0.11227,-0.0552 0.14301,-0.15635 0.0935,-0.30353 -2.01545,-0.20234 -4.03706,-0.29893 -6.06497,-0.28974 -2.02788,0.009 -3.96249,-0.005 -5.80366,-0.0414 l 0,0 z m 13.06302,3.3389 c 0.0494,-0.22073 0.0815,-0.46907 0.0935,-0.74504 0.0134,-0.27591 0.0134,-0.55646 0,-0.84162 -0.0134,-0.28512 -0.0254,-0.55647 -0.0374,-0.81404 -0.0134,-0.25752 -0.0307,-0.48747 -0.0561,-0.68985 -0.0989,0.47831 -0.137,0.97962 -0.11227,1.50389 0.0254,0.52431 0.0628,1.0532 0.11227,1.58666 l 0,0 z m -12.98843,-2.56626 0,0.68986 c 1.91587,-0.0552 3.86906,-0.046 5.8598,0.0277 1.99046,0.0736 4.00592,0.0369 6.04625,-0.11034 0,-0.0367 -0.0254,-0.0873 -0.0749,-0.15177 -0.0495,-0.0644 -0.0749,-0.14254 -0.0749,-0.23455 -1.96575,-0.14715 -3.88791,-0.21153 -5.76638,-0.19316 -1.8786,0.0184 -3.87548,0.009 -5.99039,-0.0277 l 0,0 z m 0.7465,1.29692 c -0.12431,-0.0736 -0.23631,-0.12875 -0.33603,-0.16556 -0.0989,-0.0367 -0.24875,-0.0552 -0.44776,-0.0552 0,0.092 0.0254,0.17018 0.0749,0.23454 0.0495,0.0644 0.0749,0.14261 0.0749,0.23456 0.92051,-0.0184 1.90345,-0.0275 2.94841,-0.0276 1.04509,2e-5 2.0839,0.009 3.11656,0.0276 1.03253,0.0184 2.02775,0.0322 2.98583,0.0414 0.95793,0.009 1.81003,0.005 2.55665,-0.0138 0,-0.14713 0.0374,-0.25752 0.11227,-0.33113 0.0749,-0.0736 0.0869,-0.15634 0.0374,-0.24834 -1.64214,0.0369 -3.41503,0.0552 -5.31834,0.0552 -1.90359,2e-5 -3.83819,0.0828 -5.80379,0.24835 l 0,0 z m 11.38343,0.27595 c -0.0749,-0.0367 -0.0989,-0.12415 -0.0749,-0.26215 0.0254,-0.13794 0,-0.20692 -0.0749,-0.20695 0,0.092 0,0.19318 -0.0186,0.30354 -0.0134,0.11045 0.0441,0.16558 0.16787,0.16556 l 0,0 z m 1.26897,0.99339 c 0,-0.14715 0.0134,-0.29891 0.0374,-0.45531 0.0254,-0.15634 -0.0254,-0.26212 -0.14929,-0.31733 0,0.092 0,0.22078 0,0.38632 0,0.16559 0.0374,0.29436 0.11226,0.38632 l 0,0 z m -8.73349,-0.74504 c -0.44789,2e-5 -0.94565,2e-5 -1.49299,0 -0.54734,2e-5 -1.04495,0.0184 -1.49298,0.0552 -0.17402,2e-5 -0.3546,-0.009 -0.54119,-0.0277 -0.1866,-0.0184 -0.36062,-0.0275 -0.52249,-0.0276 -0.16172,1e-5 -0.30473,0.0229 -0.42917,0.069 -0.12431,0.046 -0.21145,0.1242 -0.26118,0.23456 0.1243,0.14718 0.27989,0.20238 0.46648,0.16555 0.18658,-0.0367 0.34216,-0.046 0.4666,-0.0275 0.97024,0.0369 1.8909,0.0736 2.76183,0.11033 0.87081,0.0369 1.73557,0.0691 2.59393,0.0966 0.85851,0.0276 1.72931,0.046 2.61254,0.0552 0.88335,0.009 1.83502,0.0138 2.85524,0.0138 0.0749,-0.0919 0.11763,-0.17473 0.13099,-0.24835 0.0134,-0.0736 0.0307,-0.18394 0.0561,-0.33113 -1.26898,-0.12875 -2.48809,-0.18854 -3.65762,-0.17937 -1.16939,0.009 -2.35135,0.0229 -3.5456,0.0414 l 0,0 z m 7.27792,0.44151 c 0,-0.0552 0.0374,-0.13336 0.11229,-0.23457 0.0749,-0.10112 0.0494,-0.15172 -0.0749,-0.15175 0,0.0369 -0.0186,0.0966 -0.0561,0.17936 -0.0374,0.0828 -0.0307,0.15179 0.0186,0.20696 l 0,0 z m -10.71166,0.19315 c -0.19915,0.092 -0.39817,0.12881 -0.59706,0.11034 -0.19914,-0.0183 -0.43558,2e-5 -0.7092,0.0552 0,0.14719 0.0187,0.25756 0.0561,0.33113 0.0374,0.0736 0.0561,0.15638 0.0561,0.24835 2.01559,-0.0552 4.01834,-0.0367 6.00909,0.0552 1.99046,0.092 3.90636,0.0828 5.74765,-0.0275 0.0254,-0.0919 0.0134,-0.17475 -0.0374,-0.24835 -0.0495,-0.0736 -0.0749,-0.15634 -0.0749,-0.24835 -0.84593,-0.0367 -1.72302,-0.0552 -2.6311,-0.0552 -0.90835,4e-5 -1.81015,-0.005 -2.70595,-0.0138 -0.89592,-0.009 -1.77916,-0.0229 -2.64994,-0.0414 -0.87107,-0.0184 -1.69202,-0.0736 -2.46336,-0.16557 l 0,0 z m 10.82368,0.66226 c -0.0495,-0.0367 -0.0495,-0.0874 0,-0.15176 0.0495,-0.0644 0.0134,-0.14255 -0.11227,-0.23455 0,0.092 -0.0134,0.20239 -0.0374,0.33113 -0.0253,0.1288 0.0241,0.1472 0.1493,0.0552 l 0,0 z m 0.89579,0.13797 c 0,-0.0552 0,-0.14254 0,-0.26214 0,-0.11956 -0.0254,-0.13335 -0.0749,-0.0413 0,-0.0367 0.0134,0.0139 0.0374,0.15179 0.0254,0.13797 0.0374,0.18858 0.0374,0.15174 l 0,0 z m 0.52235,0.77263 c -0.12431,-0.23911 -0.14917,-0.40927 -0.0749,-0.51047 0.0749,-0.10113 0.0134,-0.22532 -0.1866,-0.37253 0.0749,0.0736 0.10559,0.1518 0.0935,0.23455 -0.0134,0.0828 -0.0307,0.1656 -0.0561,0.24835 -0.0254,0.0828 -0.0254,0.15638 0,0.22076 0.0254,0.0644 0.0989,0.12419 0.22387,0.17934 l 0,0 z m -13.4362,-0.55186 c 0,0.14718 0,0.27595 0,0.38633 0,0.11044 -0.0134,0.21154 -0.0374,0.30352 2.04034,-0.11033 4.04964,-0.12875 6.02768,-0.0552 1.97818,0.0736 3.88778,0.10125 5.72908,0.0828 0.0254,-0.14714 0.0134,-0.28512 -0.0374,-0.41391 -0.0495,-0.12876 -0.0749,-0.22073 -0.0749,-0.27596 -0.79621,0.0369 -1.65456,0.0461 -2.57522,0.0276 -0.92066,-0.0184 -1.88488,-0.0414 -2.89255,-0.069 -1.0078,-0.0275 -2.03417,-0.046 -3.07926,-0.0552 -1.04482,-0.009 -2.06519,0.0139 -3.06041,0.0691 l 0,0 z m 12.01806,0.60706 c 0,-0.0367 0,-0.14254 0.0187,-0.31733 0.0134,-0.17474 -0.0442,-0.26213 -0.16802,-0.26214 0.0749,0.092 0.0989,0.20238 0.0749,0.33112 -0.0254,0.1288 0,0.21158 0.0749,0.24835 l 0,0 z m 0.85837,0.13797 c 0.0254,-0.0552 0.0561,-0.16094 0.0935,-0.31733 0.0374,-0.15634 0.0186,-0.21614 -0.0562,-0.17936 0,0.092 -0.0186,0.20698 -0.0561,0.34494 -0.0374,0.13797 -0.0307,0.18858 0.0187,0.15175 l 0,0 z m -12.91372,0.22077 c 0.0494,0.092 0.0682,0.20697 0.0561,0.34492 -0.0134,0.13799 0,0.25297 0.0561,0.34492 0.97038,-0.0552 1.94689,-0.0782 2.92983,-0.0689 0.98281,0.009 1.95946,0.0184 2.92984,0.0277 0.97036,0.009 1.93459,0.0138 2.89254,0.0138 0.95795,1e-5 1.92204,-0.0459 2.89255,-0.13798 l 0,-0.4967 c -1.91589,-0.0736 -3.8505,-0.11955 -5.8038,-0.13796 -1.95318,-0.0184 -3.9375,0.0184 -5.95297,0.11034 l 0,0 z m 12.01793,0.52429 c 0,-0.0919 0,-0.20695 -0.0187,-0.34493 -0.0134,-0.13796 -0.0561,-0.18855 -0.13098,-0.15178 0,0.0552 0,0.16099 0.0186,0.31734 0.0134,0.15638 0.0561,0.21617 0.13099,0.17937 l 0,0 z m 1.30639,0.11033 c 0,-0.0919 0,-0.17933 -0.0187,-0.26214 -0.0134,-0.0828 -0.0561,-0.12415 -0.13098,-0.12417 0,0.0552 0,0.13338 -0.0187,0.23454 -0.0134,0.10125 0.0428,0.1518 0.16788,0.15177 l 0,0 z M -549.35451,71.93 c 0.1243,-0.25754 0.18658,-0.55186 0.18658,-0.88303 0,-0.3311 0,-0.61624 0,-0.85541 -0.0749,0.14719 -0.1243,0.40933 -0.14916,0.78644 -0.0254,0.37713 -0.0374,0.69446 -0.0374,0.952 l 0,0 z m -13.02573,-1.79364 c -0.0495,0.092 -0.0614,0.1886 -0.0374,0.28976 0.0254,0.10123 0.0374,0.22537 0.0374,0.37252 0.97051,-0.0184 1.98432,-0.0322 3.04184,-0.0414 1.05752,-0.009 2.09634,-0.0184 3.11655,-0.0276 1.0201,-0.009 2.00303,-0.0184 2.94842,-0.0276 0.94551,-0.009 1.79144,-0.0322 2.53807,-0.069 l 0,-0.38633 c -1.56756,-0.0736 -3.37772,-0.115 -5.43061,-0.12417 -2.05263,-0.009 -4.1241,-0.005 -6.21427,0.0138 l 0,0 z m 5.37449,0.77265 c -0.52236,-0.0184 -1.07611,0.0184 -1.66087,0.11033 -0.58464,0.092 -1.13825,0.138 -1.66073,0.13798 -0.39818,0.0369 -0.79008,0.0322 -1.17582,-0.0138 -0.3856,-0.046 -0.69049,0.0322 -0.91436,0.23454 0.19915,0.1472 0.39818,0.20699 0.59732,0.17936 0.19889,-0.0275 0.39791,-0.0414 0.59706,-0.0414 1.64215,-0.0367 3.36518,-0.0229 5.16919,0.0414 1.80387,0.0644 3.56444,0.0782 5.28117,0.0414 0,-0.0919 0,-0.18855 0,-0.28974 0,-0.10113 0.0134,-0.22534 0.0374,-0.37253 -1.04509,0.0369 -2.07147,0.046 -3.07926,0.0277 -1.00767,-0.0184 -2.07134,-0.0367 -3.19113,-0.0552 l 0,0 z m 4.92671,0.96579 c -0.64692,-0.0184 -1.41827,-0.046 -2.31407,-0.0828 -0.89579,-0.0367 -1.74171,-0.0367 -2.53794,0 -0.79621,-0.0184 -1.71058,-0.0322 -2.74311,-0.0413 -1.03279,-0.009 -1.94716,0.0322 -2.74337,0.12418 0.0494,0.1472 0.0614,0.32196 0.0374,0.52431 -0.0254,0.20236 0,0.37712 0.0749,0.52427 1.36841,0.0369 2.84897,0.0506 4.44153,0.0414 1.59229,-0.009 3.24701,-0.0229 4.96374,-0.0414 0.32359,3e-5 0.69049,0.0138 1.10123,0.0414 0.41047,0.0276 0.77736,-0.005 1.10097,-0.0966 -0.0254,-0.0919 -0.0869,-0.16095 -0.18661,-0.20697 -0.0989,-0.046 -0.21157,-0.0782 -0.33588,-0.0966 -0.1243,-0.0184 -0.2426,-0.0275 -0.3546,-0.0277 -0.11227,2e-5 -0.20529,2e-5 -0.28002,0 -1.64214,-0.0736 -3.26573,-0.11956 -4.87058,-0.13798 -1.60486,-0.0184 -3.02941,0.009 -4.27352,0.0828 -0.19901,3e-5 -0.43547,0.0138 -0.70907,0.0414 -0.27373,0.0277 -0.47275,-0.0322 -0.59719,-0.17935 0.0749,-0.14714 0.21159,-0.21153 0.41047,-0.19316 0.19916,0.0184 0.36089,0.0277 0.48531,0.0277 0.82095,-0.0367 1.61116,-0.0552 2.36994,-0.0552 0.75893,3e-5 1.524,0.009 2.29535,0.0277 0.77136,0.0184 1.56141,0.0369 2.37006,0.0552 0.80865,0.0184 1.68573,0.0369 2.63125,0.0552 0.12429,0.0184 0.29859,0.0322 0.5226,0.0413 0.22388,0.009 0.41047,-0.0322 0.55977,-0.12418 -0.0254,-0.11033 -0.0868,-0.18853 -0.18658,-0.23456 -0.0989,-0.046 -0.21761,-0.0736 -0.35461,-0.0828 -0.13674,-0.009 -0.28603,-0.009 -0.44776,0 -0.16187,0.009 -0.30488,0.0139 -0.42933,0.0138 l 0,0 z m -11.94335,0.63467 c 0,0.0552 0,0.1288 -0.0187,0.22077 -0.0134,0.0919 0.0815,0.1196 0.28003,0.0828 0,-0.0919 -0.0187,-0.23913 -0.0561,-0.44152 -0.0374,-0.20234 -0.0441,-0.37711 -0.0187,-0.52429 0,0.0552 0,0.1334 0,0.23454 0,0.10125 0,0.1978 0,0.28975 0,0.092 -0.0134,0.15639 -0.0374,0.19316 -0.0254,0.0369 -0.0749,0.0184 -0.14929,-0.0552 l 0,0 z m 14.7053,2.12477 c 0.0254,-0.3495 0.0561,-0.75883 0.0935,-1.22794 0.0374,-0.46909 0,-0.8968 -0.13099,-1.28313 -0.0241,0.38633 -0.0374,0.82783 -0.0374,1.32453 0,0.4967 0.0254,0.89222 0.0749,1.18654 l 0,0 z m -13.02572,-1.40731 c 0,0.0919 0,0.18398 0.0187,0.27595 0.0134,0.092 0.0442,0.15639 0.0935,0.19315 0.92067,0.0369 1.88489,0.046 2.89255,0.0276 1.0078,-0.0184 2.00933,-0.0184 3.00455,0 -0.0749,0.0736 -0.16802,0.115 -0.27988,0.12419 -0.11228,0.009 -0.23017,0.009 -0.35461,0 -0.12429,-0.009 -0.24272,-0.0138 -0.35445,-0.0138 -0.11229,1e-5 -0.18059,0.0184 -0.20531,0.0552 1.36841,0.0369 2.57522,0.0598 3.62032,0.069 1.04496,0.009 2.15221,-0.0322 3.32159,-0.12418 0,-0.0552 0,-0.17015 -0.0187,-0.34494 -0.0134,-0.17474 -0.0815,-0.28971 -0.2053,-0.34491 -1.11967,1e-5 -2.16476,0.005 -3.13499,0.0138 -0.97051,0.009 -1.91602,0.0184 -2.83668,0.0276 -0.92066,0.009 -1.83502,0.0184 -2.74325,0.0277 -0.90821,0.009 -1.84743,0.0138 -2.81782,0.0138 l 0,0 z m -1.71687,0.63467 0.26117,0 c -0.0989,-0.0552 -0.14302,-0.0966 -0.13099,-0.12417 0.0134,-0.0275 0.0441,-0.0597 0.0935,-0.0966 0.0495,-0.0367 0.0989,-0.0828 0.1493,-0.13799 0.0494,-0.0552 0.0615,-0.12876 0.0374,-0.22076 -0.0749,-0.0367 -0.13674,-0.0736 -0.1866,-0.11034 -0.0494,-0.0367 -0.1243,-0.0276 -0.22387,0.0277 -0.0495,0.14718 -0.0749,0.24377 -0.0749,0.28973 0,0.046 0.0254,0.17019 0.0749,0.37253 l 0,0 z m 0.67177,-0.19316 c 0.0495,-0.0919 0.0749,-0.15174 0.0749,-0.17937 0,-0.0275 0.0628,-0.0873 0.18673,-0.17936 -0.0749,3e-5 -0.14316,-0.005 -0.2053,-0.0138 -0.0628,-0.009 -0.13099,-0.0138 -0.20531,-0.0138 0,0.0552 0,0.12419 0.0186,0.20695 0.0134,0.0828 0.0561,0.14261 0.13099,0.17937 l 0,0 z m 10.18918,0.4967 c -0.72163,2e-5 -1.44312,-0.009 -2.16462,-0.0276 -0.72176,-0.0184 -1.44326,-0.0322 -2.16476,-0.0414 -0.72163,-0.009 -1.44326,-0.005 -2.16489,0.0138 -0.7215,0.0184 -1.443,0.0828 -2.16463,0.19316 0.12429,0 0.22402,0.0414 0.29859,0.12417 0.0749,0.0828 0.14931,0.17019 0.22389,0.26215 1.76659,-0.0736 3.58302,-0.0828 5.44919,-0.0277 1.86603,0.0552 3.65763,0.0644 5.37447,0.0277 0,-0.0919 0,-0.18856 0.0187,-0.28974 0.0134,-0.10113 0.0186,-0.19775 0.0186,-0.28974 -0.52249,1e-5 -1.00781,0.0138 -1.45557,0.0414 -0.44789,0.0276 -0.87081,0.0322 -1.26897,0.0138 l 0,0 z m -10.89823,0.0828 c -0.10025,1.32453 -0.10561,2.58927 -0.0187,3.79422 0.0869,1.20495 0.15544,2.3869 0.2053,3.54585 0.12432,1e-5 0.24875,1e-5 0.3732,0 0.12429,1e-5 0.21156,-0.0184 0.26115,-0.0552 -0.19888,-0.0184 -0.34203,-0.0229 -0.42904,-0.0138 -0.0868,0.009 -0.15558,-0.0597 -0.20531,-0.20697 0.12432,-0.12876 0.29847,-0.18394 0.52248,-0.16557 -0.0749,-0.16555 -0.0749,-0.28051 0,-0.34492 0.0749,-0.0644 0.12431,-0.14254 0.1493,-0.23455 -0.0495,-0.0552 -0.13098,-0.0828 -0.2426,-0.0828 -0.11227,1e-5 -0.2053,-0.046 -0.27987,-0.13798 0.0749,-0.092 0.18029,-0.13796 0.31717,-0.13796 0.13688,0 0.2053,-0.046 0.2053,-0.13798 -0.0495,-0.0919 -0.0935,-0.18394 -0.13098,-0.27594 -0.0374,-0.0919 -0.11763,-0.16555 -0.24273,-0.22074 0.0254,-0.092 0.0815,-0.15178 0.16801,-0.17937 0.0869,-0.0276 0.13098,-0.0873 0.13098,-0.17937 -0.0494,-0.64386 -0.0441,-1.26931 0.0187,-1.87641 0.0615,-0.60706 0,-1.18654 -0.16801,-1.73844 0.14929,-0.20234 0.16186,-0.42309 0.0374,-0.66226 -0.0749,3e-5 -0.16787,0.009 -0.27987,0.0275 -0.11229,0.0184 -0.19289,0.009 -0.24261,-0.0275 l 0,-0.19315 c 0.0495,-0.0919 0.11762,-0.11957 0.20531,-0.0828 0.0869,0.0369 0.1926,0.0277 0.31717,-0.0276 -0.0749,-0.0919 -0.13687,-0.15633 -0.18672,-0.19316 -0.0495,-0.0367 -0.0614,-0.12876 -0.0374,-0.27594 -0.0749,2e-5 -0.16172,0.005 -0.26116,0.0138 -0.10024,0.009 -0.16174,0.0322 -0.1866,0.069 l 0,0 z m 12.68982,0.74504 c -0.92078,-0.0552 -1.79159,-0.0873 -2.61266,-0.0966 -0.82107,-0.009 -1.62356,-0.009 -2.40734,0 -0.78393,0.009 -1.58,0.0229 -2.38878,0.0414 -0.80865,0.0184 -1.64844,0.0369 -2.51923,0.0552 -0.0749,-0.0552 -0.1056,-0.0414 -0.0935,0.0413 0.0134,0.0828 -0.0441,0.0966 -0.16787,0.0413 -0.29874,1e-5 -0.5599,-0.0367 -0.78392,-0.11046 0,0.092 0,0.17019 0,0.23457 0,0.0644 -0.0133,0.14257 -0.0374,0.23455 0.79621,0.0736 1.58628,0.092 2.36993,0.0552 0.78391,-0.0367 1.59884,-0.0275 2.44477,0.0277 1.11968,0.0369 2.17091,0.0277 3.15385,-0.0277 0.98281,-0.0552 1.93447,-0.0644 2.85512,-0.0275 0.1493,-0.0367 0.34832,-0.0414 0.59719,-0.0138 0.24874,0.0277 0.41048,-0.0322 0.48519,-0.17935 0,-0.20236 -0.11762,-0.29895 -0.3546,-0.28975 -0.23644,0.009 -0.41675,0.0138 -0.54106,0.0138 l 0,0 z m -0.18672,0.66227 c -0.19915,-0.0184 -0.41675,-0.0277 -0.6532,-0.0277 -0.23644,2e-5 -0.45403,2e-5 -0.6532,0 -1.31856,0.0736 -2.67466,0.10579 -4.06808,0.0966 -1.3934,-0.009 -2.91125,0.005 -4.5534,0.0414 -0.1243,2e-5 -0.26745,-0.009 -0.42918,-0.0277 -0.16173,-0.0184 -0.28003,0.046 -0.35461,0.19316 0,0.0919 0.0989,0.15178 0.29847,0.17936 0.19914,0.0277 0.36088,0.0413 0.48532,0.0413 0.1243,1e-5 0.28604,-0.0184 0.48518,-0.0552 0.19903,-0.0367 0.43546,-0.046 0.70921,-0.0277 0.64692,-0.0367 1.39326,-0.0229 2.23921,0.0413 0.84608,0.0644 1.66715,0.0782 2.46336,0.0413 0.64691,0.0184 1.33126,0.0184 2.05289,0 0.72149,-0.0184 1.34356,-0.0184 1.86602,0 0.27374,1e-5 0.54119,1e-5 0.80249,0 0.26132,1e-5 0.42921,-0.10113 0.50391,-0.30352 -0.1243,-0.14716 -0.30488,-0.21616 -0.54132,-0.20697 -0.23631,0.009 -0.45405,0.0138 -0.65307,0.0138 l 0,0 z m 2.46336,1.18654 c 0,-0.0367 0,-0.13336 0,-0.28973 0,-0.15636 -0.0374,-0.28054 -0.11228,-0.37253 0.0749,0.14719 0.0815,0.28515 0.0188,0.4139 -0.0628,0.1288 -0.0307,0.21159 0.0935,0.24836 l 0,0 z m -4.92658,-0.4691 c -0.57248,0.0369 -1.2131,0.0506 -1.92216,0.0414 -0.70921,-0.009 -1.43071,-0.0184 -2.16478,-0.0277 -0.73405,-0.009 -1.45556,-0.0184 -2.16476,-0.0277 -0.70906,-0.009 -1.3374,0.005 -1.88488,0.0413 -0.0749,0.1472 -0.11762,0.26219 -0.13098,0.34494 -0.0134,0.0828 -0.0186,0.19778 -0.0186,0.34493 2.04031,-0.0552 4.0122,-0.0782 5.91566,-0.069 1.90345,0.009 3.90034,-0.0229 5.99025,-0.0966 0,-0.0919 0,-0.18853 -0.0187,-0.28975 -0.0134,-0.10111 -0.0441,-0.19773 -0.0935,-0.28973 -0.72164,0.0367 -1.34369,0.0413 -1.86617,0.0138 -0.52261,-0.0275 -1.06981,-0.0229 -1.64214,0.0138 l 0,0 z m -8.28573,0.99341 c -0.0254,0.0919 -0.0307,0.21615 -0.0187,0.3725 0.0134,0.15639 0.0562,0.26216 0.13099,0.31734 0.87081,-0.12876 1.79159,-0.20235 2.76196,-0.22076 0.97038,-0.0184 1.95946,-0.0229 2.96712,-0.0138 1.00781,0.009 2.02162,0.0184 3.04184,0.0276 1.0201,0.009 2.01546,-0.0138 2.98585,-0.0689 0,-0.0919 0,-0.18396 0.0187,-0.27594 0.0134,-0.0919 0.0187,-0.15639 0.0187,-0.19317 -2.04033,-0.0735 -4.01208,-0.0828 -5.91567,-0.0276 -1.90332,0.0552 -3.90021,0.0828 -5.99025,0.0828 l 0,0 z m 3.50831,0.77262 c -0.47275,-0.0184 -0.97666,-0.0368 -1.51156,-0.0552 -0.53504,-0.0184 -1.03881,0.0459 -1.51157,0.19316 0.97038,-0.0368 1.93447,-0.0323 2.89254,0.0139 0.95795,0.0459 1.90345,0.10579 2.83641,0.17938 0.9332,0.0736 1.87859,0.13338 2.83667,0.17934 0.95794,0.0459 1.92203,0.0506 2.89254,0.0138 0.0254,-0.0919 0.0374,-0.18394 0.0374,-0.27594 0,-0.0919 0,-0.16555 0,-0.22075 -1.44313,-0.0552 -2.84282,-0.0828 -4.19881,-0.0828 -1.3561,1e-5 -2.78053,0.0184 -4.2735,0.0552 l 0,0 z m 4.77742,0.74506 c -0.57248,-0.0552 -1.15697,-0.12417 -1.75429,-0.20696 -0.59706,-0.0828 -1.25641,-0.13337 -1.97804,-0.15178 -0.72163,-0.0184 -1.44941,-0.005 -2.18349,0.0413 -0.73405,0.0459 -1.49912,0.0322 -2.29533,-0.0413 0,0.14719 -0.0134,0.29895 -0.0374,0.45531 -0.0253,0.1564 0.0254,0.23455 0.14929,0.23455 1.76658,-0.0551 3.56431,-0.0229 5.39319,0.0966 1.82875,0.11958 3.68876,0.12418 5.57979,0.0137 0.0749,2e-5 0.16159,0.005 0.2613,0.0138 0.0989,0.009 0.19273,0.005 0.27988,-0.0138 0.0869,-0.0184 0.15545,-0.0552 0.20518,-0.11033 0.0495,-0.0551 0.0628,-0.14714 0.0374,-0.27593 -0.64693,-0.0919 -1.26912,-0.11957 -1.86617,-0.0828 -0.5972,0.0369 -1.1944,0.0459 -1.79145,0.0276 l 0,0 z m 2.87382,0.74503 c -1.717,-0.0367 -3.53318,-0.0552 -5.44906,-0.0552 -1.91614,1e-5 -3.80704,0.009 -5.67321,0.0275 l 0,0.46911 c 1.71674,10e-6 3.42746,-0.009 5.13203,-0.0275 1.7043,-0.0184 3.3403,-0.0367 4.90786,-0.0552 0.17416,2e-5 0.37319,0.0138 0.59708,0.0413 0.22399,0.0276 0.43559,0.0413 0.63462,0.0413 0.19901,1e-5 0.36074,-0.0322 0.48517,-0.0966 0.1243,-0.0644 0.17416,-0.17938 0.1493,-0.34494 -0.0254,-0.0185 -0.0868,-0.0367 -0.18672,-0.0552 -0.0989,-0.0185 -0.19902,-0.0276 -0.29847,-0.0276 -0.0989,2e-5 -0.18031,0.009 -0.24273,0.0276 -0.0615,0.0185 -0.0815,0.0368 -0.0561,0.0552 l 0,0 z m -11.0104,0.82784 c -0.0749,0.092 -0.0989,0.18857 -0.0749,0.28974 0.0254,0.10112 0.0374,0.19778 0.0374,0.28973 1.96575,-0.0919 3.94378,-0.13796 5.93453,-0.13797 1.99046,1e-5 3.94364,-0.10113 5.85953,-0.30353 -0.0494,-0.0552 -0.0494,-0.12876 0,-0.22076 0.0495,-0.0921 0.0134,-0.11957 -0.11228,-0.0828 -1.09482,0.0369 -2.11505,0.0506 -3.06042,0.0413 -0.94566,-0.009 -1.88487,-0.0185 -2.81796,-0.0276 -0.93323,-0.009 -1.86617,-0.005 -2.79924,0.0138 -0.93309,0.0185 -1.92217,0.0644 -2.96727,0.13799 l 0,0 z m 3.88164,0.77264 c -1.36841,-0.0367 -2.67468,0.0276 -3.91893,0.19315 0.4729,0.0736 1.02025,0.0873 1.64216,0.0413 0.62218,-0.046 1.16952,-0.0599 1.64241,-0.0413 0.84594,0.0185 1.59859,0.0322 2.25793,0.0413 0.65948,0.009 1.38725,0.0229 2.18348,0.0413 0.64677,0.0184 1.31869,0.0506 2.01545,0.0966 0.69651,0.046 1.36842,-0.0322 2.01535,-0.23454 l 0,-0.30354 c -1.19439,-0.0185 -2.46952,-0.0138 -3.8255,0.0138 -1.35612,0.0276 -2.69352,0.0783 -4.01235,0.15178 l 0,0 z m 9.10681,0.9382 c 0,-0.0552 0.0186,-0.13334 0.0561,-0.23456 0.0374,-0.10112 0,-0.15175 -0.13098,-0.15176 -0.0989,0.0367 -0.14302,0.11034 -0.131,0.22075 0.0134,0.11033 0.0802,0.16559 0.20518,0.16557 l 0,0 z m -12.91373,-0.35872 c 0,0.14717 -0.0307,0.30813 -0.0935,0.4829 -0.0628,0.17476 -0.0307,0.30814 0.0935,0.40011 0.62206,-0.0736 1.32497,-0.12878 2.10876,-0.16558 0.78379,-0.0367 1.59871,-0.0597 2.44465,-0.069 0.84607,-0.009 1.68572,-0.0138 2.51923,-0.0138 0.83351,0 1.61113,-0.0184 2.3329,-0.0552 0.14917,-0.0184 0.38548,-0.0229 0.70906,-0.0138 0.32346,0.009 0.62821,0.005 0.91438,-0.0138 0.28617,-0.0185 0.51005,-0.0643 0.67177,-0.13799 0.16174,-0.0736 0.18046,-0.19313 0.0561,-0.35872 -1.89115,-0.0367 -3.81319,-0.0783 -5.7665,-0.12418 -1.95319,-0.046 -3.94992,-0.0229 -5.99025,0.0689 l 0,0 z m -1.71687,0.93821 c 0.0749,-0.0921 0.11763,-0.20696 0.13099,-0.34494 0.0134,-0.13797 0.0187,-0.30811 0.0187,-0.51049 l -0.1493,0 c -0.0495,0.14718 -0.0615,0.30355 -0.0374,0.46911 0.0254,0.16556 0.0374,0.29433 0.0374,0.38632 l 0,0 z m 0.52248,-0.0552 c -0.0494,-0.0919 -0.0494,-0.18396 0,-0.27594 0.0495,-0.0919 0.0134,-0.16556 -0.11226,-0.22075 0.0254,0.0736 0.0307,0.14258 0.0187,0.20694 -0.0134,0.0644 -0.0307,0.11501 -0.0561,0.15179 -0.0254,0.0369 -0.0307,0.0689 -0.0186,0.0966 0.0134,0.0276 0.0682,0.0413 0.16788,0.0413 l 0,0 z m 14.07082,0.44153 c -0.0494,-0.092 -0.0441,-0.20237 0.0187,-0.33115 0.0628,-0.12877 0.0307,-0.21154 -0.0935,-0.24834 0,0.092 -0.0186,0.19776 -0.0561,0.31732 -0.0374,0.11959 0,0.20696 0.13099,0.26217 l 0,0 z m -2.83653,-0.5519 c -0.62205,0.0369 -1.32497,0.0644 -2.10876,0.0828 -0.78379,0.0184 -1.58628,0.0367 -2.40722,0.0552 -0.82121,0.0185 -1.63614,0.0413 -2.44479,0.0689 -0.80864,0.0276 -1.54898,0.0689 -2.22063,0.12419 -0.12429,0 -0.2986,-0.009 -0.52248,-0.0276 -0.22414,-0.0185 -0.34845,0.0736 -0.37331,0.27594 0.0749,0.0921 0.16802,0.14259 0.27988,0.15178 0.11229,0.009 0.24274,0.005 0.39189,-0.0138 0.14931,-0.0185 0.30489,-0.0367 0.46662,-0.0552 0.16159,-0.0185 0.30475,-0.0276 0.42905,-0.0276 0.77135,-0.0367 1.59256,-0.046 2.46336,-0.0276 0.87092,0.0184 1.74801,0.0322 2.63137,0.0413 0.88336,0.009 1.75416,0.005 2.61265,-0.0138 0.85824,-0.0185 1.68573,-0.0828 2.48194,-0.19315 0.0749,-0.0919 0.0815,-0.15636 0.0187,-0.19316 -0.0628,-0.0367 -0.0561,-0.10113 0.0186,-0.19316 -0.34844,-0.0185 -0.65319,-0.0276 -0.91436,-0.0276 -0.26131,2e-5 -0.52877,-0.009 -0.8025,-0.0276 l 0,0 z m -11.64476,0.85542 c 0.0495,0.0369 0.11228,0.0506 0.18661,0.0413 0.0749,-0.009 0.13685,-0.0138 0.18657,-0.0138 0,-0.0552 0.0187,-0.10113 0.0561,-0.13797 0.0374,-0.0367 0.0187,-0.0552 -0.0561,-0.0552 -0.0494,0.092 -0.0989,0.10578 -0.14929,0.0413 -0.0494,-0.0644 -0.0374,-0.115 0.0374,-0.15178 -0.1243,-0.0552 -0.1866,-0.0367 -0.1866,0.0552 0,0.092 -0.0253,0.16558 -0.0749,0.22076 l 0,0 z m 10.82354,0.0276 c -0.67163,0 -1.39326,-0.005 -2.16463,-0.0138 -0.77134,-0.009 -1.56142,-0.0138 -2.37006,-0.0138 -0.80864,2e-5 -1.61114,0.0185 -2.40721,0.0552 -0.79623,0.0369 -1.56757,0.0919 -2.31407,0.16556 0,0.0369 0,0.0873 -0.0186,0.15175 -0.0134,0.0644 -0.0187,0.14259 -0.0187,0.23457 2.0156,-0.0185 3.99365,-0.0185 5.93453,0 1.94073,0.0185 3.91891,1e-5 5.93424,-0.0552 0.0989,-0.0368 0.11762,-0.10579 0.0561,-0.20695 -0.0628,-0.10123 -0.0682,-0.22534 -0.0186,-0.37253 -0.52248,0.0369 -1.00153,0.0413 -1.43685,0.0138 -0.43547,-0.0275 -0.82735,-0.0138 -1.17581,0.0413 l 0,0 z m -10.82354,0.24834 c 0.0495,0.4783 0.0749,0.93822 0.0749,1.3797 0,0.44153 0.0615,0.86464 0.1866,1.26936 -0.0254,-0.11034 -0.0254,-0.22997 0,-0.35875 0.0254,-0.12877 0.0562,-0.25754 0.0935,-0.3863 0.0374,-0.12877 0.0561,-0.25755 0.0561,-0.38633 0,-0.12876 -0.0254,-0.23913 -0.0749,-0.33115 0.0749,-0.0919 0.10559,-0.20233 0.0935,-0.33111 -0.0134,-0.12876 -0.0815,-0.23913 -0.2053,-0.33113 0.0494,-0.0551 0.10024,-0.115 0.14929,-0.17937 0.0494,-0.0644 0.0494,-0.17014 0,-0.31733 0,-0.0367 -0.0307,-0.0323 -0.0935,0.0138 -0.0628,0.046 -0.15546,0.0323 -0.2799,-0.0413 l 0,0 z m 12.24209,0.63467 c -0.27387,-0.0185 -0.53518,-0.0276 -0.78393,-0.0276 -0.24887,1e-5 -0.47275,1e-5 -0.6719,0 -1.31857,-0.0368 -2.73082,-0.0873 -4.23596,-0.15176 -1.50542,-0.0643 -2.91754,-0.0323 -4.23623,0.0966 -0.12431,0.0367 -0.28002,0.0506 -0.46662,0.0413 -0.18658,-0.009 -0.25502,0.0598 -0.20529,0.20695 0.59718,0.0552 1.34983,0.10124 2.25818,0.13798 0.9081,0.0369 1.88461,0.0598 2.9297,0.0688 1.04509,0.009 2.09646,0.009 3.15386,0 1.05752,-0.009 2.02174,-0.0323 2.89253,-0.0688 0.0749,0 0.20531,0.009 0.3919,0.0276 0.18658,0.0184 0.27988,-0.046 0.28001,-0.19317 -0.12429,-0.14717 -0.32359,-0.20696 -0.59733,-0.17936 -0.2736,0.0276 -0.51004,0.0413 -0.70892,0.0413 l 0,0 z m -0.67192,0.55186 c -0.1243,1e-5 -0.14301,0.0185 -0.0561,0.0552 0.0868,0.0369 0.0682,0.0552 -0.0561,0.0552 -1.59257,0.0184 -3.20985,0.0138 -4.85201,-0.0138 -1.64214,-0.0275 -3.33416,-0.0598 -5.07601,-0.0966 -0.0254,0.0921 -0.0374,0.19319 -0.0374,0.30356 0,0.11033 0,0.23915 0,0.38631 1.06994,-0.12877 2.12747,-0.19774 3.17256,-0.20696 1.04495,-0.009 2.07146,1e-5 3.07912,0.0276 1.00767,0.0276 2.00291,0.0552 2.98585,0.0828 0.9828,0.0276 1.94701,0.0138 2.89253,-0.0414 -1.2e-4,-0.0552 -1.2e-4,-0.12878 0,-0.22075 -1.2e-4,-0.0919 0.0134,-0.18396 0.0374,-0.27596 -0.39803,-0.0552 -0.75263,-0.0598 -1.06379,-0.0138 -0.31103,0.046 -0.65306,0.0323 -1.02624,-0.0414 l 0,0 z m 2.83654,0.44153 c 0,-0.0368 0.0186,-0.0966 0.0561,-0.17937 0.0374,-0.0828 0.0307,-0.15174 -0.0186,-0.20695 -0.0254,0.092 -0.0495,0.19317 -0.0749,0.30354 -0.0241,0.11034 -0.0134,0.13798 0.0374,0.0828 l 0,0 z m -2.20219,0.4691 c -0.52247,-0.0185 -1.15696,-0.0413 -1.90331,-0.0689 -0.74664,-0.0275 -1.53657,-0.0551 -2.37007,-0.0828 -0.83365,-0.0276 -1.67329,-0.0413 -2.51936,-0.0413 -0.84594,0 -1.62973,0.0276 -2.35136,0.0828 -0.1243,0.0367 -0.28602,0.0552 -0.48518,0.0552 -0.19903,1e-5 -0.38561,0.0138 -0.55976,0.0413 -0.17431,0.0276 -0.31731,0.0736 -0.4292,0.13797 -0.11227,0.0644 -0.15558,0.17017 -0.13098,0.31733 0.97038,-0.0552 1.97817,-0.0783 3.02326,-0.0688 1.04496,0.009 2.09005,0.0229 3.13514,0.0413 1.04496,0.0185 2.07133,0.0367 3.07913,0.0552 1.00752,0.0185 1.97175,0.0276 2.89254,0.0275 -0.0494,-0.0919 -0.0561,-0.17017 -0.0186,-0.23455 0.0374,-0.0644 0.0561,-0.14257 0.0561,-0.23455 -0.19901,10e-6 -0.41688,-0.005 -0.65306,-0.0138 -0.23645,-0.009 -0.4916,-0.0138 -0.76535,-0.0138 l 0,0 z m 0.0749,0.66227 c -0.0494,0.0919 -0.18672,0.12879 -0.41074,0.11034 -0.22387,-0.0184 -0.47275,-0.0275 -0.74635,-0.0275 -0.82107,-0.0185 -1.62357,-0.0368 -2.40735,-0.0552 -0.78379,-0.0185 -1.56758,-0.0276 -2.35149,-0.0276 -0.78366,0 -1.58,0.0185 -2.38852,0.0552 -0.80863,0.0369 -1.64856,0.11034 -2.51936,0.22078 0,0.11033 0.0682,0.18393 0.20531,0.22074 0.13687,0.0367 0.29231,0.0506 0.4666,0.0413 0.17403,-0.009 0.34832,-0.0275 0.52249,-0.0552 0.17402,-0.0275 0.29845,-0.0599 0.37317,-0.0966 0.67191,0.0552 1.44941,0.10578 2.33279,0.15176 0.88335,0.046 1.80386,0.0783 2.76181,0.0966 0.95794,0.0185 1.90973,0.0276 2.85525,0.0276 0.94551,0 1.81631,-0.0185 2.61265,-0.0552 -1.2e-4,-0.0367 0,-0.11501 -0.0187,-0.23456 -0.0134,-0.11956 -0.0441,-0.19775 -0.0935,-0.23454 -0.27374,-0.0185 -0.50991,-0.009 -0.70906,0.0276 -0.19903,0.0369 -0.36076,-0.0185 -0.48507,-0.16554 l 0,0 z m 0.63435,1.26932 0.11229,0 c -0.39818,-0.0919 -0.84607,-0.15636 -1.34369,-0.19315 -0.49762,-0.0367 -0.92053,-0.0828 -1.26897,-0.13796 -0.44778,0.0368 -0.97666,0.046 -1.58629,0.0276 -0.60949,-0.0185 -1.23783,-0.0413 -1.88474,-0.0689 -0.64692,-0.0276 -1.30011,-0.0551 -1.95946,-0.0828 -0.65948,-0.0276 -1.28754,-0.0323 -1.88488,-0.0138 -0.19888,0.14716 -0.43533,0.23915 -0.70906,0.27594 -0.27374,0.0369 -0.47276,0.12877 -0.5972,0.27593 0.89579,0.0185 1.84131,0.0506 2.83667,0.0966 0.99524,0.046 1.99675,0.0873 3.00442,0.12419 1.00766,0.0367 1.99675,0.0598 2.96711,0.0689 0.97052,0.009 1.86632,-0.0138 2.68725,-0.0689 -0.1493,-0.0185 -0.3669,-0.046 -0.65305,-0.0828 -0.28618,-0.0367 -0.58476,-0.0643 -0.89566,-0.0828 -0.31103,-0.0185 -0.63463,-0.0275 -0.97051,-0.0275 -0.33603,0 -0.62834,0.009 -0.87709,0.0275 -0.10024,0 -0.19902,0.009 -0.29859,0.0276 -0.0989,0.0185 -0.19287,0.0275 -0.27989,0.0275 -0.0868,0 -0.16173,-0.0185 -0.22388,-0.0552 -0.0628,-0.0367 -0.0935,-0.10113 -0.0935,-0.19316 0.34845,-0.0185 0.65947,-0.0229 0.93322,-0.0138 0.27346,0.009 0.54119,0.0184 0.80235,0.0276 0.26118,0.009 0.52249,0.009 0.78366,0 0.26143,-0.009 0.55376,-0.0322 0.87722,-0.0688 0.12429,0.0551 0.14301,0.10112 0.0561,0.13797 -0.0869,0.0367 -0.0682,0.0552 0.0561,0.0552 0,-0.12876 0.0374,-0.16558 0.11228,-0.11034 0.0749,0.0552 0.17402,0.0644 0.29846,0.0275 l 0,0 z m -0.29845,0.57949 c -0.92066,-0.0185 -1.88488,-0.0323 -2.89269,-0.0414 -1.00765,-0.009 -2.01546,-0.0185 -3.02313,-0.0276 -1.00765,-0.009 -1.98432,-0.0185 -2.92982,-0.0275 -0.94565,-0.009 -1.82887,-0.0229 -2.64995,-0.0413 l 0,0.57947 c 2.23947,-0.0551 4.4414,-0.0551 6.60615,0 2.16477,0.0552 4.22994,0.0737 6.19569,0.0552 -0.0989,-0.0552 -0.14929,-0.18397 -0.14929,-0.38631 -0.19902,-0.0367 -0.39189,-0.0644 -0.57848,-0.0828 -0.18672,-0.0185 -0.3796,-0.0276 -0.57848,-0.0276 l 0,0 z m 1.82874,0.4967 c 0.1243,0.0185 0.39189,0.0414 0.80236,0.0688 0.4106,0.0276 0.75277,-0.005 1.02651,-0.0966 -0.27374,-0.11036 -0.52262,-0.20698 -0.7465,-0.28976 -0.22388,-0.0828 -0.49761,-0.12417 -0.8212,-0.12417 0,0.14717 -0.0307,0.24835 -0.0935,0.30355 -0.0628,0.0552 -0.11896,0.10111 -0.168,0.13796 l 0,0 z m -14.2574,0.0552 0.14929,-0.11033 c 0,-0.0367 0,-0.0921 0.0187,-0.16557 0.0134,-0.0736 -0.0441,-0.11033 -0.168,-0.11033 0,0.0367 -0.0307,0.0828 -0.0935,0.13796 -0.0628,0.0552 -0.0307,0.13798 0.0935,0.24836 l 0,0 z m 14.51857,0.27594 c -0.0989,0.12877 -0.11763,0.23456 -0.0561,0.31733 0.0628,0.0828 0.0682,0.17018 0.0186,0.26215 0.84595,0.0185 1.67971,0.0413 2.50067,0.0689 0.82119,0.0276 1.55512,-0.005 2.20203,-0.0966 -0.64691,-0.25754 -1.37468,-0.4369 -2.18332,-0.53808 -0.80865,-0.10113 -1.63601,-0.10579 -2.48208,-0.0138 l 0,0 z m -13.5855,-0.0828 c 0.0494,0.092 0.0615,0.20235 0.0374,0.33113 -0.0253,0.12877 -0.0134,0.23914 0.0374,0.33112 2.18949,-0.0552 4.40398,-0.0689 6.64346,-0.0413 2.23933,0.0276 4.25479,0.0323 6.04638,0.0138 0,-0.0922 -0.0254,-0.17476 -0.0749,-0.24835 -0.0494,-0.0736 -0.0628,-0.18396 -0.0374,-0.33114 -2.01545,-0.0367 -4.08692,-0.0689 -6.21439,-0.0966 -2.12734,-0.0276 -4.27338,-0.0138 -6.43815,0.0413 l 0,0 z m -1.34356,0.24833 c -0.24888,-0.11034 -0.50389,-0.16556 -0.7652,-0.16556 -0.26117,0 -0.51633,0.0369 -0.76508,0.11034 -0.24886,0.0736 -0.48532,0.15635 -0.70919,0.24834 -0.22388,0.092 -0.43547,0.17476 -0.63436,0.24835 0.52235,0.0185 1.10711,0.0138 1.75403,-0.0138 0.64691,-0.0275 1.23167,-0.0322 1.75415,-0.0138 0,-0.092 0.0187,-0.19775 0.0561,-0.31733 0.0374,-0.11957 0.0307,-0.20694 -0.0186,-0.26214 -0.1989,-0.0552 -0.32961,-0.0506 -0.39177,0.0138 -0.0628,0.0644 -0.15546,0.115 -0.27989,0.15177 l 0,0 z m -3.91893,0.0552 -0.14929,0.0552 c 0.1243,0.0184 0.24875,0.009 0.37318,-0.0276 0.12432,-0.0369 0.22388,-0.0828 0.2986,-0.13797 -0.12431,0 -0.21145,0.005 -0.2613,0.0138 -0.0494,0.009 -0.13674,0.0414 -0.26119,0.0966 l 0,0 z m -2.50063,0.0276 c 0,0.0921 0.0307,0.17018 0.0935,0.23457 0.0628,0.0644 0.11763,0.115 0.168,0.15176 0.0749,-0.0369 0.14931,-0.0644 0.22389,-0.0828 0.0749,-0.0185 0.17429,-0.0552 0.29873,-0.11034 0.19889,-0.0369 0.42303,-0.0783 0.67177,-0.12418 0.24887,-0.046 0.37319,-0.0873 0.37319,-0.12418 -0.27374,0.0369 -0.59707,0.046 -0.97038,0.0276 -0.37331,-0.0185 -0.65935,-0.009 -0.85837,0.0276 l 0,0 z m 26.90982,0.68986 c -0.97038,-0.0552 -1.94704,-0.0736 -2.92983,-0.0552 -0.98294,0.0185 -1.83502,0.046 -2.55666,0.0828 l 0,0.27594 c 2.13991,0.0368 4.31709,0.009 6.53158,-0.0828 -1.3e-4,-0.11032 -0.0495,-0.19315 -0.14943,-0.24834 -0.0989,-0.0552 -0.20517,-0.0873 -0.31705,-0.0966 -0.11227,-0.009 -0.23029,0 -0.3546,0.0276 -0.1243,0.0276 -0.19915,0.0598 -0.22401,0.0966 l 0,0 z m -8.09915,-0.0276 c -0.79621,0 -1.65471,-0.005 -2.57523,-0.0138 -0.92065,-0.009 -1.85989,-0.0229 -2.81783,-0.0414 -0.95794,-0.0185 -1.91588,-0.0368 -2.87383,-0.0552 -0.95807,-0.0185 -1.86002,-0.0276 -2.70595,-0.0276 0,0.0921 0,0.18398 -0.0187,0.27596 -0.0134,0.0922 -0.0187,0.16558 -0.0187,0.22075 2.11503,-0.0184 4.30467,-0.0322 6.56886,-0.0414 2.26434,-0.009 4.35439,-0.0413 6.27027,-0.0966 -0.0749,-0.12879 -0.18658,-0.21157 -0.33588,-0.24834 -0.14929,-0.0367 -0.31103,-0.0552 -0.48519,-0.0552 -0.17417,2e-5 -0.35461,0.0138 -0.54119,0.0413 -0.18658,0.0276 -0.34217,0.0413 -0.46662,0.0413 l 0,0 z m -11.53275,0.35874 c 0.0254,-0.16558 -0.0494,-0.29435 -0.22401,-0.38632 -0.34831,0.0368 -0.78992,0.046 -1.32483,0.0276 -0.53504,-0.0185 -1.08239,-0.0276 -1.64216,-0.0276 -0.56004,0 -1.09494,0.0322 -1.60499,0.0966 -0.51004,0.0644 -0.91449,0.21615 -1.21296,0.45531 0.49761,-0.0184 1.03252,-0.0322 1.60486,-0.0414 0.5722,-0.009 1.13824,-0.0229 1.69814,-0.0413 0.55977,-0.0185 1.07624,-0.0322 1.549,-0.0414 0.47262,-0.009 0.85837,-0.0229 1.15695,-0.0413 l 0,0 z m 14.10799,0.35872 c 0.64691,0.0736 1.30012,0.115 1.95945,0.12417 0.65948,0.009 1.31255,0.0229 1.95947,0.0413 0.94564,0.0367 1.81644,-0.046 2.61265,-0.24834 -0.92065,-0.11034 -1.99047,-0.14716 -3.20971,-0.11034 -1.21912,0.0369 -2.32649,0.10123 -3.32186,0.19317 l 0,0 z m -3.91893,-0.0828 c -1.49285,0.0369 -2.93597,0.046 -4.32938,0.0276 -1.39341,-0.0185 -2.77439,-0.0185 -4.1428,0 -0.19903,0.0552 -0.42919,0.0736 -0.69049,0.0552 -0.26117,-0.0184 -0.42918,0.0185 -0.5039,0.11034 1.26897,0.0369 2.56909,0.0322 3.90021,-0.0138 1.33125,-0.046 2.69352,-0.0783 4.08692,-0.0966 0.34832,0 0.72778,0.0138 1.13852,0.0413 0.41048,0.0276 0.82722,0.046 1.25013,0.0552 0.42302,0.009 0.8335,0.009 1.23168,0 0.39805,-0.009 0.75892,-0.0507 1.08238,-0.1242 -0.39804,-0.11034 -0.85223,-0.15635 -1.36227,-0.13797 -0.51018,0.0185 -1.06366,0.046 -1.661,0.0828 l 0,0 z m -17.35512,-0.13797 c 0.0494,-0.0369 0.13099,-0.069 0.24273,-0.0966 0.11228,-0.0275 0.20518,-0.0873 0.27976,-0.17936 -0.12431,0 -0.26118,0.0229 -0.41047,0.0689 -0.1493,0.046 -0.1866,0.115 -0.11228,0.20694 l 0,0 z m 26.23806,0.60708 c -0.72149,0.0369 -1.524,0.0413 -2.40724,0.0138 -0.88335,-0.0276 -1.68571,0.005 -2.40734,0.0966 -0.0749,0.0736 -0.0868,0.11958 -0.0374,0.13796 0.0495,0.0185 0.11227,0.0276 0.18658,0.0276 0.0749,0 0.13099,0.005 0.16788,0.0138 0.0374,0.009 0,0.0413 -0.0935,0.0966 0.12431,0 0.29231,0.009 0.50376,0.0276 0.21146,0.0184 0.35447,-0.046 0.4292,-0.19317 0.6469,0 1.36226,0.0229 2.14617,0.069 0.78366,0.046 1.51143,0.0413 2.18334,-0.0138 0.1989,0.0184 0.40432,0.0184 0.61591,0 0.21131,-0.0185 0.35433,-0.0737 0.42918,-0.16558 -0.1243,-0.14715 -0.3546,-0.21155 -0.69048,-0.19316 -0.33604,0.0184 -0.67807,0.046 -1.02652,0.0828 l 0,0 z m -19.44531,-0.16556 c -0.0749,-0.0185 -0.0989,-0.0689 -0.0749,-0.15176 0.0253,-0.0828 0,-0.1058 -0.0749,-0.0689 -1.24411,0.0369 -2.4508,0.0413 -3.62033,0.0138 -1.16938,-0.0276 -2.17706,0.0229 -3.02313,0.15175 0,0.0921 0.0187,0.17478 0.0561,0.24838 0.0374,0.0736 0.0427,0.15636 0.0187,0.24834 1.31869,-0.0367 2.60637,-0.0966 3.86292,-0.17936 1.25652,-0.0828 2.3825,-0.17018 3.37773,-0.26214 -0.10025,0 -0.14944,-0.0644 -0.14932,-0.19317 -0.12429,-0.0552 -0.20528,-0.0507 -0.24258,0.0138 -0.0374,0.0644 -0.0815,0.12417 -0.13098,0.17937 l 0,0 z m 12.91385,0.13798 c -1.11979,2e-5 -2.17719,-0.005 -3.17241,-0.0138 -0.99526,-0.009 -1.97818,-0.0138 -2.94857,-0.0138 -0.97036,0 -1.94074,0.0185 -2.91125,0.0552 -0.97037,0.0369 -1.97804,0.11035 -3.02312,0.22075 2.11504,-0.0552 4.21751,-0.0598 6.30769,-0.0138 2.08992,0.046 3.95621,0.0873 5.59837,0.12417 0.12429,0.0185 0.29231,0.0322 0.50389,0.0413 0.21132,0.009 0.35461,-0.0598 0.42919,-0.20696 0.0254,-0.0921 0,-0.15636 -0.0561,-0.19316 -0.0614,-0.0369 -0.13686,-0.0552 -0.22387,-0.0552 -0.087,0 -0.18672,0.009 -0.2986,0.0276 -0.11227,0.0184 -0.18057,0.0276 -0.2053,0.0276 l 0,0 z m -11.90605,1.10377 c 0.52247,-0.0367 1.08866,-0.046 1.69815,-0.0275 0.60962,0.0184 1.22553,0.0275 1.84759,0.0275 0.62193,0 1.22539,-0.0138 1.81015,-0.0414 0.58464,-0.0276 1.10096,-0.0966 1.54887,-0.20697 -1.04509,0.0369 -2.15862,0.046 -3.34045,0.0276 -1.18182,-0.0185 -2.36993,0.0552 -3.56431,0.22076 l 0,0 z m -5.48649,-0.0828 c -0.47276,0.0367 -0.9268,0.0506 -1.36228,0.0413 -0.43532,-0.009 -0.82734,0.0597 -1.17566,0.20695 0.39803,0.0367 0.84593,0.0414 1.34368,0.0138 0.49763,-0.0276 1.01381,-0.0552 1.54886,-0.0828 0.53505,-0.0276 1.06995,-0.0552 1.60486,-0.0828 0.53504,-0.0276 1.05124,-0.0414 1.54898,-0.0414 0.0749,0 0.16159,0.009 0.26118,0.0275 0.0989,0.0184 0.19287,0.0276 0.27989,0.0276 0.0869,0 0.15544,-0.0138 0.2053,-0.0413 0.0495,-0.0276 0.0614,-0.0966 0.0374,-0.20697 -0.6469,0 -1.38083,0.0138 -2.20204,0.0413 -0.82109,0.0276 -1.51771,0.0598 -2.09006,0.0966 l 0,0 z m -3.58304,0.30352 c 0.12431,0.0552 0.20531,0.0689 0.24273,0.0413 0.0374,-0.0276 0.0935,-0.0413 0.16776,-0.0413 0.0253,-0.0736 0.0186,-0.13337 -0.0187,-0.17935 -0.0374,-0.046 -0.0868,-0.069 -0.14917,-0.069 -0.0628,0 -0.1243,0.0185 -0.18671,0.0552 -0.0628,0.0368 -0.0815,0.10124 -0.0561,0.19317 l 0,0 z m 3.02313,0.16557 c 0.42305,0.0736 0.87093,0.12418 1.3437,0.15179 0.47275,0.0276 0.93935,0.0322 1.39956,0.0138 0.46033,-0.0184 0.9082,-0.0507 1.34368,-0.0966 0.43546,-0.046 0.81493,-0.0966 1.13824,-0.15176 -0.99524,0.0184 -1.91587,0.0275 -2.76182,0.0275 -0.84606,0 -1.66701,0.0185 -2.46336,0.0552 l 0,0 z m 4.36695,-27.345907 c 0.0494,0.16558 0.0749,0.35875 0.0749,0.57948 0,0.22078 0,0.44612 0,0.67605 0,0.22998 0,0.46454 0,0.70367 0,0.23916 0.0254,0.45072 0.0749,0.63465 -0.10025,-0.0919 -0.16801,-0.24372 -0.2053,-0.4553 -0.0374,-0.21154 -0.0614,-0.44149 -0.0749,-0.68986 -0.0134,-0.24832 0,-0.50126 0.0186,-0.75884 0.0254,-0.25751 0.0615,-0.48747 0.11227,-0.68985 l 0,0 z m 47.88537,-9.29927 c -0.0749,0.092 -0.25516,0.1288 -0.54119,0.11034 -0.28616,-0.0183 -0.45417,-0.0275 -0.5039,-0.0277 0.0495,-0.0552 0.18659,-0.069 0.41048,-0.0414 0.22401,0.0276 0.43559,0.0138 0.63461,-0.0414 l 0,0 z m -1.82888,0.0552 c -0.12429,0.092 -0.28,0.12882 -0.46661,0.11034 -0.18658,-0.0183 -0.37945,3e-5 -0.57834,0.0552 0.1243,-0.0919 0.27976,-0.14253 0.46634,-0.15175 0.18659,-0.01 0.37947,-0.0138 0.57861,-0.0138 l 0,0 z m -1.19438,0.16555 c -0.19902,0.0369 -0.37946,0.0553 -0.54119,0.0552 -0.16159,4e-5 -0.34216,4e-5 -0.54105,0 0.1493,-0.0367 0.33588,-0.069 0.55977,-0.0966 0.22389,-0.0275 0.39804,-0.0137 0.52247,0.0414 l 0,0 z m -18.43749,-0.11034 0.26115,0 c 0,0.0184 0,0.092 0,0.22076 0,0.1288 -0.0134,0.25298 -0.0374,0.37252 -0.0254,0.11963 -0.0494,0.207 -0.0749,0.26215 -0.0254,0.0553 -0.0494,0.0277 -0.0749,-0.0828 0,-0.0552 0,-0.12413 0.0187,-0.20696 0.0134,-0.0827 0.0186,-0.14253 0.0186,-0.17936 -0.0494,0.0369 -0.10559,0.0828 -0.16788,0.13798 -0.0628,0.0552 -0.10559,0.1564 -0.13099,0.30354 -0.0494,-0.14714 -0.0307,-0.28512 0.0561,-0.41392 0.0868,-0.12874 0.13099,-0.26671 0.13099,-0.41391 l 0,0 z M -514.644,70.82628 c -0.1243,0.0369 -0.29859,0.0552 -0.52247,0.0552 -0.22403,1e-5 -0.39818,1e-5 -0.52262,0 0.12431,-0.092 0.29859,-0.13796 0.52262,-0.13799 0.22388,3e-5 0.39804,0.0277 0.52247,0.0828 l 0,0 z m -2.35135,0.0275 c -0.12431,0.092 -0.28002,0.11501 -0.46661,0.069 -0.18659,-0.046 -0.34203,-0.0414 -0.4666,0.0138 0.0749,-0.0919 0.21786,-0.11956 0.42931,-0.0828 0.21159,0.0369 0.37946,0.0369 0.5039,0 l 0,0 z m 21.98328,1.57289 0.14929,0 c -0.0751,0.092 -0.12433,0.22535 -0.14929,0.40011 -0.0254,0.17478 -0.0371,0.33575 -0.0371,0.48289 -0.0497,-0.092 -0.0682,-0.23913 -0.0566,-0.44149 0.0137,-0.20234 0.0429,-0.34953 0.0936,-0.44151 l 0,0 z m -0.82115,0.55189 0.26133,0 c 0.0751,0.20235 0.11233,0.40932 0.11233,0.62087 -1.9e-4,0.21156 -1.9e-4,0.36333 0,0.45529 -0.0497,-0.0552 -0.0751,-0.12875 -0.0751,-0.22075 -2e-4,-0.0919 0,-0.18393 -0.0185,-0.27594 -0.0136,-0.0919 -0.037,-0.16554 -0.0751,-0.22076 -0.0371,-0.0552 -0.10561,-0.0736 -0.20536,-0.0552 l 0,-0.30354 z m -37.62173,-0.27595 c 0,0.0919 -0.0494,0.15178 -0.14917,0.17937 -0.10024,0.0276 -0.17414,0.0689 -0.224,0.12417 0,-0.0919 0.0494,-0.16556 0.1493,-0.22076 0.10025,-0.0552 0.17429,-0.0828 0.22387,-0.0828 l 0,0 z m -3.58289,1.18655 c 0.12431,0.092 0.16172,0.27136 0.11227,0.53809 -0.0494,0.26675 -0.0134,0.47372 0.11228,0.62085 -0.1243,0.092 -0.19915,0.1058 -0.22402,0.0413 -0.0254,-0.0644 -0.0254,-0.15173 0,-0.26214 0.0254,-0.12875 0.0628,-0.28511 0.11228,-0.4691 0,-0.0367 -0.0374,-0.10111 -0.11228,-0.19316 -0.0749,-0.0919 -0.0749,-0.18393 0,-0.27595 l 0,0 z m 41.76454,1.904 c 0.0497,0.0369 0.0683,0.10124 0.0566,0.19317 -0.0136,0.092 -0.0312,0.16557 -0.0566,0.22073 -0.0254,0.0552 -0.0439,0.0599 -0.0565,0.0138 -0.0137,-0.046 0,-0.18854 0.0565,-0.42772 l 0,0 z m 0.55981,1.4625 c 0.19902,0.0919 0.37932,0.20236 0.54119,0.33112 0.16168,0.12879 0.26748,0.32195 0.31711,0.57948 -0.19902,-0.14717 -0.36069,-0.29893 -0.48502,-0.45531 -0.12433,-0.15635 -0.24886,-0.30812 -0.37328,-0.45529 l 0,0 z m -47.84826,-0.35874 c -0.3979,-0.0551 -0.8708,-0.0551 -1.41827,0 -0.54721,0.0552 -0.98267,0.0276 -1.30626,-0.0828 0.1493,-0.12875 0.37945,-0.18396 0.69048,-0.16558 0.31103,0.0184 0.60348,0.0277 0.87721,0.0277 0.19889,2e-5 0.42905,0.0277 0.69049,0.0828 0.26118,0.0552 0.41676,0.10124 0.46635,0.13795 l 0,0 z m 0.14943,-0.0828 c 0.1243,0.0184 0.23017,0.0367 0.31718,0.0552 0.0869,0.0184 0.19287,0.009 0.3173,-0.0276 0,0.0368 0.0254,0.0644 0.0749,0.0828 0.0495,0.0184 0.0749,0.0552 0.0749,0.11033 -0.0749,-0.0551 -0.15558,-0.0828 -0.24273,-0.0828 -0.0869,1e-5 -0.16788,1e-5 -0.24245,0 -0.0749,1e-5 -0.14315,-0.005 -0.20531,-0.0138 -0.0615,-0.009 -0.0935,-0.0507 -0.0935,-0.12418 l 0,0 z m 49.30379,2.23511 c 0.12432,0.0552 0.22379,0.14719 0.29848,0.27595 0.0751,0.12879 0.13691,0.26677 0.18655,0.4139 -0.12424,-0.0919 -0.23628,-0.20694 -0.33574,-0.34491 -0.10025,-0.13797 -0.14939,-0.25293 -0.14929,-0.34494 l 0,0 z m -47.73623,2.84223 c 0,0.0185 0.0134,0.0369 0.0374,0.0552 0.0495,0.0369 0.0749,0.0828 0.0749,0.13797 l -0.2613,0 c -0.0494,-0.0551 -0.0374,-0.092 0.0374,-0.11033 0.0749,-0.0185 0.11227,-0.046 0.11227,-0.0828 l 0,0 z m 43.92924,-31.071127 c -0.10024,4e-5 -0.14948,0.0184 -0.14919,0.0552 -0.0254,0.0184 -0.0254,0.0277 0,0.0275 -0.10024,-0.16552 -0.0868,-0.35867 0.0371,-0.57948 0.12432,-0.0367 0.19258,-0.0183 0.20516,0.0552 0.0137,0.0736 0.0819,0.092 0.20527,0.0552 -0.0989,0.2392 -0.16168,0.48754 -0.18655,0.74504 -0.0254,0.25759 -0.0371,0.45996 -0.0371,0.60708 -0.0497,0.0369 -0.0751,0.14261 -0.0751,0.31733 -1.9e-4,0.17481 -0.0254,0.26218 -0.0751,0.26215 0.0254,-0.14712 0.0371,-0.2759 0.0371,-0.38632 -2e-4,-0.11034 -2e-4,-0.21152 0,-0.30354 -2e-4,-0.0919 0,-0.22072 0.0185,-0.38633 0.0137,-0.16551 0.0185,-0.32189 0.0185,-0.46909 l 0,0 z m -39.82373,7.11932 c 0.24875,0.0369 0.49146,0.0139 0.72778,-0.069 0.23645,-0.0827 0.4479,-0.19312 0.63449,-0.33113 0.18672,-0.13795 0.34831,-0.29431 0.48519,-0.46911 0.13686,-0.17474 0.24258,-0.34489 0.31731,-0.51049 0.29859,-0.18393 0.56605,-0.39548 0.80249,-0.63467 0.23631,-0.23912 0.47891,-0.47827 0.72778,-0.71744 0.24875,-0.23912 0.51621,-0.46448 0.80237,-0.67607 0.28615,-0.21152 0.6282,-0.38168 1.02637,-0.51049 -0.47275,0.42314 -0.93922,0.82786 -1.39955,1.21414 -0.46033,0.38637 -0.90208,0.79107 -1.32498,1.21415 0.32346,-0.18393 0.62206,-0.40009 0.89579,-0.64846 0.27374,-0.24832 0.54734,-0.48747 0.82095,-0.71745 0.27373,-0.22992 0.57233,-0.43228 0.89578,-0.60709 0.3236,-0.17471 0.70921,-0.28049 1.1571,-0.31732 0.0749,0.1472 0.0442,0.22538 -0.0935,0.23454 -0.13671,0.009 -0.23016,0.0598 -0.27975,0.15178 0.17403,0.0369 0.3359,-0.005 0.4852,-0.12417 0.14916,-0.11954 0.28616,-0.19772 0.41046,-0.23456 0.62206,-0.2759 1.31256,-0.51506 2.07161,-0.71744 0.75879,-0.20233 1.44927,-0.41389 2.07133,-0.63467 0.0495,3e-5 0.0869,-0.0367 0.11228,-0.11034 0.0254,-0.0735 0.0749,-0.12873 0.14929,-0.16557 0.19903,-0.0735 0.37933,-0.115 0.5412,-0.12416 0.16158,-0.01 0.31102,-0.005 0.44776,0.0138 0.13672,0.0184 0.28603,0.0276 0.44789,0.0276 0.16173,4e-5 0.34204,-0.0183 0.54118,-0.0552 -0.12429,-0.0552 -0.23016,-0.0597 -0.31717,-0.0138 -0.0868,0.0461 -0.193,0.0414 -0.3173,-0.0138 1.04509,-0.2575 2.24548,-0.34029 3.60161,-0.24834 1.3561,0.092 2.71838,0.2116 4.08693,0.35873 0.57234,0.0736 1.15081,0.10579 1.73557,0.0966 0.58464,-0.009 1.12584,0.0231 1.62345,0.0966 1.51787,0.27597 2.91737,0.57032 4.19898,0.88301 1.28132,0.31277 2.46951,0.69909 3.56417,1.15896 0.39815,-0.12873 0.72783,-0.2989 0.98917,-0.51049 0.26134,-0.21151 0.55349,-0.40929 0.87713,-0.59329 0,-0.0367 -0.0185,-0.069 -0.0566,-0.0966 -0.0371,-0.0275 -0.0439,-0.0874 -0.0185,-0.17937 0.0497,-0.0552 0.10561,-0.0966 0.16772,-0.12418 0.0624,-0.0275 0.0936,-0.0874 0.0936,-0.17936 l -0.22389,0 c -0.17425,5e-5 -0.27371,-0.0275 -0.29857,-0.0828 0.0751,-0.0736 0.14294,-0.11489 0.20516,-0.12418 0.0614,-0.01 0.13096,-0.01 0.20527,0 0.0751,0.009 0.14929,0.0138 0.22407,0.0138 0.0751,5e-5 0.16169,-0.0183 0.26115,-0.0552 0.19911,-0.0919 0.41043,-0.19772 0.63461,-0.31733 0.22389,-0.11955 0.44777,-0.22992 0.67166,-0.33114 0.22399,-0.10112 0.45412,-0.17932 0.69049,-0.23454 0.23647,-0.0552 0.4666,-0.0644 0.69049,-0.0276 -0.14929,0.23919 -0.3609,0.41856 -0.63442,0.5381 -0.27372,0.11962 -0.52257,0.28058 -0.74656,0.48289 0.0751,5e-5 0.17416,0.0184 0.29859,0.0552 0.12432,0.0369 0.24885,0.0553 0.37328,0.0552 0.12432,0.0184 0.21773,-0.0275 0.27995,-0.13797 0.0624,-0.11033 0.19269,-0.18393 0.39181,-0.22076 0.0751,-0.0552 0.12433,-0.0598 0.14939,-0.0138 0.0254,0.0461 0.0624,0.0507 0.11223,0.0138 0.12433,-0.0919 0.26114,-0.20692 0.41062,-0.34493 0.1493,-0.13793 0.36061,-0.20692 0.63432,-0.20694 -0.0254,0.0184 -0.0254,0.0369 0,0.0552 0,0.0369 0.0497,0.0553 0.14929,0.0552 0,0.20239 -0.0989,0.34036 -0.29857,0.41391 -0.19903,0.0736 -0.37318,0.18399 -0.52238,0.33113 0.12433,0.0553 0.22389,0.0736 0.29849,0.0552 0.0751,-0.0183 0.14929,4e-5 0.22389,0.0552 0.19911,-0.14714 0.35455,-0.2989 0.46659,-0.45531 0.11224,-0.15633 0.26748,-0.25291 0.4666,-0.28975 l 0.26124,0 c 0,0.092 0,0.20701 0,0.34494 0,0.138 -0.0136,0.28057 -0.0371,0.4277 0.19903,0.0184 0.37942,0.0139 0.54119,-0.0138 0.16158,-0.0275 0.21756,-0.11489 0.16802,-0.26213 -0.0751,0.092 -0.0302,0.14261 0.13096,0.15176 0.16168,0.009 0.36684,0.009 0.61578,0 0.24866,-0.01 0.49128,4e-5 0.72775,0.0277 0.23646,0.0276 0.37951,0.11501 0.42934,0.26215 -0.0497,0.092 -0.19922,0.138 -0.44788,0.13796 -0.24895,4e-5 -0.39824,0.0461 -0.44796,0.13797 0.0497,0.0369 0.19901,0.0552 0.44796,0.0552 0.24866,4e-5 0.4353,0.0184 0.55972,0.0552 -0.12432,0.092 -0.31106,0.11046 -0.55972,0.0552 -0.24895,-0.0552 -0.54753,-0.0827 -0.89584,-0.0828 -0.0497,1.15901 -0.0624,2.44675 -0.037,3.8632 0.0254,1.41654 0.0497,2.80546 0.0751,4.16674 -0.0497,0.82787 -0.0624,1.5913 -0.0371,2.29031 0.0254,0.6991 0.0868,1.41654 0.18664,2.15237 0.12423,0.0184 0.23013,0.0506 0.3173,0.0966 0.0868,0.0461 0.19289,0.115 0.31731,0.20696 -0.0751,0.0552 -0.17435,0.0828 -0.29877,0.0828 -0.12424,3e-5 -0.28601,3e-5 -0.48512,0 -0.099,0.33115 -0.099,0.63009 0,0.89681 0.0989,0.26676 0.11223,0.54731 0.0371,0.84162 -0.19903,-0.20232 -0.28621,-0.46447 -0.26124,-0.78643 0.0254,-0.32191 0.0497,-0.61165 0.0751,-0.86923 -0.39815,-0.0736 -0.66563,-0.0505 -0.80233,0.0689 -0.13701,0.11962 -0.21785,0.28518 -0.24261,0.49673 -0.0254,0.21156 -0.0185,0.43692 0.0185,0.67604 0.0371,0.23918 0.0439,0.43234 0.0185,0.57949 -0.19913,0.11045 -0.37319,0.11045 -0.52248,0 -0.0751,0.18397 -0.1056,0.40933 -0.0936,0.67606 0.0137,0.26676 0.0371,0.5381 0.0751,0.81402 0.037,0.275967 0.0624,0.547307 0.0751,0.814027 0.0137,0.26676 -0.0185,0.49214 -0.0936,0.67606 -0.22418,-0.40469 -0.30502,-0.83699 -0.24271,-1.29694 0.0614,-0.459877 0.1056,-0.901367 0.13096,-1.324487 -0.0497,-0.14716 -0.0936,-0.38632 -0.13096,-0.71746 -0.037,-0.33112 0,-0.64384 0.0936,-0.93823 -0.0751,-0.0367 -0.14315,-0.0322 -0.20535,0.0138 -0.0624,0.046 -0.13097,0.0414 -0.20537,-0.0138 0,-0.12874 0.0137,-0.22071 0.0371,-0.27593 -0.32364,-0.0184 -0.62222,-0.0138 -0.89565,0.0138 -0.27381,0.0276 -0.53525,0.0322 -0.784,0.0138 -0.0751,2e-5 -0.11759,0.0644 -0.13095,0.19317 -0.0136,0.12879 -0.11761,0.19318 -0.31721,0.19316 -0.12424,-0.20234 -0.32355,-0.33572 -0.59727,-0.40014 -0.27361,-0.0644 -0.58478,-0.0782 -0.933,-0.0414 -0.0751,0.14721 -0.0936,0.28517 -0.0566,0.41392 0.0371,0.12879 -0.0439,0.22077 -0.24271,0.27593 -0.19903,-0.20232 -0.33573,-0.40468 -0.41043,-0.60706 -0.0751,-0.20234 -0.13691,-0.4323 -0.18664,-0.68985 -0.19902,1e-5 -0.37327,0.0369 -0.52257,0.11033 -0.14929,0.0736 -0.32335,0.0276 -0.52247,-0.13799 0.0751,-0.14714 0.19912,-0.22532 0.37318,-0.23454 0.17425,-0.009 0.36089,-0.0138 0.56001,-0.0138 -0.12433,-0.62545 -0.34226,-1.20493 -0.65323,-1.73843 -0.31097,-0.53347 -0.64075,-1.05775 -0.98917,-1.57289 -0.34831,-0.51506 -0.69048,-1.03476 -1.02622,-1.55908 -0.33593,-0.52425 -0.59112,-1.08993 -0.76528,-1.69704 -0.0751,-0.0552 -0.16801,-0.11499 -0.27986,-0.17937 -0.11223,-0.0644 -0.19288,-0.14252 -0.24261,-0.23454 -0.0751,3e-5 -0.13095,-0.0275 -0.16801,-0.0828 -0.0371,-0.0552 -0.1176,-0.0552 -0.24261,0 -0.17416,-0.23911 -0.41043,-0.45987 -0.70902,-0.66226 -0.29878,-0.20234 -0.62837,-0.38629 -0.98897,-0.55189 -0.36089,-0.16553 -0.73418,-0.31268 -1.11983,-0.4415 -0.38556,-0.12874 -0.7527,-0.2575 -1.10111,-0.38631 -0.27372,-0.11034 -0.54744,-0.22993 -0.82086,-0.35874 -0.27382,-0.12873 -0.51019,-0.19313 -0.70921,-0.19316 -0.52251,-0.11034 -1.02641,-0.15632 -1.51159,-0.13797 -0.48532,0.0184 -0.98923,-0.0275 -1.51156,-0.13797 0.2736,0.0184 0.55349,0.0277 0.83965,0.0275 0.28616,5e-5 0.52875,-0.0183 0.72777,-0.0552 -0.44775,-0.12874 -0.96408,-0.21612 -1.54885,-0.26214 -0.58476,-0.046 -1.17567,-0.0552 -1.77286,-0.0275 -0.5972,0.0277 -1.1694,0.092 -1.71688,0.19316 -0.54748,0.10124 -1.0078,0.22538 -1.38097,0.37252 0.0254,0.0552 0.0682,0.0782 0.13098,0.069 0.0628,-0.01 0.12431,-0.023 0.1866,-0.0414 0.0628,-0.0183 0.11227,-0.0229 0.14929,-0.0137 0.0374,0.009 0.0561,0.0506 0.0561,0.12417 -0.4229,4e-5 -0.82723,0.0691 -1.21283,0.20696 -0.38574,0.138 -0.75264,0.30817 -1.10109,0.5105 -0.34833,0.20238 -0.67806,0.42314 -0.98909,0.66225 -0.31104,0.23917 -0.60335,0.47833 -0.87707,0.71744 0,0.25759 0,0.50593 0,0.74507 0,0.23917 0.0254,0.50591 0.0749,0.80021 0,0.33117 -0.0187,0.68069 -0.0561,1.04859 -0.0374,0.36794 -0.0495,0.71748 -0.0374,1.04858 0.0134,0.33115 0.0869,0.63469 0.22388,0.91062 0.13674,0.27596 0.37947,0.50591 0.72779,0.68985 0.12429,0.27596 0.31101,0.50132 0.55977,0.67605 0.24888,0.1748 0.52888,0.33116 0.83991,0.4691 0.31089,0.13802 0.63449,0.26678 0.97024,0.38633 0.33589,0.11959 0.65321,0.25297 0.95194,0.40012 1.34341,0.33116 2.66852,0.67148 3.97478,1.02098 1.30627,0.34957 2.64367,0.68988 4.01235,1.02098 -0.27372,-0.0919 -0.51643,-0.20693 -0.72794,-0.34492 -0.2114,-0.13793 -0.47898,-0.25293 -0.80234,-0.34493 -1.2e-4,-0.12874 0.0134,-0.22994 0.0374,-0.30354 0.89566,0.1656 1.67333,0.38176 2.3326,0.64847 0.65948,0.26676 1.27517,0.6025 1.84767,1.00719 1.49282,0.42312 2.91104,0.90144 4.25467,1.4349 1.34362,0.533497 2.62503,1.131387 3.84433,1.793637 0.12432,1e-5 0.24875,-0.009 0.37318,-0.0276 0.12422,-0.0183 0.21159,2e-5 0.26143,0.0552 0.0751,0.0369 0.0936,0.0874 0.0566,0.15177 -0.0371,0.0644 -0.0566,0.1426 -0.0566,0.23455 0.44778,0.14718 0.83948,0.34034 1.17551,0.57948 0.33593,0.23918 0.66552,0.51511 0.98907,0.82783 l 0.52267,0 c 0.42271,0.25757 0.80847,0.58869 1.15688,0.99338 0.34822,0.40474 0.70911,0.80947 1.08229,1.21416 0.12433,0.14718 0.255,0.27595 0.39191,0.38632 0.1369,0.11045 0.20516,0.26675 0.20526,0.46909 0.12433,0.0184 0.20536,0.092 0.2428,0.22076 0.0371,0.12879 0.11761,0.19319 0.24242,0.19316 -0.0751,0.11046 -0.1369,0.1196 -0.18654,0.0277 l -0.0751,-0.11034 c 0,0.0919 0.0136,0.15179 0.037,0.17936 0.0254,0.0276 0.0614,0.0414 0.11225,0.0414 0.0497,1e-5 0.0936,0.009 0.13096,0.0275 0.0371,0.0184 0.0799,0.0644 0.13105,0.13797 0,0.0184 -0.0136,0.0276 -0.037,0.0276 -0.0254,10e-6 -0.0614,-0.009 -0.11234,-0.0276 0.42301,0.93823 0.59707,1.84884 0.52267,2.73185 -0.0751,0.883 -0.29878,1.83961 -0.67196,2.86979 -0.0989,0.33114 -0.255,0.63928 -0.46649,0.92441 -0.21151,0.28515 -0.34218,0.5749 -0.39191,0.86922 -0.0254,0.20236 0,0.37715 0.0565,0.52428 0.0624,0.14719 0.0185,0.29435 -0.13095,0.44151 0.0751,0.0921 0.1056,0.19777 0.0936,0.31734 -0.0136,0.11959 -0.0254,0.24377 -0.0371,0.37254 -0.0136,0.12877 -0.0185,0.25754 -0.0185,0.38631 0,0.12878 0.0497,0.25755 0.14949,0.38631 -0.12432,0.45992 -0.19921,0.91061 -0.22408,1.35211 -0.0254,0.44152 -0.0439,0.89224 -0.0566,1.35213 -0.0136,0.45992 -0.0439,0.91981 -0.0936,1.37971 -0.0497,0.45992 -0.14929,0.92901 -0.29858,1.40731 -0.12433,-0.11044 -0.14315,-0.22995 -0.0565,-0.35873 0.0868,-0.12877 0.16801,-0.26673 0.24261,-0.4139 0.0497,-0.31274 0.0682,-0.64846 0.0566,-1.0072 -0.0137,-0.35873 -0.0302,-0.71745 -0.0566,-1.07618 -0.0254,-0.35873 -0.0254,-0.71284 0,-1.06238 0.0254,-0.34951 0.10024,-0.68064 0.22399,-0.99338 0,-0.0552 -0.0254,-0.092 -0.0751,-0.11035 -0.0497,-0.0185 -0.0751,-0.046 -0.0751,-0.0828 0,-0.0921 0.0254,-0.13797 0.0751,-0.13797 0.0497,0 0.0751,-0.0185 0.0751,-0.0551 -0.12424,-0.38632 -0.14929,-0.77264 -0.0751,-1.15896 0.0751,-0.3863 0.0868,-0.77263 0.037,-1.15896 -0.34831,0.4783 -0.67175,0.92902 -0.97024,1.35211 -0.29869,0.42313 -0.65948,0.81863 -1.08239,1.18656 0.12433,0 0.2551,-0.0828 0.3918,-0.24834 0.13701,-0.16556 0.28006,-0.29435 0.42935,-0.38633 0.0497,0.092 0.0565,0.18856 0.0185,0.28975 -0.0371,0.10112 -0.1056,0.20237 -0.20536,0.30352 -0.10025,0.10125 -0.19912,0.19778 -0.29858,0.28976 -0.0989,0.092 -0.18675,0.17477 -0.26134,0.24834 -1.02017,0.88302 -2.23304,1.66485 -3.63897,2.3455 -1.40584,0.68067 -2.91747,1.24175 -4.53471,1.68325 -0.19913,-0.0736 -0.39201,-0.092 -0.57864,-0.0552 -0.18655,0.0367 -0.3919,0.0736 -0.6156,0.11035 -0.0254,0.12877 -0.0312,0.25756 -0.0185,0.38632 0.0136,0.12877 0.0185,0.24375 0.0185,0.34492 -1.9e-4,0.10114 -0.0185,0.18857 -0.0566,0.26216 -0.0371,0.0736 -0.1176,0.11958 -0.24271,0.13796 -0.0497,-0.14717 -0.0614,-0.32194 -0.037,-0.52428 0.0253,-0.20235 0.0989,-0.36792 0.22388,-0.49669 -1.86609,0.3679 -3.75091,0.61626 -5.65426,0.74503 -1.90359,0.12877 -3.7759,0.18397 -5.6172,0.16557 -0.64705,0.0367 -1.32498,0.0275 -2.03405,-0.0276 -0.70919,-0.0552 -1.42454,-0.14717 -2.14617,-0.27595 -0.5972,-0.0552 -1.15082,-0.14257 -1.66087,-0.26215 -0.51005,-0.11957 -1.16324,-0.19774 -1.95946,-0.23455 -1.3934,-0.0736 -2.73081,-0.16556 -4.01221,-0.27594 -1.28153,-0.11033 -2.50694,-0.40471 -3.67633,-0.883 -0.72164,0.31272 -1.40583,0.68985 -2.05275,1.13135 -0.64691,0.44151 -1.3064,0.90141 -1.97804,1.37971 -0.0254,0.38632 0,0.74504 0.0561,1.07618 0.0628,0.33113 0.0561,0.64386 -0.0186,0.9382 -0.0749,-0.0368 -0.12429,-0.046 -0.14929,-0.0276 -0.0254,0.0184 -0.0628,0.0276 -0.11228,0.0276 -0.1243,-0.20235 -0.19888,-0.44609 -0.2239,-0.73125 -0.0254,-0.28513 -0.0614,-0.52889 -0.11226,-0.73124 -0.0494,-0.0552 -0.11228,-0.0552 -0.18657,0 -0.0749,0.0552 -0.13688,0.0828 -0.18674,0.0828 0,0.092 0.0254,0.21615 0.0749,0.37252 0.0495,0.15637 0.0134,0.26213 -0.11227,0.31734 -0.1243,-0.0552 -0.1866,-0.1058 -0.1866,-0.15177 0,-0.046 -0.0254,-0.0966 -0.0749,-0.15177 -0.0254,0.0367 -0.0628,0.0644 -0.11228,0.0828 -0.12429,0.0367 -0.224,0.0367 -0.29872,0 0,-0.092 0.0561,-0.17016 0.168,-0.23454 0.11229,-0.0644 0.20545,-0.14258 0.28004,-0.23456 -0.0495,-0.4415 -0.0935,-0.9014 -0.131,-1.3797 -0.0374,-0.47832 -0.0801,-0.95661 -0.13098,-1.43492 0,-0.0552 -0.0241,-0.0736 -0.0749,-0.0552 -0.0495,0.0185 -0.11228,1e-5 -0.18661,-0.0552 0,-0.092 0.0442,-0.11957 0.131,-0.0828 0.0869,0.0367 0.13099,0.0367 0.13099,0 0,-0.29432 0,-0.56107 -0.0186,-0.80023 -0.0134,-0.23915 -0.0307,-0.47829 -0.0561,-0.71745 -0.0254,-0.23915 -0.0561,-0.4829 -0.0935,-0.73122 -0.0374,-0.24837 -0.0561,-0.52891 -0.0561,-0.84164 -0.27374,-0.0736 -0.55977,-0.0782 -0.85837,-0.0138 -0.29859,0.0644 -0.58463,0.0138 -0.85836,-0.15177 0.0989,-0.14715 0.31717,-0.21154 0.65305,-0.19316 0.33591,0.0185 0.64078,0.0369 0.91438,0.0552 0,-0.0921 0.0134,-0.21615 0.0374,-0.37252 0.0254,-0.15636 0.0307,-0.30812 0.0186,-0.45531 -0.0134,-0.14717 -0.0441,-0.28053 -0.0935,-0.40011 -0.0495,-0.11958 -0.13674,-0.19776 -0.26118,-0.23456 -0.0495,-0.092 -0.0307,-0.14715 0.0561,-0.16555 0.0868,-0.0185 0.16788,-0.0552 0.24246,-0.11045 -0.12431,-0.53346 -0.17403,-0.99337 -0.14917,-1.3797 0.0241,-0.38631 -0.0254,-0.80024 -0.1493,-1.24175 0.0989,-0.14715 0.1493,-0.34953 0.1493,-0.60707 0,-0.25754 -0.0614,-0.4415 -0.18658,-0.55189 0.0495,-0.0921 0.0815,-0.23914 0.0935,-0.4415 0.0134,-0.20236 0,-0.34952 -0.0561,-0.4415 -0.0749,-0.0368 -0.18044,-0.0552 -0.31731,-0.0552 -0.13672,0 -0.20516,-0.046 -0.20516,-0.13795 -0.0495,-0.0921 -0.0374,-0.12878 0.0374,-0.11046 0.0749,0.0185 0.1493,0.0276 0.22389,0.0276 -0.0495,-0.0552 -0.0815,-0.12878 -0.0935,-0.22078 -0.0134,-0.0919 -0.0187,-0.18393 -0.0187,-0.27592 -0.0495,-0.0367 -0.14931,-0.046 -0.29873,-0.0276 -0.1493,0.0185 -0.22389,-0.046 -0.22389,-0.19315 0.0254,-0.0919 0.0935,-0.14255 0.20531,-0.15176 0.11226,-0.009 0.23015,-0.0138 0.3546,-0.0138 0.0253,-0.38632 0.0134,-0.74045 -0.0374,-1.06239 -0.0494,-0.32192 -0.137,-0.61167 -0.26144,-0.86922 -0.39804,-0.0184 -0.78366,2e-5 -1.15683,0.0552 -0.37332,0.0552 -0.73406,0.0735 -1.08238,0.0552 0.0749,-0.16555 0.21132,-0.26213 0.41046,-0.28974 0.19903,-0.0275 0.42305,-0.0414 0.67192,-0.0414 0.24874,2e-5 0.4789,-0.005 0.69049,-0.0139 0.21131,-0.009 0.37932,-0.0873 0.50376,-0.23456 0.19902,0.092 0.34832,0.14259 0.4479,0.15177 0.0989,0.009 0.24874,-0.0322 0.44776,-0.12418 -0.0494,-0.40469 -0.0869,-0.69905 -0.11227,-0.88301 -0.0253,-0.18395 0.0374,-0.4415 0.18659,-0.77266 0.0989,2e-5 0.16173,0.0276 0.18658,0.0828 0.0254,0.0552 0.0441,0.11047 0.0561,0.16557 0.0134,0.0552 0.0187,0.11045 0.0187,0.16557 0,0.0552 0.0374,0.0828 0.11227,0.0828 0.0749,-0.25753 0.087,-0.58404 0.0374,-0.97958 -0.0495,-0.39551 -0.0254,-0.71284 0.0749,-0.95201 0.14917,0.0552 0.23617,0.17019 0.26117,0.34493 0.0254,0.17479 0.0254,0.36335 0,0.56568 -0.0254,0.20238 -0.0562,0.40933 -0.0935,0.62086 -0.0374,0.21155 -0.0427,0.37255 -0.0187,0.4829 0.32346,0.1656 0.65948,0.27136 1.00781,0.31734 0.34817,0.0459 0.74635,0.0229 1.19424,-0.0689 0.0254,-0.29433 -0.0494,-0.56106 -0.22401,-0.80023 -0.17402,-0.23913 -0.24874,-0.48748 -0.22388,-0.74504 0.19915,0.0369 0.32359,0.0966 0.37319,0.17935 0.0494,0.0828 0.0815,0.17481 0.0935,0.27595 0.0134,0.10124 0.0307,0.20239 0.0561,0.30354 0.0254,0.10123 0.0989,0.17938 0.22387,0.23454 0.0749,-0.14715 0.10026,-0.34029 0.0749,-0.57946 -0.0254,-0.23914 -0.0374,-0.4323 -0.0374,-0.57948 0.0749,0.0369 0.11762,0.10124 0.13098,0.19316 0.0134,0.092 0.0254,0.19777 0.0374,0.31734 0.0134,0.11958 0.0186,0.22995 0.0186,0.33112 0,0.10124 0.0134,0.17937 0.0374,0.23453 l 0,0.27595 c 0.24874,0.0552 0.51619,0.10579 0.80237,0.15177 0.28629,0.046 0.66561,0.0506 1.13837,0.0138 -0.0749,0.20239 -0.21773,0.33576 -0.42917,0.40013 -0.21146,0.0644 -0.3919,0.14258 -0.5412,0.23455 0.1493,0.5151 0.36702,0.97961 0.6532,1.39351 0.28604,0.41393 0.59705,0.80483 0.93295,1.17275 0.33602,0.36794 0.68432,0.72667 1.04509,1.07618 0.36088,0.34953 0.67804,0.71746 0.95166,1.10377 0.1243,0.092 0.25515,0.18395 0.39203,0.27594 0.13686,0.092 0.168,0.16557 0.0935,0.22075 0.39805,0.25755 0.73406,0.52431 1.0078,0.80024 0.2736,0.27594 0.55977,0.57029 0.85836,0.88302 0.82108,0.66228 1.61101,1.33833 2.37007,2.02817 0.75879,0.68987 1.61114,1.31994 2.55653,1.89021 l 0.2613,0 c 0.44776,0.22077 0.91437,0.38172 1.3997,0.48291 0.48504,0.10123 0.97651,0.17476 1.47412,0.22073 0.49763,0.046 1.00767,0.0689 1.53029,0.0689 0.52247,0 1.04496,0.0185 1.56756,0.0552 0,0.0369 0,0.0783 -0.0187,0.12417 -0.0134,0.046 -0.0186,0.0873 -0.0186,0.1242 l 0,0.13795 c 1.04495,0.0367 1.99046,0.009 2.83653,-0.0828 0.84594,-0.092 1.70431,-0.29434 2.57521,-0.60708 -0.12423,-0.0185 -0.2116,-0.0367 -0.26114,-0.0551 -0.0495,-0.0184 -0.0495,-0.0736 0,-0.16557 0.42301,-0.0185 0.78995,-0.0783 1.10091,-0.17937 0.31107,-0.10114 0.59708,-0.22534 0.85851,-0.37253 0.26123,-0.14716 0.4977,-0.30812 0.70911,-0.48288 0.2116,-0.17476 0.44173,-0.34493 0.69049,-0.5105 0.19902,-0.20234 0.3919,-0.37251 0.57844,-0.5105 0.18663,-0.13795 0.30482,-0.30812 0.35465,-0.5105 0.0254,-0.0919 -0.0137,-0.11034 -0.11224,-0.0552 -0.10024,0.0552 -0.14939,0.0644 -0.14939,0.0276 0.099,-0.14718 0.19289,-0.30814 0.28006,-0.48292 0.0868,-0.17475 0.26728,-0.26213 0.54119,-0.26213 0.0497,-0.29432 0.11224,-0.61166 0.18655,-0.95202 0.0751,-0.3403 0.11233,-0.67603 0.11233,-1.00718 0,-0.33112 -0.0439,-0.63926 -0.13095,-0.92442 -0.0868,-0.28512 -0.2551,-0.51967 -0.50396,-0.70364 0,0.0921 0.0312,0.17477 0.0936,0.24835 0.0614,0.0736 0.0302,0.15638 -0.0936,0.24836 -0.0497,-0.0919 -0.1056,-0.19316 -0.16791,-0.30354 -0.0624,-0.11034 -0.0819,-0.26673 -0.0565,-0.46911 0.0751,10e-6 0.14929,-0.0185 0.22389,-0.0552 0.0751,-0.0367 0.17435,-0.0552 0.29878,-0.0552 0.17406,0.18398 0.31087,0.40473 0.41043,0.66228 0.099,0.25754 0.16167,0.52889 0.18663,0.81401 0.0254,0.28518 0.0254,0.57029 0,0.85544 -0.0254,0.28514 -0.0497,0.54729 -0.0751,0.78643 0.12433,-0.29433 0.18655,-0.64846 0.18655,-1.0624 0,-0.41389 0,-0.76801 0,-1.06234 0.12432,0.0551 0.18029,0.17936 0.16801,0.3725 -0.0136,0.19318 -0.0312,0.36335 -0.0566,0.51051 0.17415,-0.25754 0.24875,-0.48751 0.22408,-0.68986 -0.0254,-0.20236 -0.099,-0.39092 -0.22408,-0.56569 -0.12432,-0.17475 -0.29234,-0.34032 -0.50375,-0.4967 -0.21141,-0.15637 -0.40428,-0.32652 -0.57863,-0.5105 0,-0.0184 0,-0.0413 -0.0185,-0.0689 -0.0136,-0.0275 -0.0185,-0.0598 -0.0185,-0.0966 -0.0254,-0.0368 -0.037,-0.0736 -0.037,-0.11033 -0.0751,-0.0552 -0.16802,-0.0966 -0.27987,-0.12419 -0.11223,-0.0276 -0.19287,-0.0598 -0.24261,-0.0966 -0.19902,-0.14717 -0.36703,-0.29433 -0.50384,-0.44151 -0.13691,-0.14715 -0.30473,-0.30353 -0.50395,-0.4691 -0.39815,-0.0552 -0.74022,-0.16096 -1.02622,-0.31733 -0.2863,-0.15636 -0.62837,-0.28972 -1.02651,-0.40011 -0.0751,0.14717 -0.0302,0.27594 0.13095,0.38631 0.16178,0.11035 0.27997,0.24836 0.35466,0.4139 0.89565,0.49671 1.60486,1.14978 2.12743,1.9592 0.52237,0.80944 0.69653,1.72005 0.52237,2.73185 -0.10024,0.14716 -0.14919,0.29434 -0.14919,0.4415 0,0.14717 -0.13701,0.22076 -0.41073,0.22075 0.24886,-0.55188 0.35466,-1.07157 0.31731,-1.55908 -0.0371,-0.48748 -0.15553,-0.9428 -0.35455,-1.36593 -0.19903,-0.42311 -0.4667,-0.80482 -0.80243,-1.14517 -0.33584,-0.34031 -0.66572,-0.63925 -0.98907,-0.8968 -0.12433,10e-6 -0.23647,-0.0229 -0.33583,-0.0688 -0.099,-0.046 -0.21161,-0.0688 -0.33593,-0.0688 l 0,-0.19315 c -0.39815,-0.20233 -0.7528,-0.40932 -1.06381,-0.62088 -0.31104,-0.21154 -0.72778,-0.3725 -1.25026,-0.48289 0.0989,-0.092 0.11227,-0.13796 0.0374,-0.13799 -0.0749,2e-5 -0.11227,-0.0184 -0.11227,-0.0552 -1.04509,-0.5151 -2.23319,-0.90601 -3.56445,-1.17277 -1.33113,-0.26674 -2.64367,-0.56566 -3.93749,-0.89681 -0.19917,-0.0367 -0.40448,-0.0598 -0.61592,-0.0689 -0.21158,-0.009 -0.34204,-0.0873 -0.39189,-0.23456 0.3236,-0.11033 0.62833,-0.15635 0.91437,-0.13796 0.2863,0.0184 0.5599,0.0644 0.82121,0.13796 0.26117,0.0736 0.53491,0.14259 0.82121,0.20695 0.28603,0.0644 0.59077,0.0966 0.91437,0.0966 -0.92065,-0.27591 -1.8786,-0.52427 -2.87384,-0.74505 -0.9955,-0.22072 -1.9783,-0.44609 -2.94867,-0.67605 -0.97051,-0.22993 -1.9159,-0.48287 -2.83654,-0.75883 -0.92065,-0.27593 -1.76659,-0.59785 -2.53794,-0.96581 0.24888,0.29436 0.56605,0.54731 0.95166,0.75886 0.38575,0.21157 0.79635,0.40472 1.23168,0.57947 0.43547,0.17477 0.88335,0.34033 1.34369,0.49669 0.46033,0.15639 0.90193,0.33575 1.32497,0.53809 1.04509,0.22076 1.9906,0.46912 2.83654,0.74502 0.84593,0.27597 1.74173,0.59791 2.68724,0.96581 -0.12431,0.0369 -0.26118,0.0184 -0.41048,-0.0552 -0.14929,-0.0735 -0.22402,-0.12876 -0.22402,-0.16556 -0.24886,-0.0552 -0.49774,-0.115 -0.74648,-0.17936 -0.24887,-0.0644 -0.51005,-0.14254 -0.78365,-0.23455 -0.19915,-0.0736 -0.39817,-0.15176 -0.59719,-0.23455 -0.19916,-0.0828 -0.39818,-0.14254 -0.5972,-0.17935 -0.24887,-0.11034 -0.54119,-0.20233 -0.87721,-0.27595 -0.33588,-0.0736 -0.64063,-0.12875 -0.91438,-0.16555 -0.52247,-0.16556 -1.06993,-0.33573 -1.64215,-0.5105 -0.57231,-0.17475 -1.12594,-0.37711 -1.66085,-0.60706 -0.53505,-0.22996 -1.0201,-0.4875 -1.45569,-0.77264 -0.43548,-0.28514 -0.75252,-0.61166 -0.95166,-0.9796 -0.52262,-0.12875 -0.94565,-0.33112 -1.26898,-0.60709 0,0.1656 0.0615,0.32656 0.18659,0.48291 0.12431,0.15638 0.25503,0.31735 0.3919,0.48289 0.13686,0.16561 0.24873,0.33115 0.33588,0.49669 0.0869,0.1656 0.0935,0.33117 0.0186,0.49672 -0.19903,-0.25753 -0.38574,-0.51049 -0.5599,-0.75885 -0.17404,-0.24834 -0.3609,-0.52887 -0.55977,-0.84163 -0.12431,-0.20233 -0.24889,-0.39551 -0.37332,-0.57947 -0.1243,-0.18396 -0.27374,-0.34952 -0.4479,-0.49671 -0.49762,-0.44148 -1.01395,-0.86919 -1.54885,-1.28314 -0.53504,-0.413877 -0.98909,-0.915187 -1.36226,-1.503867 -0.0495,0.33114 -0.0749,0.71286 -0.0749,1.14516 0,0.432317 0,0.878417 0,1.338307 0,0.45995 -0.0134,0.91065 -0.0374,1.35214 -0.0254,0.44151 -0.0749,0.83703 -0.14916,1.18655 0,-0.82782 0,-1.57746 0.0187,-2.24894 0.0134,-0.67144 -0.0935,-1.37508 -0.31732,-2.110967 0.0254,-0.14716 0.0628,-0.22992 0.11227,-0.24835 0.0495,-0.0184 0.0749,-0.10111 0.0749,-0.24834 -0.0749,-0.0367 -0.1243,-0.0827 -0.1493,-0.13798 -0.0254,-0.0552 -0.0615,-0.10112 -0.11227,-0.13797 0.0254,-0.0919 0.0495,-0.15634 0.0749,-0.19316 0.0253,-0.0367 0.0134,-0.10112 -0.0374,-0.19316 -0.32346,-0.45988 -0.55363,-0.94737 -0.69051,-1.4625 -0.13685,-0.51506 -0.2923,-1.03935 -0.46659,-1.57287 -0.0749,-0.14714 -0.16787,-0.20693 -0.27976,-0.17936 -0.11227,0.0276 -0.19286,0.0138 -0.24272,-0.0414 0.0254,-0.14714 0.0935,-0.22532 0.2053,-0.23455 0.11228,-0.009 0.23017,-0.0138 0.35447,-0.0138 -0.0495,-0.34951 -0.0495,-0.65764 0,-0.92441 0.0494,-0.26671 0.11227,-0.57486 0.18685,-0.92443 l -0.0749,0 c -0.0254,4e-5 -0.0374,-0.0275 -0.0374,-0.0828 0.0749,-0.14713 0.14302,-0.32651 0.20518,-0.53809 0.0628,-0.21153 0.10558,-0.41849 0.13097,-0.62087 0,-0.0552 -0.0494,-0.0644 -0.14929,-0.0276 -0.10025,0.0369 -0.18672,0.009 -0.26144,-0.0828 0.0749,-0.0367 0.0935,-0.0644 0.0561,-0.0828 -0.0374,-0.0183 -0.0561,-0.0552 -0.0561,-0.11034 0.0749,-0.0367 0.168,-0.0598 0.28002,-0.0689 0.11227,-0.009 0.19287,-0.0138 0.24259,-0.0138 0.10024,-0.20233 0.18044,-0.35869 0.24273,-0.46911 0.0615,-0.11034 0.14301,-0.26671 0.24246,-0.4691 -0.0749,-0.0552 -0.1866,-0.0828 -0.33589,-0.0828 -0.1493,4e-5 -0.26118,-0.0459 -0.33589,-0.13796 0,-0.0919 0.0561,-0.14714 0.16788,-0.16556 0.11227,-0.0184 0.23016,-0.0184 0.3546,0 0.12429,-0.0919 0.18659,-0.25752 0.18659,-0.49671 0.12431,4e-5 0.137,0.0691 0.0374,0.20696 -0.0989,0.138 -0.0869,0.23459 0.0374,0.28975 0.1243,-0.0552 0.15545,-0.10579 0.0935,-0.15179 -0.0628,-0.046 -0.0815,-0.0966 -0.0562,-0.15175 0.0749,3e-5 0.11228,0.0184 0.11228,0.0552 l 0,0.0552 c 0.19902,-0.3495 0.42918,-0.65304 0.69036,-0.91061 0.26143,-0.25751 0.5039,-0.56105 0.72804,-0.91062 -0.1243,-0.0367 -0.25516,-0.0229 -0.39203,0.0414 -0.13686,0.0644 -0.26744,0.0506 -0.39189,-0.0414 l 0,0 z m 34.74782,-5.13255 c 0.0989,0.0369 0.21141,0.0369 0.33583,0 0.12433,-0.0367 0.24251,-0.0874 0.35466,-0.15177 0.11223,-0.0644 0.20516,-0.13332 0.27985,-0.20695 0.0751,-0.0736 0.11234,-0.13794 0.11234,-0.19315 -0.12433,0.092 -0.3174,0.1702 -0.57853,0.23455 -0.26144,0.0644 -0.42936,0.17019 -0.50386,0.31732 l 0,0 z m 0,0.38633 c 0.0751,0.0184 0.17406,0.0414 0.29858,0.0691 0.12434,0.0276 0.24876,0.0415 0.37319,0.0415 0.12432,4e-5 0.23627,-0.0138 0.33602,-0.0415 0.0989,-0.0275 0.149,-0.0782 0.1492,-0.15178 -0.27382,0.0553 -0.48522,0.0598 -0.63451,0.0137 -0.1493,-0.046 -0.32365,-0.023 -0.52248,0.069 l 0,0 z m -0.67195,0 c 0.12432,0.0369 0.23022,0.0276 0.3173,-0.0277 0.0868,-0.0552 0.15553,-0.0828 0.20536,-0.0828 -0.0497,2e-5 -0.13105,0.005 -0.24261,0.0138 -0.11224,0.01 -0.20546,0.0414 -0.28005,0.0966 l 0,0 z m 2.87388,0.0552 c 0,0.0369 0.0868,0.0553 0.26143,0.0552 0.17396,4e-5 0.26113,-0.046 0.26113,-0.13797 -0.12432,0.0553 -0.22397,0.0736 -0.29857,0.0552 -0.0751,-0.0183 -0.14929,-0.01 -0.22399,0.0275 l 0,0 z m 2.68735,1.13137 c 0.0254,-0.14712 0.0254,-0.27131 0,-0.37253 -0.0254,-0.10112 0.0254,-0.19771 0.14928,-0.28974 -10e-5,0.14721 -0.0185,0.30358 -0.0565,0.46911 -0.0371,0.1656 -0.0312,0.29438 0.0185,0.38632 0.0253,-0.20232 0.0614,-0.37708 0.11233,-0.52429 0.0497,-0.14713 0.0751,-0.2943 0.0751,-0.4415 l -0.41062,0 c 0,0.092 0,0.22078 0.0185,0.38631 0.0137,0.1656 0.0439,0.29438 0.0936,0.38632 l 0,0 z m -25.30511,-0.77264 c 1.71686,-0.11033 3.5519,-0.12874 5.5052,-0.0552 1.95332,0.0736 3.81303,0.092 5.57996,0.0552 -1.81647,-0.29431 -3.68892,-0.46905 -5.61724,-0.52428 -1.92832,-0.0552 -3.75106,0.11961 -5.46792,0.52428 l 0,0 z m 17.72858,1.15896 c 0.19893,0.0552 0.36694,0.12421 0.50395,0.20695 0.13672,0.0828 0.30453,0.15181 0.50355,0.20697 0.34852,-0.23912 0.68435,-0.45987 1.0078,-0.66227 0.32364,-0.20233 0.62213,-0.45066 0.89584,-0.74505 -0.12433,4e-5 -0.18664,-0.0321 -0.18664,-0.0966 0,-0.0644 -0.0254,-0.0966 -0.0751,-0.0966 -0.64699,0.0369 -1.15095,0.18401 -1.51164,0.44152 -0.3609,0.25757 -0.74022,0.50592 -1.13827,0.74504 l 0,0 z m -22.16984,-1.21414 c 0.32332,-0.0367 0.64692,-0.0966 0.97023,-0.17937 0.32346,-0.0828 0.62207,-0.19772 0.89581,-0.34493 -0.34833,0.092 -0.69678,0.17022 -1.04511,0.23456 -0.34831,0.0644 -0.62204,0.161 -0.82093,0.28974 l 0,0 z m 25.41681,1.02098 c 0.47274,0.0184 0.88336,0.0139 1.23169,-0.0138 0.34831,-0.0275 0.72149,-0.005 1.11973,0.0691 0.0751,-0.0919 0.0936,-0.17473 0.0566,-0.24835 -0.0371,-0.0736 -0.0439,-0.15633 -0.0185,-0.24835 -0.19902,-0.0183 -0.43549,-0.0322 -0.70912,-0.0414 -0.27381,-0.01 -0.54128,5e-5 -0.80243,0.0276 -0.26133,0.0277 -0.47898,0.0782 -0.65323,0.15175 -0.17406,0.0736 -0.24875,0.17481 -0.22389,0.30355 l 0,0 z m -8.95749,-0.55188 c -0.87078,-0.0367 -1.82875,-0.0782 -2.87379,-0.12419 -1.04511,-0.046 -2.09021,-0.0597 -3.13516,-0.0414 -0.29874,3e-5 -0.47904,0.005 -0.54119,0.0137 -0.0628,0.01 -0.0561,0.0184 0.0186,0.0277 0.0749,0.01 0.19287,0.023 0.3546,0.0414 0.16173,0.0184 0.30488,0.0277 0.42932,0.0277 0.97024,0.0369 1.99047,0.0691 3.06045,0.0966 1.0698,0.0276 2.0776,0.0782 3.02328,0.15178 0.0751,3e-5 0.13671,-0.0322 0.18653,-0.0966 0.0497,-0.0644 0.13672,-0.0874 0.26115,-0.0691 0.12432,-0.0367 0.24875,-0.0322 0.37317,0.0138 0.12433,0.0461 0.21151,0.0413 0.26134,-0.0138 -0.12433,2e-5 -0.255,-0.0183 -0.39171,-0.0552 -0.137,-0.0367 -0.27391,-0.069 -0.41081,-0.0966 -0.13672,-0.0275 -0.25501,-0.0367 -0.35457,-0.0276 -0.0989,0.009 -0.18663,0.0598 -0.26113,0.15178 l 0,0 z m 13.62298,9.76837 c 0.12422,0.0369 0.19268,0.0552 0.20516,0.0552 0.0136,4e-5 -0.0185,-0.0184 -0.0936,-0.0552 0.0254,-1.61884 0.0497,-3.20091 0.0751,-4.74623 0.0254,-1.54524 -0.0254,-3.09972 -0.14929,-4.66342 -0.27381,0.82785 -0.42291,1.6419 -0.44797,2.4421 -0.0254,0.80025 -0.0136,1.5913 0.037,2.37311 0.0497,0.78185 0.12434,1.55449 0.22389,2.31791 0.10025,0.76347 0.1492,1.5223 0.1493,2.27653 l 0,0 z m -27.61924,-9.85117 c -0.0241,0.0552 -0.0374,0.1472 -0.0374,0.27594 0.59719,0.0368 1.2131,0.0552 1.84745,0.0552 0.63463,5e-5 1.2691,5e-5 1.90359,0 0.63449,5e-5 1.25653,0.01 1.86616,0.0276 0.6095,0.0184 1.17568,0.0552 1.69816,0.11034 0.47275,-0.0367 0.93308,-0.0414 1.38098,-0.0138 0.44775,0.0277 0.90808,-0.005 1.38098,-0.0966 -1.79145,-0.0919 -3.50217,-0.18851 -5.13189,-0.28974 -1.62986,-0.10112 -3.26572,-0.12412 -4.90814,-0.069 l 0,0 z m 27.0593,1.90401 c -0.0497,-0.23913 -0.0185,-0.44607 0.0936,-0.62087 0.11223,-0.17474 0.1056,-0.3909 -0.0185,-0.64848 0,0.2024 -0.0254,0.41396 -0.0751,0.63468 -0.0497,0.22078 -0.0497,0.43234 0,0.63467 l 0,0 z m -29.5598,-1.5177 c 0.44788,0.0184 0.7652,0.0139 0.9518,-0.0138 0.18658,-0.0275 0.4789,-0.0322 0.87707,-0.0138 0,-0.0552 0,-0.12413 0,-0.20695 0,-0.0827 0.0134,-0.14253 0.0374,-0.17937 -0.39817,-0.0183 -0.74034,0.023 -1.02637,0.12419 -0.28616,0.10124 -0.56619,0.1978 -0.83979,0.28973 l 0,0 z m 2.20205,0 c 0.0749,4e-5 0.11228,-0.0644 0.11228,-0.19315 0,-0.12873 -0.0614,-0.20233 -0.1866,-0.22076 0.0495,0.11045 0.0254,0.20239 -0.0749,0.27595 -0.0989,0.0736 -0.0494,0.11961 0.1493,0.13796 l 0,0 z m 11.90593,0.19317 c 0.5723,0.0369 1.1445,0.0553 1.71699,0.0552 0.57231,3e-5 1.0823,-0.046 1.53027,-0.13797 -0.14929,0.0369 -0.37347,0.0414 -0.67186,0.0138 -0.29859,-0.0275 -0.60965,-0.0552 -0.933,-0.0828 -0.32355,-0.0275 -0.63462,-0.0367 -0.93319,-0.0277 -0.29849,0.01 -0.53496,0.0691 -0.70921,0.17936 l 0,0 z m 3.65779,0.0276 0,0.0828 c 0.32345,0.0736 0.65928,0.115 1.00778,0.12417 0.34832,0.009 0.65929,-0.0138 0.9331,-0.069 -0.099,-0.0736 -0.23646,-0.11954 -0.41081,-0.13797 -0.17397,-0.0183 -0.36061,-0.0275 -0.55973,-0.0276 -0.19902,4e-5 -0.38566,0.005 -0.55981,0.0138 -0.17416,0.01 -0.31117,0.0138 -0.41053,0.0138 l 0,0 z m 6.75537,0.66227 c 1.09486,0.0369 2.26424,0.0644 3.5084,0.0828 0,-0.0919 0,-0.16554 0,-0.22076 0,-0.0552 -0.0254,-0.11034 -0.0751,-0.16557 -0.29869,0.0184 -0.62838,0.0138 -0.98918,-0.0138 -0.36069,-0.0275 -0.70287,-0.046 -1.02622,-0.0552 -0.32354,-0.01 -0.61598,0.01 -0.87722,0.0552 -0.26133,0.0461 -0.44163,0.1518 -0.54119,0.31733 l 0,0 z m -19.07195,-0.41392 c -0.5226,-0.0183 -1.05136,-0.0415 -1.58628,-0.069 -0.53491,-0.0275 -1.01395,0.0322 -1.43698,0.17936 0.49761,0.0369 1.02651,0.0736 1.58628,0.11034 0.55977,0.0369 1.11967,0.0552 1.67944,0.0552 0.5599,5e-5 1.09495,-0.0275 1.60499,-0.0828 0.51006,-0.0552 0.9518,-0.15635 1.32499,-0.30355 -0.52249,-0.0736 -1.04509,-0.0827 -1.56758,-0.0276 -0.5226,0.0553 -1.05751,0.10124 -1.60486,0.13798 l 0,0 z m 12.91374,0.24833 c -1.04514,-0.0367 -2.13367,-0.069 -3.26569,-0.0966 -1.13231,-0.0275 -2.39497,-0.0598 -3.78837,-0.0966 0.34831,0.0553 0.67177,0.11501 0.97036,0.17938 0.29861,0.0644 0.54748,0.1426 0.74649,0.23454 0.12432,0.0184 0.23,0.0138 0.31717,-0.0138 0.0868,-0.0275 0.19289,-0.0414 0.31731,-0.0414 0.92072,0.1288 1.92216,0.21159 3.00455,0.24835 1.08239,0.0369 2.08375,0.0736 3.00456,0.11034 0.27352,0.0184 0.54723,0.0139 0.82096,-0.0138 0.27371,-0.0275 0.43548,-0.14255 0.48531,-0.34492 -0.37328,-0.14714 -0.7839,-0.22072 -1.23167,-0.22076 -0.44807,4e-5 -0.90824,0.0184 -1.38098,0.0552 l 0,0 z m -9.14412,-0.13796 c -0.19902,-0.0183 -0.43546,-0.009 -0.70919,0.0277 -0.27375,0.0369 -0.51019,0.10124 -0.70907,0.19316 0.57232,-0.0919 1.18797,-0.11953 1.84732,-0.0828 0.65947,0.0369 1.21309,0.01 1.661,-0.0828 -0.39818,-0.0736 -0.75893,-0.10112 -1.08239,-0.0828 -0.32345,0.0184 -0.65948,0.0276 -1.00767,0.0276 l 0,0 z m -7.68854,-0.0276 0.37319,0 c 0.0989,-0.0919 0.0615,-0.12873 -0.11228,-0.11034 -0.17416,0.0184 -0.26118,0.0552 -0.26118,0.11034 l 0,0 z m 0.78366,-0.0828 -0.0749,0 c -0.0989,4e-5 -0.16174,-0.01 -0.1866,-0.0276 -0.0749,0.092 -0.0374,0.14261 0.11228,0.15176 0.1493,0.01 0.19915,-0.0322 0.1493,-0.12417 l 0,0 z m -3.80691,0.0828 c 0.1243,5e-5 0.27372,0.01 0.44789,0.0276 0.17416,0.0184 0.28616,-0.0459 0.33589,-0.19316 -0.19902,0.0369 -0.37934,0.0507 -0.5412,0.0413 -0.16172,-0.01 -0.24258,0.0322 -0.24258,0.12416 l 0,0 z m 25.34235,0.60707 c 0.24876,0.0736 0.55982,0.12882 0.9331,0.16558 0.37317,0.0369 0.75894,0.0644 1.15708,0.0828 0.39804,0.0184 0.79629,0.023 1.19433,0.0138 0.39795,-0.01 0.74647,-0.023 1.04494,-0.0414 -0.27371,-0.0552 -0.59092,-0.0966 -0.95172,-0.12417 -0.36089,-0.0275 -0.73407,-0.0506 -1.11964,-0.0691 -0.38575,-0.0183 -0.77765,-0.0275 -1.1757,-0.0276 -0.39814,3e-5 -0.75904,3e-5 -1.08239,0 l 0,0 z m -29.03726,-0.13796 c 0.14929,-0.0919 0.31717,-0.18393 0.50377,-0.27595 0.18658,-0.0919 0.34217,-0.21152 0.46661,-0.35872 -0.12432,0.092 -0.31103,0.18399 -0.55977,0.27594 -0.24902,0.092 -0.38575,0.21161 -0.41061,0.35873 l 0,0 z m 2.79925,0 c 0.32332,-0.0183 0.6965,-0.023 1.11967,-0.0138 0.4229,0.01 0.84592,0.0184 1.26897,0.0276 0.4229,0.01 0.82107,3e-5 1.19426,-0.0276 0.3733,-0.0275 0.65934,-0.0874 0.85848,-0.17936 -0.72163,-0.0183 -1.48041,-0.0367 -2.27676,-0.0552 -0.79621,-0.0183 -1.51771,0.0644 -2.16462,0.24835 l 0,0 z m 4.81457,-0.0552 c 0.0749,3e-5 0.22389,0.01 0.44789,0.0277 0.22402,0.0184 0.33589,-0.0183 0.33589,-0.11034 -0.1243,0.0369 -0.26745,0.0369 -0.42917,0 -0.16174,-0.0367 -0.28004,-0.01 -0.35461,0.0828 l 0,0 z m 17.72841,0.4967 c -1.04504,2e-5 -2.0154,-0.0321 -2.91114,-0.0966 -0.89575,-0.0644 -1.87858,-0.0598 -2.94849,0.0138 0.52248,0.25759 1.0822,0.40934 1.67956,0.45531 0.59707,0.0461 1.25654,0.0506 1.97804,0.0138 0.79619,-0.0183 1.55513,-0.0138 2.27682,0.0138 0.72149,0.0277 1.48033,0.005 2.27662,-0.0691 -0.0254,-0.0919 -0.10561,-0.16093 -0.24261,-0.20696 -0.13672,-0.046 -0.2862,-0.0782 -0.44777,-0.0966 -0.16187,-0.0183 -0.33604,-0.0275 -0.52258,-0.0275 -0.18663,2e-5 -0.34217,2e-5 -0.4665,0 -0.12432,0.0369 -0.19297,0.10579 -0.20535,0.20696 -0.0136,0.10123 -0.11761,0.1242 -0.31731,0.069 -0.0751,-0.0367 -0.0868,-0.0919 -0.037,-0.16557 0.0497,-0.0736 0.0136,-0.11034 -0.11223,-0.11034 l 0,0 z m 6.15839,0.24835 c -0.34831,-0.0184 -0.69049,-0.0506 -1.02632,-0.0966 -0.33602,-0.046 -0.6035,0.005 -0.80252,0.15177 0.39804,0.0552 0.88326,0.10124 1.45566,0.13797 0.57211,0.0369 0.99512,-0.0184 1.26903,-0.16557 -0.12433,-0.11033 -0.27391,-0.14253 -0.44807,-0.0966 -0.17416,0.0461 -0.32344,0.0691 -0.44778,0.0691 l 0,0 z m -23.77478,-0.27595 c 0.0494,-0.0367 0.224,-0.0505 0.52247,-0.0414 0.2986,0.01 0.51005,-0.0322 0.63448,-0.12417 -0.27373,0.0553 -0.53491,0.0736 -0.78365,0.0552 -0.24887,-0.0184 -0.3733,0.0184 -0.3733,0.11034 l 0,0 z m -3.13515,0.0276 c 0.19902,-0.0183 0.42304,-0.023 0.67192,-0.0137 0.24873,0.009 0.49134,0.0138 0.72777,0.0137 0.23619,3e-5 0.46635,-0.005 0.69048,-0.0137 0.22389,-0.01 0.39805,-0.0505 0.52249,-0.12417 -0.34845,4e-5 -0.78993,4e-5 -1.32497,0 -0.53504,4e-5 -0.96424,0.0461 -1.28769,0.13797 l 0,0 z m -2.61266,-0.0828 c 0.27375,0.0184 0.51018,0.0277 0.7092,0.0277 0.19903,4e-5 0.39805,4e-5 0.5972,0 -0.1243,-0.0919 -0.36089,-0.13333 -0.70906,-0.12417 -0.34859,0.01 -0.54747,0.0414 -0.59734,0.0966 l 0,0 z m 7.27808,0.85543 c 0.1243,0.0184 0.24246,0.005 0.35446,-0.0414 0.11228,-0.046 0.16801,-0.023 0.16801,0.069 -0.17429,5e-5 -0.36088,0.023 -0.55977,0.069 -0.19915,0.0461 -0.37959,0.11045 -0.54118,0.19316 -0.16174,0.0828 -0.28618,0.184 -0.37332,0.30354 -0.0868,0.1196 -0.0935,0.23459 -0.0186,0.34492 0.0989,-0.0367 0.23631,-0.0966 0.41047,-0.17936 0.17429,-0.0827 0.34832,-0.17473 0.5226,-0.27595 0.17417,-0.10112 0.3359,-0.19772 0.48519,-0.28973 0.14916,-0.0919 0.26118,-0.17473 0.33589,-0.24835 0.2736,-0.0919 0.5349,-0.18392 0.78378,-0.27593 0.24875,-0.0919 0.47263,-0.21153 0.67179,-0.35873 -0.39804,0.092 -0.78993,0.19779 -1.17568,0.31733 -0.38562,0.1196 -0.74022,0.24378 -1.06367,0.37252 l 0,0 z m 22.72973,-0.0277 c -0.47293,-0.0183 -0.88336,-0.0275 -1.23167,-0.0276 -0.34842,3e-5 -0.70921,-0.01 -1.08239,-0.0277 -0.27372,0.0369 -0.58478,0.0322 -0.9331,-0.0138 -0.34831,-0.046 -0.65928,0.005 -0.93309,0.15177 1.04513,0.0369 2.0031,0.092 2.87388,0.16556 0.87079,0.0736 1.82875,0.0736 2.87379,0 -0.0497,-0.12874 -0.14305,-0.21152 -0.27977,-0.24834 -0.13699,-0.0367 -0.28629,-0.0552 -0.44796,-0.0552 -0.16178,3e-5 -0.31731,0.01 -0.46641,0.0277 -0.14939,0.0184 -0.27382,0.0276 -0.37328,0.0276 l 0,0 z m -5.48644,-0.0552 c 0.12424,3e-5 0.29225,0.0276 0.50386,0.0828 0.2113,0.0552 0.34207,0.0369 0.39189,-0.0552 -0.19912,-0.0183 -0.39189,-0.0367 -0.57854,-0.0552 -0.18683,-0.0183 -0.29243,-0.01 -0.31721,0.0276 l 0,0 z m -22.05801,-0.49668 c -0.52261,-0.0183 -1.04509,-0.0507 -1.56756,-0.0966 -0.52262,-0.046 -0.95794,-0.0413 -1.30626,0.0138 -0.19902,0.0369 -0.37331,0.11045 -0.52261,0.22076 -0.1493,0.11045 -0.28604,0.18399 -0.41047,0.22075 -0.12431,3e-5 -0.22388,-0.01 -0.29861,-0.0276 -0.0749,-0.0183 -0.11227,0.0184 -0.11227,0.11034 1.11954,0.092 2.1522,0.10124 3.09771,0.0275 0.94538,-0.0736 1.8786,-0.12874 2.79925,-0.16557 0.1243,0.0184 0.31102,0.0322 0.55989,0.0414 0.24876,0.01 0.42292,-0.0598 0.52249,-0.20695 -0.34845,-0.0367 -0.76521,-0.0644 -1.25026,-0.0828 -0.48532,-0.0184 -0.98922,-0.0367 -1.51171,-0.0552 l 0,0 z m -3.76962,-0.22076 c -0.27373,0.092 -0.53491,0.1886 -0.78379,0.28974 -0.24873,0.10125 -0.43533,0.25297 -0.55989,0.4553 0.12431,-0.0367 0.25502,-0.0598 0.39202,-0.069 0.13673,-0.01 0.30475,-0.0138 0.5039,-0.0138 0,-0.14713 0.0427,-0.27131 0.13099,-0.37252 0.0868,-0.10112 0.19287,-0.19773 0.31731,-0.28974 l 0,0 z m 7.05407,0.30353 c -0.10026,0.0553 -0.16174,0.11961 -0.18674,0.19316 0.12431,4e-5 0.29861,-0.005 0.52261,-0.0138 0.22402,-0.009 0.41062,-0.0597 0.55991,-0.15178 -0.19915,-0.0736 -0.34846,-0.0966 -0.4479,-0.0691 -0.0989,0.0276 -0.24887,0.0414 -0.44788,0.0414 l 0,0 z m -0.2986,0.19316 0,-0.0552 c 0,-0.0183 0,-0.0367 0.0186,-0.0552 0.0134,-0.0183 0.0187,-0.046 0.0187,-0.0828 l -0.14929,-0.0275 c -0.0255,0.18399 0.0134,0.25758 0.11228,0.22074 l 0,0 z m 15.26508,0.68987 c 1.11984,-0.11034 2.28287,-0.12415 3.48968,-0.0414 1.20691,0.0828 2.53172,0.0966 3.975,0.0414 0.12423,0.0736 0.18653,0.0828 0.18653,0.0277 0,-0.0552 -0.0624,-0.0644 -0.18653,-0.0277 -1.31876,-0.0367 -2.62514,-0.10579 -3.91893,-0.20696 -1.29399,-0.10113 -2.68744,-0.17015 -4.18007,-0.20697 0.0497,0.092 0.13672,0.17481 0.26115,0.24834 0.12432,0.0736 0.24875,0.12882 0.37317,0.16559 l 0,0 z m 3.28452,0.19315 c -0.34842,-0.0183 -0.70287,-0.0367 -1.06377,-0.0552 -0.36089,-0.0183 -0.71535,0.0461 -1.06366,0.19316 0,0.14719 0.12433,0.19778 0.37318,0.15176 0.24885,-0.046 0.47274,-0.0873 0.67195,-0.12418 0.39795,0.11046 0.84593,0.16099 1.34353,0.15177 0.4976,-0.009 1.0076,-0.005 1.53026,0.0138 0.92062,-0.0184 1.82875,-0.0138 2.7245,0.0138 0.89566,0.0277 1.64221,-0.0229 2.23947,-0.15178 -1.24416,-0.0919 -2.38877,-0.13793 -3.4338,-0.13796 -1.04495,3e-5 -2.1522,-0.0184 -3.32166,-0.0552 l 0,0 z m -22.91642,-0.0552 c 0.39803,-0.0183 0.75892,-0.023 1.08238,-0.0138 0.32346,0.01 0.64691,0.023 0.97037,0.0414 0.32346,0.0184 0.6532,0.0369 0.98909,0.0552 0.33588,0.0184 0.71535,0.0277 1.13837,0.0277 0,-0.0919 0,-0.15633 0,-0.19315 0,-0.0367 -0.0254,-0.10113 -0.0749,-0.19317 -0.47275,-0.0183 -1.0761,-0.01 -1.81015,0.0276 -0.73407,0.0369 -1.49914,0.11961 -2.29536,0.24836 l 0,0 z m -4.44154,-0.11032 c 0.27375,-0.0552 0.57862,-0.069 0.91465,-0.0414 0.33588,0.0276 0.64063,0.023 0.91436,-0.0138 -0.0495,-0.11034 -0.16172,-0.17471 -0.33589,-0.19316 -0.17428,-0.0183 -0.36089,-0.0183 -0.5599,0 -0.19915,0.0184 -0.38575,0.0506 -0.55977,0.0966 -0.17429,0.0461 -0.29873,0.0966 -0.37345,0.15175 l 0,0 z m 28.96282,1.37973 c 0,0.0184 0.0566,0.0229 0.16791,0.0138 0.11223,-0.009 0.24885,-0.0275 0.41063,-0.0552 0.16157,-0.0275 0.32344,-0.046 0.48512,-0.0552 0.16177,-0.009 0.29234,-0.005 0.3919,0.0138 0.27373,-0.0919 0.59708,-0.12874 0.97044,-0.11034 0.37328,0.0184 0.78371,-0.0183 1.23169,-0.11033 0.0751,0.0552 0.11759,0.11045 0.13095,0.16554 0.0136,0.0553 0.0185,0.10125 0.0185,0.13799 0.39804,3e-5 0.78379,-0.009 1.15707,-0.0277 0.37319,-0.0184 0.7215,-0.0184 1.04485,0 0.0751,-0.0919 0.10025,-0.20692 0.0751,-0.34492 -0.0254,-0.13793 -0.037,-0.25292 -0.037,-0.34494 -1.36868,0.0553 -2.787,0.0783 -4.25496,0.0691 -1.46814,-0.009 -2.83653,0.0139 -4.10546,0.069 0.12422,0.14719 0.29224,0.24837 0.50384,0.30354 0.21141,0.0553 0.4353,0.0783 0.67167,0.069 0.23647,-0.009 0.48532,-0.0414 0.74665,-0.0966 0.26114,-0.0552 0.49127,-0.11955 0.69049,-0.19315 0.12423,0.092 0.13671,0.18399 0.037,0.27592 -0.10024,0.092 -0.2116,0.16561 -0.33593,0.22077 l 0,0 z m -3.35911,-0.6071 c 0.24885,0.2392 0.4976,0.41397 0.74645,0.52431 0,-0.0552 0.0254,-0.0919 0.0751,-0.11034 0.0497,-0.0183 0.0751,-0.046 0.0751,-0.0828 -0.12423,-0.0919 -0.21784,-0.19312 -0.27996,-0.30352 -0.0614,-0.11035 -0.26747,-0.11955 -0.61578,-0.0276 l 0,0 z m -22.05796,-0.49669 c -0.42291,4e-5 -0.87081,-0.0183 -1.34356,-0.0552 -0.47288,-0.0367 -0.91438,-0.0507 -1.32498,-0.0414 -0.41059,0.01 -0.77749,0.0598 -1.10108,0.15178 -0.32333,0.092 -0.55977,0.25757 -0.70907,0.49668 1.49298,0.0369 2.93598,-0.005 4.32952,-0.12415 1.3934,-0.11955 2.87383,-0.18855 4.4414,-0.20696 -0.79621,-0.0736 -1.51156,-0.11954 -2.14619,-0.13797 -0.63434,-0.0183 -1.34983,-0.046 -2.14604,-0.0828 l 0,0 z m 24.89449,1.35213 c -0.0254,0.092 -0.0185,0.15179 0.0185,0.17936 0.0371,0.0276 0.0185,0.0691 -0.0565,0.12418 -0.12433,0.0369 -0.28621,0.0184 -0.48522,-0.0552 -0.19903,-0.0736 -0.29859,-0.0644 -0.29859,0.0276 0.37318,0.092 0.77757,0.138 1.21296,0.13796 0.43549,4e-5 0.8895,-0.0138 1.36244,-0.0414 0.47264,-0.0275 0.95162,-0.0505 1.43684,-0.0689 0.48503,-0.0183 0.93934,-0.009 1.36225,0.0277 0,0.184 -0.1369,0.30358 -0.41043,0.35874 -0.32344,-0.0367 -0.65937,-0.069 -1.00768,-0.0966 -0.34852,-0.0275 -0.62223,0.0322 -0.82126,0.17935 0.64699,0.0184 1.38098,0.0277 2.20213,0.0277 0.82105,2e-5 1.53026,-0.0736 2.12743,-0.22076 -10e-5,-0.0919 -10e-5,-0.17013 0,-0.23455 -10e-5,-0.0644 0.0136,-0.14253 0.0371,-0.23455 -0.5723,-0.0367 -1.15708,-0.0552 -1.75415,-0.0552 -0.59736,4e-5 -1.18195,0.009 -1.75415,0.0276 -0.5723,0.0184 -1.13222,0.0229 -1.67956,0.0138 -0.54734,-0.009 -1.04513,-0.0414 -1.49301,-0.0966 l 0,0 z m 7.68857,3.03537 c -0.0497,0.23918 -0.0751,0.52432 -0.0751,0.85542 0,0.33115 0,0.67609 0,1.03478 0,0.35875 0,0.71747 0.0185,1.07617 0.0136,0.35875 0,0.68528 -0.0185,0.9796 0.0497,0.0552 0.13095,0.092 0.24261,0.11034 0.11223,0.0184 0.20516,0.0552 0.27995,0.11034 -2.9e-4,0.092 -0.0302,0.16099 -0.0936,0.20696 -0.0624,0.046 -0.0312,0.0783 0.0936,0.0966 0.19893,-0.0552 0.29225,-0.16094 0.27977,-0.31733 -0.0136,-0.15635 0,-0.28053 0.0185,-0.37253 0,-0.0919 -0.0254,-0.20694 -0.0751,-0.34493 -0.0497,-0.13794 -0.0624,-0.28051 -0.0371,-0.42771 -0.14939,-0.93818 -0.2863,-1.89937 -0.41063,-2.88361 -0.12423,-0.98415 -0.19912,-1.96375 -0.22398,-2.93877 0.0254,-0.0552 -0.0137,-0.0827 -0.11225,-0.0828 -0.0497,0.58872 -0.0751,1.1084 -0.0751,1.55907 0,0.45073 0.0624,0.89684 0.18655,1.33832 l 0,0 z m -31.05278,-3.47689 c -0.92067,0.0369 -1.81633,0.0322 -2.68725,-0.0138 -0.8708,-0.046 -1.76658,-0.0505 -2.68723,-0.0138 -0.12431,-0.0183 -0.29861,-0.0183 -0.52249,0 -0.22388,0.0184 -0.4106,0.092 -0.5599,0.22076 1.44327,0.0369 2.84897,0.0828 4.21752,0.13797 1.36854,0.0553 2.7121,0.0277 4.03092,-0.0828 0.19889,4e-5 0.39805,-0.005 0.59706,-0.0138 0.19915,-0.009 0.31103,-0.0873 0.3359,-0.23455 -0.44777,-0.11033 -0.88323,-0.14713 -1.30627,-0.11033 -0.42303,0.0369 -0.89565,0.0736 -1.41826,0.11033 l 0,0 z m 22.28193,0.91061 c -10e-5,-0.0552 -0.0185,-0.0966 -0.0566,-0.12418 -0.0371,-0.0275 -0.0566,-0.0873 -0.0566,-0.17936 l -0.41053,0 c 0,0.092 0.0751,0.1518 0.22389,0.17936 0.1493,0.0277 0.24885,0.0691 0.29869,0.12418 l 0,0 z m -19.85587,-0.46911 c -0.52248,0.0369 -1.11982,0.0736 -1.79145,0.11033 -0.6719,0.0369 -1.3314,0.0736 -1.97831,0.11034 -0.72149,-0.0367 -1.45555,-0.0782 -2.20192,-0.12418 -0.74649,-0.0459 -1.40583,-0.0873 -1.97816,-0.12417 -0.19903,2e-5 -0.41677,0.009 -0.65321,0.0275 -0.23631,0.0184 -0.41675,0.10124 -0.54118,0.24835 1.26897,-0.0183 2.53179,0.0139 3.78847,0.0966 1.25641,0.0828 2.51922,0.12421 3.78819,0.12417 0.34832,-0.0552 0.69048,-0.0782 1.02625,-0.069 0.33588,0.009 0.56604,-0.0782 0.69048,-0.26214 0,-0.0736 -0.0494,-0.11954 -0.14916,-0.13798 l 0,0 z m 0.82108,2.26272 c 0,0.0184 0.0134,0.0184 0.0374,0 0.0494,4e-5 0.0749,-0.0367 0.0749,-0.11033 0.0989,-0.31271 0.14301,-0.63004 0.13098,-0.952 -0.0134,-0.32191 0.0307,-0.57486 0.13098,-0.75885 -0.0749,-0.0183 -0.0989,-0.0552 -0.0749,-0.11034 0.0254,-0.0552 0,-0.0919 -0.0749,-0.11033 -0.0749,0.29436 -0.12431,0.62089 -0.14917,0.97958 -0.0254,0.35877 -0.0494,0.71289 -0.0749,1.06238 l 0,0 z m 26.05149,-1.13135 c -0.12433,-0.0919 -0.24895,-0.12874 -0.37318,-0.11034 -0.12433,0.0184 -0.21161,0.0276 -0.26124,0.0276 -0.87098,0.0184 -1.75424,0.0184 -2.65009,0 -0.89566,-0.0183 -1.80398,-0.046 -2.7246,-0.0828 0.0497,0.22079 0.17426,0.38637 0.37347,0.4967 0.19884,0.11045 0.44145,0.1886 0.72774,0.23456 0.28601,0.0461 0.60331,0.069 0.95162,0.0689 0.34831,2e-5 0.69683,-0.009 1.04514,-0.0277 0.6469,0.0369 1.30609,0.0229 1.97804,-0.0413 0.67186,-0.0644 1.24407,-0.115 1.717,-0.15176 0.0751,-0.0919 0.0936,-0.17474 0.0565,-0.24836 -0.037,-0.0736 -0.0565,-0.18392 -0.0565,-0.33114 -0.27391,5e-5 -0.45431,0.0184 -0.54119,0.0552 -0.0868,0.0369 -0.16801,0.0736 -0.24271,0.11034 l 0,0 z m -30.94079,-0.46911 c -0.79622,-0.0183 -1.54898,-0.0506 -2.25805,-0.0966 -0.7092,-0.046 -1.34984,-0.0505 -1.92217,-0.0138 -0.27375,2e-5 -0.52863,0.009 -0.76508,0.0275 -0.23644,0.0184 -0.41674,0.10124 -0.54119,0.24835 1.24399,0.0369 2.57523,0.0828 3.99351,0.13797 1.41826,0.0553 2.78682,0.0828 4.1055,0.0828 0.19917,-0.0552 0.43561,-0.0919 0.7092,-0.11034 0.2736,-0.0183 0.47275,-0.0736 0.5972,-0.16558 -0.52247,-0.11033 -1.12595,-0.14713 -1.81016,-0.11033 -0.68434,0.0369 -1.38727,0.0369 -2.10876,0 l 0,0 z m 24.37186,1.18655 c 0.0254,-0.0552 0.0254,-0.11488 0,-0.17935 -0.0254,-0.0644 -0.0624,-0.12414 -0.11223,-0.17937 -0.0497,-0.0552 -0.10024,-0.0919 -0.1493,-0.11034 -0.0497,-0.0184 -0.0751,3e-5 -0.0751,0.0552 0.12433,0.0184 0.1803,0.0736 0.16772,0.16556 -0.0136,0.092 0.0439,0.1748 0.16801,0.24836 l 0,0 z m 0.11234,0.46911 c -0.0497,-0.0919 -0.0565,-0.14253 -0.0185,-0.15177 0.0371,-0.009 0.0566,-0.0873 0.0566,-0.23454 -0.19901,3e-5 -0.37318,-0.0736 -0.52246,-0.22076 0.19902,0.47833 0.44787,0.92903 0.74635,1.35211 0.29859,0.42315 0.60332,0.84625 0.91447,1.26935 0.31107,0.42312 0.59717,0.85084 0.85841,1.28313 0.26124,0.43232 0.46659,0.87843 0.61589,1.33831 0.0254,-0.44147 -0.0312,-0.82779 -0.16802,-1.15896 -0.13691,-0.3311 -0.3919,-0.59784 -0.76508,-0.80022 0.0497,-0.0552 0.0868,-0.10111 0.11224,-0.13797 0.0254,-0.0367 0.0751,-0.0552 0.14949,-0.0552 0.0497,1e-5 0.0868,0.0322 0.11223,0.0966 0.0254,0.0644 0.0751,0.0966 0.14929,0.0966 -0.19912,-0.47828 -0.39814,-0.96579 -0.59726,-1.46251 -0.19902,-0.49666 -0.53495,-0.90139 -1.00759,-1.21415 0.0253,-0.14715 -0.0371,-0.27591 -0.18684,-0.38631 -0.1492,-0.11034 -0.286,-0.13794 -0.41043,-0.0828 0.0497,2e-5 0.0751,0.069 0.0751,0.20696 0,0.138 -0.0371,0.22539 -0.11233,0.26214 l 0,0 z m 1.97814,-0.33113 c -0.0989,0.0184 -0.14315,0.0369 -0.13096,0.0552 0.0137,0.0184 0.0439,0.0322 0.0936,0.0414 0.0497,0.009 0.0989,0.0139 0.14929,0.0138 0.0497,3e-5 0.0614,3e-5 0.037,0 0.32325,0.0369 0.72765,0.0691 1.21296,0.0966 0.48503,0.0276 0.97649,0.0461 1.47429,0.0552 0.4976,0.009 0.96401,3e-5 1.3995,-0.0275 0.43549,-0.0275 0.76508,-0.0873 0.98907,-0.17938 -0.44787,-0.0552 -0.90813,-0.0827 -1.38078,-0.0828 -0.47293,2e-5 -0.93329,0.005 -1.38117,0.0138 -0.44787,0.009 -0.87703,0.0229 -1.28755,0.0414 -0.41072,0.0184 -0.80243,0.009 -1.1756,-0.0277 l 0,0 z m -24.14802,-0.74504 c -1.19438,0.0553 -2.42606,0.0277 -3.69503,-0.0828 -1.26898,-0.11035 -2.46336,-0.15634 -3.58302,-0.13799 -0.12432,0.0369 -0.27375,0.0553 -0.44791,0.0552 -0.17416,3e-5 -0.29846,0.0459 -0.37316,0.13797 0.67176,-0.0367 1.36225,-0.0412 2.07145,-0.0138 0.70907,0.0276 1.43057,0.0644 2.16463,0.11033 0.73405,0.0461 1.46812,0.0873 2.20206,0.12417 0.73406,0.0369 1.46183,0.0369 2.18346,0 0.0495,4e-5 0.17416,0.009 0.37332,0.0276 0.19889,0.0184 0.33589,-0.046 0.41047,-0.19316 -0.0495,-0.0184 -0.14301,-0.0322 -0.28002,-0.0414 -0.13673,-0.009 -0.2736,-0.0138 -0.41047,-0.0138 -0.13687,3e-5 -0.26745,0.005 -0.39189,0.0138 -0.1243,0.009 -0.19902,0.0139 -0.22389,0.0138 l 0,0 z m 1.41828,0.11034 c 0.1243,0.0552 0.19902,0.0644 0.22388,0.0276 0.0254,-0.0367 0.0374,-0.0736 0.0374,-0.11034 l 0,-0.0277 -0.0374,0 c -0.0254,4e-5 -0.0494,0.009 -0.0749,0.0277 l -0.0749,0 c -0.0494,3e-5 -0.0749,0.0276 -0.0749,0.0828 l 0,0 z m -8.88293,0.13796 c -0.19915,3e-5 -0.41676,0.009 -0.65319,0.0276 -0.23632,0.0184 -0.32961,0.1288 -0.2799,0.33113 1.31871,0.092 2.53795,0.138 3.65763,0.13797 1.11966,3e-5 2.20218,0.0184 3.24713,0.0552 0.39805,0.0184 0.82736,0.0184 1.28769,0 0.46019,-0.0184 0.82735,-0.11953 1.10109,-0.30353 -1.24425,-0.0367 -2.61894,-0.0873 -4.12422,-0.15177 -1.50543,-0.0644 -2.91741,-0.0966 -4.23623,-0.0966 l 0,0 z m 8.77092,0.24835 c -0.0749,0.092 -0.0749,0.138 0,0.13796 0.0749,4e-5 0.11227,0.0184 0.11227,0.0552 0.0495,-0.0736 0.0495,-0.12874 0,-0.16556 -0.0254,-0.0184 -0.0615,-0.0275 -0.11227,-0.0277 l 0,0 z m 23.21492,1.13136 c 0.34832,-0.0183 0.71535,-0.0183 1.10102,0 0.38566,0.0184 0.76518,0.0322 1.13845,0.0414 0.37318,0.009 0.73379,0.0138 1.0823,0.0138 0.34831,2e-5 0.67185,-0.0183 0.97034,-0.0552 0.12433,0.0184 0.26747,0.0322 0.42934,0.0414 0.16159,0.009 0.24243,-0.0598 0.24253,-0.20695 -0.0751,-0.0919 -0.21785,-0.15175 -0.42916,-0.17937 -0.21161,-0.0275 -0.37962,-0.0415 -0.50384,-0.0415 -0.647,-0.0552 -1.38732,-0.069 -2.22085,-0.0414 -0.83364,0.0277 -1.6111,0.005 -2.33269,-0.0691 0.0497,0.092 0.11759,0.18399 0.20526,0.27595 0.0868,0.092 0.19288,0.16559 0.3173,0.22075 l 0,0 z m -23.66268,-0.35872 c 0.1243,-0.0367 0.20517,-0.0322 0.24246,0.0138 0.0374,0.046 0.0935,0.0414 0.16801,-0.0138 0,-0.0367 0.0134,-0.0827 0.0374,-0.13798 0.0254,-0.0552 0.0134,-0.10112 -0.0374,-0.13797 -0.0749,3e-5 -0.16174,0.009 -0.2613,0.0277 -0.10024,0.0184 -0.14944,0.10124 -0.14917,0.24835 l 0,0 z m -9.51755,-0.27595 c 0,0.092 -0.0254,0.15641 -0.0749,0.19317 -0.0494,0.0369 -0.0868,0.10123 -0.11227,0.19316 1.26897,-0.0736 2.65623,-0.11035 4.16151,-0.11035 1.50541,3e-5 2.91754,-0.0184 4.23624,-0.0552 0.0749,4e-5 0.16158,0.009 0.2613,0.0277 0.0989,0.0184 0.20517,0.0276 0.3173,0.0276 0.11227,4e-5 0.21133,-0.0138 0.29847,-0.0413 0.0869,-0.0275 0.14302,-0.0873 0.16788,-0.17935 l -0.0749,0 c -0.0254,2e-5 -0.0374,-0.0275 -0.0374,-0.0828 -0.69663,0.0736 -1.42441,0.11045 -2.18333,0.11034 -0.75879,3e-5 -1.53015,-0.0138 -2.31407,-0.0414 -0.78365,-0.0275 -1.56757,-0.0552 -2.35135,-0.0828 -0.78364,-0.0275 -1.54885,-0.0138 -2.29535,0.0414 l 0,0 z m 11.57017,0.63467 c 0.0254,2e-5 0.0442,-0.0275 0.0561,-0.0828 0.0134,-0.0552 0.0187,-0.11955 0.0187,-0.19316 0,-0.0736 0,-0.13335 -0.0187,-0.17936 -0.0134,-0.046 -0.0187,-0.0597 -0.0187,-0.0414 0,0.092 -0.0186,0.17939 -0.0561,0.26215 -0.0374,0.0828 -0.0307,0.161 0.0187,0.23455 l 0,0 z m -1.04509,0.44151 c -0.0495,-0.14714 -0.10559,-0.3219 -0.16787,-0.52429 -0.0628,-0.20232 -0.11763,-0.3219 -0.16801,-0.35872 0.0254,0.0552 0.0186,0.1288 -0.0187,0.22074 -0.0374,0.092 -0.0628,0.1886 -0.0749,0.28975 -0.0134,0.10124 0,0.1886 0.0561,0.26214 0.0495,0.0736 0.17416,0.11045 0.37319,0.11033 l 0,0 z m 25.23056,-0.0828 c -0.34852,-0.0184 -0.67196,-0.0505 -0.97055,-0.0966 -0.29848,-0.046 -0.58478,0.005 -0.85849,0.15177 0.39814,0.0184 0.79005,0.046 1.1758,0.0828 0.38566,0.0369 0.77746,0.0552 1.17571,0.0552 0.39804,0.0184 0.77132,0.0369 1.11963,0.0552 0.34832,0.0184 0.58479,-0.046 0.70921,-0.19315 -0.37328,-0.11035 -0.74645,-0.14255 -1.11964,-0.0966 -0.37347,0.046 -0.784,0.0598 -1.23167,0.0413 l 0,0 z m -30.82892,-0.4691 c -0.64693,0.0369 -1.28768,0.0507 -1.92217,0.0413 -0.63462,-0.009 -1.21297,0.005 -1.73557,0.0414 -0.17404,4e-5 -0.36062,-0.005 -0.55977,-0.0138 -0.19903,-0.009 -0.38561,4e-5 -0.55991,0.0276 -0.17416,0.0277 -0.31718,0.0736 -0.42919,0.13798 -0.11226,0.0644 -0.16787,0.17019 -0.16787,0.31732 0.87079,0.0184 1.67944,0.0322 2.42594,0.0414 0.74635,0.009 1.48042,0.0139 2.20205,0.0138 0.72163,3e-5 1.48056,0.009 2.27664,0.0275 0.79621,0.0184 1.67957,0.0369 2.64995,0.0552 -0.0749,-0.0919 -0.0935,-0.18852 -0.0561,-0.28974 0.0374,-0.10112 0.0561,-0.19772 0.0561,-0.28973 -0.32333,-0.0183 -0.69051,-0.0367 -1.10098,-0.0552 -0.4106,-0.0183 -0.80864,-0.0275 -1.19439,-0.0276 -0.3856,3e-5 -0.74647,-0.005 -1.08237,-0.0138 -0.33589,-0.009 -0.60334,-0.0138 -0.80236,-0.0138 l 0,0 z m 4.4414,0.11034 c -0.0749,0.092 -0.11762,0.1748 -0.13098,0.24835 -0.0134,0.0736 -0.0186,0.15639 -0.0186,0.24836 0.1743,10e-6 0.31101,0.009 0.41061,0.0275 -0.0749,-0.0919 -0.0561,-0.17475 0.0561,-0.24836 0.11228,-0.0736 0.13099,-0.15632 0.0561,-0.24834 -0.1743,4e-5 -0.29874,-0.009 -0.37332,-0.0276 l 0,0 z m 24.55848,0.80023 c 0.27371,0.0736 0.59735,0.13341 0.97054,0.17936 0.37317,0.0459 0.75259,0.0736 1.13836,0.0828 0.38556,0.009 0.77122,4e-5 1.15699,-0.0276 0.38555,-0.0275 0.72773,-0.0689 1.0263,-0.12418 -0.72159,0.0369 -1.4184,0.009 -2.08998,-0.0828 -0.67195,-0.0919 -1.40602,-0.10112 -2.20221,-0.0276 l 0,0 z m 0.7092,1.07617 c 0.57231,0.0184 1.15708,0.0277 1.75416,0.0277 0.59706,4e-5 1.18184,-0.046 1.75425,-0.13797 0.099,-0.0367 0.11769,-0.0873 0.0566,-0.15176 -0.0614,-0.0644 -0.0682,-0.14254 -0.0185,-0.23455 -0.84602,0.0369 -1.56761,0.0229 -2.16467,-0.0414 -0.59727,-0.0644 -1.2193,-0.0873 -1.86611,-0.0689 0.12434,0.092 0.2238,0.19317 0.29849,0.30352 0.0751,0.11046 0.13691,0.21159 0.18665,0.30354 l 0,0 z m -25.45428,-0.99338 c 0.0749,0.0369 0.16802,0.0552 0.27988,0.0552 0.11229,4e-5 0.19288,-0.046 0.24274,-0.13797 -0.0494,-0.0367 -0.14943,-0.0459 -0.29872,-0.0276 -0.14931,0.0184 -0.2239,0.0553 -0.2239,0.11034 l 0,0 z m 1.56758,-0.0552 c -0.12431,-0.0367 -0.25503,-0.0506 -0.39189,-0.0414 -0.13688,0.009 -0.26746,0.0139 -0.3919,0.0138 0,0.092 0.0989,0.1196 0.2986,0.0828 0.19902,-0.0367 0.36075,-0.0552 0.48519,-0.0552 l 0,0 z m -7.94985,-0.11033 c -0.39804,-0.0183 -0.79621,-0.0322 -1.19439,-0.0413 -0.39804,-0.009 -0.8335,0.005 -1.30628,0.0413 -0.12429,4e-5 -0.29229,-0.009 -0.50375,-0.0275 -0.21159,-0.0184 -0.34231,0.0184 -0.39189,0.11033 0.97024,0.0736 2.07133,0.11501 3.30302,0.12417 1.23168,0.009 2.48193,0.005 3.75091,-0.0138 0.44788,3e-5 0.90821,0.023 1.38097,0.069 0.47275,0.046 0.88336,-0.0229 1.23168,-0.20695 -0.92065,0.0736 -1.93461,0.0736 -3.04183,0 -1.10725,-0.0736 -2.18335,-0.0919 -3.22844,-0.0552 l 0,0 z m 6.75559,0.85542 c -1.3e-4,-0.12874 0.0134,-0.22072 0.0374,-0.27594 -0.0749,-0.0183 -0.13687,-0.0322 -0.18672,-0.0413 -0.0495,-0.009 -0.0749,-0.0414 -0.0749,-0.0966 -0.0254,0.092 -0.0254,0.19318 0,0.30353 0.0254,0.11047 0.10024,0.1472 0.22416,0.11034 l 0,0 z m -1.26896,-0.33113 c -0.99551,-0.0367 -2.02803,-0.0505 -3.09799,-0.0414 -1.06982,0.009 -2.27677,0.0322 -3.62033,0.0691 -0.0494,-0.0552 -0.0935,-0.0736 -0.13098,-0.0552 -0.0374,0.0184 0,0.0369 0.13098,0.0552 0.69678,0.0184 1.35613,0.046 1.97818,0.0828 0.62206,0.0369 1.24412,0.0736 1.86604,0.11034 0.62217,0.0369 1.23796,0.0598 1.84758,0.0689 0.60962,0.009 1.23783,-0.0138 1.88474,-0.0689 -0.0495,-0.20234 -0.15544,-0.28512 -0.31704,-0.24836 -0.16187,0.0369 -0.3423,0.0461 -0.54118,0.0275 l 0,0 z m 1.64214,0.33113 c 0.0749,4e-5 0.23644,4e-5 0.48519,0 0.24887,4e-5 0.43547,-0.0184 0.5599,-0.0552 0,-0.0552 -0.0187,-0.0919 -0.0561,-0.11033 -0.0374,-0.0184 -0.0441,-0.046 -0.0187,-0.0828 -0.19902,3e-5 -0.35461,-0.0184 -0.46647,-0.0552 -0.11228,-0.0367 -0.26746,-0.0275 -0.46661,0.0275 -0.0254,0.0369 -0.0374,0.0736 -0.0374,0.11033 l 0,0.16556 z m 24.81983,0.60708 c 0.22389,0.0369 0.4976,0.069 0.82114,0.0966 0.32335,0.0276 0.6469,0.0461 0.97025,0.0552 0.32345,0.009 0.62204,0.0139 0.89576,0.0138 0.27381,4e-5 0.47284,-0.0275 0.59726,-0.0828 -0.47274,-0.0183 -0.98907,-0.046 -1.54889,-0.0828 -0.55991,-0.0367 -1.13856,-0.0367 -1.73552,0 l 0,0 z m -26.91001,-0.35873 c -0.67178,-0.0183 -1.40571,-0.0505 -2.20192,-0.0966 -0.79636,-0.0459 -1.57398,-0.0873 -2.33278,-0.12418 -0.75891,-0.0367 -1.48669,-0.069 -2.18346,-0.0966 -0.69665,-0.0275 -1.2814,-0.0414 -1.75403,-0.0414 0,0.0552 -0.0254,0.10579 -0.0749,0.15178 -0.0494,0.0461 -0.0749,0.0966 -0.0749,0.15176 1.84117,4e-5 3.59532,0.046 5.26246,0.13796 1.66702,0.092 3.27188,0.13801 4.81458,0.13798 -0.0495,-0.0919 -0.12429,-0.15635 -0.22388,-0.19315 -0.0989,-0.0367 -0.21773,-0.0552 -0.3546,-0.0552 -0.13674,3e-5 -0.28603,0.005 -0.44776,0.0138 -0.16186,0.009 -0.30488,0.0138 -0.42932,0.0138 l 0,0 z m 27.1339,0.74505 c 0,0.092 0.0254,0.1702 0.0751,0.23456 0.0497,0.0644 0.0751,0.1426 0.0751,0.23454 0.44767,0.0184 0.92685,0.0276 1.43694,0.0275 0.50998,3e-5 1.02632,-0.0459 1.54898,-0.13797 l 0,-0.38632 c -0.52266,0.0369 -1.04514,0.0552 -1.56771,0.0552 -0.52247,2e-5 -1.04504,-0.009 -1.5676,-0.0277 l 0,0 z m -24.93184,-0.41392 c 0.19914,0.0184 0.4293,0.0369 0.69048,0.0552 0.26131,0.0184 0.41677,-0.0183 0.46661,-0.11033 -0.0495,-0.14714 -0.2053,-0.21612 -0.46661,-0.20695 -0.26118,0.009 -0.52863,0.005 -0.80236,-0.0138 0,0.092 0.0254,0.15181 0.0749,0.17938 0.0494,0.0276 0.0615,0.0598 0.0374,0.0966 l 0,0 z m -3.28443,0.11035 c -1.19439,-0.0367 -2.36378,-0.0919 -3.50832,-0.16558 -1.14468,-0.0736 -2.27664,-0.046 -3.39644,0.0828 1.36854,0.092 2.69352,0.17478 3.97505,0.24835 1.28127,0.0736 2.51922,0.15638 3.71349,0.24834 0.39817,3e-5 0.79006,0.005 1.17568,0.0138 0.38574,0.009 0.77763,0.0229 1.1758,0.0413 -0.39817,-0.25752 -0.87107,-0.38169 -1.41827,-0.37252 -0.54747,0.009 -1.11981,-0.0229 -1.71699,-0.0966 l 0,0 z m 3.50844,0.57947 c 0.27374,-0.0367 0.54734,-0.0322 0.82108,0.0138 0.27373,0.0461 0.48518,0.023 0.63447,-0.0689 -0.1243,-0.14715 -0.36689,-0.23452 -0.72777,-0.26216 -0.36089,-0.0275 -0.64063,-0.0229 -0.83978,0.0138 0.1243,4e-5 0.16172,0.10125 0.11227,0.30355 l 0,0 z m 23.77482,0.74504 c -9e-5,-0.0552 0.037,-0.0828 0.11224,-0.0828 -0.0497,-0.0552 -0.0868,-0.12415 -0.11224,-0.20695 -0.0254,-0.0828 -0.0624,-0.14255 -0.11223,-0.17937 -0.0497,0.23917 -0.0136,0.39555 0.11223,0.46911 l 0,0 z m -21.94595,-0.68984 c 0.0254,-0.0919 -0.0134,-0.17476 -0.11227,-0.24835 -0.0989,-0.0736 -0.1866,-0.0919 -0.26117,-0.0552 0.0749,0.0552 0.10559,0.1288 0.0935,0.22075 -0.0134,0.092 0.0815,0.1196 0.28003,0.0828 l 0,0 z m 23.25223,0.52428 c 0.12433,0.11046 0.255,0.16099 0.3917,0.15176 0.13691,-0.009 0.30493,-0.0138 0.50396,-0.0138 0.17415,0.0369 0.36088,0.069 0.55991,0.0966 0.19902,0.0276 0.38557,0.0459 0.55992,0.0552 0.17396,0.009 0.32959,-0.009 0.4664,-0.0552 0.1369,-0.046 0.21774,-0.12415 0.24281,-0.23457 -0.57251,-0.0183 -1.08873,-0.0459 -1.54899,-0.0828 -0.46036,-0.0367 -0.85227,-0.009 -1.17571,0.0828 l 0,0 z m -36.01678,-0.99348 c -0.0254,0.14719 -0.0495,0.28517 -0.0749,0.41392 -0.0254,0.12879 0.0254,0.22078 0.1493,0.27594 0.77136,-0.0552 1.6173,-0.0736 2.53794,-0.0552 0.92066,0.0184 1.85989,0.0461 2.81782,0.0828 0.95795,0.0369 1.91589,0.0691 2.87398,0.0966 0.95794,0.0276 1.87231,0.023 2.7431,-0.0138 0.19915,-0.0367 0.40446,-0.0506 0.61592,-0.0414 0.21157,0.009 0.3173,-0.0322 0.3173,-0.12419 -2.11504,-0.11034 -4.16779,-0.21612 -6.1584,-0.31733 -1.99047,-0.10113 -3.93135,-0.20692 -5.82237,-0.31732 l 0,0 z m -0.44789,0.77264 c 0,-0.20233 0.0187,-0.3449 0.0561,-0.42771 0.0374,-0.0827 0.0307,-0.19774 -0.0187,-0.34493 -0.0495,0.092 -0.0815,0.22079 -0.0935,0.38633 -0.0134,0.16558 0,0.29437 0.0561,0.38631 l 0,0 z m 35.38229,1.15896 c -0.0751,3e-5 -0.13691,-0.009 -0.18664,-0.0276 -0.0497,-0.0184 -0.0751,-0.009 -0.0751,0.0276 0.0497,0.0552 0.14305,0.069 0.27996,0.0414 0.13681,-0.0275 0.30482,-0.0322 0.50384,-0.0138 0,-0.14714 -0.0439,-0.24373 -0.13095,-0.28975 -0.0868,-0.046 -0.11761,-0.14253 -0.0936,-0.28973 -0.1493,0.0369 -0.24262,0.0322 -0.28006,-0.0138 -0.0371,-0.0459 -0.1176,-0.0507 -0.24242,-0.0138 0.0497,0.092 0.0989,0.17479 0.14929,0.24835 0.0497,0.0736 0.0751,0.18399 0.0751,0.33113 l 0,0 z m 1.30637,-0.22075 c 0.1492,-0.0552 0.34209,-0.0782 0.57854,-0.0691 0.23618,0.009 0.46631,0.0139 0.69049,0.0138 0.22389,3e-5 0.4353,-0.009 0.63432,-0.0275 0.19913,-0.0184 0.3607,-0.0736 0.48532,-0.16559 -0.4232,0.0369 -0.82125,0.0369 -1.19443,0 -0.37327,-0.0367 -0.75893,-0.0552 -1.15688,-0.0552 -0.10025,0.0553 -0.13106,0.0966 -0.0936,0.1242 0.037,0.0277 0.0565,0.0873 0.0565,0.17935 l 0,0 z m -23.77493,-0.46911 c 0.0494,0.0369 0.168,0.0552 0.35459,0.0552 0.1866,3e-5 0.29232,-0.046 0.31731,-0.13796 -0.0749,0.092 0,0.13338 0.20531,0.12417 0.21144,-0.009 0.35446,-0.0138 0.42918,-0.0138 -0.1243,3e-5 -0.19915,-0.0322 -0.22402,-0.0966 -0.0241,-0.0644 -0.0749,-0.0966 -0.14916,-0.0966 -0.12431,0.0369 -0.29231,0.0276 -0.5039,-0.0277 -0.21145,-0.0552 -0.3546,0.009 -0.42931,0.19315 l 0,0 z m -4.96402,-0.13796 c 0.0254,-0.0919 0,-0.14715 -0.0561,-0.16557 -0.0628,-0.0184 -0.11763,-0.0275 -0.16802,-0.0276 0,0.1288 0.0749,0.1932 0.22388,0.19316 l 0,0 z m 2.12747,-0.0552 -0.41046,0 c -0.14931,0.0184 -0.19288,0.0322 -0.13099,0.0414 0.0614,0.009 0.15558,0.0139 0.28001,0.0138 0.1243,2e-5 0.24874,0.005 0.37319,0.0138 0.1243,0.009 0.19901,0.0229 0.22386,0.0413 0.12432,0.0184 0.28631,0.0139 0.48533,-0.0138 0.19889,-0.0275 0.38575,-0.0138 0.55976,0.0414 0.19917,0.0184 0.43548,0.0506 0.70921,0.0966 0.27374,0.046 0.48518,-0.005 0.63449,-0.15176 -0.44789,-0.0552 -0.91436,-0.0919 -1.39956,-0.11034 -0.48531,-0.0184 -0.92692,-0.009 -1.32511,0.0276 l 0,0 z m -6.94191,-0.0828 c 0.39791,0.0184 0.75879,0.0229 1.08238,0.0138 0.32333,-0.009 0.74636,-0.0322 1.26897,-0.0691 -0.39816,-0.0367 -0.82121,-0.046 -1.26897,-0.0277 -0.44803,0.0184 -0.80879,0.046 -1.08238,0.0828 l 0,0 z m 3.135,0.0828 c 0.1243,-0.0367 0.19915,-0.046 0.22387,-0.0277 0.0254,0.0184 0.0869,3e-5 0.18673,-0.0552 -1.2e-4,-0.0367 -0.0682,-0.0552 -0.20529,-0.0552 -0.13687,3e-5 -0.20531,0.0461 -0.20531,0.13797 l 0,0 z m 30.53025,1.04856 c 0.12432,-0.0184 0.26133,-0.0275 0.41052,-0.0277 0.1493,4e-5 0.29234,4e-5 0.42935,0 0.13671,4e-5 0.24865,-0.005 0.33583,-0.0138 0.0868,-0.009 0.13096,-0.0506 0.13096,-0.12417 -0.12424,0.0369 -0.34227,0.0369 -0.65314,0 -0.31106,-0.0367 -0.52891,0.0184 -0.65323,0.16557 l 0,0 z m -25.45424,-0.71745 c -1.91602,-0.0367 -3.7509,-0.0782 -5.50519,-0.12417 -1.75416,-0.046 -3.57689,-0.0782 -5.46778,-0.0966 0.0494,0.14719 0.0802,0.28975 0.0935,0.4277 0.0134,0.138 0.0562,0.26218 0.13098,0.37253 1.86618,-0.14715 3.69505,-0.21613 5.48649,-0.20697 1.79145,0.009 3.54575,0.0138 5.26261,0.0138 0.2736,0.0184 0.52863,0.0229 0.76506,0.0138 0.23632,-0.009 0.45404,-0.0597 0.65307,-0.15175 -0.12431,-0.14715 -0.32333,-0.22074 -0.59706,-0.22077 -0.27373,3e-5 -0.54747,-0.009 -0.82107,-0.0275 l 0,0 z m 2.35136,0.27595 c 0.1243,2e-5 0.32333,0.0139 0.59706,0.0414 0.27374,0.0276 0.51018,0.0229 0.70921,-0.0138 -0.12432,-0.0367 -0.28618,-0.0736 -0.48519,-0.11034 -0.19903,-0.0367 -0.40432,-0.0597 -0.61579,-0.0691 -0.21156,-0.009 -0.40444,3e-5 -0.57847,0.0276 -0.17429,0.0277 -0.31103,0.0873 -0.41073,0.17936 0.12429,0.0552 0.26744,0.0598 0.42931,0.0138 0.16173,-0.046 0.27988,-0.0689 0.3546,-0.0691 l 0,0 z m -13.62306,0.19315 c 0.0495,-0.31269 0.0134,-0.54265 -0.11227,-0.68984 0,0.092 0,0.20699 0.0187,0.34492 0.0134,0.13799 0.0441,0.25297 0.0935,0.34492 l 0,0 z m 40.08495,0.60708 c 0.12432,3e-5 0.25509,-0.009 0.3919,-0.0276 0.1369,-0.0184 0.26747,-0.0275 0.3919,-0.0277 -0.12423,3e-5 -0.2861,-0.0138 -0.48502,-0.0414 -0.19932,-0.0275 -0.29878,0.005 -0.29878,0.0966 l 0,0 z m -26.76048,-0.55189 c 0,0.092 -0.0749,0.1334 -0.22389,0.12417 -0.14943,-0.009 -0.24888,-0.0138 -0.29872,-0.0138 -0.0749,0.092 -0.0935,0.15638 -0.0561,0.19315 0.0374,0.0369 0.0561,0.10125 0.0561,0.19317 0.1243,0.0369 0.26745,0.0552 0.42918,0.0552 0.16186,3e-5 0.28001,0.0184 0.35458,0.0552 l 0,-0.19315 c 0.39805,0.092 0.90195,0.138 1.51171,0.13796 0.60963,4e-5 1.15069,-0.046 1.62343,-0.13796 -0.34831,-0.11034 -0.62204,-0.17934 -0.82107,-0.20697 -0.19902,-0.0275 -0.49775,-0.0782 -0.89578,-0.15176 0.0749,3e-5 0.19286,0.0184 0.3546,0.0552 0.16172,0.0369 0.18044,0.0276 0.0561,-0.0277 -0.27373,-0.0184 -0.52876,-0.0275 -0.76522,-0.0276 -0.23629,3e-5 -0.41673,0.0276 -0.54117,0.0828 l 0,-0.11033 c -0.0749,0.092 -0.22388,0.1334 -0.44777,0.12417 -0.22387,-0.009 -0.33588,-0.0597 -0.33588,-0.15177 l 0,0 z m -9.03223,0.24835 c 0.77134,0.0369 1.50527,0.0782 2.20205,0.12418 0.69664,0.046 1.37482,0.0828 2.03404,0.11034 0.65935,0.0276 1.32511,0.0369 1.99689,0.0275 0.67178,-0.009 1.38084,-0.0506 2.12732,-0.12417 l 0,-0.19315 c -1.49284,-0.0367 -2.92982,-0.0644 -4.3108,-0.0828 -1.38097,-0.0184 -2.73081,0.0276 -4.0495,0.13796 l 0,0 z m 9.36811,0.55189 c -0.0495,-0.0367 -0.17429,-0.0552 -0.37318,-0.0552 -0.19916,4e-5 -0.37331,0.0461 -0.52262,0.13798 0.39819,2e-5 0.82107,0.009 1.26898,0.0275 0.44776,0.0184 0.90809,0.0276 1.38097,0.0276 0.47276,3e-5 0.92681,-0.009 1.36227,-0.0276 0.43534,-0.0183 0.8398,-0.046 1.21296,-0.0828 -0.29858,-0.0367 -0.63435,-0.0552 -1.00752,-0.0552 -0.37345,2e-5 -0.75277,2e-5 -1.13852,0 -0.38561,2e-5 -0.77135,0.005 -1.15696,0.0138 -0.38575,0.009 -0.72779,0.0138 -1.02638,0.0138 l 0,0 z m 0.1493,0.57947 c -0.0255,0.0552 -0.0562,0.10124 -0.0935,0.13799 -0.0374,0.0369 -0.0187,0.0552 0.0561,0.0552 0.62205,2e-5 1.20054,0.005 1.73545,0.0138 0.53504,0.009 1.06366,0.0138 1.58629,0.0138 0.52246,1e-5 1.04494,1e-5 1.56755,0 0.52248,1e-5 1.08225,-0.0184 1.67945,-0.0552 -0.34831,-0.0919 -0.68421,-0.18394 -1.00767,-0.27594 -0.32346,-0.0919 -0.6842,-0.14715 -1.08225,-0.16558 -0.92077,-0.0184 -1.83514,-0.005 -2.74337,0.0413 -0.90822,0.046 -1.82259,0.0874 -2.74324,0.12417 0.1243,0.0369 0.13687,0.0507 0.0374,0.0414 -0.0989,-0.009 -0.11228,0.005 -0.0374,0.0414 0,0.0736 0.0441,0.1242 0.13098,0.15177 0.0869,0.0277 0.19275,0.0414 0.31718,0.0414 0.1243,3e-5 0.24259,-0.0138 0.35446,-0.0414 0.11227,-0.0275 0.19288,-0.0689 0.24274,-0.12417 l 0,0 z m -11.42087,0.0828 c 0.79608,-0.0184 1.64216,-0.0229 2.53793,-0.0138 0.89581,0.009 1.79775,0.0229 2.70596,0.0413 0.90823,0.0184 1.79774,0.0322 2.66853,0.0414 0.87094,0.009 1.69201,-0.0138 2.46335,-0.0689 -0.0749,-0.0552 -0.11761,-0.0919 -0.13099,-0.11034 -0.0134,-0.0183 -0.0186,-0.046 -0.0186,-0.0828 -1.49286,-0.0367 -3.11642,-0.0966 -4.87058,-0.17937 -1.7543,-0.0828 -3.47731,-0.0506 -5.16931,0.0966 -0.0989,2e-5 -0.20517,0.009 -0.31717,0.0277 -0.11228,0.0184 -0.22403,0.0322 -0.33603,0.0415 -0.11228,0.009 -0.2176,2e-5 -0.31718,-0.0276 -0.10025,-0.0275 -0.17415,-0.0966 -0.22401,-0.20696 0.0254,-0.0919 0.10559,-0.15634 0.2426,-0.19315 0.137,-0.0367 0.29859,-0.0552 0.48532,-0.0552 0.18658,2e-5 0.37946,0.005 0.57834,0.0138 0.19916,0.009 0.37345,0.0138 0.52261,0.0138 1.31882,0.0369 2.68724,0.0322 4.10551,-0.0138 1.41827,-0.046 2.71209,-0.005 3.88163,0.12416 0.0749,-0.0367 0.1803,-0.0505 0.3173,-0.0414 0.13675,0.009 0.28605,0.0184 0.44777,0.0276 0.16186,0.009 0.30488,0.009 0.42932,0 0.12431,-0.009 0.19902,-0.0506 0.22388,-0.12419 -0.64692,0.0369 -1.33113,0.0413 -2.05263,0.0138 -0.72176,-0.0275 -1.43711,-0.0598 -2.14631,-0.0966 -0.70893,-0.0367 -1.39942,-0.0782 -2.07134,-0.12417 -0.67177,-0.046 -1.30625,-0.0782 -1.90345,-0.0966 -0.59719,-0.0367 -1.25667,-0.0322 -1.97817,0.0138 -0.7215,0.046 -1.36842,0.0322 -1.94075,-0.0414 -0.0254,0.20238 -0.0187,0.37716 0.0187,0.52429 0.0374,0.1472 0.0441,0.29437 0.0187,0.44151 0.27373,3e-5 0.56605,0.005 0.87709,0.0138 0.31102,0.009 0.62833,0.0229 0.95179,0.0414 l 0,0 z m 24.81974,0.85541 c -0.32345,-0.14713 -0.68414,-0.2851 -1.08219,-0.4139 -0.39814,-0.12875 -0.72179,-0.29432 -0.97054,-0.4967 -0.19902,0.0369 -0.36704,0.0276 -0.50375,-0.0277 -0.13701,-0.0552 -0.26757,-0.0919 -0.392,-0.11033 0.72159,0.5887 1.70452,0.93823 2.94848,1.04858 l 0,0 z m -9.14407,-0.4415 c -0.72163,-0.0184 -1.43684,-0.0367 -2.14605,-0.0552 -0.70905,-0.0184 -1.38725,-0.0367 -2.03416,-0.0552 -0.19903,1e-5 -0.39189,-0.009 -0.57849,-0.0277 -0.1866,-0.0183 -0.37946,0.0461 -0.57849,0.19316 0,0.092 0.0374,0.15179 0.11229,0.17937 0.0749,0.0276 0.17428,0.0369 0.29872,0.0275 0.12431,-0.009 0.24247,-0.0229 0.35448,-0.0414 0.11226,-0.0184 0.20529,-0.0275 0.28001,-0.0276 0.59706,0.0184 1.24411,0.0369 1.94074,0.0552 0.69665,0.0184 1.40585,0.0277 2.12735,0.0277 0.72163,2e-5 1.43698,-0.0138 2.14603,-0.0414 0.70921,-0.0275 1.37471,-0.069 1.9969,-0.12419 -0.64692,-0.11034 -1.28141,-0.16094 -1.90346,-0.15176 -0.62205,0.009 -1.29397,0.0229 -2.01546,0.0414 l 0,0 z m -6.38228,-0.0552 c -1.8413,-0.0552 -3.62646,-0.0828 -5.35576,-0.0828 -1.7293,2e-5 -3.60174,0.0184 -5.61721,0.0552 0,0.092 0.0374,0.17019 0.11227,0.23455 0.0749,0.0644 0.11228,0.115 0.11228,0.15176 1.79145,-0.0367 3.49588,-0.0736 5.11317,-0.11033 1.61743,-0.0367 3.32187,-0.0367 5.11332,0 0.27373,0.0184 0.54748,0.046 0.8212,0.0828 0.27347,0.0369 0.52235,-0.0367 0.74636,-0.22076 -0.1243,-0.14714 -0.29859,-0.20233 -0.52247,-0.16557 -0.22389,0.0369 -0.39817,0.0552 -0.52262,0.0552 l 0,0 z m 13.66026,0.57947 c 0.19912,0.0369 0.41667,0.0873 0.65314,0.15177 0.23647,0.0644 0.45412,0.15179 0.65323,0.26214 -0.0254,-0.0736 -0.0936,-0.14255 -0.20526,-0.20695 -0.11234,-0.0644 -0.23646,-0.11489 -0.37338,-0.15179 -0.13681,-0.0367 -0.27362,-0.0597 -0.41042,-0.0689 -0.13691,-0.009 -0.24261,-0.005 -0.31731,0.0138 l 0,0 z m -3.47106,-0.11033 c -1.19439,0.0184 -2.40735,0.0369 -3.6389,0.0552 -1.23169,0.0184 -2.46965,0.0644 -3.71362,0.13797 -0.1243,-0.0736 -0.20531,-0.0966 -0.24272,-0.069 -0.0374,0.0277 0.0441,0.0506 0.24272,0.069 1.69173,-0.0184 3.25944,2e-5 4.70258,0.0552 1.44325,0.0552 2.92368,0.0552 4.44153,0 -0.24887,-0.11034 -0.52891,-0.17473 -0.8398,-0.19317 -0.31116,-0.0184 -0.62833,-0.0367 -0.95179,-0.0552 l 0,0 z m 5.56124,0.55186 c 0.12423,0.0369 0.26728,0.10125 0.42905,0.19317 0.16187,0.092 0.27996,0.092 0.35456,0 -0.12433,3e-5 -0.26748,-0.046 -0.42916,-0.13798 -0.16177,-0.0919 -0.28005,-0.11033 -0.35445,-0.0552 l 0,0 z m -5.74783,-0.0828 c -0.79621,-0.0367 -1.54271,-0.0507 -2.23948,-0.0414 -0.69664,0.009 -1.3747,0.0184 -2.03405,0.0277 -0.65934,0.009 -1.28754,0.0184 -1.88487,0.0276 -0.59705,0.009 -1.19425,-0.005 -1.79144,-0.0413 -0.12431,3e-5 -0.27989,-0.0229 -0.46648,-0.069 -0.18659,-0.046 -0.34217,0.005 -0.4666,0.15177 0.29859,0.0736 0.64062,0.1196 1.02649,0.13799 0.38548,0.0184 0.78994,0.0276 1.21298,0.0275 0.42291,2e-5 0.83351,2e-5 1.23168,0 0.3979,2e-5 0.75879,0.0184 1.08237,0.0552 0.0495,0.0552 0.0495,0.0966 0,0.12418 -0.0494,0.0276 -0.0134,0.0506 0.11229,0.0689 1.39327,-0.0736 2.75567,-0.0873 4.08691,-0.0414 1.33114,0.046 2.63125,0.0414 3.90018,-0.0138 -0.19902,-0.11034 -0.45402,-0.18854 -0.76498,-0.23455 -0.31106,-0.046 -0.647,-0.0828 -1.00785,-0.11033 -0.36088,-0.0275 -0.7215,-0.046 -1.08238,-0.0552 -0.36075,-0.009 -0.66549,-0.0138 -0.91437,-0.0138 l 0,0 z m -20.22895,-0.0552 c 0.77109,0.11045 1.62958,0.15179 2.57523,0.12418 0.94551,-0.0275 1.91589,-0.0598 2.91113,-0.0966 0.79621,-0.0184 1.57384,-0.0184 2.33263,0 0.75893,0.0184 1.46185,0.0644 2.10876,0.13798 0.19916,2e-5 0.41048,0.0138 0.63462,0.0414 0.22388,0.0276 0.44776,-0.005 0.67165,-0.0966 -1.91589,-0.11034 -3.85678,-0.17015 -5.82224,-0.17936 -1.96575,-0.009 -3.76964,0.0138 -5.41178,0.069 l 0,0 z m 27.65633,0.63468 c 0.19893,0.0552 0.40419,0.12878 0.61579,0.22074 0.21141,0.092 0.42906,0.17939 0.65314,0.26216 0.22389,0.0828 0.44778,0.15639 0.67166,0.22074 0.22399,0.0644 0.4355,0.0873 0.63461,0.069 -0.47274,-0.0736 -0.92061,-0.21612 -1.34362,-0.42772 -0.42291,-0.21153 -0.83373,-0.32651 -1.23158,-0.34491 l 0,0 z m -16.60891,-0.0552 c -0.0494,-0.14714 -0.18031,-0.22073 -0.39189,-0.22075 -0.21145,2e-5 -0.37945,2e-5 -0.5039,0 -0.89565,-0.0552 -1.72929,-0.0828 -2.50065,-0.0828 -0.77135,2e-5 -1.5427,0.009 -2.31393,0.0276 -0.77135,0.0184 -1.56756,0.0369 -2.38863,0.0552 -0.82121,0.0184 -1.72931,0.0276 -2.72454,0.0275 0.0495,0.1472 0.13674,0.28518 0.26118,0.41392 0.1243,0.1288 0.28603,0.22078 0.48519,0.27595 0.1243,2e-5 0.21157,-0.0322 0.26115,-0.0966 0.0495,-0.0644 0.13701,-0.0966 0.26146,-0.0966 1.79143,-0.0367 3.61403,-0.0689 5.46762,-0.0966 1.85388,-0.0275 3.70134,-0.11488 5.54263,-0.26215 -0.19915,4e-5 -0.4416,-0.0275 -0.7279,-0.0828 -0.28617,-0.0552 -0.52863,-0.009 -0.72779,0.13795 l 0,0 z m 11.64485,0.0276 c -0.52258,0.0369 -1.10092,0.069 -1.73554,0.0966 -0.63448,0.0277 -1.27526,0.0322 -1.92217,0.0138 -1.04509,0.0184 -2.08389,0.0459 -3.11642,0.0828 -1.03266,0.0369 -2.04661,0.0369 -3.04184,0 -0.32346,0.0552 -0.64078,0.0783 -0.95179,0.0691 -0.31103,-0.009 -0.56606,0.0598 -0.76508,0.20696 0.19902,0.14718 0.41676,0.20238 0.6532,0.16556 0.23631,-0.0367 0.45405,-0.0552 0.65306,-0.0552 0.27374,0.0184 0.51019,0.0276 0.7092,0.0276 0.19903,10e-6 0.43534,0.009 0.70907,0.0276 2.11504,0.0552 4.20522,0.0598 6.27028,0.0138 2.06518,-0.046 4.24254,-0.0689 6.53155,-0.0689 -0.5722,-0.25752 -1.18185,-0.40929 -1.82875,-0.4553 -0.64699,-0.046 -1.36868,-0.0873 -2.16477,-0.12419 l 0,0 z m -8.50971,-0.0276 c 0.0749,2e-5 0.18659,-0.005 0.33603,-0.0138 0.14929,-0.009 0.26115,-0.0414 0.33588,-0.0966 -0.0749,2e-5 -0.2053,0.005 -0.3919,0.0138 -0.18658,0.009 -0.28001,0.0414 -0.28001,0.0966 l 0,0 z m -1.67945,-0.0552 c 0.12431,4e-5 0.25489,0.005 0.3919,0.0138 0.13673,0.009 0.26745,0.0138 0.39189,0.0138 0,-0.0552 -0.11762,-0.0966 -0.3546,-0.12419 -0.23645,-0.0275 -0.37946,0.005 -0.42919,0.0966 l 0,0 z m -2.35148,0.41393 c -0.62206,0.0369 -1.31254,0.0691 -2.07133,0.0966 -0.75892,0.0276 -1.30011,0.0598 -1.62344,0.0966 0.44777,-0.0367 1.01381,-0.0322 1.69801,0.0138 0.68422,0.0459 1.28768,0.0782 1.81017,0.0966 0.19915,2e-5 0.4106,0.009 0.63462,0.0276 0.22389,0.0184 0.36074,-0.046 0.41047,-0.19315 -0.1243,-0.16554 -0.24887,-0.22993 -0.37319,-0.19316 -0.12429,0.0369 -0.28616,0.0552 -0.48531,0.0552 l 0,0 z m 17.20612,0.46911 c -0.12433,0.0369 -0.31107,0.0644 -0.55992,0.0828 -0.24885,0.0184 -0.52247,0.0322 -0.82105,0.0414 -0.29878,0.009 -0.60351,0.009 -0.91458,0 -0.31095,-0.009 -0.59082,-0.0138 -0.83977,-0.0138 -1.31876,-0.0367 -2.53164,-0.0367 -3.63888,0 -1.10725,0.0369 -2.29548,0.0736 -3.56432,0.11034 -0.79634,-0.0367 -1.57398,-0.0597 -2.33277,-0.0689 -0.75892,-0.009 -1.46184,-0.005 -2.10876,0.0138 -0.0989,-0.0183 -0.23644,-0.0367 -0.41047,-0.0552 -0.1743,-0.0184 -0.33589,-0.0229 -0.48519,-0.0138 -0.14943,0.009 -0.27373,0.0369 -0.37332,0.0828 -0.0989,0.046 -0.1243,0.13339 -0.0749,0.26214 0.39818,0.0552 0.80878,0.0736 1.23167,0.0552 0.42304,-0.0184 0.85222,-0.046 1.28783,-0.0828 0.43532,-0.0367 0.87708,-0.0736 1.32483,-0.11035 0.44777,-0.0367 0.88337,-0.046 1.30627,-0.0276 1.96573,0.0552 3.96877,0.0828 6.00906,0.0828 2.04035,3e-5 3.95628,-0.046 5.74767,-0.13795 -0.0751,-0.0919 -0.17396,-0.137951 -0.29849,-0.137971 -0.12422,2e-5 -0.28629,-0.0275 -0.48512,-0.0828 l 0,0 z m -26.01419,-0.138 c 0.0495,0.20237 0.19274,0.427737 0.42904,0.676057 0.23645,0.24837 0.50389,0.41855 0.80263,0.5105 0.12431,-0.0367 0.13099,-0.0873 0.0187,-0.15177 -0.11227,-0.0644 -0.10558,-0.14255 0.0186,-0.23455 1.31871,2e-5 2.71839,-0.009 4.19882,-0.0276 1.48055,-0.0184 2.9174,-0.0552 4.31079,-0.11034 0,-0.0919 0,-0.15635 0,-0.19317 0,-0.0367 0.0134,-0.10111 0.0374,-0.19315 -1.64215,-0.0919 -3.29686,-0.137957 -4.96401,-0.137967 -1.66701,1e-5 -3.2843,-0.046 -4.85187,-0.13799 l 0,0 z m 27.54435,0.965797 c -1.24416,-0.12874 -2.48822,-0.15174 -3.73238,-0.069 -1.24407,0.0828 -2.48804,0.13339 -3.73219,0.15177 0,-0.0552 0.0561,-0.0966 0.16801,-0.12418 0.11226,-0.0275 0.10559,-0.0505 -0.0186,-0.0689 -0.19903,-0.0552 -0.39817,-0.0597 -0.59708,-0.0138 -0.199,0.046 -0.39816,0.0691 -0.59718,0.0691 -0.27374,10e-6 -0.53505,-0.005 -0.78378,-0.0138 -0.24888,-0.009 -0.51005,-0.0229 -0.78379,-0.0413 -0.64692,0.0369 -1.22539,0.0966 -1.73558,0.17936 -0.51005,0.0828 -0.92679,0.0966 -1.25025,0.0414 -0.0989,0.092 -0.19902,0.11959 -0.29847,0.0828 -0.10024,-0.0367 -0.1743,-0.0367 -0.22414,0 -0.12431,-0.0184 -0.31731,-0.0138 -0.57849,0.0138 -0.26117,0.0277 -0.53491,0.0552 -0.82108,0.0828 -0.28616,0.0277 -0.55362,0.0415 -0.80236,0.0415 -0.24887,2e-5 -0.43547,-0.0367 -0.5599,-0.11035 0.39817,-0.0367 0.75264,-0.0597 1.0638,-0.069 0.3109,-0.009 0.70278,-0.0322 1.17555,-0.069 0.19915,-0.0367 0.42303,-0.0689 0.67177,-0.0966 0.24887,-0.0275 0.37332,-0.0873 0.37332,-0.17935 -0.72164,-0.0184 -1.49914,0.0138 -2.33278,0.0966 -0.83351,0.0828 -1.53642,0.115 -2.10875,0.0966 -0.0749,0.092 -0.0989,0.15638 -0.0749,0.19316 0.0254,0.0369 -0.0134,0.10123 -0.11228,0.19316 1.71686,0.0369 3.39644,0.0873 5.0386,0.15176 1.64227,0.0644 3.32171,0.069 5.03871,0.0138 1.31853,2e-5 2.71209,-0.0552 4.18013,-0.16556 1.46806,-0.11034 2.96098,-0.19313 4.47876,-0.24834 -0.12424,-0.20234 -0.29859,-0.29893 -0.52258,-0.28974 -0.22389,0.009 -0.39814,0.0599 -0.52247,0.15175 l 0,0 z m -7.20341,-0.0277 c 0.27376,-0.0367 0.51018,-0.046 0.70918,-0.0275 0.19892,0.0184 0.39805,-0.0184 0.59707,-0.11033 -0.32326,-0.0184 -0.59092,-0.0229 -0.80234,-0.0138 -0.21158,0.009 -0.37947,0.0598 -0.50391,0.15178 l 0,0 z m 8.88297,0.44151 c -0.12433,2e-5 -0.23023,0.0229 -0.3173,0.069 -0.0868,0.046 -0.16793,0.0873 -0.24252,0.12419 -0.12423,-0.0183 -0.24886,-0.0598 -0.37328,-0.12419 -0.12433,-0.0644 -0.24875,-0.0966 -0.37328,-0.0966 -0.5722,-0.0552 -1.18185,-0.0506 -1.82875,0.0138 -0.64709,0.0644 -1.26902,0.0873 -1.86619,0.069 -0.44787,0.0369 -0.87078,0.0873 -1.26902,0.15177 -0.39815,0.0644 -0.79619,0.0599 -1.19434,-0.0138 1.19434,0.18398 2.46951,0.27136 3.82561,0.26214 1.35601,-0.009 2.69349,-0.0229 4.01225,-0.0413 -0.12433,-0.0552 -0.23647,-0.10579 -0.33593,-0.15178 -0.0989,-0.046 -0.21161,-0.0689 -0.33583,-0.0689 0.19901,-0.0367 0.41666,-0.0183 0.65313,0.0552 0.23637,0.0736 0.41677,0.0644 0.5412,-0.0276 -0.19913,1e-5 -0.34832,-0.0322 -0.44798,-0.0966 -0.099,-0.0644 -0.24875,-0.10579 -0.44777,-0.12417 l 0,0 z m -27.46975,-0.16559 c 0.87078,-0.0184 1.94074,3e-5 3.20971,0.0552 1.26896,0.0552 2.46335,0.10125 3.58303,0.13799 0.19902,3e-5 0.43547,0.0138 0.7092,0.0414 0.2736,0.0276 0.47262,-0.005 0.59705,-0.0966 0.0254,-0.14715 0,-0.21154 -0.0935,-0.19316 -0.0868,0.0184 -0.0815,-0.0184 0.0187,-0.11033 -1.1944,0.0184 -2.51321,0.0229 -3.95621,0.0138 -1.44313,-0.009 -2.79924,0.0413 -4.06822,0.15177 l 0,0 z m 13.47349,0.55188 c 0.1243,0.11047 0.23016,0.16101 0.3173,0.15177 0.0869,-0.009 0.19287,-0.0138 0.31732,-0.0138 -0.0495,-0.0552 -0.0187,-0.0782 0.0935,-0.069 0.11227,0.009 0.16801,-0.0322 0.16801,-0.12416 -0.19901,2e-5 -0.36703,0.0139 -0.50375,0.0414 -0.13688,0.0276 -0.2676,0.0322 -0.39204,0.0138 l 0,0 z m -13.7348,-0.24834 c 0.32346,0.20238 0.6532,0.42315 0.98908,0.66226 0.33589,0.23917 0.72778,0.38634 1.17555,0.44152 -0.0494,-0.0367 -0.0749,-0.0966 -0.0749,-0.17936 0,-0.0828 0.0374,-0.15176 0.11227,-0.20695 1.76659,1e-5 3.52088,-0.0138 5.26246,-0.0414 1.74188,-0.0276 3.43373,-0.11501 5.07603,-0.26215 0.19902,3e-5 0.42289,-0.0138 0.67177,-0.0413 0.24874,-0.0275 0.37332,-0.0689 0.37332,-0.12418 -0.79622,-0.0183 -1.62985,-0.0183 -2.50065,0 -0.87093,0.0184 -1.72944,0.009 -2.57537,-0.0277 -0.0749,0.0369 -0.13097,0.092 -0.16788,0.16557 -0.0374,0.0736 -0.0815,0.11045 -0.13097,0.11034 0,-0.0367 0.0186,-0.0919 0.0561,-0.16556 0.0374,-0.0736 0.0307,-0.11035 -0.0187,-0.11035 -0.59719,3e-5 -1.24424,-0.0184 -1.94075,-0.0552 -0.69677,-0.0367 -1.40596,-0.0736 -2.12747,-0.11033 -0.72163,-0.0367 -1.44326,-0.0644 -2.16475,-0.0828 -0.72164,-0.0184 -1.39342,-0.009 -2.01547,0.0276 l 0,0 z m 19.4453,0.91062 c 0.34834,1e-5 0.72777,0.005 1.13839,0.0138 0.41043,0.009 0.82105,0.0184 1.23167,0.0275 0.41043,0.009 0.80234,0.0138 1.17552,0.0138 0.37338,3e-5 0.70921,-0.009 1.00779,-0.0275 -0.84602,-0.12875 -1.60485,-0.18395 -2.27662,-0.16557 -0.67186,0.0184 -1.43071,0.0644 -2.27675,0.13797 l 0,0 z m -5.63579,-0.16556 c 0.64691,0.0369 1.34984,0.0644 2.10888,0.0828 0.7588,0.0184 1.36214,-0.0367 1.81004,-0.16558 -0.52249,-0.0184 -1.1571,-0.0275 -1.90346,-0.0276 -0.74649,2e-5 -1.41827,0.0369 -2.01546,0.11034 l 0,0 z m 14.63075,0.60707 c -0.52266,0.0369 -1.11973,0.0369 -1.79159,0 -0.67176,-0.0367 -1.33115,-0.0736 -1.97804,-0.11035 -0.79639,0.0369 -1.56771,0.0369 -2.31407,0 -0.74665,-0.0367 -1.47438,-0.0689 -2.18349,-0.0966 -0.70919,-0.0275 -1.41813,-0.046 -2.12734,-0.0552 -0.7092,-0.009 -1.42455,0.0229 -2.14604,0.0966 -1.24426,-0.22072 -2.50693,-0.27592 -3.78833,-0.16555 -1.28141,0.11045 -2.59395,0.22998 -3.93764,0.35871 -0.47275,0.0369 -0.91436,0.0506 -1.32485,0.0414 -0.41073,-0.009 -0.83991,-0.0229 -1.28767,-0.0414 -0.39818,0.0369 -0.78393,0.0828 -1.1571,0.13799 -0.37318,0.0552 -0.73406,0.0277 -1.08238,-0.0828 0,-0.14715 0.12432,-0.21155 0.37332,-0.19316 0.24874,0.0184 0.47262,0.0277 0.67177,0.0277 0.59706,-0.0367 1.25655,-0.0828 1.97817,-0.13798 0.7215,-0.0552 1.34369,-0.10112 1.86603,-0.13798 -0.39817,-0.0183 -0.84593,-0.0229 -1.34355,-0.0138 -0.49763,0.009 -1.01394,0.0276 -1.549,0.0552 -0.53489,0.0277 -1.06365,0.0552 -1.58613,0.0828 -0.52261,0.0277 -1.00767,0.0598 -1.4557,0.0966 0.19916,0.0919 0.39817,0.19319 0.59733,0.30355 0.19902,0.11044 0.4229,0.21156 0.67164,0.30352 0.19915,0.0552 0.42304,0.14261 0.67191,0.26215 0.24875,0.1196 0.51018,0.20699 0.78378,0.26216 0.57233,0.0736 1.13839,0.0598 1.69816,-0.0413 0.55991,-0.10112 1.16324,-0.12416 1.81017,-0.069 -0.19902,-0.0367 -0.50391,-0.0782 -0.91437,-0.12417 -0.41048,-0.0459 -0.75265,-0.0506 -1.02639,-0.0138 -0.19903,2e-5 -0.41675,0.0138 -0.65306,0.0414 -0.23645,0.0276 -0.41675,-0.0597 -0.54119,-0.26215 0.17402,-0.092 0.38561,-0.13796 0.63435,-0.13798 0.24887,2e-5 0.5039,0.009 0.76507,0.0276 0.26145,0.0184 0.51647,0.0277 0.76534,0.0275 0.24874,2e-5 0.46019,-0.0459 0.63435,-0.13796 -0.0749,0.0919 -0.0682,0.13338 0.0187,0.12417 0.0869,-0.009 0.16787,-0.0138 0.24259,-0.0138 1.71675,-0.0919 3.53318,-0.15174 5.44908,-0.17935 1.91588,-0.0275 3.84433,-0.046 5.7852,-0.0552 1.9406,-0.009 3.85048,-0.0229 5.72905,-0.0414 1.87868,-0.0184 3.63897,-0.0828 5.28109,-0.19316 -0.19903,-0.11033 -0.3919,-0.17013 -0.57845,-0.17936 -0.18664,-0.009 -0.36694,3e-5 -0.54109,0.0276 -0.17426,0.0276 -0.35456,0.0644 -0.5412,0.11034 -0.18674,0.046 -0.37962,0.0782 -0.57845,0.0966 l 0,0 z m -20.11724,-0.35873 c 0.27373,2e-5 0.61578,-0.0138 1.02638,-0.0413 0.4106,-0.0275 0.81492,-0.0598 1.2131,-0.0966 -0.39818,-0.0184 -0.8025,-0.0229 -1.2131,-0.0138 -0.4106,0.009 -0.75265,0.0599 -1.02638,0.15177 l 0,0 z m 23.10308,0.71745 c -0.12434,-0.0367 -0.32365,-0.0414 -0.59727,-0.0138 -0.27381,0.0276 -0.47273,-0.005 -0.59716,-0.0966 -0.72159,0.11045 -1.48668,0.15639 -2.29535,0.13796 -0.80867,-0.0184 -1.61129,-0.0184 -2.40748,0 -0.92052,0.0736 -1.81013,0.1472 -2.66844,0.22077 -0.85849,0.0736 -1.72313,0.14717 -2.59402,0.22075 -0.0497,2e-5 -0.13671,-0.009 -0.26113,-0.0275 -0.12433,-0.0184 -0.24906,0.0184 -0.37338,0.11033 1.7169,2e-5 3.58924,-0.0275 5.6172,-0.0828 2.02787,-0.0552 3.99968,-0.0828 5.9157,-0.0828 0,-0.12875 -0.0624,-0.17475 -0.18665,-0.13797 -0.12422,0.0369 -0.14939,0.009 -0.0751,-0.0828 0.0497,-0.0367 0.14909,-0.0507 0.29848,-0.0413 0.1493,0.009 0.22409,-0.0322 0.22409,-0.12417 l 0,0 z m -22.39387,0.4691 c 0.84592,0.0184 1.74159,0.0229 2.68724,0.0138 0.9455,-0.009 1.87858,-0.0229 2.79924,-0.0413 0.92065,-0.0184 1.79772,-0.0229 2.6311,-0.0138 0.83377,0.009 1.57386,0.0506 2.22091,0.12417 0.0494,-0.0919 0.0561,-0.16554 0.0186,-0.22075 -0.0374,-0.0552 0,-0.0828 0.13098,-0.0828 0.27362,-0.0367 0.59706,-0.0597 0.97034,-0.069 0.37318,-0.009 0.65938,-0.0598 0.8584,-0.15177 l -0.11223,0 c -0.97045,0.0369 -1.99678,0.0644 -3.07917,0.0828 -1.08237,0.0184 -2.16476,0.0369 -3.247,0.0552 -1.08238,0.0184 -2.12747,0.046 -3.13527,0.0828 -1.00766,0.0369 -1.92204,0.11033 -2.74311,0.22073 l 0,0 z m 19.48263,0.22075 c 0.0497,3e-5 0.0751,-0.0138 0.0751,-0.0414 0,-0.0275 -0.0254,-0.0414 -0.0751,-0.0414 -0.0751,0.092 -0.28619,0.1334 -0.63451,0.12418 -0.34851,-0.009 -0.62222,0.0322 -0.82106,0.12418 -0.0497,-0.0367 -0.0751,-0.0919 -0.0751,-0.16556 -2e-4,-0.0736 -0.0624,-0.0919 -0.18673,-0.0552 0,0.092 -0.0497,0.13339 -0.1493,0.12416 -0.099,-0.009 -0.21151,-0.0275 -0.33593,-0.0552 -0.12433,-0.0275 -0.23013,-0.0367 -0.3173,-0.0276 -0.0868,0.009 -0.11761,0.0873 -0.0936,0.23456 1.31856,-0.0184 2.63108,-0.005 3.93745,0.0414 1.30627,0.046 2.51924,0.005 3.63907,-0.12418 -0.44788,-0.0736 -0.88346,-0.11499 -1.30628,-0.12417 -0.42311,-0.009 -0.83363,-0.009 -1.23168,0 -0.39814,0.009 -0.79629,0.0184 -1.19433,0.0276 -0.39824,0.009 -0.80877,-0.005 -1.23169,-0.0413 l 0,0 z m -8.88299,0.13799 c -0.5226,-0.0184 -1.04494,-0.046 -1.56742,-0.0828 -0.52261,-0.0367 -1.04509,-0.0644 -1.5677,-0.0828 -0.52247,-0.0184 -1.05124,2e-5 -1.58615,0.0552 -0.53504,0.0552 -1.10109,0.0736 -1.69829,0.0552 -1.31868,0.0552 -2.56895,0.069 -3.7509,0.0413 -1.18197,-0.0275 -2.33278,0.0229 -3.45245,0.15178 0.27374,0.092 0.57848,0.16098 0.9145,0.20696 0.3359,0.046 0.64064,0.11499 0.91438,0.20695 0.1243,-0.0919 0.27373,-0.14716 0.44789,-0.16556 0.17403,-0.0184 0.32346,-0.0552 0.44776,-0.11034 2.83668,-0.0552 5.52391,-0.0966 8.06198,-0.12418 2.53781,-0.0275 5.17533,-0.0597 7.91241,-0.0966 0.0751,-0.0184 0.16158,-0.0229 0.26124,-0.0138 0.0989,0.009 0.20516,0.0139 0.3173,0.0138 0.11223,2e-5 0.21141,-0.009 0.29859,-0.0276 0.0868,-0.0184 0.14294,-0.0644 0.16801,-0.13796 -0.0751,1e-5 -0.11234,-0.0184 -0.11234,-0.0552 l 0,-0.0552 c -1.04523,0.0369 -2.06531,0.092 -3.06052,0.16558 -0.99522,0.0736 -1.97814,0.092 -2.94858,0.0552 l 0,0 z m 14.48148,0.4139 c -1.49302,-0.0919 -2.8616,-0.12416 -4.10557,-0.0966 -1.24426,0.0277 -2.5753,0.0229 -3.99362,-0.0138 -0.12434,-0.0184 -0.18674,0.009 -0.18654,0.0828 -2e-4,0.0736 -0.0371,0.12878 -0.11234,0.16554 -2.9e-4,-0.0919 0,-0.16093 -0.0185,-0.20694 -0.0136,-0.046 -0.0819,-0.0689 -0.20526,-0.069 -1.39345,0.0552 -2.79296,0.092 -4.19869,0.11034 -1.40594,0.0184 -2.79311,0.0322 -4.16165,0.0413 -1.36856,0.009 -2.70595,0.0415 -4.01222,0.0966 -1.30625,0.0552 -2.54421,0.14718 -3.71361,0.27593 1.04509,0.092 2.10876,0.13798 3.19115,0.13796 1.08237,2e-5 2.1709,-0.0184 3.26571,-0.0552 1.09481,-0.0367 2.18347,-0.0828 3.26586,-0.13798 1.08237,-0.0552 2.14604,-0.0827 3.19098,-0.0828 0.59726,0.0184 1.16322,0.0322 1.69828,0.0414 0.53495,0.009 1.06366,0.0229 1.58633,0.0413 0.12432,0.0552 0.16782,0.0369 0.13096,-0.0552 -0.037,-0.0919 0,-0.13796 0.13096,-0.13798 -10e-5,0.0552 -0.0137,0.10124 -0.0371,0.13798 -0.0254,0.0369 0.0254,0.0644 0.14939,0.0828 1.51768,2e-5 3.02932,0.0229 4.53461,0.0689 1.5053,0.046 2.91738,0.0322 4.23624,-0.0413 -0.0751,-0.0919 -0.16801,-0.15634 -0.27987,-0.19317 -0.11223,-0.0367 -0.23013,-0.10111 -0.35464,-0.19315 l 0,0 z m -5.26265,0.60707 c -0.44788,3e-5 -0.91438,0.0139 -1.3997,0.0413 -0.48502,0.0277 -0.97649,0.0322 -1.47409,0.0138 -0.12433,-0.0736 -0.18674,-0.0828 -0.18664,-0.0275 -10e-5,0.0552 -0.037,0.0828 -0.11224,0.0828 0.0989,-0.0919 0.0868,-0.12415 -0.0371,-0.0966 -0.12432,0.0277 -0.19921,0.0598 -0.22398,0.0966 0.10025,-0.0919 0.10025,-0.11956 0,-0.0828 -0.099,0.0369 -0.17416,0.0369 -0.22389,0 -1.16956,-0.0736 -2.36399,-0.10113 -3.58319,-0.0828 -1.21911,0.0184 -2.43824,0.0552 -3.6575,0.11035 -1.21939,0.0552 -2.43221,0.0966 -3.63904,0.12416 -1.20668,0.0277 -2.38249,-0.005 -3.52702,-0.0966 0.1243,0.20238 0.37946,0.32194 0.76506,0.35873 0.38575,0.0369 0.7278,0.10124 1.02639,0.19316 0.27374,-0.14716 0.66562,-0.23913 1.17568,-0.27594 0.51004,-0.0367 0.96422,-0.046 1.36225,-0.0277 0,0.0367 -0.0441,0.0507 -0.13098,0.0413 -0.0868,-0.009 -0.13099,0.0322 -0.13099,0.12418 1.96562,-0.0919 3.97493,-0.17933 6.02754,-0.26213 2.05292,-0.0828 4.08694,-0.069 6.10252,0.0414 1.39326,0.0736 2.79295,0.11045 4.19869,0.11033 1.40584,3e-5 2.79295,-0.0275 4.16154,-0.0828 -0.0497,-0.12875 -0.18049,-0.20235 -0.39191,-0.22074 -0.21159,-0.0184 -0.44777,-0.0184 -0.70911,0 -0.26123,0.0184 -0.50404,0.0229 -0.72773,0.0138 -0.22399,-0.009 -0.38576,-0.0599 -0.48522,-0.15176 -0.29859,0.0552 -0.62213,0.0828 -0.97054,0.0828 -0.34831,10e-6 -0.70902,-0.005 -1.0822,-0.0138 -0.37327,-0.009 -0.74021,-0.0229 -1.1011,-0.0414 -0.3609,-0.0184 -0.70287,-0.009 -1.02632,0.0277 l 0,0 z m 5.44919,0.55189 c -0.7216,0.0369 -1.44328,0.0644 -2.16458,0.0828 -0.72179,0.0184 -1.48064,0.009 -2.27683,-0.0275 -2.28919,-0.0552 -4.65923,-0.10113 -7.11002,-0.13798 -2.45107,-0.0367 -4.83345,0.0736 -7.14738,0.33113 1.71675,-0.0184 3.37774,-0.0229 4.98261,-0.0138 1.60486,0.009 3.20357,0.0277 4.79595,0.0552 1.59248,0.0277 3.20358,0.0598 4.8335,0.0966 1.62972,0.0369 3.32781,0.0828 5.09444,0.13796 0.0751,1e-5 0.13096,-0.0322 0.16802,-0.0966 0.037,-0.0644 0.0799,-0.0966 0.13095,-0.0966 -0.0254,0.092 0.0185,0.12879 0.13096,0.11035 0.11233,-0.0184 0.23023,-0.0184 0.35466,0 -0.17436,-0.25754 -0.44807,-0.39552 -0.82126,-0.41393 -0.37327,-0.0184 -0.69663,-0.0275 -0.97034,-0.0275 l 0,0 z m 0.11233,0.77264 c -1.56761,-0.0367 -3.07291,-0.10113 -4.51599,-0.19315 -1.44328,-0.0919 -2.94868,-0.11035 -4.5162,-0.0552 0.19903,0.092 0.44164,0.13799 0.72783,0.13798 0.28621,1e-5 0.56606,0.009 0.83979,0.0277 1.44308,0.0369 3.01693,0.0873 4.72145,0.15176 1.70422,0.0644 3.31542,0.0966 4.8333,0.0966 -0.27382,-0.14716 -0.59112,-0.20694 -0.95172,-0.17936 -0.3609,0.0276 -0.74032,0.0322 -1.13846,0.0138 l 0,0 z m -20.37829,-0.24836 c 0.0494,0.0369 0.13098,0.069 0.24246,0.0966 0.11226,0.0277 0.20544,0.0873 0.28001,0.17935 1.71687,-0.092 3.48345,-0.13795 5.29995,-0.13796 1.81636,1e-5 3.62024,-0.046 5.41174,-0.13798 -0.82125,-0.0367 -1.72305,-0.0552 -2.70587,-0.0552 -0.98293,1e-5 -1.972,0.009 -2.96721,0.0277 -0.99525,0.0184 -1.97818,0.0322 -2.94843,0.0414 -0.97051,0.009 -1.84144,0.005 -2.61265,-0.0138 l 0,0 z m -0.52262,-0.13794 c 0.17416,1e-5 0.26131,0.0369 0.26131,0.11034 l 0,-0.19316 c -0.17417,3e-5 -0.26131,0.0277 -0.26131,0.0828 l 0,0 z m 15.52641,0.55189 c -0.5722,-0.0184 -1.20057,-0.0322 -1.88472,-0.0413 -0.68443,-0.009 -1.20067,0.0322 -1.54888,0.12418 0.0989,-0.0919 0.1056,-0.13336 0.0185,-0.12418 -0.0868,0.009 -0.16801,0.0138 -0.24261,0.0138 -0.0254,0.0552 -0.0185,0.1058 0.0185,0.15177 0.0371,0.046 0.0185,0.0966 -0.0565,0.15176 0.74665,2e-5 1.55532,0.0184 2.4261,0.0552 0.87079,0.0369 1.74782,0.069 2.63138,0.0966 0.88307,0.0277 1.76029,0.0414 2.63117,0.0414 0.87079,1e-5 1.70443,-0.0367 2.50071,-0.11034 -1.04514,-0.0919 -2.1088,-0.16555 -3.1912,-0.22075 -1.08238,-0.0552 -2.18349,-0.10114 -3.30313,-0.13798 l 0,0 z m -4.70263,-0.0552 c -0.67186,-0.0184 -1.3997,-0.0184 -2.1834,0 -0.7838,0.0184 -1.57385,0.0414 -2.37014,0.0689 -0.79618,0.0277 -1.57996,0.0506 -2.35133,0.069 -0.77134,0.0184 -1.48041,0.0184 -2.12731,0 0.0254,0.12878 0.0749,0.21616 0.14928,0.26213 0.0749,0.046 0.16789,0.0736 0.27989,0.0828 0.11227,0.009 0.23003,0.009 0.35459,0 0.12432,-0.009 0.24876,-0.0138 0.37319,-0.0138 0.49761,-0.0367 1.04495,-0.0644 1.64229,-0.0828 0.59705,-0.0184 1.21296,-0.0322 1.84742,-0.0413 0.63451,-0.009 1.25654,-0.0138 1.86618,-0.0138 0.60946,1e-5 1.17552,0.009 1.69819,0.0275 0.34831,0.0184 0.69048,0.0369 1.02632,0.0552 0.33593,0.0184 0.6034,-0.0736 0.80243,-0.27593 -0.19903,-0.16557 -0.53496,-0.21155 -1.0076,-0.13799 l 0,0 z m -13.84691,-0.19318 c 0.12431,-0.0367 0.24246,-0.0275 0.3546,0.0277 0.11229,0.0552 0.21773,0.0552 0.31718,0 -0.0749,-0.0367 -0.18659,-0.0736 -0.33589,-0.11034 -0.1493,-0.0367 -0.26117,-0.009 -0.33589,0.0828 l 0,0 z m 24.6705,0.88303 c -0.47274,-0.0184 -0.97668,-0.0138 -1.51154,0.0138 -0.53496,0.0276 -1.0388,0.0323 -1.51144,0.0138 -0.64709,-0.0368 -1.29399,-0.0598 -1.94089,-0.069 -0.6469,-0.009 -1.25664,0.005 -1.82884,0.0414 -0.47284,-0.0184 -0.92686,-0.0414 -1.36236,-0.0689 -0.43539,-0.0277 -0.85215,0.005 -1.2502,0.0966 0.29849,0.11034 0.67166,0.17478 1.11954,0.19316 0.44797,0.0184 0.9331,0.009 1.45566,-0.0276 0.54734,0.0184 1.16314,0.0369 1.84757,0.0552 0.68415,0.0184 1.38078,0.0322 2.08999,0.0413 0.70901,0.009 1.42445,0.0184 2.14605,0.0275 0.7216,0.009 1.39336,0.0139 2.01559,0.0139 0.0751,0.11033 0.0868,0.19317 0.037,0.24836 -0.0497,0.0552 -0.13105,0.092 -0.24271,0.11033 -0.11233,0.0184 -0.23637,0.0229 -0.37328,0.0138 -0.13681,-0.009 -0.255,-0.0138 -0.35455,-0.0138 -0.19902,2e-5 -0.43549,-0.005 -0.70912,-0.0137 -0.27381,-0.009 -0.50998,-0.0139 -0.70911,-0.0139 -1.51788,-0.0919 -2.9672,-0.14256 -4.34817,-0.15178 -1.38098,-0.009 -2.76809,-0.0137 -4.16145,-0.0137 1.84114,0.14718 3.76331,0.22076 5.76631,0.22075 2.0031,1e-5 3.96252,0.009 5.87844,0.0276 0,-0.14716 -0.0497,-0.32192 -0.14929,-0.5243 -0.099,-0.20234 -0.21151,-0.35871 -0.33594,-0.46911 -0.0497,0.11035 -0.12432,0.18858 -0.22388,0.23455 -0.0989,0.0459 -0.22399,0.0689 -0.37318,0.0689 -0.14939,1e-5 -0.31117,-0.009 -0.48532,-0.0275 -0.17425,-0.0184 -0.33583,-0.0276 -0.48522,-0.0276 l 0,0 z m -10.86094,-0.11035 c -0.54733,0.0184 -1.13846,0.0229 -1.77278,0.0138 -0.63461,-0.009 -1.27526,-0.009 -1.92216,0 -0.64709,0.009 -1.28769,0.0322 -1.92217,0.069 -0.6345,0.0369 -1.21311,0.11045 -1.73559,0.22076 1.11968,-0.0368 2.25177,-0.0735 3.39633,-0.11034 1.1445,-0.0368 2.37619,-0.0368 3.69504,0 0.19912,2e-5 0.41043,0.0276 0.63461,0.0828 0.22389,0.0552 0.41043,0.009 0.55972,-0.13797 -0.12423,-0.0919 -0.26123,-0.13795 -0.41043,-0.13797 -0.14929,2e-5 -0.32354,2e-5 -0.52257,0 l 0,0 z m 0.933,0.22076 c 0.12433,2e-5 0.21151,-0.009 0.26123,-0.0276 0.0497,-0.0184 0.0497,-0.0735 0,-0.16556 l -0.14928,0 c -0.0751,0.0736 -0.11234,0.13799 -0.11234,0.19316 l 0,0 z m -6.56882,0.30354 c 0.0495,0.092 0.16172,0.15178 0.33588,0.17936 0.17429,0.0276 0.32345,0.0414 0.4479,0.0414 0.57232,0.0552 1.20674,0.0644 1.90346,0.0276 0.69673,-0.0368 1.40584,-0.0735 2.12743,-0.11035 0.24875,0.0184 0.54734,0.0506 0.89584,0.0966 0.34813,0.0459 0.62194,-0.005 0.82106,-0.15177 -1.04504,-0.12876 -2.11504,-0.17936 -3.20972,-0.15176 -1.09496,0.0276 -2.20222,0.0506 -3.32185,0.0689 l 0,0 z m 8.21103,0.4415 c -0.27372,-0.0184 -0.50395,-0.0368 -0.69049,-0.0552 -0.18663,-0.0184 -0.35465,0.0459 -0.50374,0.19316 1.96555,0.0552 3.88772,0.12419 5.76649,0.20697 1.87829,0.0828 3.71347,0.0229 5.50487,-0.17938 -1.7167,-0.0552 -3.39636,-0.10113 -5.03857,-0.13798 -1.64211,-0.0368 -3.32157,-0.0459 -5.03856,-0.0276 l 0,0 z m -5.78493,0.11035 c 0.796,-0.0368 1.51768,-0.0368 2.16468,0 0.64699,0.0368 1.3685,0.009 2.16468,-0.0828 -0.5723,-0.0184 -1.2503,-0.0322 -2.03421,-0.0414 -0.7838,-0.009 -1.54878,0.0323 -2.29515,0.12419 l 0,0 z m -23.99887,-0.85543 c 0,0.12879 0.0494,0.19317 0.14943,0.19316 0,-0.0368 0.0427,-0.0552 0.13098,-0.0552 0.0868,1e-5 0.13099,-0.0459 0.13099,-0.13796 -0.1243,-0.0368 -0.20531,-0.0459 -0.2426,-0.0276 -0.0374,0.0184 -0.0935,0.0276 -0.168,0.0276 l 0,0 z m -3.39632,0 c 0.0749,0.0184 0.0682,0.0689 -0.0187,0.15175 -0.0869,0.0828 -0.0307,0.12421 0.16801,0.1242 0,-0.0368 0.0749,-0.0598 0.22388,-0.069 0.1493,-0.009 0.16172,-0.0413 0.0374,-0.0966 0,0.092 -0.0495,0.0873 -0.14915,-0.0138 -0.10025,-0.10112 -0.18673,-0.13337 -0.26131,-0.0966 l 0,0 z m 1.56757,0.24835 c 0.0749,1e-5 0.14301,0.0137 0.20531,0.0413 0.0614,0.0276 0.13098,0.0413 0.20516,0.0413 0,-0.0919 0.0441,-0.14716 0.13099,-0.16557 0.0868,-0.0184 0.13098,-0.0459 0.13098,-0.0828 -0.12429,-0.0184 -0.26758,-0.0184 -0.42931,0 -0.16173,0.0184 -0.24259,0.0736 -0.24259,0.16556 l 0,0 z m 24.78248,0.57948 c 0.0751,0.0551 0.23013,0.0828 0.4665,0.0828 0.23647,1e-5 0.39201,-0.0459 0.4666,-0.13796 -0.19902,0.0369 -0.38576,0.0459 -0.55991,0.0276 -0.17416,-0.0184 -0.29859,-0.009 -0.37319,0.0276 l 0,0 z m 17.50456,0.46909 -0.11224,0 c -0.9208,0.0551 -1.89729,0.0782 -2.92985,0.069 -1.03285,-0.009 -2.06532,-0.0275 -3.09797,-0.0552 -1.03256,-0.0276 -2.04036,-0.0598 -3.02318,-0.0966 -0.98274,-0.0368 -1.88473,-0.0552 -2.70578,-0.0552 -9e-5,0.0552 -0.0136,0.10124 -0.0371,0.13796 -0.0254,0.0369 -0.10024,0.0552 -0.22398,0.0552 0,-0.0368 0,-0.0873 0.0185,-0.15176 0.0136,-0.0644 -0.0439,-0.0782 -0.16801,-0.0414 -0.647,-0.0184 -1.28757,-0.0184 -1.92217,0 -0.63441,0.0184 -1.38712,0.0184 -2.258,0 0.27362,0.14719 0.55348,0.24838 0.83968,0.30354 0.28629,0.0552 0.56606,0.18399 0.83977,0.38634 0,-0.0368 0.0136,-0.0873 0.037,-0.15178 0.0254,-0.0644 0.099,-0.069 0.22419,-0.0139 0.22368,-0.0184 0.46629,-0.0184 0.72773,0 0.26123,0.0184 0.50989,0.0369 0.74636,0.0552 0.23637,0.0184 0.44154,0.0138 0.61579,-0.0138 0.17416,-0.0275 0.29859,-0.0873 0.37318,-0.17938 -0.0497,0.0921 -0.0185,0.13799 0.0936,0.13798 0.11233,1e-5 0.16791,0.0184 0.16801,0.0552 0.94538,-0.0184 1.92187,-0.0138 2.92966,0.0138 1.00789,0.0276 2.00934,0.0552 3.00455,0.0828 0.99532,0.0276 1.98438,0.0368 2.9673,0.0276 0.98264,-0.009 1.93446,-0.0689 2.85527,-0.17937 0.0254,-0.0919 0.0254,-0.15634 0,-0.19317 -0.0254,-0.0368 -0.0136,-0.10111 0.0371,-0.19316 l 0,0 z m -43.8919,-0.82733 c 0.19902,0.0184 0.44162,0.0276 0.72778,0.0276 0.28604,1e-5 0.52877,-0.0184 0.72779,-0.0552 -0.0495,-0.0552 -0.14931,-0.10113 -0.29861,-0.13796 -0.14916,-0.0368 -0.29859,-0.0552 -0.44789,-0.0552 -0.1493,2e-5 -0.29231,0.0138 -0.42918,0.0414 -0.13688,0.0276 -0.23031,0.0873 -0.27989,0.17936 l 0,0 z m 25.60356,0.91062 c -0.27373,-0.0184 -0.52875,-0.0873 -0.76506,-0.20697 -0.23659,-0.11956 -0.41689,-0.15174 -0.54119,-0.0966 0.52246,0.14718 0.97023,0.34495 1.34369,0.59329 0.37316,0.24837 0.77111,0.45531 1.19422,0.62087 -0.12423,-0.20235 -0.31116,-0.35412 -0.55991,-0.4553 -0.24885,-0.10113 -0.47273,-0.25294 -0.67175,-0.45531 l 0,0 z m 0.74654,0.33113 c 0,-0.092 -0.10025,-0.17934 -0.29859,-0.26216 -0.19922,-0.0828 -0.29865,-0.10578 -0.29865,-0.069 0.1243,0.0552 0.22386,0.10578 0.29865,0.15178 0.0751,0.0459 0.17396,0.10579 0.29859,0.17935 l 0,0 z m 16.86984,0.35871 c -1.56751,10e-6 -3.09768,-0.005 -4.59069,-0.0138 -1.49291,-0.009 -2.79919,-0.0506 -3.91882,-0.12418 -0.27363,0.0369 -0.5101,0.0552 -0.70921,0.0552 -0.19903,10e-6 -0.4355,10e-6 -0.70911,0 -0.10025,10e-6 -0.22399,-0.009 -0.37329,-0.0276 -0.14929,-0.0184 -0.29234,-0.0229 -0.42924,-0.0138 -0.13672,0.009 -0.255,0.0369 -0.35446,0.0828 -0.10024,0.0459 -0.14939,0.115 -0.1493,0.20695 0.67177,0.0184 1.46172,0.0369 2.36995,0.0552 0.90822,0.0184 1.85361,0.0323 2.83654,0.0413 0.98283,0.009 1.95951,0.0229 2.92995,0.0414 0.97026,0.0184 1.85362,0.0369 2.65001,0.0552 0.0751,1e-5 0.16772,0.005 0.27985,0.0138 0.11224,0.009 0.22379,0.009 0.33593,0 0.11224,-0.009 0.21765,-0.0322 0.3173,-0.069 0.0989,-0.0368 0.1491,-0.10113 0.1493,-0.19317 -2e-4,-0.0919 -0.0936,-0.11032 -0.28005,-0.0552 -0.18655,0.0552 -0.30473,0.0369 -0.35466,-0.0552 l 0,0 z m -41.95096,-0.85541 c 0.19901,1e-5 0.3296,-0.0184 0.39189,-0.0552 0.0614,-0.0368 0.19287,-0.0552 0.39175,-0.0552 -0.0494,-0.0368 -0.0307,-0.0598 0.0561,-0.069 0.0868,-0.009 0.131,-0.0415 0.131,-0.0966 -0.44791,-0.0368 -0.77137,0.0552 -0.97039,0.27595 l 0,0 z m 42.73477,1.15896 c 0.0751,10e-6 0.11234,-0.0644 0.11234,-0.19317 -0.0751,1e-5 -0.11234,-0.0184 -0.11234,-0.0552 l 0,-0.0552 0,0.30355 z m -14.77986,-0.38632 c -0.0254,0.14718 0.0371,0.23916 0.18673,0.27593 0.149,0.0369 0.24875,0.10124 0.29849,0.19316 0.0989,-0.0919 0.24261,-0.14715 0.42924,-0.16555 0.18664,-0.0184 0.38547,-0.0276 0.59708,-0.0276 0.2115,2e-5 0.41052,-0.005 0.59726,-0.0139 0.18644,-0.009 0.35446,-0.0506 0.50374,-0.12418 -0.14928,-0.0919 -0.32959,-0.14714 -0.54118,-0.16556 -0.21151,-0.0184 -0.42916,-0.0184 -0.65305,0 -0.22408,0.0184 -0.46035,0.0369 -0.7091,0.0551 -0.24886,0.0184 -0.48533,0.009 -0.70921,-0.0276 l 0,0 z m -0.29859,0.35872 c -0.12433,1e-5 -0.21775,-0.0322 -0.28006,-0.0966 -0.0614,-0.0644 -0.13095,-0.0966 -0.20516,-0.0966 -0.0254,0.0368 0.0185,0.0873 0.13105,0.15179 0.11224,0.0644 0.23013,0.0782 0.35456,0.0413 l 0,0 z m -27.24585,-0.85543 c -0.19903,1e-5 -0.46033,-0.0275 -0.78365,-0.0828 -0.3236,-0.0552 -0.54748,-0.0368 -0.67191,0.0552 0.19915,-0.0368 0.47275,-0.0276 0.8212,0.0275 0.34832,0.0552 0.55977,0.0552 0.63436,0 l 0,0 z m 31.94858,1.07618 c 1.7914,0.0184 3.50831,0.0783 5.15061,0.17938 1.64211,0.10124 3.28442,0.10577 4.92671,0.0138 -1.5677,-0.0919 -3.19128,-0.15635 -4.87094,-0.19317 -1.67935,-0.0367 -3.41498,-0.0367 -5.20638,0 l 0,0 z m -0.11233,0 c -0.12423,1e-5 -0.26767,-0.0138 -0.42925,-0.0413 -0.16178,-0.0275 -0.24261,-0.0229 -0.24261,0.0138 0.0751,10e-6 0.18654,0.0184 0.33583,0.0552 0.14929,0.0369 0.26124,0.0276 0.33603,-0.0276 l 0,0 z m -33.3295,-0.52428 c 0.27373,0.0919 0.66562,0.12417 1.17553,0.0966 0.51018,-0.0275 0.98922,-0.005 1.43712,0.0689 0,-0.0919 -0.0187,-0.15175 -0.0561,-0.17936 -0.0374,-0.0275 -0.0561,-0.069 -0.0561,-0.12417 -0.44789,-0.0552 -0.84608,-0.0828 -1.19439,-0.0828 -0.34833,1e-5 -0.77136,-0.0552 -1.26897,-0.16556 0.0494,0.0919 0.0749,0.15636 0.0749,0.19315 0,0.0369 -0.0134,0.0598 -0.0374,0.069 -0.0241,0.009 -0.0494,0.0184 -0.0749,0.0275 -0.0254,0.009 -0.0254,0.0413 0,0.0966 l 0,0 z m -1.30627,-0.24835 c 0.0749,0.11045 0.0989,0.23916 0.0749,0.38631 -0.0255,0.1472 -0.0375,0.28977 -0.0375,0.42772 0,0.13799 0.0254,0.26216 0.0749,0.37251 0.0495,0.11035 0.17415,0.17478 0.37318,0.19316 0.0749,-0.14714 0.0749,-0.22534 0,-0.23454 -0.0749,-0.009 -0.11227,-0.0598 -0.11227,-0.15177 0.19901,-0.0919 0.22388,-0.20235 0.0749,-0.33114 -0.14931,-0.12874 -0.24875,-0.24832 -0.2986,-0.35871 0.19915,0.0184 0.29232,2e-5 0.28002,-0.0552 -0.0133,-0.0552 0,-0.15636 0.0186,-0.30355 -0.0749,2e-5 -0.16174,2e-5 -0.26117,0 -0.10025,2e-5 -0.16187,0.0184 -0.18659,0.0552 l 0,0 z m 43.6306,1.32452 c -0.79638,-0.0368 -1.61743,-0.0828 -2.46335,-0.13798 -0.84611,-0.0552 -1.62982,-0.0919 -2.35132,-0.11033 -0.72169,-0.0185 -1.51788,-0.0185 -2.38866,0 -0.87079,0.0185 -1.60486,0.009 -2.20223,-0.0276 -0.19902,1e-5 -0.41043,-0.009 -0.63432,-0.0275 -0.22407,-0.0185 -0.41072,0.046 -0.55991,0.19316 1.8662,-0.0367 3.74477,-0.0229 5.63573,0.0413 1.89097,0.0644 3.93142,0.1242 6.12115,0.17935 -0.12433,-0.14714 -0.29868,-0.20232 -0.52257,-0.16555 -0.22408,0.0369 -0.43549,0.0552 -0.63452,0.0552 l 0,0 z m -12.42864,0.11034 c -0.12432,-0.0919 -0.24895,-0.18395 -0.37317,-0.27593 -0.12433,-0.092 -0.24895,-0.15636 -0.37338,-0.19316 0.0497,0.092 0.15563,0.19316 0.31731,0.30354 0.16177,0.11033 0.30472,0.16556 0.42924,0.16555 l 0,0 z m 0.41054,-0.35871 c 0.0497,0.0921 0.18663,0.17476 0.41062,0.24833 0.22389,0.0736 0.47264,0.0644 0.74636,-0.0276 -0.12433,-0.0367 -0.23013,-0.0367 -0.31721,0 -0.0868,0.0369 -0.15553,0.009 -0.20526,-0.0828 0.0497,1e-5 0.12432,0.009 0.22398,0.0275 0.099,0.0184 0.14919,0.009 0.14919,-0.0275 -0.0497,-0.0919 -0.0185,-0.11955 0.0936,-0.0828 0.11225,0.0369 0.14306,0.0276 0.0936,-0.0276 -0.12433,-0.0367 -0.32344,-0.0597 -0.59707,-0.069 -0.27371,-0.009 -0.47274,0.005 -0.59716,0.0413 l 0,0 z m -22.54311,3.91838 c 0.0494,0.0185 0.13098,0.0367 0.24272,0.0552 0.11227,0.0185 0.20516,0.0736 0.27974,0.16558 0.0495,10e-6 0.0561,0.0369 0.0187,0.11035 -0.0374,0.0736 -0.0561,0.12877 -0.0561,0.16556 0.0495,0.0552 0.1493,0.15637 0.29873,0.30354 0.14929,0.14717 0.24874,0.24836 0.29846,0.30352 0.22402,0.14719 0.41675,0.31276 0.57861,0.4967 0.1616,0.18396 0.31704,0.36334 0.46648,0.53809 0.1493,0.17477 0.30488,0.33114 0.46647,0.46911 0.16173,0.13798 0.37947,0.23456 0.6532,0.28974 -0.19901,-0.25755 -0.42304,-0.47368 -0.67177,-0.64847 -0.24888,-0.17476 -0.39818,-0.38172 -0.4479,-0.62086 0.4479,0.34951 0.90195,0.74504 1.36226,1.18654 0.46033,0.44153 1.01395,0.74506 1.66087,0.91062 -1.64214,-1.32453 -3.17858,-2.67663 -4.60941,-4.05636 -1.4307,-1.37969 -2.8054,-2.8146 -4.12421,-4.30472 0.224,0.44152 0.47903,0.85085 0.76519,1.22796 0.28617,0.37713 0.59092,0.74965 0.91437,1.11757 0.32346,0.36793 0.65307,0.73586 0.98909,1.10378 0.33589,0.36792 0.64076,0.76344 0.91438,1.18655 l 0,0 z m 23.96142,-3.58725 c 0.92052,1e-5 1.88472,0.0276 2.89252,0.0828 1.00778,0.0552 2.02162,0.11034 3.0419,0.16559 1.02007,0.0551 2.02152,0.0966 3.00455,0.12416 0.98273,0.0276 1.92217,0.0138 2.81791,-0.0414 -1.96585,-0.11034 -3.97509,-0.20234 -6.02783,-0.27595 -2.05273,-0.0736 -3.96251,-0.0919 -5.72905,-0.0552 l 0,0 z m -31.72454,-0.85544 c 0,0.0921 0,0.16558 -0.0187,0.22077 -0.0134,0.0552 -0.0187,0.11044 -0.0187,0.16556 0.64691,0.0184 1.20681,0.0598 1.67943,0.12417 0.47276,0.0644 1.0078,0.0783 1.60486,0.0413 -0.17415,-0.0919 -0.24873,-0.22074 -0.22388,-0.38632 -0.59719,-0.0367 -1.08853,-0.0688 -1.47413,-0.0966 -0.38575,-0.0275 -0.90208,-0.0505 -1.549,-0.0689 l 0,0 z m 42.1377,1.54529 c -0.5724,-0.0184 -1.19453,-0.0552 -1.86609,-0.11035 -0.67197,-0.0552 -1.34996,-0.10112 -2.03421,-0.13795 -0.68424,-0.0367 -1.37473,-0.0688 -2.07136,-0.0966 -0.69673,-0.0275 -1.35611,-0.0229 -1.97824,0.0138 -0.39805,-0.0185 -0.82729,-0.0506 -1.28755,-0.0966 -0.46036,-0.046 -0.85226,0.0229 -1.17571,0.20693 -0.0254,0.14719 0.0819,0.23917 0.31721,0.27594 0.23637,0.0369 0.41667,0.0552 0.54119,0.0552 1.56752,0.092 3.17238,0.14719 4.81478,0.16557 1.6422,0.0185 3.2222,0.0185 4.73998,0 0.27362,1e-5 0.55348,0.009 0.83978,0.0275 0.2861,0.0185 0.52871,-0.046 0.72783,-0.19317 -0.24885,-0.0919 -0.50395,-0.12416 -0.76508,-0.0966 -0.26143,0.0276 -0.52891,0.0229 -0.80253,-0.0138 l 0,0 z m -10.71174,-0.11031 c 0.0253,-0.0736 0.037,-0.13795 0.037,-0.19315 l -0.0751,-0.0552 c -0.0497,-0.0367 -0.11233,-0.0552 -0.18664,-0.0552 0,0.092 0.0254,0.15179 0.0751,0.17938 0.0497,0.0276 0.099,0.069 0.14929,0.12416 l 0,0 z m -31.46326,-0.77264 0,0.19316 c 0.59706,0.0185 1.23168,0.046 1.90332,0.0828 0.67192,0.0369 1.21938,0.0369 1.64242,0 -0.47289,-0.0552 -1.05137,-0.11031 -1.73558,-0.16556 -0.6842,-0.0552 -1.28769,-0.0919 -1.81016,-0.11033 l 0,0 z m 38.5174,1.43491 c 0.57221,0.0185 1.21286,0.0505 1.92207,0.0966 0.70901,0.046 1.37464,0.0506 1.99686,0.0138 0.0497,1e-5 0.19259,1e-5 0.42916,0 0.23637,1e-5 0.35455,-0.0184 0.35455,-0.0551 -0.79629,-0.0367 -1.5676,-0.0736 -2.31397,-0.11033 -0.74645,-0.0367 -1.54284,-0.0185 -2.38867,0.0552 l 0,0 z m -6.53157,-0.16557 c 0.0254,0.0552 0.0936,0.092 0.20517,0.11034 0.11233,0.0185 0.22389,0.0229 0.33602,0.0138 0.11233,-0.009 0.20517,-0.0322 0.27987,-0.069 0.0751,-0.0368 0.099,-0.0828 0.0751,-0.13798 -0.12422,0.0369 -0.25499,0.0506 -0.3917,0.0413 -0.137,-0.009 -0.30502,0.005 -0.50395,0.0413 l 0,0 z m -31.87395,-0.4967 c 0.34844,-0.0185 0.67805,-0.0185 0.98908,0 0.31103,0.0185 0.60962,0.0323 0.89579,0.0414 0.28603,0.009 0.58476,0.0138 0.89579,0.0138 0.31103,1e-5 0.64063,-0.0185 0.98895,-0.0552 -0.22387,-0.12875 -0.48506,-0.20235 -0.78378,-0.22075 -0.29859,-0.0185 -0.61577,-0.0229 -0.95166,-0.0138 -0.33589,0.009 -0.67806,0.0185 -1.02637,0.0276 -0.34833,0.009 -0.68422,-0.0138 -1.0078,-0.0688 0,0.0367 0.0134,0.0828 0.0374,0.13799 0.0254,0.0552 0.0134,0.10123 -0.0374,0.13796 l 0,0 z m -1.08238,0.27594 c 0.19915,-0.14715 0.29859,-0.3403 0.29859,-0.57949 -0.17417,3e-5 -0.31104,-0.009 -0.41048,-0.0275 0,0.092 -0.0134,0.19774 -0.0374,0.31732 -0.0241,0.11959 0.0254,0.21617 0.1493,0.28973 l 0,0 z m 36.57658,0.99339 c 0.32354,-0.0184 0.67809,-0.0276 1.06376,-0.0276 0.38556,0 0.76518,0.005 1.13836,0.0138 0.37318,0.009 0.72149,0.009 1.04494,0 0.32345,-0.009 0.58469,-0.0322 0.784,-0.0689 0.0751,0 0.13671,-0.0185 0.18655,-0.0552 l 0.0751,-0.0552 c -10e-5,-0.0919 -0.10561,-0.12875 -0.31721,-0.11033 -0.2115,0.0185 -0.45411,0.0185 -0.72794,0 -0.39794,0 -0.93299,-0.0275 -1.60485,-0.0828 -0.67176,-0.0552 -1.26903,-0.0919 -1.7915,-0.11035 -0.64699,0.0369 -1.20681,0.10123 -1.67945,0.19316 -0.47274,0.092 -0.99522,0.12879 -1.56762,0.11035 0.0497,0.0551 0.0868,0.12418 0.11233,0.20695 0.0254,0.0828 0.0614,0.14257 0.11225,0.17936 1.71689,0.0367 3.47729,0.0919 5.28137,0.16557 1.80369,0.0736 3.56427,0.092 5.28117,0.0552 0.0244,-0.14718 0.0868,-0.22994 0.18655,-0.24835 0.0989,-0.0185 0.18663,-0.10112 0.26133,-0.24836 -0.52266,-0.11034 -1.08259,-0.16095 -1.67956,-0.15174 -0.59736,0.009 -1.13231,0.0322 -1.60485,0.0689 0.12422,0.0552 0.29839,0.0828 0.52246,0.0828 0.22389,0 0.46026,0 0.70921,0 0.24866,0 0.47255,0.009 0.67157,0.0276 0.19922,0.0184 0.34851,0.0644 0.44807,0.13797 -0.37327,0.11034 -0.75903,0.16558 -1.15708,0.16556 -1.04494,-0.0736 -2.11495,-0.092 -3.20991,-0.0552 -1.09468,0.0367 -2.16469,0.0367 -3.20973,0 -0.32345,-0.0185 -0.72773,-0.0323 -1.21295,-0.0413 -0.48513,-0.009 -0.81491,-0.0873 -0.98907,-0.23455 0.52247,0.0185 0.97054,0.0322 1.34372,0.0413 0.37318,0.009 0.88317,0.0229 1.53017,0.0413 l 0,0 z m -36.83776,-1.02097 c 0.0254,-0.0921 0.0307,-0.17936 0.0187,-0.26216 -0.0134,-0.0828 -0.0561,-0.12415 -0.13097,-0.12416 -0.0494,0.0369 -0.0561,0.0966 -0.0187,0.17936 0.0374,0.0828 0.0801,0.15177 0.13098,0.20696 l 0,0 z m 4.55327,0.13796 c -0.27359,-0.0184 -0.57221,-0.0506 -0.89567,-0.0966 -0.32344,-0.046 -0.58475,-0.005 -0.78376,0.12418 0.19901,-0.0367 0.54745,-0.046 1.04507,-0.0275 0.49763,0.0184 0.97039,0.0552 1.41828,0.11035 -0.0495,-0.14716 -0.16186,-0.20235 -0.33588,-0.16556 -0.1743,0.0369 -0.32361,0.0551 -0.44804,0.0551 l 0,0 z m -4.06823,0.85543 c 0,-0.0921 0.0134,-0.22995 0.0374,-0.41392 0.0254,-0.18393 -0.0254,-0.27593 -0.1493,-0.27594 -0.0494,0.0552 -0.0935,0.17936 -0.13099,0.37252 -0.0374,0.19317 0.0441,0.29897 0.24245,0.31734 l 0,0 z m 0.67193,-0.55189 c 0.0254,1e-5 0.0628,0.0184 0.11226,0.0552 0,0.0185 0.0134,0.0276 0.0374,0.0276 0.42303,-0.0184 0.80249,-0.0184 1.13824,0 0.33603,0.0185 0.65949,0.0369 0.97051,0.0552 0.31103,0.0184 0.62206,0.0369 0.93309,0.0552 0.31102,0.0184 0.64063,0.0184 0.98908,0 -0.27373,-0.0736 -0.57862,-0.12417 -0.91437,-0.15178 -0.33588,-0.0275 -0.69049,-0.0413 -1.06368,-0.0413 -0.37343,1e-5 -0.75276,1e-5 -1.13851,0 -0.38561,1e-5 -0.7402,1e-5 -1.06366,0 l 0,0 z m 37.21115,1.21414 c -0.72179,-0.0919 -1.44952,-0.12876 -2.18351,-0.11033 -0.73407,0.0184 -1.5365,0.009 -2.40729,-0.0276 0,0.0369 0.0254,0.0643 0.0751,0.0828 0.0497,0.0185 0.0751,0.0552 0.0751,0.11035 0.32345,-0.0185 0.69664,-0.0138 1.11964,0.0138 0.42301,0.0276 0.84612,0.0506 1.26903,0.0689 0.42301,0.0185 0.82105,0.0229 1.19433,0.0138 0.37319,-0.009 0.65938,-0.0598 0.8585,-0.15179 l 0,0 z m 0.37318,0 c 0,0.14719 0.1056,0.22076 0.31731,0.22075 0.21149,1e-5 0.41676,1e-5 0.61578,0 0.34822,1e-5 0.72764,0.005 1.13837,0.0139 0.41052,0.009 0.82095,0.0138 1.23157,0.0138 0.41063,0 0.80253,-0.005 1.17562,-0.0138 0.37317,-0.009 0.70921,-0.0322 1.00788,-0.069 -1.11983,-0.0921 -2.09652,-0.15177 -2.93005,-0.17937 -0.83344,-0.0276 -1.6857,-0.0229 -2.55648,0.0138 l 0,0 z m -32.65761,-0.71744 c -0.72177,0.0369 -1.44956,0 -2.18349,-0.11034 -0.73392,-0.11033 -1.42441,-0.14715 -2.07146,-0.11033 -0.0749,1e-5 -0.16788,0.009 -0.27988,0.0276 -0.11228,0.0184 -0.2053,0.0736 -0.27988,0.16557 0.92065,0.11032 1.76657,0.18857 2.53794,0.23454 0.77135,0.046 1.61741,0.115 2.53794,0.20697 0.0749,-0.14716 0.0494,-0.22996 -0.0749,-0.24835 -0.12431,-0.0184 -0.18658,-0.0736 -0.18658,-0.16556 l 0,0 z m 29.63453,1.40732 c 1.24396,0.0367 2.48188,0.0966 3.71356,0.17934 1.23168,0.0828 2.34508,0.0873 3.34029,0.0138 0.10024,1e-5 0.22408,0.009 0.37338,0.0276 0.14909,0.0185 0.29224,0.0276 0.42914,0.0276 0.13672,1e-5 0.255,-0.0229 0.35457,-0.0688 0.099,-0.046 0.14939,-0.13335 0.14939,-0.26214 -0.82126,-0.0367 -1.59258,-0.0783 -2.31407,-0.12419 -0.7217,-0.046 -1.41832,-0.0736 -2.09009,-0.0828 -0.67195,-0.009 -1.33123,0.005 -1.97814,0.0414 -0.64699,0.0369 -1.30627,0.11959 -1.97803,0.24836 l 0,0 z M -539.31422,82.609 c 1.04509,0.12879 1.9842,0.20696 2.81782,0.23456 0.83352,0.0276 1.81017,0.0599 2.92984,0.0966 -0.24873,-0.20235 -0.57233,-0.29435 -0.97037,-0.27594 -0.39804,0.0185 -0.84594,0 -1.34355,-0.0552 -0.52262,-0.0185 -1.02024,-0.0644 -1.49299,-0.13797 -0.47276,-0.0736 -1.06995,-0.0919 -1.79145,-0.0551 l 0,-0.0276 c 0,-0.0367 -0.0374,-0.0552 -0.11228,-0.0552 0.0494,0.0921 0.0614,0.15179 0.0374,0.17937 -0.0254,0.0276 -0.0494,0.0598 -0.0749,0.0966 l 0,0 z m -0.78392,0.66226 c 0.0495,-0.092 0.0628,-0.22535 0.0374,-0.40011 -0.0241,-0.17477 -0.0241,-0.33572 0,-0.4829 l -0.14918,0 c -0.0253,0.14718 -0.0442,0.29435 -0.0561,0.4415 -0.0134,0.14719 0.0441,0.29434 0.16788,0.44151 l 0,0 z m 33.6654,0.55188 c 0,0.092 -0.0371,0.15178 -0.11224,0.17937 -0.0751,0.0276 -0.0868,0.11501 -0.0371,0.26216 1.26893,-0.0552 2.61265,-0.0413 4.03087,0.0414 1.41832,0.0828 2.82416,0.12417 4.21751,0.12417 0.27362,0 0.5722,-0.009 0.89565,-0.0276 0.32364,-0.0185 0.54753,-0.12877 0.67196,-0.33114 -1.81646,-0.14717 -3.50216,-0.23912 -5.05729,-0.27594 -1.55512,-0.0367 -3.09153,-0.0275 -4.60941,0.0276 l 0,0 z m -32.88148,-0.71744 c 0,0.11035 0.0442,0.18857 0.13099,0.23455 0.0869,0.046 0.2053,0.0736 0.35447,0.0828 0.1493,0.009 0.30488,0.009 0.46661,0 0.16173,-0.009 0.30473,-0.0138 0.42917,-0.0138 0.37319,0.0369 0.77136,0.0736 1.19439,0.11034 0.42303,0.0368 0.85222,0.0599 1.28755,0.0689 0.43548,0.009 0.85851,0.005 1.26897,-0.0138 0.41074,-0.0185 0.77764,-0.0552 1.10123,-0.11034 -0.9705,-0.12877 -1.99074,-0.23915 -3.06068,-0.33113 -1.06982,-0.0919 -2.12721,-0.10123 -3.1723,-0.0276 l 0,0 z m 31.94858,0.96581 c 0.12423,0.0552 0.2114,0.0367 0.26114,-0.0552 0.0497,-0.0921 0.0137,-0.13798 -0.11224,-0.13798 -0.10025,0.0735 -0.14948,0.11958 -0.14929,0.13798 -0.0254,0.0185 -0.0254,0.0367 0,0.0552 l 0,0 z m 1.26893,0.52428 -0.37328,0 c 0.89575,1e-5 1.74167,0.0276 2.53796,0.0828 0.79619,0.0552 1.56751,0.1058 2.31407,0.15178 0.74635,0.046 1.48667,0.0644 2.22055,0.0551 0.73407,-0.009 1.47448,-0.0873 2.22085,-0.23455 -1.3685,-0.0368 -2.78057,-0.0688 -4.23615,-0.0966 -1.45566,-0.0276 -3.01693,-0.0138 -4.684,0.0413 l 0,0 z m -34.07601,-0.35871 c 0.12431,10e-6 0.16801,-0.0736 0.13099,-0.22076 -0.0374,-0.14716 -0.0307,-0.26675 0.0187,-0.35873 l -0.11228,0 c -0.0749,0.0369 -0.0935,0.11958 -0.0562,0.24835 0.0374,0.12877 0.0442,0.23915 0.0187,0.33114 l 0,0 z m 6.41957,-0.41393 c -0.92066,0.0185 -1.84758,-0.009 -2.78054,-0.0828 -0.93308,-0.0736 -1.83515,-0.0644 -2.70594,0.0276 1.04509,0.12879 2.13976,0.19778 3.28456,0.20696 1.14453,0.009 2.27649,0.0323 3.3963,0.0689 -0.1243,-0.18396 -0.32345,-0.26673 -0.59719,-0.24835 -0.27373,0.0185 -0.47276,0.0276 -0.59719,0.0276 l 0,0 z m 29.63448,1.10379 c -0.22389,0 -0.49137,-0.0184 -0.80253,-0.0552 -0.31096,-0.0367 -0.60341,-0.0552 -0.87693,-0.0552 -0.27372,1e-5 -0.51642,0.0276 -0.72793,0.0828 -0.2114,0.0552 -0.32969,0.1656 -0.35455,0.33116 0.9954,-0.0184 2.07779,-0.0323 3.24726,-0.0413 1.16936,-0.009 2.35122,0.005 3.54565,0.0413 0.47274,-0.0367 0.94538,-0.0413 1.41812,-0.0138 0.47284,0.0276 0.87089,-0.005 1.19433,-0.0966 -0.4976,0.0368 -1.02632,0.046 -1.58613,0.0276 -0.55992,-0.0185 -1.13836,-0.046 -1.73544,-0.0828 -0.59725,-0.0367 -1.18204,-0.0688 -1.75424,-0.0966 -0.5724,-0.0275 -1.09488,-0.0413 -1.56761,-0.0413 l 0,0 z m -30.30626,-0.63468 c -0.79635,-0.0736 -1.636,-0.11035 -2.51936,-0.11035 -0.88336,0 -1.61115,-0.009 -2.18334,-0.0276 l -0.14929,0 c 0.1243,0.092 0.32345,0.13799 0.59706,0.13798 0.27372,1e-5 0.51016,1e-5 0.70919,0 1.04509,0.0369 2.01534,0.0783 2.91112,0.12417 0.89592,0.046 1.80402,0.0873 2.72467,0.12419 -0.24875,-0.20238 -0.55977,-0.28055 -0.93295,-0.23457 -0.37345,0.046 -0.75906,0.0413 -1.1571,-0.0138 l 0,0 z m 28.5521,1.07617 c -0.19902,0.0367 -0.41062,0.0689 -0.6345,0.0966 -0.22399,0.0276 -0.39815,0.115 -0.52248,0.26214 0.59707,-0.0368 1.23168,-0.0368 1.90335,0 0.67195,0.0368 1.36858,0.0828 2.09017,0.13797 0.7215,0.0552 1.46181,0.10579 2.22066,0.15176 0.75893,0.046 1.51173,0.0507 2.25799,0.0138 0.12433,-0.0367 0.2862,-0.0689 0.48542,-0.0966 0.19883,-0.0276 0.29839,-0.14257 0.29839,-0.34493 -1.31866,-0.0368 -2.69964,-0.0921 -4.14282,-0.16556 -1.44318,-0.0736 -2.76194,-0.0919 -3.95618,-0.0552 l 0,0 z m -27.24583,-0.55189 c -0.49762,-0.0185 -1.02023,-0.046 -1.56744,-0.0828 -0.54748,-0.0369 -1.09495,-0.0689 -1.64243,-0.0966 -0.54733,-0.0276 -1.06365,-0.0552 -1.5487,-0.0828 -0.48533,-0.0276 -0.90208,-0.0322 -1.2504,-0.0138 -0.1243,0.0552 -0.16186,0.12419 -0.11227,0.20696 0.0494,0.0828 0.0749,0.14256 0.0749,0.17935 1.19425,0.092 2.43221,0.14717 3.71348,0.16555 1.28153,0.0185 2.48207,-0.0367 3.60186,-0.16555 -0.12429,-0.14716 -0.31729,-0.20236 -0.5786,-0.16557 -0.2613,0.0369 -0.49147,0.0552 -0.6905,0.0552 l 0,0 z m 25.82762,1.10377 c -0.10025,0.0921 -0.16801,0.16558 -0.20537,0.22075 -0.037,0.0552 -0.0312,0.13798 0.0185,0.24836 1.51778,0 2.96711,0.0413 4.34798,0.12417 1.38097,0.0828 2.76829,0.0506 4.16164,-0.0966 0.0497,-0.0367 0.1176,-0.0138 0.20536,0.069 0.0868,0.0828 0.19268,0.10579 0.31731,0.0689 -2e-4,-0.092 0.0185,-0.15176 0.0566,-0.17937 0.037,-0.0275 0.0565,-0.0688 0.0565,-0.12418 -1.36859,-0.0367 -2.79315,-0.0919 -4.27358,-0.16555 -1.48053,-0.0736 -3.04181,-0.12877 -4.68401,-0.16558 l 0,0 z m -25.23043,-0.63467 c -0.39818,0.0552 -0.85223,0.0644 -1.36227,0.0276 -0.51004,-0.0367 -1.05123,-0.0736 -1.62357,-0.11033 -0.64691,0.0369 -1.28769,0.0644 -1.92217,0.0828 -0.63448,0.0185 -1.21309,0 -1.73544,-0.0552 0,0.092 0.0187,0.15176 0.0561,0.17935 0.0374,0.0276 0.0561,0.0598 0.0561,0.0966 1.24412,0.0921 2.54423,0.13798 3.90034,0.13796 1.35599,2e-5 2.66852,2e-5 3.9375,0 -0.0495,-0.20235 -0.19287,-0.30813 -0.42917,-0.31733 -0.23646,-0.009 -0.52877,-0.0229 -0.87709,-0.0414 l 0,0 z m 23.8868,1.04858 c 0.19892,0.0185 0.31711,-0.0138 0.35446,-0.0966 0.037,-0.0828 0.10561,-0.17016 0.20536,-0.26214 l -0.26133,0 c -0.0254,0.0552 -0.0683,0.10578 -0.13096,0.15176 -0.0614,0.046 -0.11761,0.11499 -0.16792,0.20695 l 0,0 z m -26.79806,-0.41391 c -0.0495,-0.0185 -0.11226,-0.046 -0.18659,-0.0828 -0.0749,-0.0368 -0.13687,-0.0552 -0.18657,-0.0552 -0.34833,0.0552 -0.65307,0.0966 -0.91453,0.12417 -0.26115,0.0276 -0.52861,0.0322 -0.80235,0.0138 -0.19915,10e-6 -0.46033,-0.0185 -0.78379,-0.0552 -0.32346,-0.0368 -0.58476,0.0369 -0.78378,0.22077 1.04509,0.0367 2.11491,0.0644 3.20986,0.0828 1.09468,0.0185 2.16462,0.0185 3.2097,0 0.39819,0.0185 0.7278,0.0367 0.98896,0.0552 0.2613,0.0185 0.49147,-0.046 0.69048,-0.19316 -0.84591,-0.0919 -1.59857,-0.14257 -2.25791,-0.15178 -0.65948,-0.009 -1.38726,0.005 -2.18348,0.0413 l 0,0 z m 30.82893,0.82784 c -0.29867,0 -0.64085,-0.0138 -1.02651,-0.0413 -0.38566,-0.0275 -0.74636,-0.0367 -1.08229,-0.0275 -0.33603,0.009 -0.59092,0.0413 -0.76509,0.0966 -0.17425,0.0552 -0.18673,0.15636 -0.0371,0.30354 1.11954,-0.0367 2.24552,-0.046 3.37773,-0.0276 1.13192,0.0184 2.18331,0.0184 3.15385,0 0.17406,-0.0185 0.35436,-0.0229 0.5411,-0.0138 0.18654,0.009 0.37317,0.0138 0.55982,0.0138 0.18663,0 0.35445,-0.0185 0.50394,-0.0552 0.1492,-0.0367 0.28601,-0.10112 0.41043,-0.19317 -0.22389,2e-5 -0.5412,2e-5 -0.95172,0 -0.41063,2e-5 -0.87099,2e-5 -1.38087,0 -0.5102,2e-5 -1.05138,-0.005 -1.62358,-0.0138 -0.57231,-0.009 -1.13223,-0.0229 -1.67957,-0.0413 l 0,0 z m -3.80698,0.30353 0.7837,0 c -0.0751,-0.0552 -0.0936,-0.13336 -0.0565,-0.23456 0.037,-0.10123 0.0185,-0.15176 -0.0566,-0.15176 -0.3485,0.0921 -0.57239,0.22076 -0.67176,0.38632 l 0,0 z m 2.20212,0.24834 c -0.19921,-0.0185 -0.43549,-0.0322 -0.70921,-0.0413 -0.27381,-0.009 -0.48532,0.0873 -0.63451,0.28973 1.04505,-0.0184 2.15843,0 3.34038,0.0552 1.18195,0.0552 2.20827,0.092 3.07916,0.11034 0.32345,-0.0369 0.67176,-0.0598 1.04514,-0.069 0.37318,-0.009 0.59707,-0.12416 0.67176,-0.34493 -1.04514,0.0184 -2.18974,0.0138 -3.43371,-0.0138 -1.24416,-0.0275 -2.36399,-0.0229 -3.35901,0.0138 l 0,0 z m -24.14805,-0.85542 c -0.82121,0.0184 -1.58,0.0276 -2.27677,0.0276 -0.69663,0 -1.38098,-0.009 -2.05262,-0.0276 -0.67192,-0.0185 -1.34996,-0.0323 -2.03432,-0.0413 -0.68419,-0.009 -1.43684,-0.0138 -2.25791,-0.0138 0.0494,0.092 0.15544,0.15178 0.31717,0.17936 0.16187,0.0276 0.26746,0.0413 0.31732,0.0413 1.19439,0.0369 2.54409,0.0552 4.04951,0.0552 1.50541,0 2.9424,0.0185 4.3108,0.0552 0,-0.092 -0.0307,-0.15176 -0.0935,-0.17937 -0.0628,-0.0275 -0.15545,-0.0598 -0.27989,-0.0966 l 0,0 z m 21.23672,1.04858 c 0.39825,-0.0184 0.65324,-0.009 0.76508,0.0276 0.11234,0.0367 0.30492,0.009 0.57855,-0.0828 -0.12433,-0.0552 -0.34208,-0.0966 -0.65315,-0.12417 -0.31096,-0.0276 -0.54118,0.0322 -0.69048,0.17936 l 0,0 z m -18.139,0.0828 c -0.19902,-0.14715 -0.41048,-0.29893 -0.63436,-0.45531 -0.22415,-0.15635 -0.43546,-0.24372 -0.63462,-0.26212 0.19916,0.11032 0.36089,0.25293 0.48532,0.42769 0.1243,0.17478 0.38561,0.27136 0.78366,0.28974 l 0,0 z m -7.46468,-0.0276 c -0.57219,-0.0185 -1.14453,-0.0275 -1.71672,-0.0275 -0.57233,0 -1.08238,0.0185 -1.53028,0.0552 -0.1243,0 -0.27988,0.0138 -0.46647,0.0413 -0.18659,0.0276 -0.34217,-0.0322 -0.46661,-0.17936 0.0749,-0.14717 0.19287,-0.21155 0.3546,-0.19316 0.16173,0.0184 0.30475,0.0276 0.42919,0.0276 0.99535,-0.0736 2.04031,-0.0598 3.13514,0.0414 1.0948,0.10112 2.1026,0.115 3.02325,0.0413 -0.17429,0 -0.26143,-0.0367 -0.26143,-0.11033 0.19914,0.11033 0.4356,0.18397 0.7092,0.22076 0.27373,0.0369 0.57232,0.0599 0.89578,0.0689 0.32347,0.009 0.64693,0.009 0.97038,0 0.32346,-0.009 0.63448,-0.0138 0.93308,-0.0138 -0.1243,-0.29435 -0.37946,-0.4507 -0.76507,-0.46911 -0.38574,-0.0185 -0.81492,-0.0369 -1.28755,-0.0552 -1.36868,-0.0367 -2.74967,-0.0828 -4.14306,-0.13797 -1.39329,-0.0552 -2.7494,-0.0552 -4.06809,0 0.0494,0.20237 0.0628,0.36332 0.0374,0.4829 -0.0254,0.11959 -0.0134,0.25294 0.0374,0.40012 0.89579,0 1.81016,0.0229 2.74323,0.0689 0.93322,0.046 1.87232,0.0966 2.81798,0.15178 0.94551,0.0552 1.89087,0.0966 2.83652,0.12416 0.94551,0.0275 1.87861,0.0138 2.79925,-0.0413 -0.29858,-0.20235 -0.74034,-0.29435 -1.3251,-0.27596 -0.58464,0.0185 -1.17554,0.0185 -1.77273,0 0.1243,0.0367 0.24874,0.0689 0.37316,0.0966 0.12431,0.0276 0.24875,0.069 0.37332,0.12418 -0.69677,-0.20236 -1.41826,-0.31734 -2.16488,-0.34493 -0.74638,-0.0276 -1.58001,-0.0598 -2.50067,-0.0966 l 0,0 z m 27.17129,0.27595 c 0.0751,0.0552 0.10025,0.11032 0.0751,0.16556 -0.0254,0.0552 -0.0136,0.13798 0.0371,0.24835 1.19424,0.0367 2.30149,0.0644 3.32177,0.0828 1.02007,0.0184 2.08998,0.046 3.20981,0.0828 0.0497,-0.0552 0.16158,-0.11959 0.33593,-0.19319 0.17396,-0.0736 0.19883,-0.12876 0.0751,-0.16556 -1.04513,-0.0921 -2.22084,-0.16556 -3.52711,-0.22075 -1.30639,-0.0552 -2.48189,-0.0552 -3.52704,0 l 0,0 z m -2.46326,0.33112 c 0.27362,0.0185 0.55348,0.0276 0.83978,0.0276 0.2861,0 0.55348,0.009 0.80243,0.0276 0.0989,-0.0552 0.1176,-0.10111 0.0565,-0.13798 -0.0614,-0.0367 -0.0682,-0.0552 -0.0185,-0.0552 0.12432,0.0368 0.20516,0.0873 0.24271,0.15177 0.0371,0.0644 0.11759,0.0783 0.24241,0.0413 0.099,-0.0552 0.14939,-0.13797 0.14939,-0.24834 0,-0.11036 -0.037,-0.19316 -0.11234,-0.24834 -0.19901,0.0185 -0.41676,0.0275 -0.65303,0.0275 -0.23647,0 -0.4666,0.005 -0.69049,0.0138 -0.22409,0.009 -0.41677,0.0414 -0.57864,0.0966 -0.16177,0.0552 -0.25489,0.15638 -0.27977,0.30354 l 0,0 z m 10.00253,0.85543 c 0.0751,-0.0921 0.17416,-0.16557 0.29869,-0.22075 0.12432,-0.0552 0.16157,-0.11034 0.11223,-0.16557 -0.0751,0.0369 -0.17416,0.0873 -0.29859,0.15178 -0.12422,0.0644 -0.16187,0.14257 -0.11223,0.23454 l 0,0 z m -10.30121,-0.57948 c 0.32355,0 0.74031,0.046 1.2504,0.13796 0.50999,0.0921 0.96411,0.0644 1.36225,-0.0828 -0.099,-0.0552 -0.26748,-0.092 -0.50395,-0.11032 -0.23646,-0.0185 -0.49126,-0.0276 -0.76507,-0.0276 -0.27373,0 -0.53506,0.009 -0.78371,0.0276 -0.24895,0.0184 -0.4355,0.0367 -0.55992,0.0551 l 0,0 z m 2.7245,0.16556 c 0.87108,0.12878 1.77911,0.22536 2.72479,0.28974 0.94538,0.0644 1.77891,0.0873 2.50051,0.0688 0.0751,0 0.16178,0.0138 0.26133,0.0413 0.0989,0.0276 0.17416,0.0413 0.22399,0.0413 0.099,-0.0367 0.1803,-0.0966 0.24261,-0.17936 0.0614,-0.0828 0.13096,-0.14257 0.20516,-0.17936 -0.9952,-0.0736 -1.96574,-0.12417 -2.91113,-0.15177 -0.94558,-0.0276 -1.97814,-0.0598 -3.09777,-0.0966 -2e-4,0.0552 -0.0497,0.11034 -0.14949,0.16556 l 0,0 z m -1.56742,0.16555 c -0.27371,-0.0185 -0.53504,-0.0138 -0.78381,0.0138 -0.24885,0.0276 -0.51008,0.0322 -0.78379,0.0138 -0.0254,0.0552 -0.0819,0.10577 -0.16803,0.15176 -0.0868,0.046 -0.13095,0.0966 -0.13095,0.15176 0.6469,0.0184 1.22544,0.046 1.73563,0.0828 0.50989,0.0367 1.02631,0.0644 1.54878,0.0828 0,-0.11033 -0.0439,-0.20236 -0.13096,-0.27594 -0.0868,-0.0736 -0.20526,-0.12417 -0.35455,-0.15179 -0.14939,-0.0276 -0.31107,-0.046 -0.48522,-0.0552 -0.17416,-0.009 -0.32345,-0.0138 -0.44788,-0.0138 l 0,0 z m -2.91123,0.30357 c 0.12423,-0.0552 0.23637,-0.0552 0.33583,0 0.099,0.0552 0.21161,0.0644 0.33603,0.0275 0.0497,-0.0552 0.1056,-0.10578 0.16791,-0.15175 0.0614,-0.046 0.10562,-0.0966 0.13097,-0.15178 -0.37329,0 -0.69673,0.092 -0.97054,0.27595 l 0,0 z m 5.63573,-0.0276 c -0.0989,0 -0.21774,-0.0185 -0.35446,-0.0552 -0.13681,-0.0367 -0.26143,-0.0598 -0.37328,-0.0689 -0.11233,-0.009 -0.19921,0.005 -0.26133,0.0414 -0.0624,0.0369 -0.0819,0.1196 -0.0565,0.24836 0.29859,0.0369 0.6468,0.0643 1.04494,0.0828 0.39824,0.0184 0.79629,0.0276 1.19443,0.0276 0.39815,1e-5 0.77133,-0.009 1.11965,-0.0276 0.34831,-0.0185 0.62202,-0.046 0.82125,-0.0828 -0.34852,-0.0552 -0.8275,-0.0828 -1.43714,-0.0828 -0.60946,1e-5 -1.17571,-0.0276 -1.69819,-0.0828 l 0,0 z m -32.5083,-1.021 c 0.0494,0.25757 0.0868,0.47831 0.11228,0.66228 0.0254,0.18395 0.0628,0.34951 0.11226,0.49668 0.52262,-0.0367 1.0761,-0.046 1.66087,-0.0276 0.58476,0.0184 1.07623,0.0276 1.47442,0.0276 0.0749,-0.16556 0.0815,-0.28514 0.0186,-0.35871 -0.0615,-0.0736 -0.16186,-0.11959 -0.2986,-0.13797 -0.13674,-0.0184 -0.28603,-0.0276 -0.44776,-0.0276 -0.16186,0 -0.30487,0 -0.42932,0 -0.19901,0 -0.39816,-0.0138 -0.59718,-0.0413 -0.19903,-0.0276 -0.39805,-0.0507 -0.5972,-0.0689 -0.0989,1e-5 -0.20531,1e-5 -0.31718,0 -0.11227,1e-5 -0.21773,-0.009 -0.31717,-0.0276 -0.10024,-0.0185 -0.17429,-0.0507 -0.22402,-0.0966 -0.0494,-0.046 -0.0494,-0.11501 0,-0.20697 0.72163,0.0367 1.31255,0.0828 1.77287,0.13798 0.4602,0.0552 0.95166,0.046 1.47427,-0.0276 0.17403,0.0367 0.39189,0.0736 0.65307,0.11033 0.26131,0.0369 0.53504,0.0644 0.82108,0.0828 0.28616,0.0185 0.55362,0.0138 0.80263,-0.0138 0.24874,-0.0275 0.44775,-0.0966 0.59706,-0.20693 -0.97051,-0.0921 -1.92845,-0.15177 -2.87384,-0.17938 -0.94564,-0.0275 -2.07775,-0.0599 -3.39644,-0.0966 l 0,0 z m 9.2934,0.35872 c -0.47262,-0.0184 -0.94552,-0.0644 -1.41828,-0.13796 -0.47262,-0.0736 -0.87079,-0.0185 -1.19438,0.16557 0.32359,0.092 0.83364,0.13798 1.53041,0.13795 0.6965,3e-5 1.40571,-0.046 2.12734,-0.13795 -0.19915,-0.0551 -0.39204,-0.0689 -0.57861,-0.0413 -0.18659,0.0276 -0.34204,0.0323 -0.46648,0.0138 l 0,0 z m 1.82888,0.0552 c 0.0494,0 0.13098,0.005 0.24272,0.0138 0.11227,0.009 0.20517,0.0138 0.27975,0.0138 0,-0.0919 -0.0868,-0.11956 -0.26117,-0.0828 -0.0989,0.0184 -0.18659,0.0367 -0.2613,0.0552 l 0,0 z m 26.9845,0.93821 c 0.12433,0.0185 0.20516,0 0.24261,-0.0551 0.037,-0.0552 0.0936,-0.12876 0.16802,-0.22075 -0.0751,0.0552 -0.16187,0.0921 -0.26133,0.11034 -0.10025,0.0185 -0.14939,0.0737 -0.1493,0.16556 l 0,0 z m -2.50061,0.71746 c 0.0751,-0.0735 0.17416,-0.14258 0.29858,-0.20697 0.12434,-0.0644 0.255,-0.12418 0.39191,-0.17936 0.13691,-0.0552 0.25499,-0.11034 0.35455,-0.16556 0.099,-0.0552 0.14919,-0.11958 0.14929,-0.19316 -0.19892,0.14718 -0.44796,0.27133 -0.74645,0.37252 -0.29859,0.10113 -0.44798,0.22535 -0.44788,0.37253 l 0,0 z m -23.99872,-1.35213 c -0.39817,-0.0185 -0.83977,-0.0138 -1.32497,0.0138 -0.48518,0.0275 -0.96409,0.0322 -1.43698,0.0138 -0.39817,0.0369 -0.80236,0.0322 -1.21283,-0.0138 -0.41074,-0.046 -0.82749,0.005 -1.2504,0.15175 1.04497,0.0736 2.18334,0.15638 3.41503,0.24836 1.23168,0.092 2.44465,0.13796 3.63903,0.13796 -0.34831,-0.0736 -0.65935,-0.17015 -0.93308,-0.28973 -0.27374,-0.11958 -0.57234,-0.20695 -0.8958,-0.26215 l 0,0 z m -7.05404,0.11033 c 0.0989,0 0.19914,0 0.29858,0 0.0989,0 0.19903,-0.009 0.29861,-0.0276 0.0989,-0.0185 0.19902,-0.0367 0.29847,-0.0552 -0.39805,-0.0367 -0.69652,-0.009 -0.89566,0.0828 l 0,0 z m 26.90994,0.63466 c 0.0497,0.14719 0.0371,0.26675 -0.0371,0.35874 -0.0751,0.0921 -0.0751,0.16556 0,0.22075 0.29849,0 0.65918,0.0138 1.08229,0.0413 0.42301,0.0275 0.83978,0.0322 1.25031,0.0138 0.41052,-0.0185 0.78994,-0.0736 1.13826,-0.16557 0.34851,-0.092 0.59726,-0.23915 0.74665,-0.4415 -0.37347,0.0369 -0.70306,0.0598 -0.98917,0.0689 -0.28609,0.009 -0.57854,0.009 -0.87712,0 -0.29858,-0.009 -0.62836,-0.0229 -0.98897,-0.0413 -0.3609,-0.0185 -0.80243,-0.0367 -1.325,-0.0552 l 0,0 z m -7.09147,0.30354 c -0.19902,0.0921 -0.41047,0.12878 -0.63436,0.11036 -0.224,-0.0185 -0.36087,-0.009 -0.41073,0.0276 0.19916,0.0185 0.39203,0.0413 0.57861,0.069 0.1866,0.0276 0.37947,0.0506 0.5785,0.0689 0.27372,-0.0367 0.59705,-0.0599 0.97035,-0.0689 0.37338,-0.009 0.62223,-0.0414 0.74655,-0.0966 0.19893,0.0184 0.39815,-0.0552 0.59717,-0.22076 0.19902,-0.16555 0.27372,-0.27594 0.22389,-0.33112 -0.32344,-0.0736 -0.59727,-0.0736 -0.82106,0 -0.22408,0.0736 -0.42934,0.16095 -0.61598,0.26213 -0.18654,0.10122 -0.37315,0.18396 -0.55974,0.24834 -0.18658,0.0644 -0.40446,0.0414 -0.6532,-0.0688 l 0,0 z m 3.28459,-0.41391 c -0.12433,0.0921 -0.27372,0.17016 -0.44807,0.23455 -0.17396,0.0644 -0.29849,0.17018 -0.37318,0.31733 0.47264,0.0185 1.11359,0.0367 1.92216,0.0552 0.80868,0.0185 1.61121,0.0369 2.4073,0.0552 0.0497,-0.092 0.0819,-0.17018 0.0936,-0.23457 0.0136,-0.0644 0.0302,-0.14255 0.0566,-0.23455 -0.5722,-0.0736 -1.16332,-0.11957 -1.77277,-0.13796 -0.60964,-0.0185 -1.23782,-0.0367 -1.88472,-0.0552 l 0,0 z m -20.41583,0.30353 c 0.1243,0.0552 0.27988,0.0736 0.46661,0.0552 0.18658,-0.0184 0.37947,-0.0276 0.57848,-0.0276 0.62192,0.0369 1.29384,0.0689 2.01533,0.0966 0.72163,0.0276 1.43712,0.0552 2.14606,0.0828 0.70933,0.0276 1.39353,0.0598 2.05288,0.0966 0.65935,0.0369 1.25026,0.0828 1.77287,0.13796 -0.59719,-0.25754 -1.21939,-0.41391 -1.8663,-0.46909 -0.64678,-0.0552 -1.33112,-0.092 -2.05262,-0.11033 -0.99523,-0.0367 -2.01546,-0.10113 -3.06055,-0.19316 -1.04496,-0.092 -2.06518,-0.15637 -3.06042,-0.19317 0.19902,0.0184 0.36689,0.0966 0.5039,0.23456 0.13674,0.13799 0.30475,0.23456 0.50376,0.28973 l 0,0 z m 15.3025,0.4415 c 0.0494,0.0369 0.11228,0.0323 0.1866,-0.0138 0.0749,-0.046 0.13686,-0.0413 0.18658,0.0138 0,-0.092 -0.0628,-0.13794 -0.18658,-0.13796 -0.12431,2e-5 -0.18674,0.046 -0.1866,0.13796 l 0,0 z m 4.44137,0.19317 c 0.4231,0.0736 0.83354,0.10123 1.23169,0.0828 0.39804,-0.0184 0.85839,-0.0184 1.38096,0 0.0497,0.0552 0.16178,0.1058 0.33593,0.15178 0.17416,0.046 0.35456,0.0737 0.5412,0.0828 0.18654,0.009 0.35455,0 0.50374,-0.0276 0.1493,-0.0276 0.23647,-0.0873 0.26134,-0.17936 -0.69682,-0.11035 -1.44943,-0.17937 -2.2581,-0.20697 -0.80867,-0.0276 -1.47428,0.005 -1.99676,0.0966 l 0,0 z m 4.40415,0.33113 c 0.19903,-0.0185 0.41677,-0.0185 0.65305,0 0.23646,0.0185 0.46659,0.0323 0.69067,0.0413 0.2237,0.009 0.41658,-0.005 0.57835,-0.0413 0.16178,-0.0367 0.26757,-0.11033 0.31731,-0.22074 -0.32356,-0.0185 -0.67196,-0.0323 -1.04515,-0.0413 -0.37317,-0.009 -0.75874,-0.0138 -1.15678,-0.0138 -0.10024,0.0369 -0.13106,0.0828 -0.0936,0.13798 0.037,0.0552 0.0565,0.10123 0.0565,0.13796 l 0,0 z m -31.05277,-0.88301 c 0.44789,-0.0368 0.90822,-0.009 1.38097,0.0828 0.47276,0.0919 0.88336,0.0919 1.23155,0 -0.34819,-0.0552 -0.77122,-0.10579 -1.26884,-0.15178 -0.49775,-0.046 -0.94551,-0.0229 -1.34368,0.0689 l 0,0 z m 7.65112,0.5243 c 0.1243,0 0.11227,-0.0322 -0.0374,-0.0966 -0.14931,-0.0644 -0.16173,-0.0966 -0.0374,-0.0966 0.27373,0.0185 0.55375,0.0598 0.83978,0.12417 0.28617,0.0644 0.60348,0.10579 0.9518,0.12418 0.97036,-0.0367 1.99674,-0.0367 3.07913,0 1.08224,0.0368 2.02161,-0.009 2.81781,-0.13798 -1.24396,-0.0367 -2.63737,-0.0782 -4.18008,-0.12417 -1.54271,-0.046 -3.06042,-0.11501 -4.5534,-0.20696 0.19902,0.0919 0.36702,0.17017 0.50377,0.23455 0.13701,0.0644 0.34217,0.12418 0.61577,0.17936 l 0,0 z m 15.93712,0.13797 c -0.27376,0 -0.63462,0 -1.08239,0 -0.44803,0 -0.91449,0.005 -1.39968,0.0138 -0.48521,0.009 -0.95795,0.0276 -1.41828,0.0552 -0.46033,0.0275 -0.81492,0.0599 -1.06368,0.0966 0.0749,0.0369 0.18032,0.0599 0.31732,0.0688 0.13673,0.009 0.20517,0.0598 0.20517,0.15178 -0.64692,-0.14717 -1.37469,-0.22996 -2.18334,-0.24835 -0.80865,-0.0184 -1.62357,-0.009 -2.44464,0.0276 -0.82122,0.0369 -1.62359,0.0783 -2.40749,0.12418 -0.78365,0.046 -1.48657,0.0598 -2.10863,0.0413 1.06982,0.0736 2.13977,0.11957 3.20985,0.13798 1.06981,0.0184 2.15219,0.0276 3.24701,0.0276 1.09481,0 2.20206,0 3.32186,0 1.11953,0 2.2642,0.0276 3.4336,0.0828 0.19902,-0.0921 0.4106,-0.15175 0.63449,-0.17936 0.22401,-0.0276 0.39804,-0.11501 0.52247,-0.26215 -0.0494,0.0369 -0.16172,0.0229 -0.33589,-0.0413 -0.17416,-0.0644 -0.32346,-0.0966 -0.44775,-0.0966 l 0,0 z m 7.31524,0.57947 0,-0.0828 c -0.92071,-0.16554 -1.92217,-0.24833 -3.00445,-0.24833 -1.08249,0 -2.08384,-0.0369 -3.00454,-0.11034 -0.0495,0.0921 -0.15545,0.15638 -0.31731,0.19317 -0.16173,0.0369 -0.26745,0.10112 -0.31718,0.19315 0.59707,0.0184 1.20053,0.0367 1.81018,0.0552 0.60946,0.0184 1.20681,0.0367 1.79159,0.0551 0.58459,0.0185 1.13827,0.0229 1.66074,0.0138 0.52247,-0.009 0.98283,-0.0322 1.38097,-0.0688 l 0,0 z m -26.38738,-0.9106 c 0.12432,0 0.21146,0.0185 0.26119,0.0552 0.0494,0.0367 0.13699,0.0643 0.2613,0.0828 0.0254,-0.0921 -0.0495,-0.16097 -0.22388,-0.20696 -0.17416,-0.046 -0.27373,-0.0229 -0.29861,0.0689 l 0,0 z m 27.84295,0.77264 c -0.19903,-0.0184 -0.39805,-0.0276 -0.59707,-0.0276 -0.19922,0 -0.39824,0 -0.59716,0 0.0254,0.12879 0.0799,0.20698 0.16781,0.23459 0.0868,0.0275 0.19288,0.0367 0.31731,0.0275 0.12432,-0.009 0.24875,-0.0413 0.37318,-0.0966 0.12433,-0.0552 0.23647,-0.10124 0.33593,-0.13797 l 0,0 z m -32.39647,-0.80024 0,0.27595 c 0.19915,-0.0185 0.41688,-0.0185 0.65319,0 0.23644,0.0185 0.46661,0.0367 0.69049,0.0551 0.22402,0.0184 0.43546,0.0184 0.63462,0 0.19902,-0.0185 0.36074,-0.0736 0.48506,-0.16556 -0.44778,-0.0185 -0.86452,-0.0598 -1.25027,-0.12417 -0.38561,-0.0644 -0.79006,-0.0783 -1.21309,-0.0413 l 0,0 z m 3.65775,0.57947 c 0,0.0552 0.0494,0.0873 0.14929,0.0966 0.10024,0.009 0.17416,0.0138 0.22402,0.0138 0.0749,-0.0369 0.14301,-0.0644 0.20516,-0.0828 0.0628,-0.0184 0.13099,-0.046 0.20531,-0.0828 -0.12431,0 -0.19274,-0.0505 -0.20531,-0.15176 -0.0134,-0.10124 -0.0815,-0.15178 -0.20516,-0.15178 -0.0494,0.0368 -0.12431,0.0689 -0.22402,0.0966 -0.0989,0.0276 -0.14929,0.11501 -0.14929,0.26215 l 0,0 z m 1.67956,-0.13796 c -0.12429,0.092 -0.11226,0.14257 0.0374,0.15176 0.14917,0.009 0.22387,0.0599 0.22387,0.15178 -0.19914,-0.0552 -0.41073,-0.0783 -0.63462,-0.0689 -0.22386,0.009 -0.41047,0.0873 -0.55977,0.23455 2.56282,0.73585 5.25005,1.09455 8.06174,1.07617 -0.64692,-0.0552 -1.30627,-0.17936 -1.97805,-0.37252 -0.6719,-0.19317 -1.2691,-0.39092 -1.79159,-0.59327 -0.27372,0 -0.49133,-0.005 -0.65305,-0.0138 -0.16187,-0.009 -0.37947,-0.0138 -0.65319,-0.0138 -0.17417,-0.14719 -0.4729,-0.27594 -0.8958,-0.38633 -0.42305,-0.11033 -0.80864,-0.16555 -1.15697,-0.16555 l 0,0 z m -5.22517,0.16556 c 0.0254,0.0552 0.11761,0.0966 0.27988,0.12418 0.16173,0.0276 0.33575,0.0413 0.52261,0.0413 0.1866,0 0.37932,-0.009 0.57849,-0.0275 0.19887,-0.0185 0.34831,-0.0552 0.44775,-0.11033 -0.47274,0.0368 -0.80865,0.0413 -1.00766,0.0138 -0.19916,-0.0275 -0.47288,-0.0413 -0.82107,-0.0413 l 0,0 z m 2.2019,0.71745 c 0.12432,0.0552 0.20545,0.10112 0.24274,0.13798 0.0374,0.0368 0.11763,0.0552 0.24259,0.0552 0.14929,-0.12878 0.3109,-0.24834 0.48518,-0.35876 0.17404,-0.11032 0.32346,-0.23912 0.44778,-0.38631 -0.12432,-0.0736 -0.24875,-0.0966 -0.3732,-0.0688 -0.12429,0.0276 -0.24886,0.0736 -0.37316,0.13797 -0.1243,0.0644 -0.24259,0.14257 -0.35461,0.23455 -0.11227,0.0921 -0.2176,0.17477 -0.31732,0.24835 l 0,0 z m 24.55864,0.0828 c 0,0.0551 0,0.13796 0,0.24836 0,0.11034 0.0253,0.19316 0.0751,0.24835 l 0.14929,0.0275 c 0.6469,-0.18396 1.35611,-0.35871 2.12744,-0.5243 -0.47274,-0.0185 -0.85217,-0.0185 -1.13826,0 -0.28611,0.0185 -0.69059,0.0185 -1.21307,0 l 0,0 z m -11.90607,-0.13795 c 1.56756,0.11033 3.17242,0.19775 4.8147,0.26213 1.64229,0.0644 3.22228,0.0689 4.74,0.0138 0.1243,0 0.29846,-0.005 0.52263,-0.0138 0.22388,-0.009 0.39804,-0.0599 0.52246,-0.15175 -0.8212,-0.0185 -1.6733,-0.046 -2.55665,-0.0828 -0.88323,-0.0367 -1.77902,-0.0689 -2.68725,-0.0966 -0.90821,-0.0276 -1.8163,-0.0413 -2.72453,-0.0413 -0.90822,0 -1.78529,0.0367 -2.63136,0.11035 l 0,0 z m -14.89177,-0.27593 c -0.0494,0.0919 -0.0441,0.15174 0.0186,0.17934 0.0615,0.0276 0.0561,0.0598 -0.0186,0.0966 0.24874,2e-5 0.5162,0.009 0.80237,0.0276 0.28617,0.0185 0.45417,-0.0736 0.50389,-0.27594 -0.27373,0.0367 -0.52875,0.0276 -0.76519,-0.0276 -0.23632,-0.0552 -0.41676,-0.0552 -0.54107,0 l 0,0 z m 26.64855,0.71743 c -0.79628,0.0921 -1.55513,0.11957 -2.27679,0.0828 -0.7215,-0.0368 -1.45556,-0.0368 -2.20193,0 0.14929,-0.0552 0.22388,-0.0276 0.22388,0.0828 0,0.11033 0.0615,0.14717 0.1866,0.11033 0.64691,0.0552 1.20067,0.0599 1.66099,0.0138 0.46032,-0.046 0.95168,-0.0873 1.47415,-0.12418 0.0497,0 0.0751,0.0322 0.0751,0.0966 0,0.0643 0.0624,0.1058 0.18673,0.12418 0.0497,0 0.16168,-0.005 0.33583,-0.0138 0.17417,-0.009 0.32345,-0.0413 0.44798,-0.0966 0,-0.0368 -0.0254,-0.0689 -0.0751,-0.0966 -0.0497,-0.0276 -0.0614,-0.0873 -0.0371,-0.17937 l 0,0 z m -9.96534,0.19317 c 0.44804,0.0184 0.85849,0.0413 1.23168,0.0689 0.37319,0.0275 0.73406,0.0413 1.08238,0.0413 0.34845,0 0.6905,-0.0138 1.02638,-0.0413 0.33602,-0.0276 0.70292,-0.0966 1.10109,-0.20696 -0.84593,-0.0185 -1.62985,-0.0413 -2.35134,-0.0689 -0.72151,-0.0276 -1.43698,-0.0552 -2.14606,-0.0828 -0.7092,-0.0275 -1.44326,-0.0599 -2.20205,-0.0966 -0.75892,-0.0367 -1.59871,-0.0828 -2.51923,-0.13797 0.6965,0.18395 1.45556,0.31275 2.2765,0.38632 0.82121,0.0736 1.65472,0.11959 2.50065,0.13797 l 0,0 z m -16.5712,-0.44151 c 0,0.0552 -0.0187,0.12417 -0.0561,0.20694 -0.0374,0.0828 -0.0187,0.14256 0.0561,0.17938 0.0495,-0.092 0.13673,-0.16557 0.26118,-0.22076 0.12429,-0.0552 0.24873,-0.11035 0.37316,-0.16556 -0.1243,-0.0369 -0.23015,-0.046 -0.3173,-0.0276 -0.0869,0.0185 -0.19287,0.0276 -0.31704,0.0276 l 0,0 z m 1.94062,0.0552 c -0.14917,0.16557 -0.32961,0.31734 -0.5412,0.45531 -0.21132,0.13798 -0.41675,0.26676 -0.61576,0.38633 -0.19917,0.11958 -0.38575,0.24834 -0.55978,0.38631 -0.1743,0.13797 -0.27374,0.28974 -0.29859,0.45532 0.9455,-0.44151 1.75415,-0.96581 2.42592,-1.57289 -0.0749,0 -0.14301,-0.0184 -0.20517,-0.0551 -0.0628,-0.0369 -0.13098,-0.0552 -0.20542,-0.0552 l 0,0 z m 17.13124,0.85543 c 0.89578,0.092 1.75428,0.13335 2.57535,0.12418 0.82109,-0.009 1.56758,-0.0966 2.23935,-0.26215 -0.44775,0.0367 -0.8708,0.0552 -1.26897,0.0552 -0.39817,0 -0.78378,-0.005 -1.15696,-0.0138 -0.37319,-0.009 -0.75265,-0.009 -1.13839,0 -0.3856,0.009 -0.80236,0.0413 -1.25038,0.0966 l 0,0 z m -1.97805,-0.13797 c -0.27374,-0.11045 -0.5349,-0.14718 -0.78378,-0.11045 -0.24874,0.0369 -0.51018,0.0185 -0.78366,-0.0552 0.27348,0.11034 0.53492,0.17477 0.78366,0.19316 0.24888,0.0185 0.51004,0.009 0.78378,-0.0276 l 0,0 z m -18.21363,0.93819 c 0.0989,-0.0185 0.1616,-0.0689 0.18661,-0.15175 0.0254,-0.0828 0.0307,-0.17938 0.0187,-0.28974 -0.0134,-0.11034 -0.0307,-0.22077 -0.0561,-0.33114 -0.0254,-0.11034 -0.0495,-0.20237 -0.0749,-0.27595 -0.0254,0.20237 -0.0254,0.37713 0,0.52431 0.0241,0.14716 0,0.32192 -0.0749,0.52427 l 0,0 z m 0.22389,0.77265 c 0.12432,-0.0919 0.16801,-0.18396 0.131,-0.27595 -0.0374,-0.0921 -0.11764,-0.15638 -0.2426,-0.19315 -0.0494,0.23916 -0.0134,0.39551 0.11227,0.4691 l 0,0 z m 36.61395,-26.048987 0,0.30354 c -0.0751,4e-5 -0.11224,-0.0505 -0.11224,-0.15176 0,-0.10112 0.0371,-0.15176 0.11224,-0.15178 l 0,0 z m 7.27794,6.181127 c 0.0497,1e-5 0.0614,0.0322 0.0371,0.0966 -0.0254,0.0644 -0.0136,0.0966 0.037,0.0966 0,0.0369 0,0.10123 0,0.19315 0,0.092 0,0.17937 0,0.26215 0,0.0828 0,0.12879 0,0.13797 0,0.009 0,-0.0597 0,-0.20697 l 0,-0.0828 c -0.0497,-0.0919 -0.0799,-0.17473 -0.0936,-0.24835 -0.0136,-0.0736 0,-0.15634 0.0185,-0.24833 l 0,0 z m -21.68462,4.55305 c -0.10024,0.0184 -0.2116,1e-5 -0.33589,-0.0552 -0.12432,-0.0552 -0.2426,-0.11035 -0.35461,-0.16556 -0.11228,-0.0552 -0.2176,-0.10114 -0.31731,-0.13798 -0.0989,-0.0368 -0.18659,-0.0368 -0.26117,0 -0.0749,10e-6 -0.0868,-0.0139 -0.0374,-0.0414 0.0494,-0.0275 0.0989,-0.0415 0.14914,-0.0415 -0.39803,-0.20234 -0.84592,-0.35871 -1.34353,-0.46909 -0.49763,-0.11034 -0.9081,-0.29432 -1.2317,-0.55189 0.64692,0.1472 1.26898,0.36333 1.86632,0.64846 0.59705,0.28517 1.2191,0.49211 1.86601,0.62088 -0.1243,-0.0184 -0.17428,-0.005 -0.14929,0.0414 0.0254,0.0459 0.0749,0.0966 0.14929,0.15178 l 0,0 z m -24.11072,-1.62807 c 0.0749,-0.0552 0.14943,-0.0873 0.22401,-0.0966 0.0749,-0.009 0.17415,-0.0138 0.2986,-0.0138 -0.0494,0.092 -0.0561,0.115 -0.0186,0.0689 0.0374,-0.0459 0.0935,-0.0689 0.168,-0.0689 -0.0749,0.092 -0.15558,0.1196 -0.24272,0.0828 -0.0869,-0.0368 -0.23017,-0.0275 -0.42919,0.0276 l 0,0 z"
+       id="text6103-2-3-8" />
+    <path
+       inkscape:export-ydpi="112"
+       inkscape:export-xdpi="112"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       style="font-size:27.28304291px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#916f6f;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:JaneAusten;-inkscape-font-specification:JaneAusten"
+       d="m -583.67757,51.580376 c 0.27768,0.152195 0.62518,0.243255 1.04267,0.272946 0.41737,0.02992 0.46546,-0.07537 0.14504,-0.315268 -0.32097,-0.240123 -0.6538,-0.425818 -0.99835,-0.556911 -0.34478,-0.130823 -0.53176,-0.102125 -0.56138,0.08717 -0.0297,0.189201 0.0945,0.359998 0.37259,0.512205 l 0,0 -5.7e-4,-1.41e-4 z m -4.59049,2.586682 c -0.74244,-0.381533 -0.82298,-0.807433 -0.24155,-1.278215 0.58133,-0.470805 0.88612,-1.067607 0.91427,-1.790454 0.0273,-0.72287 0.32164,-1.133019 0.88213,-1.230261 0.56002,-0.09733 0.94788,-0.969571 1.163,-2.6167 0.21547,-1.647159 0.3392,-2.760519 0.37111,-3.339942 0.0319,-0.579422 0.0844,-1.16054 0.15723,-1.743155 0.0729,-0.582514 0.19006,-0.967736 0.35095,-1.155574 0.16112,-0.18774 0.32405,-0.316616 0.48983,-0.386242 0.21934,-0.08512 0.46944,-0.124576 0.74962,-0.118602 0.2803,0.0055 0.54078,0.07182 0.78108,0.197027 0.39469,0.216335 0.69105,0.452598 0.88942,0.709042 0.19838,0.256356 0.28679,0.693159 0.26549,1.310608 -0.0216,0.617393 -0.22139,1.601987 -0.60116,2.95357 -0.37953,1.351893 -0.78733,2.315781 -1.22361,2.891772 -0.4364,0.575934 -0.51161,0.948937 -0.22527,1.118718 0.28645,0.169768 0.6325,0.349832 1.03858,0.540201 0.40552,0.190334 0.74051,0.396303 1.00427,0.618022 0.26379,0.221755 0.64901,0.169594 1.15528,-0.156273 0.50589,-0.32596 0.91665,-0.745994 1.23135,-1.260279 0.31413,-0.514494 0.94822,-0.568209 1.90055,-0.161718 -0.2035,0.453349 -0.40097,0.823243 -0.59375,1.109136 -0.19233,0.286091 -0.42843,0.551407 -0.70781,0.796262 -0.27973,0.244833 -0.55445,0.5017 -0.82437,0.770942 -0.27027,0.26916 -0.63111,0.494934 -1.08255,0.677591 -0.4511,0.182646 -0.93489,0.251271 -1.45048,0.206086 -0.5157,-0.04511 -0.96531,-0.121476 -1.34896,-0.229093 -0.38387,-0.107734 -0.57574,-0.0236 -0.57586,0.252369 -2.3e-4,0.275972 0.0523,0.911778 0.1594,1.907244 0.10599,0.995407 0.20099,1.875414 0.2844,2.640011 0.0832,0.764503 0.29192,1.745374 0.62566,2.94252 0.33339,1.197063 0.56082,2.124021 0.68182,2.780813 0.12079,0.656699 0.27187,1.09911 0.4536,1.327116 0.18163,0.227889 0.33227,0.249436 0.45178,0.06485 0.11987,-0.184726 0.16659,-0.752772 0.14072,-1.704022 -0.0262,-0.95146 -0.0273,-1.966311 0,-3.044633 0.024,-1.078299 0.0376,-2.074921 0.0433,-2.990018 0,-0.914969 -0.0844,-1.669949 -0.26753,-2.264836 -0.18379,-0.594968 -0.29808,-0.943339 -0.34275,-1.044833 -0.0456,-0.101658 0.0935,-0.134808 0.41476,-0.0999 0.32142,0.03482 0.67043,0.210116 1.04712,0.525805 0.37715,0.315712 0.66359,0.902956 0.8598,1.761476 0.19632,0.858577 0.28006,1.79986 0.25101,2.82386 -0.0285,1.024047 -0.12509,2.309588 -0.28804,3.857068 -0.16328,1.547375 -0.33226,2.587733 -0.50693,3.120959 -0.17443,0.533412 -0.44231,1.066953 -0.80373,1.600727 -0.30742,0.100841 -0.65369,0.161532 -1.03859,0.181606 -0.30422,-0.141071 -0.60104,-0.278087 -0.89045,-0.411014 -0.17433,-0.223998 -0.33761,-0.576588 -0.48927,-1.057558 -0.15165,-0.481181 -0.34422,-1.337749 -0.57767,-2.569809 -0.23371,-1.232189 -0.47936,-2.448462 -0.73744,-3.64909 -0.25797,-1.200487 -0.49154,-2.188603 -0.70028,-2.964125 -0.20874,-0.775568 -0.3294,-1.361679 -0.362,-1.758251 -0.0319,-0.396665 -0.13159,-0.903471 -0.29693,-1.520441 -0.16533,-0.616889 -0.37976,-0.795585 -0.64422,-0.53596 -0.26413,0.259579 -0.90835,0.724775 -1.93269,1.395776 l 0,0 1.2e-4,-1.28e-4 z m 11.43496,-5.632344 c 0.56287,0.103294 1.00758,0.09336 1.33369,-0.02956 0.32609,-0.122855 0.52617,-0.298968 0.59989,-0.528003 0.0741,-0.229256 0.20863,-0.473025 0.40358,-0.732054 0.1953,-0.258855 0.3366,-0.537622 0.42399,-0.83625 0.0878,-0.298661 -0.0729,-0.560071 -0.48221,-0.78443 -0.40951,-0.224337 -0.86641,-0.339879 -1.37151,-0.347283 -0.50488,-0.0067 -0.90949,-0.116626 -1.21394,-0.328408 -0.30433,-0.211802 -0.39948,-0.40517 -0.28576,-0.58032 0.11392,-0.175149 0.44836,-0.386507 1.00371,-0.634086 0.72832,-0.17854 1.42165,-0.151441 2.08035,0.08124 0.65858,0.232826 1.13804,0.505331 1.43873,0.817558 0.3007,0.312526 0.89877,0.457319 1.79458,0.434796 0.89569,-0.0225 1.49002,-0.15553 1.78353,-0.399141 0.29363,-0.243423 0.67134,-0.264302 1.13338,-0.06229 0.37224,0.268236 0.52573,0.458348 0.46124,0.570567 -0.065,0.112198 -0.29295,0.285537 -0.68376,0.520603 -0.39083,0.235053 -1.1049,0.382815 -2.14176,0.443519 -1.03686,0.06062 -1.57776,0.213463 -1.62197,0.45866 -0.0444,0.245261 -0.15951,0.586814 -0.34386,1.024973 -0.18448,0.438122 -0.43516,0.830207 -0.75283,1.175984 -0.31767,0.345731 -0.82117,0.663429 -1.51064,0.953096 -0.87028,0.139132 -1.6828,0.130321 -2.43731,-0.02676 -0.75499,-0.156974 -1.42462,-0.395648 -2.00903,-0.716315 -0.34296,-0.25224 -0.51706,-0.614143 -0.52287,-1.085801 -0.0117,-0.471763 0.049,-0.890983 0.16442,-1.257795 0.11591,-0.366658 0.32438,-0.688527 0.62895,-0.964667 0.30389,-0.276261 0.65061,-0.400781 1.03995,-0.373461 0.38967,0.02738 0.75668,0.106624 1.10158,0.237846 0.34467,0.130771 0.54817,0.268559 0.61084,0.411944 0.0626,0.143372 0.0137,0.277203 -0.15154,0.399352 -0.15997,0.123977 -0.38524,0.292753 -0.67453,0.506361 -0.28976,0.213609 -0.47013,0.515853 -0.54169,0.906641 -0.0717,0.390764 0.17423,0.637898 0.7371,0.741016 l 0,0 0.0117,0.0024 z m 7.20874,-3.134776 c 0.33441,-0.664045 0.41714,-1.494868 0.24839,-2.492386 -0.16874,-0.997538 -0.10026,-1.663044 0.20452,-1.996463 0.30526,-0.333396 0.76935,-0.630957 1.39272,-0.892744 0.25294,-0.09233 0.51707,-0.146567 0.79177,-0.162859 0.2746,-0.01651 0.55228,0.03324 0.83315,0.148561 0.28109,0.115657 0.54111,0.264624 0.78026,0.446988 0.23929,0.182641 0.43447,0.443652 0.5859,0.783342 0.15153,0.339802 0.18732,0.664287 0.10715,0.973778 -0.0798,0.309367 -0.0717,0.557388 0.0228,0.744108 0.0945,0.186619 0.3147,0.317015 0.66074,0.391106 0.34571,0.07393 0.82813,-0.107617 1.44763,-0.544731 0.61949,-0.437092 1.04473,-0.778479 1.27568,-1.024139 0.23108,-0.24566 0.45577,-0.520538 0.67398,-0.824519 l 1.22521,0.440529 c -0.47092,0.678993 -0.90891,1.273322 -1.31398,1.783121 -0.40472,0.509828 -0.96668,0.972179 -1.68462,1.387248 -0.55695,0.233911 -1.00679,0.398157 -1.34975,0.492585 -0.34274,0.09455 -0.74644,0.133166 -1.21086,0.116181 -0.46454,-0.01717 -0.88737,-0.101307 -1.26841,-0.252388 -0.38113,-0.15133 -0.64558,-0.344434 -0.79371,-0.579522 -0.14756,-0.23501 -0.20121,-0.495489 -0.16077,-0.781414 0.041,-0.28586 0.1553,-0.550197 0.34559,-0.792598 0.19039,-0.242447 0.26092,-0.502162 0.21296,-0.778988 -0.049,-0.276926 -0.21957,-0.431538 -0.51285,-0.463947 -0.29329,-0.03235 -0.53303,0.02239 -0.7192,0.16422 -0.18607,0.141978 -0.23085,0.695056 -0.1348,1.659168 0.0969,0.964377 -0.10715,1.764435 -0.60982,2.400225 l -1.04974,-0.344246 -3.4e-4,-2.1e-4 z"
+       id="path6065-6"
+       inkscape:transform-center-y="18.163463"
+       inkscape:transform-center-x="8.6727208" />
+    <text
+       inkscape:export-ydpi="112"
+       inkscape:export-xdpi="112"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       xml:space="preserve"
+       style="font-size:11.43628502px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#666666;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans;-inkscape-font-specification:Arial"
+       x="-627.21265"
+       y="274.00897"
+       id="text2852-7-4"><tspan
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Gill Sans MT;-inkscape-font-specification:Gill Sans MT"
+         sodipodi:role="line"
+         id="tspan2854-33-1"
+         x="-627.21265"
+         y="274.00897">(c) 2009-2010 Obeo - All rights reserved</tspan></text>
+    <g
+       inkscape:export-ydpi="112"
+       inkscape:export-xdpi="112"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       transform="matrix(1.0493829,0,0,1.0493829,218.97161,1202.6086)"
+       id="g4878"
+       style="display:inline;enable-background:new">
+      <path
+         style="fill:#4d7a91;fill-opacity:1;fill-rule:nonzero;stroke:none;display:inline"
+         d="m -977.37123,-1094.1509 c 6.9675,-0.4039 14.0429,1.0075 20.3031,4.1001 7.8158,3.832 14.3396,10.2487 18.2587,18.0254 4.6008,8.9498 5.6521,19.6436 2.8825,29.3184 -2.2611,8.1208 -7.1631,15.4741 -13.765,20.7119 -7.0807,5.6591 -16.1187,8.9201 -25.2053,8.7705 -10.4167,0.1906 -20.7657,-4.087 -28.20727,-11.3394 -7.8268,-7.5097 -12.5081,-18.2996 -12.2967,-29.1762 -0.1423,-7.851 2.3085,-15.6649 6.6021,-22.2114 4.5857,-6.9812 11.38087,-12.4838 19.17017,-15.5022 3.9127,-1.5357 8.0693,-2.4012 12.2577,-2.6971 z"
+         id="path4880-1" />
+      <path
+         id="path4882-52"
+         d="m -976.92283,-1091.766 c 5.6991,-0.2779 11.4864,0.693 16.6069,2.8204 6.393,2.6362 11.7291,7.0503 14.9348,12.4 3.7632,6.1566 4.6231,13.513 2.3578,20.1684 -1.8495,5.5864 -5.8592,10.6449 -11.2592,14.2481 -5.7916,3.8929 -13.1843,6.1362 -20.6167,6.0333 -8.5203,0.1311 -16.9853,-2.8115 -23.0722,-7.8006 -6.40187,-5.166 -10.23087,-12.5885 -10.05797,-20.0706 -0.1165,-5.4008 1.8882,-10.7761 5.4002,-15.2795 3.75077,-4.8025 9.30897,-8.5878 15.68017,-10.6642 3.2005,-1.0564 6.6004,-1.6518 10.0262,-1.8553 z"
+         style="fill:url(#linearGradient4946);fill-opacity:1;fill-rule:nonzero;stroke:none;display:inline" />
+      <path
+         style="fill:none;stroke:#ffffff;stroke-width:2.34782672;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         d="m -997.06743,-1043.8694 -7.15257,0 0,-12.1642 14.30517,0 0,6.4343"
+         id="path4884-7"
+         sodipodi:nodetypes="ccccc" />
+      <path
+         style="fill:none;stroke:#ffffff;stroke-width:3.52174067;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         d="m -971.66433,-1038.4789 0,10.6107 -21.3028,0 0,-17.4648 10.6514,0"
+         id="path4886-6"
+         sodipodi:nodetypes="ccccc" />
+      <g
+         id="g4888"
+         transform="matrix(6.0546137,0,0,5.6461601,1927.4994,551.1239)"
+         style="fill:#ffffff;display:inline">
+        <path
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;font-family:'karabinE.';-inkscape-font-specification:'karabinE. Bold'"
+           d="m -480.34375,-287.96875 c 0.38662,1.96967 -0.84356,4.23211 0.46785,5.9884 1.80858,0.69378 0.16874,-3.60203 0.64696,-4.9532 -0.282,-0.42995 -1.25156,-0.36251 -1.11481,-1.0352 z M -480,-287.4375 c -0.24713,0.19171 0.26515,0.0689 0,0 z m 0.15625,0.21875 c 0.30663,-0.008 0.0562,0.34955 0,0 z m 0.21875,0 c 0,0 0,0 0,0 z m 0.0625,0.0312 c 0.19441,-0.13451 -0.0302,0.20678 0,0 z m -0.25,0.125 c 0.1465,-0.1175 0.0213,0.14276 0,0 z m -0.375,0.0937 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.15625,0 c 0.82674,-0.19273 0.2728,0.37056 0,0 z m 0.9375,0.25 c -0.2658,0.18994 0.24878,0.10677 0,0 z m -0.28125,0.0312 c 0.13365,-0.12205 0.008,0.15892 0,0 z m -0.90625,0.0312 c 0.15892,0.008 -0.12205,0.13365 0,0 z m 0.21875,0 c 0.19374,-0.18117 3.5e-4,0.2505 0,0 z m 0.125,0 c 0.81449,0.0315 0.0766,0.51134 0,0 z m 0.3125,0 c 0.20428,-0.24129 0.0659,0.27149 0,0 z m 0.25,0.0625 c 0.13365,-0.12205 0.008,0.15892 0,0 z m -0.78125,0.0625 c 0,0 0,0 0,0 z m 0.875,0 c 0,0 0,0 0,0 z m -1.03125,0.0625 c 0.17928,-0.21301 0.13001,0.18326 0,0 z m 0.21875,0 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.0937,0 c 0.22501,0.17567 0.28945,0.22598 0,0 z m -0.25,0.0625 c 0.10943,0.11976 -0.17763,0.0142 0,0 z m -0.0625,0.0937 c 0.1465,-0.1175 0.0213,0.14276 0,0 z m 0.3125,0 c 0.41966,-0.1695 0.0962,0.38479 0,0 z m -0.21875,0.0312 c 0.11976,-0.10943 0.0142,0.17763 0,0 z m 0.9375,0.0937 c 0.23277,0.0183 -0.19032,0.19973 0,0 z m -0.9375,0.0312 c 0.21338,-0.005 -0.1156,0.20911 0,0 z m 0.5,0.0625 c 0.15892,0.008 -0.12205,0.13365 0,0 z m -0.5625,0.0937 c 0,0 0,0 0,0 z m 0,0.0625 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.0937,0 c 0.15892,0.008 -0.12205,0.13365 0,0 z m 0.0937,0 c 0.19803,-0.0453 -0.0803,0.17261 0,0 z m 0.15625,0 c 0.15442,-0.21205 0.0645,0.20519 0,0 z m 0.1875,0 c 0.15575,-0.25431 0.12198,0.20428 0,0 z m 0.15625,0 c 0.15442,-0.21205 0.0645,0.20519 0,0 z m 0.21875,0 c 0.17763,0.0142 -0.10943,0.11976 0,0 z m -0.5625,0.0625 c 0.38235,0.69481 -0.61087,0.14165 0,0 z m 0.0625,0 c 0.40532,-0.21731 0.24471,0.25416 0,0 z m 0.78125,0 c -0.12205,0.13365 0.15892,0.008 0,0 z m -0.21875,0.0625 c 0.13365,-0.12205 0.008,0.15892 0,0 z m -0.625,0.0937 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.25,0 c 0.29722,0.1997 -0.64168,0.29387 0,0 z m 0.3125,0 c 0.20774,-0.23681 0.0537,0.28589 0,0 z m 0.21875,0 c 0.17763,0.0142 -0.10943,0.11976 0,0 z m -0.4375,0.0625 c 0,0 0,0 0,0 z m 0.28125,0.0312 c 0.19105,-0.18089 0.0111,0.24359 0,0 z m -0.28125,0.0312 c 0.18932,-0.0804 -0.0778,0.18741 0,0 z m -0.65625,0.0312 c 0.14276,0.0213 -0.1175,0.1465 0,0 z m 0.15625,0.0937 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.15625,0 c 0.23632,-0.19311 0.087,0.25741 0,0 z m -0.3125,0.0625 c 0.91709,-0.004 0.60845,0.34595 0,0 z m 0.65625,0 c 0.10184,-0.10253 0.033,0.1331 0,0 z m 0.21875,0.0937 c 0.26005,-0.0182 -0.1595,0.23212 0,0 z m -0.625,0.125 c 0.27681,0.0928 0.33346,0.11176 0,0 z m -0.15625,0.0312 c 0.15442,-0.21205 0.0645,0.20519 0,0 z m 0.46875,0 c 0.56676,-0.51183 0.0538,0.32672 0,0 z m 0.3125,0 c 0.18748,-0.0951 -0.0452,0.20371 0,0 z m -0.90625,0.0625 c 0.15892,0.008 -0.12205,0.13365 0,0 z m 0.1875,0.0312 0.0811,0.052 -0.0811,-0.052 z m 0.375,0 c 1.20158,-0.16829 -0.64097,0.18775 0,0 z m 0.34375,0.0312 c 0.1465,-0.1175 0.0213,0.14276 0,0 z m 0.0937,0.0312 c 0.1465,-0.1175 0.0213,0.14276 0,0 z m -0.96875,0.0625 c 0.12648,0.0585 -0.17689,0.0972 0,0 z m 0.96875,0 c 0.15794,0.0739 -0.14603,0.12046 0,0 z m -0.71875,0.0312 c 0.898,-0.2226 0.27982,0.47068 0,0 z m 0.0937,0.125 c 0.20538,-0.21045 0.0671,0.23261 0,0 z m -0.25,0.0937 c 0.15442,-0.21205 0.0645,0.20519 0,0 z m 0.125,0 c 0.20721,-0.21266 0.009,0.23749 0,0 z m 0.25,0 c 0.19412,0.17497 -0.24948,0.0223 0,0 z m 0.0625,0 c 0.20825,0.0581 0.14381,0.0401 0,0 z m 0.3125,0.0312 c 0.25747,-0.13883 -0.0384,0.29639 0,0 z m -0.71875,0.0312 c 0.19936,0.0144 -0.0724,0.22142 0,0 z m 0.125,0.0312 c 0.70639,-0.43406 0.27688,0.45876 0,0 z m 0.0937,0.0625 c 0.008,0.15892 0.13365,-0.12205 0,0 z m 0.25,0.0625 c 0.14934,0.14378 0.0779,0.075 0,0 z m 0.28125,0 c 0,0 0,0 0,0 z m -0.6875,0.0625 c 0,0 0,0 0,0 z m 0.34375,0 c 0.11496,-0.0712 -0.008,0.12332 0,0 z m -0.0625,0.0312 c 0,0 0,0 0,0 z m -0.3125,0.0625 c 0.78945,-0.13571 0.36509,0.15807 0,0 z m 0.6875,0.0625 c 0.12046,-0.14603 0.0739,0.15794 0,0 z m -0.4375,0.0625 c -0.0213,0.14276 -0.1465,-0.1175 0,0 z m -0.25,0.0937 c 0.25292,0.033 0.55833,0.0729 0,0 z m 0.375,0.0312 c 0.2051,0.0301 0.10704,0.0157 0,0 z m 0.1875,0 c 0,0 0,0 0,0 z m -0.53125,0.0937 c 0.30113,-0.14159 -0.085,0.24582 0,0 z m 0.15625,0 c 0.32532,-0.28393 0.0306,0.29229 0,0 z m 0.53125,0 c 0.19552,-0.0383 -0.13123,0.20085 0,0 z m -0.78125,0.0625 c 0.15892,0.008 -0.12205,0.13365 0,0 z m 0.0625,0.0312 c 0.14381,-0.15863 0.0988,0.16783 0,0 z m 0.15625,0 c 0.62162,-0.38976 0.33846,0.27135 0,0 z m 0.5625,0 c 0.13365,-0.12205 0.008,0.15892 0,0 z m -0.71875,0.0625 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.8125,0 c 0.13365,-0.12205 0.008,0.15892 0,0 z m -0.40625,0.0312 c 0.28857,0.01 -0.16725,0.26709 0,0 z m 0.125,0.0312 c 0.17032,0.0465 -0.14647,0.13134 0,0 z m -0.28125,0.0625 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.5625,0.0312 c 0.1465,-0.1175 0.0213,0.14276 0,0 z m -0.75,0.0937 c 0,0 0,0 0,0 z m 0.0937,0 c 0,0 0,0 0,0 z m 0.0937,0 c 0.47094,-0.39269 0.0814,0.35806 0,0 z m -0.1875,0.0625 c -0.0213,0.14276 -0.1465,-0.1175 0,0 z m 0.59375,0.0312 c 0,0 0,0 0,0 z m 0.0625,0 c 0.13365,-0.12205 0.008,0.15892 0,0 z m -0.875,0.0312 c 0.038,0.20856 0.024,0.13162 0,0 z m 0.34375,0 c 0,0 0,0 0,0 z m 0.625,0 c 0.15892,0.008 -0.12205,0.13365 0,0 z m 0,0.125 c 0,0 0,0 0,0 z m -0.8125,0.0312 c 0.257,-0.12747 -0.0944,0.3092 0,0 z m 0.15625,0 c 0.69216,-0.26825 -0.0559,0.42105 0,0 z m -0.21875,0.0312 c 0.12648,0.0585 -0.17689,0.0972 0,0 z m 0.625,0 c 0.0821,0.26379 -0.2721,-0.11199 0,0 z m 0.25,0.0312 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0,0.0625 c 0.11976,-0.10943 0.0142,0.17763 0,0 z m -0.28125,0.125 c 0,0 0,0 0,0 z m 0.1875,0 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.0937,0 c 0.1465,-0.1175 0.0213,0.14276 0,0 z M -480,-283 c 0.1465,-0.1175 0.0213,0.14276 0,0 z m 0.3125,0 c 0.12311,0.12251 0.10705,0.10653 0,0 z m 0.125,0.0625 c 0,0 0,0 0,0 z m -0.28125,0.0625 c -0.0105,0.21298 -0.19613,-0.15289 0,0 z m 0.125,0.0312 c 0.13091,-0.16103 0.0817,0.16368 0,0 z m 0,0.0625 c 0.15442,-0.21205 0.0645,0.20519 0,0 z m 0.15625,0 c 0,0 0,0 0,0 z M -480,-282.75 c 0.71188,-0.2072 0.16062,0.51095 0,0 z m 0.625,0.0625 c 0.16898,-0.006 -0.0935,0.15802 0,0 z m -0.21875,0.0312 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.21875,0.0625 c 0.13365,-0.12205 0.008,0.15892 0,0 z M -480,-282.5 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.375,0 c 0.15442,-0.21205 0.0645,0.20519 0,0 z m -0.6875,0.0937 c 0.15442,-0.21205 0.0645,0.20519 0,0 z m 0.3125,0 c 0.51983,-0.18866 0.36988,0.22572 0,0 z m 0.625,0 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.0937,0 c 0.13365,-0.12205 0.008,0.15892 0,0 z m -1.0625,0.0625 c 0.22831,-0.22832 0.15246,0.21027 0,0 z m 0.3125,0 c 0.63879,-0.32685 0.29073,0.3451 0,0 z m 0.21875,0.0625 c -0.0713,-0.16431 -0.12721,0.15287 0,0 z m 0.53125,-0.0625 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.5625,0.25 c 0,0 0,0 0,0 z m 0.0625,0 c 0.0498,0.23698 0.22397,-0.16993 0,0 z m -1.28125,0.0312 c 0,0 0,0 0,0 z m -0.375,0.0312 c 0.25304,-0.18891 0.0486,0.27922 0,0 z m 0.4375,0.0312 c 0.42756,0.0145 -0.26527,0.1015 0,0 z m 0.40625,0 c 0.0815,0.20287 0.0586,0.14595 0,0 z m -0.21875,0.0312 c 0.35672,-0.1329 -0.0246,0.30594 0,0 z m -0.3125,0.0625 c 0.223,-0.20033 0.0699,0.22683 0,0 z m -0.0937,0.0312 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.3125,0 c 0.13365,-0.12205 0.008,0.15892 0,0 z m 0.53125,0.0625 c 0.15892,0.008 -0.12205,0.13365 0,0 z m 0.125,0.5625 c -0.29729,-0.005 0.13101,0.18605 0,0 z"
+           id="path4890" />
+        <path
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE. Bold'"
+           d="m -476.23438,-287.85654 c 0.38662,1.96967 -0.84355,4.23211 0.46785,5.9884 1.80855,0.69378 0.16877,-3.60202 0.64697,-4.95319 -0.282,-0.42995 -1.25158,-0.36253 -1.11482,-1.03521 z m 0.34376,0.53125 c -0.24712,0.19175 0.26518,0.0689 0,0 z m 0.15624,0.21875 c 0.30664,-0.008 0.0562,0.34949 0,0 z m 0.21876,0 c 0,0 0,0 0,0 z m 0.0625,0.0312 c 0.19442,-0.13448 -0.0303,0.20676 0,0 z m -0.25,0.125 c 0.14651,-0.11749 0.0213,0.14274 0,0 z m -0.375,0.0937 c 0.13366,-0.122 0.008,0.15891 0,0 z m 0.15624,0 c 0.82685,-0.19269 0.27274,0.37051 0,0 z m 0.9375,0.25 c -0.26578,0.18998 0.24875,0.10672 0,0 z m -0.28124,0.0312 c 0.13366,-0.122 0.008,0.15891 0,0 z m -0.90626,0.0312 c 0.15894,0.008 -0.12209,0.13362 0,0 z m 0.21876,0 c 0.19374,-0.18117 3.5e-4,0.2505 0,0 z m 0.125,0 c 0.81448,0.0316 0.0766,0.5113 0,0 z m 0.3125,0 c 0.2043,-0.24127 0.0658,0.27149 0,0 z m 0.25,0.0625 c 0.13366,-0.122 0.008,0.15891 0,0 z m -0.78126,0.0625 c 0,0 0,0 0,0 z m 0.875,0 c 0,0 0,0 0,0 z m -1.03124,0.0625 c 0.17927,-0.21299 0.12999,0.18324 0,0 z m 0.21874,0 c 0.1337,-0.12201 0.008,0.15891 0,0 z m 0.0938,0 c 0.225,0.17565 0.2895,0.22599 0,0 z m -0.25,0.0625 c 0.10942,0.11979 -0.17762,0.0142 0,0 z m 0.0625,0.0312 c 0,0 0,0 0,0 z m -0.125,0.0625 c 0.14651,-0.11749 0.0213,0.14274 0,0 z m 0.3125,0 c 0.41965,-0.16946 0.0962,0.38477 0,0 z m -0.21876,0.0312 c 0.11982,-0.1094 0.0141,0.17764 0,0 z m 0.71876,0.0312 c 0,0 0,0 0,0 z m 0.1875,0 c 0,0 0,0 0,0 z m 0.0312,0.0625 c 0.2328,0.0183 -0.19036,0.19971 0,0 z m -0.9375,0.0312 c 0.2134,-0.005 -0.11564,0.20907 0,0 z m 0.5,0.0625 c 0.15894,0.008 -0.12209,0.13362 0,0 z m -0.5625,0.0937 c 0,0 0,0 0,0 z m 0,0.0625 c 0.1337,-0.12201 0.008,0.15891 0,0 z m 0.0938,0 c 0.15893,0.008 -0.12205,0.13363 0,0 z m 0.0937,0 c 0.19806,-0.0453 -0.0803,0.17259 0,0 z m 0.15626,0 c 0.15443,-0.21203 0.0645,0.20518 0,0 z m 0.1875,0 c 0.15576,-0.25427 0.12195,0.20428 0,0 z m 0.15624,0 c 0.15448,-0.21201 0.0645,0.20519 0,0 z m 0.21876,0 c 0.17762,0.0143 -0.10944,0.11972 0,0 z m -0.5625,0.0625 c 0.38231,0.69485 -0.61084,0.14162 0,0 z m 0.0625,0 c 0.49686,-0.25794 0.2333,0.25258 0,0 z m 0.78124,0 c -0.122,0.13369 0.15891,0.008 0,0 z m -1.15624,0.0312 c 0,0 0,0 0,0 z m 0.125,0 c 0,0 0,0 0,0 z m 0.75,0 c 0,0 0,0 0,0 z m 0.0625,0.0312 c 0.13366,-0.122 0.008,0.15891 0,0 z m -0.625,0.0937 c 0.13366,-0.122 0.008,0.15891 0,0 z m 0.25,0 c 0.29721,0.19972 -0.64171,0.29388 0,0 z m 0.3125,0 c 0.20776,-0.2368 0.0537,0.28589 0,0 z m 0.21874,0 c 0.17764,0.0143 -0.10946,0.11973 0,0 z m -0.4375,0.0625 c 0,0 0,0 0,0 z m -0.65624,0.0312 c 0,0 0,0 0,0 z m 0.9375,0 c 0.19107,-0.1809 0.0111,0.24359 0,0 z m -0.28126,0.0312 c 0.18936,-0.0803 -0.0778,0.18739 0,0 z m -0.65624,0.0312 c 0.14278,0.0213 -0.11753,0.1465 0,0 z m 0.15624,0.0937 c 0.1337,-0.12201 0.008,0.15891 0,0 z m 0.15626,0 c 0.23633,-0.19309 0.087,0.25741 0,0 z m -0.3125,0.0625 c 0.91707,-0.004 0.60847,0.34592 0,0 z m 0.65624,0 c 0.10187,-0.10251 0.0329,0.13306 0,0 z m 0.21876,0.0937 c 0.26006,-0.0182 -0.15952,0.2321 0,0 z m -0.625,0.125 c 0.27681,0.0928 0.33345,0.11176 0,0 z m -0.15626,0.0312 c 0.15448,-0.21201 0.0645,0.20519 0,0 z m 0.46876,0 c 0.61806,-0.52128 0.0226,0.32809 0,0 z m 0.3125,0 c 0.18748,-0.095 -0.0452,0.2037 0,0 z m -0.90626,0.0625 c 0.15894,0.008 -0.12209,0.13362 0,0 z m 0.1875,0.0312 0.0811,0.052 -0.0811,-0.052 z m 0.375,0 c 1.20156,-0.16825 -0.64097,0.18772 0,0 z m 0.34376,0.0312 c 0.14651,-0.11749 0.0213,0.14274 0,0 z m 0.0937,0.0312 c 0.14655,-0.11747 0.0212,0.14274 0,0 z m -0.96874,0.0625 c 0.12645,0.0585 -0.17695,0.0971 0,0 z m 0.96874,0 c 0.15797,0.0739 -0.14607,0.12043 0,0 z m -0.71874,0.0312 c 0.89806,-0.22263 0.27983,0.47067 0,0 z m 0.0937,0.125 c 0.20542,-0.21044 0.0671,0.23258 0,0 z m -0.25,0.0937 c 0.15448,-0.21201 0.0645,0.20519 0,0 z m 0.125,0 c 0.20725,-0.21262 0.009,0.23746 0,0 z m 0.25,0 c 0.19411,0.175 -0.24949,0.0223 0,0 z m 0.0625,0 c 0.20825,0.0581 0.14382,0.0401 0,0 z m 0.3125,0.0312 c 0.25751,-0.13879 -0.0384,0.29638 0,0 z m -0.71874,0.0312 c 0.19936,0.0144 -0.0724,0.2214 0,0 z m 0.125,0.0312 c 0.70636,-0.434 0.27688,0.45872 0,0 z m 0.0937,0.0625 c 0.008,0.15893 0.1336,-0.12206 0,0 z m -0.15624,0.0312 c 0,0 0,0 0,0 z m 0.40624,0.0312 c 0.14929,0.14383 0.0779,0.0751 0,0 z m 0.28126,0 c 0,0 0,0 0,0 z m -0.6875,0.0625 c 0,0 0,0 0,0 z m 0.34374,0 c 0.11501,-0.0712 -0.008,0.1233 0,0 z m -0.0625,0.0312 c 0,0 0,0 0,0 z m 0.40626,0.0312 c 0,0 0,0 0,0 z m -0.71876,0.0312 c 0.78954,-0.13564 0.36506,0.15801 0,0 z m 0.6875,0.0625 c 0.12051,-0.14603 0.0739,0.15795 0,0 z m -0.84374,0.0625 c 0,0 0,0 0,0 z m 0.40624,0 c -0.0213,0.14279 -0.14651,-0.11754 0,0 z m -0.25,0.0937 c 0.25293,0.033 0.55833,0.0728 0,0 z m 0.375,0.0312 c 0.2051,0.0301 0.10704,0.0157 0,0 z m 0.1875,0 c 0,0 0,0 0,0 z m -0.53124,0.0937 c 0.30114,-0.14163 -0.085,0.24582 0,0 z m 0.15624,0 c 0.32539,-0.28393 0.0306,0.29229 0,0 z m 0.53126,0 c 0.19554,-0.0383 -0.13127,0.20086 0,0 z m -0.78126,0.0625 c 0.15894,0.008 -0.12209,0.13362 0,0 z m -0.0937,0.0312 c 0,0 0,0 0,0 z m 0.15624,0 c 0.14385,-0.15863 0.0987,0.1678 0,0 z m 0.15626,0 c 0.62162,-0.38974 0.33845,0.27134 0,0 z m 0.5625,0 c 0.13366,-0.122 0.008,0.15891 0,0 z m -0.71876,0.0625 c 0.1337,-0.12201 0.008,0.15891 0,0 z m 0.8125,0 c 0.1337,-0.12201 0.008,0.15891 0,0 z m -0.40624,0.0312 c 0.28859,0.01 -0.16732,0.26708 0,0 z m 0.125,0.0312 c 0.17031,0.0465 -0.14649,0.1313 0,0 z m -0.28126,0.0625 c 0.1337,-0.12201 0.008,0.15891 0,0 z m 0.5625,0.0312 c 0.14655,-0.11747 0.0212,0.14274 0,0 z m -0.75,0.0937 c 0,0 0,0 0,0 z m 0.0938,0 c 0,0 0,0 0,0 z m 0.0937,0 c 0.44534,-0.36139 0.0965,0.35361 0,0 z m -0.1875,0.0625 c -0.0213,0.14279 -0.14651,-0.11754 0,0 z m 0.59376,0.0312 c 0,0 0,0 0,0 z m 0.0625,0 c 0.13366,-0.122 0.008,0.15891 0,0 z m -0.875,0.0312 c 0.038,0.20857 0.024,0.13163 0,0 z m 0.34374,0 c 0,0 0,0 0,0 z m 0.625,0 c 0.15894,0.008 -0.12209,0.13362 0,0 z m -0.53124,0.0937 c 0,0 0,0 0,0 z m 0.53124,0.0312 c 0,0 0,0 0,0 z m -0.8125,0.0312 c 0.25706,-0.12741 -0.0944,0.30921 0,0 z m 0.15626,0 c 0.69216,-0.2682 -0.0559,0.42103 0,0 z m -0.21876,0.0312 c 0.12646,0.0585 -0.17695,0.0971 0,0 z m 0.625,0 c 0.082,0.26381 -0.2721,-0.11204 0,0 z m 0.25,0.0312 c 0.1337,-0.12201 0.008,0.15891 0,0 z m 0,0.0625 c 0.11982,-0.1094 0.0141,0.17764 0,0 z m -0.28124,0.125 c 0,0 0,0 0,0 z m 0.1875,0 c 0.13366,-0.122 0.008,0.15891 0,0 z m 0.0937,0 c 0.14655,-0.11747 0.0212,0.14274 0,0 z m -0.71874,0.0312 c 0.14651,-0.11749 0.0213,0.14274 0,0 z m 0.3125,0 c 0.1231,0.12252 0.10704,0.10653 0,0 z m 0.125,0.0625 c 0,0 0,0 0,0 z m -0.28126,0.0625 c -0.0105,0.213 -0.19614,-0.15293 0,0 z m 0.125,0.0312 c 0.13097,-0.16104 0.0817,0.16368 0,0 z m 0,0.0625 c 0.15448,-0.21201 0.0645,0.20519 0,0 z m 0.15626,0 c 0,0 0,0 0,0 z m -0.4375,0.0312 c 0.86346,-0.20351 0.088,0.5641 0,0 z m 0.625,0.0625 c 0.16899,-0.006 -0.0935,0.158 0,0 z m -0.21876,0.0312 c 0.1337,-0.12201 0.008,0.15891 0,0 z m 0.21876,0.0625 c 0.13366,-0.122 0.008,0.15891 0,0 z m -0.96876,0.0937 c 0,0 0,0 0,0 z m 0.1875,0 c 0,0 0,0 0,0 z m 0.15626,0 c 0.13366,-0.122 0.008,0.15891 0,0 z m 0.375,0 c 0.15443,-0.21203 0.0645,0.20518 0,0 z m -0.6875,0.0937 c 0.15443,-0.21203 0.0645,0.20518 0,0 z m 0.3125,0 c 0.51987,-0.18861 0.36987,0.22568 0,0 z m 0.625,0 c 0.13366,-0.122 0.008,0.15891 0,0 z m 0.0937,0 c 0.1337,-0.12201 0.008,0.15891 0,0 z m -1.0625,0.0625 c 0.22837,-0.22831 0.15241,0.21026 0,0 z m 0.3125,0 c 0.63883,-0.32679 0.29067,0.34508 0,0 z m 0.21876,0.0625 c -0.0713,-0.16431 -0.12716,0.15289 0,0 z m 0.53124,-0.0625 c 0.1337,-0.12201 0.008,0.15891 0,0 z m 0.5625,0.25 c 0,0 0,0 0,0 z m 0.0625,0 c 0.0498,0.23699 0.22393,-0.16997 0,0 z m -1.28124,0.0312 c 0,0 0,0 0,0 z m 0.28124,0 c 0,0 0,0 0,0 z m -0.65624,0.0312 c 0.25305,-0.18892 0.0486,0.2792 0,0 z m 0.4375,0.0312 c 0.42853,0.0129 -0.26965,0.10274 0,0 z m 0.40624,0 c 0.0815,0.20287 0.0586,0.14596 0,0 z m -0.21874,0.0312 c 0.35672,-0.13287 -0.0246,0.30592 0,0 z m -0.3125,0.0625 c 0.22301,-0.20031 0.0699,0.22682 0,0 z m -0.0938,0.0312 c 0.1337,-0.12201 0.008,0.15891 0,0 z m 0.3125,0 c 0.1337,-0.12201 0.008,0.15891 0,0 z m 0.53126,0.0625 c 0.15893,0.008 -0.12205,0.13363 0,0 z m 0.125,0.5625 c -0.2973,-0.005 0.13106,0.186 0,0 z"
+           id="path4892" />
+        <path
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE. Bold'"
+           d="m -474.06247,-287.52841 c -1.96967,0.3866 -4.23211,-0.84357 -5.9884,0.46784 -0.69379,1.8086 3.60201,0.16877 4.95318,0.64698 0.42997,-0.28199 0.36253,-1.25155 1.03522,-1.11482 z m -0.53125,0.34375 c -0.19172,-0.24713 -0.0689,0.26519 0,0 z m -0.21875,0.15625 c 0.008,0.30665 -0.34958,0.0561 0,0 z m 0,0.21875 c 0,0 0,0 0,0 z m -0.0312,0.0625 c 0.13446,0.19449 -0.20682,-0.0304 0,0 z m -0.125,-0.25 c 0.11751,0.14649 -0.14275,0.0213 0,0 z m -0.0937,-0.375 c 0.12205,0.13365 -0.15892,0.008 0,0 z m 0,0.15625 c 0.19283,0.82661 -0.37064,0.27288 0,0 z m -0.25,0.9375 c -0.18994,-0.2658 -0.10676,0.24878 0,0 z m -0.0312,-0.28125 c 0.12205,0.13365 -0.15892,0.008 0,0 z m -0.0312,-0.90625 c -0.008,0.15892 -0.13365,-0.12205 0,0 z m 0,0.21875 c 0.18118,0.19375 -0.2505,3.4e-4 0,0 z m 0,0.125 c -0.0315,0.81448 -0.51134,0.0766 0,0 z m 0,0.3125 c 0.24127,0.20428 -0.27149,0.0659 0,0 z m -0.0625,0.25 c 0.12205,0.13365 -0.15892,0.008 0,0 z m -0.0625,-0.78125 c 0,0 0,0 0,0 z m 0,0.875 c 0,0 0,0 0,0 z m -0.0625,-1.03125 c 0.213,0.17927 -0.18326,0.13 0,0 z m 0,0.21875 c 0.12205,0.13365 -0.15892,0.008 0,0 z m 0,0.0937 c -0.17567,0.225 -0.22598,0.28945 0,0 z m -0.0625,-0.25 c -0.11977,0.10942 -0.0142,-0.17763 0,0 z m -0.0313,0.0625 c 0,0 0,0 0,0 z m -0.0625,-0.125 c 0.11751,0.14649 -0.14275,0.0213 0,0 z m 0,0.3125 c 0.16951,0.41965 -0.3848,0.0962 0,0 z m -0.0312,-0.21875 c 0.10943,0.11977 -0.17764,0.0142 0,0 z m -0.0312,0.71875 c 0,0 0,0 0,0 z m 0,0.1875 c 0,0 0,0 0,0 z m -0.0625,0.0312 c -0.0184,0.23272 -0.19969,-0.19031 0,0 z m -0.0312,-0.9375 c 0.005,0.21335 -0.20907,-0.11561 0,0 z m -0.0625,0.5 c -0.008,0.15892 -0.13365,-0.12205 0,0 z m -0.0937,-0.5625 c 0,0 0,0 0,0 z m -0.0625,0 c 0.12205,0.13365 -0.15892,0.008 0,0 z m 0,0.0937 c -0.008,0.15898 -0.13367,-0.12212 0,0 z m 0,0.0937 c 0.0453,0.19808 -0.17264,-0.0804 0,0 z m 0,0.15625 c 0.21205,0.15442 -0.20519,0.0645 0,0 z m 0,0.1875 c 0.25429,0.15575 -0.20429,0.12197 0,0 z m 0,0.15625 c 0.21205,0.15442 -0.20519,0.0645 0,0 z m 0,0.21875 c -0.0143,0.17768 -0.11978,-0.10951 0,0 z m -0.0625,-0.5625 c -0.69485,0.38242 -0.14155,-0.61093 0,0 z m 0,0.0625 c 0.258,0.49734 -0.25244,0.23326 0,0 z m 0,0.78125 c -0.13364,-0.12195 -0.008,0.15888 0,0 z m -0.0312,-1.15625 c 0,0 0,0 0,0 z m 0,0.125 c 0,0 0,0 0,0 z m 0,0.75 c 0,0 0,0 0,0 z m -0.0312,0.0625 c 0.12205,0.13365 -0.15892,0.008 0,0 z m -0.0937,-0.625 c 0.12205,0.13365 -0.15892,0.008 0,0 z m 0,0.25 c -0.19966,0.29722 -0.29381,-0.64154 0,0 z m 0,0.3125 c 0.23681,0.20774 -0.28589,0.0537 0,0 z m 0,0.21875 c -0.0142,0.17763 -0.11976,-0.10943 0,0 z m -0.0625,-0.4375 c 0,0 0,0 0,0 z m -0.0313,-0.65625 c 0,0 0,0 0,0 z m 0,0.9375 c 0.18095,0.19097 -0.24354,0.0112 0,0 z m -0.0312,-0.28125 c 0.0804,0.18932 -0.18741,-0.0778 0,0 z m -0.0312,-0.65625 c -0.0213,0.14276 -0.1465,-0.11752 0,0 z m -0.0937,0.15625 c 0.12205,0.13365 -0.15892,0.008 0,0 z m 0,0.15625 c 0.19309,0.23632 -0.25742,0.087 0,0 z m -0.0625,-0.3125 c 0.004,0.91706 -0.34594,0.6085 0,0 z m 0,0.65625 c 0.10252,0.1019 -0.13318,0.0329 0,0 z m -0.0937,0.21875 c 0.0182,0.26006 -0.23213,-0.1595 0,0 z m -0.125,-0.625 c -0.0928,0.27681 -0.1118,0.3334 0,0 z m -0.0312,-0.15625 c 0.21199,0.15451 -0.20526,0.0644 0,0 z m 0,0.46875 c 0.52129,0.61795 -0.32815,0.0226 0,0 z m 0,0.3125 c 0.0951,0.18751 -0.20373,-0.0452 0,0 z m -0.0625,-0.90625 c -0.008,0.15892 -0.13365,-0.12205 0,0 z m -0.0312,0.1875 -0.052,0.0811 0.052,-0.0811 z m 0,0.375 c 0.16829,1.20158 -0.18775,-0.64096 0,0 z m -0.0312,0.34375 c 0.11751,0.14649 -0.14275,0.0213 0,0 z m -0.0312,0.0937 c 0.11751,0.14649 -0.14275,0.0213 0,0 z m -0.0625,-0.96875 c -0.0586,0.12648 -0.0972,-0.177 0,0 z m 0,0.96875 c -0.0739,0.15797 -0.12046,-0.14606 0,0 z m -0.0312,-0.71875 c 0.22267,0.89808 -0.4707,0.27985 0,0 z m -0.125,0.0937 c 0.21045,0.20539 -0.23262,0.0671 0,0 z m -0.0937,-0.25 c 0.21205,0.15442 -0.20519,0.0645 0,0 z m 0,0.125 c 0.21262,0.20728 -0.23753,0.009 0,0 z m 0,0.25 c -0.175,0.19407 -0.0223,-0.24951 0,0 z m 0,0.0625 c -0.0581,0.20824 -0.0401,0.14381 0,0 z m -0.0312,0.3125 c 0.13882,0.25744 -0.29639,-0.0384 0,0 z m -0.0313,-0.71875 c -0.0143,0.19934 -0.22143,-0.0724 0,0 z m -0.0312,0.125 c 0.43406,0.70639 -0.45877,0.27688 0,0 z m -0.0625,0.0937 c -0.15893,0.008 0.12204,0.13367 0,0 z m -0.0312,-0.15625 c 0,0 0,0 0,0 z m -0.0312,0.40625 c -0.14383,0.14928 -0.0751,0.0779 0,0 z m 0,0.28125 c 0,0 0,0 0,0 z m -0.0625,-0.6875 c 0,0 0,0 0,0 z m 0,0.34375 c 0.0712,0.11503 -0.12335,-0.008 0,0 z m -0.0313,-0.0625 c 0,0 0,0 0,0 z m -0.0312,0.40625 c 0,0 0,0 0,0 z m -0.0312,-0.71875 c 0.13567,0.78947 -0.15806,0.36508 0,0 z m -0.0625,0.6875 c 0.14603,0.12046 -0.15794,0.0739 0,0 z m -0.0625,-0.84375 c 0,0 0,0 0,0 z m 0,0.40625 c -0.14277,-0.0213 0.11753,-0.1465 0,0 z m -0.0937,-0.25 c -0.033,0.25291 -0.0728,0.55841 0,0 z m -0.0312,0.375 c -0.0301,0.2051 -0.0157,0.10703 0,0 z m 0,0.1875 c 0,0 0,0 0,0 z m -0.0937,-0.53125 c 0.14161,0.30112 -0.24582,-0.085 0,0 z m 0,0.15625 c 0.28396,0.32533 -0.29229,0.0307 0,0 z m 0,0.53125 c 0.0383,0.19552 -0.20085,-0.13126 0,0 z m -0.0625,-0.78125 c -0.008,0.15892 -0.13365,-0.12205 0,0 z m -0.0313,-0.0937 c 0,0 0,0 0,0 z m 0,0.15625 c 0.15855,0.14379 -0.16771,0.0988 0,0 z m 0,0.15625 c 0.38975,0.62166 -0.27124,0.33847 0,0 z m 0,0.5625 c 0.12208,0.13358 -0.15887,0.009 0,0 z m -0.0625,-0.71875 c 0.12205,0.13365 -0.15892,0.008 0,0 z m 0,0.8125 c 0.12205,0.13365 -0.15892,0.008 0,0 z m -0.0312,-0.40625 c -0.01,0.28861 -0.26712,-0.16733 0,0 z m -0.0312,0.125 c -0.0465,0.17032 -0.13134,-0.14647 0,0 z m -0.0625,-0.28125 c 0.12205,0.13365 -0.15892,0.008 0,0 z m -0.0312,0.5625 c 0.11745,0.1466 -0.14282,0.0212 0,0 z m -0.0937,-0.75 c 0,0 0,0 0,0 z m 0,0.0937 c 0,0 0,0 0,0 z m 0,0.0937 c 0.36142,0.44529 -0.35364,0.0966 0,0 z m -0.0625,-0.1875 c -0.14277,-0.0213 0.11753,-0.1465 0,0 z m -0.0312,0.59375 c 0,0 0,0 0,0 z m 0,0.0625 c 0.12205,0.13365 -0.15892,0.008 0,0 z m -0.0312,-0.875 c -0.20855,0.038 -0.13159,0.024 0,0 z m 0,0.34375 c 0,0 0,0 0,0 z m 0,0.625 c -0.008,0.15898 -0.13367,-0.12212 0,0 z m -0.0937,-0.53125 c 0,0 0,0 0,0 z m -0.0312,0.53125 c 0,0 0,0 0,0 z m -0.0312,-0.8125 c 0.12743,0.25702 -0.30923,-0.0944 0,0 z m 0,0.15625 c 0.26822,0.69215 -0.42105,-0.0559 0,0 z m -0.0312,-0.21875 c -0.0585,0.12648 -0.0972,-0.17689 0,0 z m 0,0.625 c -0.2638,0.082 0.11202,-0.27209 0,0 z m -0.0312,0.25 c 0.12205,0.13365 -0.15892,0.008 0,0 z m -0.0625,0 c 0.1094,0.11983 -0.17769,0.0142 0,0 z m -0.125,-0.28125 c 0,0 0,0 0,0 z m 0,0.1875 c 0.12205,0.13365 -0.15892,0.008 0,0 z m 0,0.0937 c 0.11751,0.14649 -0.14275,0.0213 0,0 z m -0.0312,-0.71875 c 0.11751,0.14649 -0.14275,0.0213 0,0 z m 0,0.3125 c -0.12251,0.12311 -0.10653,0.10704 0,0 z m -0.0625,0.125 c 0,0 0,0 0,0 z m -0.0625,-0.28125 c -0.21299,-0.0106 0.15296,-0.19606 0,0 z m -0.0312,0.125 c 0.16103,0.13091 -0.16368,0.0817 0,0 z m -0.0625,0 c 0.21205,0.15442 -0.20519,0.0645 0,0 z m 0,0.15625 c 0,0 0,0 0,0 z m -0.0312,-0.4375 c 0.20354,0.86347 -0.56414,0.088 0,0 z m -0.0625,0.625 c 0.006,0.16903 -0.15806,-0.0935 0,0 z m -0.0312,-0.21875 c 0.12199,0.13374 -0.159,0.008 0,0 z m -0.0625,0.21875 c 0.12205,0.13365 -0.15892,0.008 0,0 z m -0.0937,-0.96875 c 0,0 0,0 0,0 z m 0,0.1875 c 0,0 0,0 0,0 z m 0,0.15625 c 0.12205,0.13365 -0.15892,0.008 0,0 z m 0,0.375 c 0.21205,0.15442 -0.20519,0.0645 0,0 z m -0.0937,-0.6875 c 0.21199,0.15451 -0.20526,0.0644 0,0 z m 0,0.3125 c 0.18897,0.52002 -0.22598,0.36959 0,0 z m 0,0.625 c 0.12199,0.13374 -0.159,0.008 0,0 z m 0,0.0937 c 0.12199,0.13374 -0.159,0.008 0,0 z m -0.0625,-1.0625 c 0.22832,0.22831 -0.21027,0.15246 0,0 z m 0,0.3125 c 0.32684,0.6388 -0.3451,0.29072 0,0 z m -0.0625,0.21875 c 0.1643,-0.0713 -0.15288,-0.12719 0,0 z m 0.0625,0.53125 c 0.12205,0.13365 -0.15892,0.008 0,0 z m -0.25,0.5625 c 0,0 0,0 0,0 z m 0,0.0625 c -0.23698,0.0498 0.16994,0.22397 0,0 z m -0.0312,-1.28125 c 0,0 0,0 0,0 z m 0,0.28125 c 0,0 0,0 0,0 z m -0.0312,-0.65625 c 0.18892,0.25304 -0.27922,0.0486 0,0 z m -0.0312,0.4375 c -0.0129,0.42856 -0.10275,-0.26966 0,0 z m 0,0.40625 c -0.20288,0.0815 -0.14595,0.0586 0,0 z m -0.0312,-0.21875 c 0.1329,0.35673 -0.30595,-0.0246 0,0 z m -0.0625,-0.3125 c 0.20031,0.22302 -0.22685,0.0699 0,0 z m -0.0313,-0.0937 c 0.12208,0.13358 -0.15887,0.009 0,0 z m 0,0.3125 c 0.12208,0.13358 -0.15887,0.009 0,0 z m -0.0625,0.53125 c -0.008,0.15892 -0.13365,-0.12205 0,0 z m -0.5625,0.125 c 0.005,-0.2973 -0.18605,0.13103 0,0 z"
+           id="path4894" />
+        <path
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;font-family:'karabinE.';-inkscape-font-specification:'karabinE. Bold'"
+           d="m -480.53122,-281.68466 c 1.96967,-0.3866 4.23211,0.84356 5.98839,-0.46784 0.69377,-1.80858 -3.60203,-0.16877 -4.9532,-0.64695 -0.42994,0.282 -0.36251,1.25155 -1.03519,1.11479 z m 0.53125,-0.34375 c 0.19172,0.24711 0.0689,-0.26515 0,0 z m 0.21875,-0.15625 c -0.008,-0.30665 0.34947,-0.0562 0,0 z m 0,-0.21875 c 0,0 0,0 0,0 z m 0.0312,-0.0625 c -0.13451,-0.19442 0.20678,0.0303 0,0 z m 0.125,0.25 c -0.11753,-0.14643 0.14271,-0.0213 0,0 z m 0.0937,0.375 c -0.12202,-0.13368 0.15893,-0.008 0,0 z m 0,-0.15625 c -0.19265,-0.82684 0.3705,-0.27274 0,0 z m 0.25,-0.9375 c 0.19011,0.26563 0.10671,-0.24874 0,0 z m 0.0312,0.28125 c -0.12205,-0.13366 0.15892,-0.008 0,0 z m 0.0312,0.90625 c 0.008,-0.15899 0.13367,0.12213 0,0 z m 0,-0.21875 c -0.18111,-0.19384 0.25057,-2.4e-4 0,0 z m 0,-0.125 c 0.0316,-0.81453 0.51137,-0.0766 0,0 z m 0,-0.3125 c -0.24128,-0.20438 0.27157,-0.0658 0,0 z m 0.0625,-0.25 c -0.12205,-0.13366 0.15892,-0.008 0,0 z m 0.0625,0.78125 c 0,0 0,0 0,0 z m 0,-0.875 c 0,0 0,0 0,0 z m 0.0625,1.03125 c -0.21301,-0.17929 0.18325,-0.12998 0,0 z m 0,-0.21875 c -0.12202,-0.13368 0.15893,-0.008 0,0 z m 0,-0.0937 c 0.17567,-0.22501 0.22598,-0.28945 0,0 z m 0.0625,0.25 c 0.11977,-0.10943 0.0142,0.17764 0,0 z m 0.0312,-0.0625 c 0,0 0,0 0,0 z m 0.0625,0.125 c -0.11748,-0.14652 0.14276,-0.0213 0,0 z m 0,-0.3125 c -0.16948,-0.41965 0.38474,-0.0962 0,0 z m 0.0312,0.21875 c -0.10943,-0.11977 0.17763,-0.0142 0,0 z m 0.0312,-0.71875 c 0,0 0,0 0,0 z m -3e-5,-0.1875 c 0,0 0,0 0,0 z m 0.0625,-0.0312 c 0.0183,-0.23276 0.19971,0.19033 0,0 z m 0.0312,0.9375 c -0.005,-0.21342 0.20912,0.11567 0,0 z m 0.0625,-0.5 c 0.008,-0.15888 0.13363,0.12197 0,0 z m 0.0937,0.5625 c 0,0 0,0 0,0 z m 0.0625,0 c -0.12202,-0.13368 0.15893,-0.008 0,0 z m 0,-0.0937 c 0.008,-0.15893 0.13365,0.12204 0,0 z m 0,-0.0937 c -0.0453,-0.19804 0.1726,0.0803 0,0 z m 0,-0.15625 c -0.21205,-0.15443 0.20519,-0.0645 0,0 z m 0,-0.1875 c -0.25429,-0.15578 0.20429,-0.12196 0,0 z m 0,-0.15625 c -0.21205,-0.15443 0.20519,-0.0645 0,0 z m -3e-5,-0.21875 c 0.0142,-0.17764 0.11977,0.10943 0,0 z m 0.0625,0.5625 c 0.69481,-0.38233 0.14163,0.61086 0,0 z m 0,-0.0625 c -0.25808,-0.49723 0.25257,-0.23328 0,0 z m -3e-5,-0.78125 c 0.13366,0.12204 0.008,-0.15892 0,0 z m 0.0313,1.15625 c 0,0 0,0 0,0 z m 0,-0.125 c 0,0 0,0 0,0 z m -3e-5,-0.75 c 0,0 0,0 0,0 z m 0.0312,-0.0625 c -0.12205,-0.13366 0.15892,-0.008 0,0 z m 0.0938,0.625 c -0.12202,-0.13368 0.15893,-0.008 0,0 z m 0,-0.25 c 0.1995,-0.29694 0.29325,0.64022 0,0 z m 0,-0.3125 c -0.23682,-0.20768 0.28582,-0.0538 0,0 z m 0,-0.21875 c 0.0142,-0.17758 0.11973,0.10938 0,0 z m 0.0625,0.4375 c 0,0 0,0 0,0 z m 0.0313,0.65625 c 0,0 0,0 0,0 z m -3e-5,-0.9375 c -0.1809,-0.19106 0.24359,-0.0111 0,0 z m 0.0313,0.28125 c -0.0804,-0.18928 0.18738,0.0777 0,0 z m 0.0312,0.65625 c 0.0213,-0.14278 0.1465,0.11752 0,0 z m 0.0937,-0.15625 c -0.12202,-0.13368 0.15893,-0.008 0,0 z m 0,-0.15625 c -0.1931,-0.23634 0.25741,-0.087 0,0 z m 0.0625,0.3125 c -0.004,-0.91713 0.34592,-0.60844 0,0 z m 0,-0.65625 c -0.10253,-0.10183 0.13308,-0.033 0,0 z m 0.0937,-0.21875 c -0.0182,-0.26011 0.23216,0.1596 0,0 z m 0.12503,0.625 c 0.0928,-0.27684 0.11175,-0.3334 0,0 z m 0.0312,0.15625 c -0.21198,-0.15454 0.20526,-0.0644 0,0 z m 0,-0.46875 c -0.5213,-0.61812 0.32822,-0.0225 0,0 z m 0,-0.3125 c -0.0951,-0.18749 0.20371,0.0452 0,0 z m 0.0625,0.90625 c 0.008,-0.15888 0.13363,0.12197 0,0 z m 0.0312,-0.1875 0.052,-0.0811 -0.052,0.0811 z m 0,-0.375 c -0.17577,-1.22586 0.19065,0.64311 0,0 z m 0.0312,-0.34375 c -0.11748,-0.14652 0.14277,-0.0213 0,0 z m 0.0312,-0.0937 c -0.11746,-0.14662 0.14282,-0.0212 0,0 z m 0.0625,0.96875 c 0.0585,-0.12646 0.0972,0.17691 0,0 z m -3e-5,-0.96875 c 0.0739,-0.15795 0.12045,0.14604 0,0 z m 0.0313,0.71875 c -0.2226,-0.89801 0.47067,-0.27981 0,0 z m 0.125,-0.0937 c -0.21045,-0.2054 0.23261,-0.0671 0,0 z m 0.0937,0.25 c -0.2121,-0.15435 0.20511,-0.0646 0,0 z m 0,-0.125 c -0.21272,-0.2072 0.23745,-0.009 0,0 z m 0,-0.25 c 0.17497,-0.19413 0.0223,0.24948 0,0 z m 0,-0.0625 c 0.0581,-0.20824 0.0401,-0.14378 0,0 z m 0.0312,-0.3125 c -0.13883,-0.25747 0.29637,0.0384 0,0 z m 0.0313,0.71875 c 0.0143,-0.19933 0.22134,0.0724 0,0 z m 0.0312,-0.125 c -0.43408,-0.7064 0.45876,-0.27688 0,0 z m 0.0625,-0.0937 c 0.15898,-0.008 -0.12199,-0.13372 0,0 z m 0.0313,0.15625 c 0,0 0,0 0,0 z m 0.0312,-0.40625 c 0.14378,-0.14934 0.0751,-0.0779 0,0 z m 0,-0.28125 c 0,0 0,0 0,0 z m 0.0625,0.6875 c 0,0 0,0 0,0 z m 0,-0.34375 c -0.0712,-0.11496 0.1233,0.008 0,0 z m 0.0312,0.0625 c 0,0 0,0 0,0 z m 0.0312,-0.40625 c 0,0 0,0 0,0 z m 0.0313,0.71875 c -0.13571,-0.78948 0.15807,-0.36509 0,0 z m 0.0625,-0.6875 c -0.1461,-0.12046 0.15798,-0.0739 0,0 z m 0.0625,0.84375 c 0,0 0,0 0,0 z m 0,-0.40625 c 0.14272,0.0213 -0.11755,0.14642 0,0 z m 0.0937,0.25 c 0.033,-0.25293 0.0728,-0.55832 0,0 z m 0.0312,-0.375 c 0.0301,-0.2051 0.0157,-0.10704 0,0 z m 0,-0.1875 c 0,0 0,0 0,0 z m 0.0937,0.53125 c -0.14155,-0.30113 0.24582,0.0851 0,0 z m 0,-0.15625 c -0.28391,-0.32533 0.29228,-0.0306 0,0 z m 0,-0.53125 c -0.0384,-0.19547 0.20082,0.13112 0,0 z m 0.0625,0.78125 c 0.008,-0.15893 0.13365,0.12204 0,0 z m 0.0312,0.0937 c 0,0 0,0 0,0 z m 0,-0.15625 c -0.15863,-0.14384 0.16783,-0.0987 0,0 z m 0,-0.15625 c -0.38976,-0.62164 0.27136,-0.33845 0,0 z m -3e-5,-0.5625 c -0.12205,-0.13366 0.15892,-0.008 0,0 z m 0.0625,0.71875 c -0.12202,-0.13368 0.15893,-0.008 0,0 z m -3e-5,-0.8125 c -0.12205,-0.13366 0.15892,-0.008 0,0 z m 0.0313,0.40625 c 0.01,-0.28855 0.26706,0.16718 0,0 z m 0.0312,-0.125 c 0.0465,-0.17033 0.13132,0.14649 0,0 z m 0.0625,0.28125 c -0.12206,-0.13359 0.15887,-0.008 0,0 z m 0.0312,-0.5625 c -0.11748,-0.14652 0.14277,-0.0213 0,0 z m 0.0938,0.75 c 0,0 0,0 0,0 z m 0,-0.0937 c 0,0 0,0 0,0 z m 0,-0.0937 c -0.36148,-0.44533 0.35365,-0.0965 0,0 z m 0.0625,0.1875 c 0.14278,0.0213 -0.1175,0.14651 0,0 z m 0.0312,-0.59375 c 0,0 0,0 0,0 z m 0,-0.0625 c -0.12206,-0.13359 0.15887,-0.008 0,0 z m 0.0312,0.875 c 0.20856,-0.038 0.13163,-0.024 0,0 z m 0,-0.34375 c 0,0 0,0 0,0 z m -3e-5,-0.625 c 0.008,-0.15893 0.13366,0.12204 0,0 z m 0.0938,0.53125 c 0,0 0,0 0,0 z m 0.0312,-0.53125 c 0,0 0,0 0,0 z m 0.0313,0.8125 c -0.12745,-0.257 0.30918,0.0944 0,0 z m 0,-0.15625 c -0.26825,-0.69217 0.42103,0.0558 0,0 z m 0.0312,0.21875 c 0.0585,-0.12646 0.0972,0.17691 0,0 z m 0,-0.625 c 0.26377,-0.082 -0.11206,0.27205 0,0 z m 0.0312,-0.25 c -0.12206,-0.13359 0.15887,-0.008 0,0 z m 0.0625,0 c -0.10943,-0.11977 0.17763,-0.0142 0,0 z m 0.125,0.28125 c 0,0 0,0 0,0 z m 0,-0.1875 c -0.12205,-0.13366 0.15892,-0.008 0,0 z m 0,-0.0937 c -0.11748,-0.14652 0.14277,-0.0213 0,0 z m 0.0313,0.71875 c -0.11748,-0.14652 0.14276,-0.0213 0,0 z m 0,-0.3125 c 0.12251,-0.12311 0.10653,-0.10705 0,0 z m 0.0625,-0.125 c 0,0 0,0 0,0 z m 0.0625,0.28125 c 0.21296,0.0106 -0.15293,0.19611 0,0 z m 0.0312,-0.125 c -0.16103,-0.13094 0.16369,-0.0817 0,0 z m 0.0625,0 c -0.21205,-0.15443 0.20519,-0.0645 0,0 z m 0,-0.15625 c 0,0 0,0 0,0 z m 0.0312,0.4375 c -0.20361,-0.86349 0.56412,-0.088 0,0 z m 0.0625,-0.625 c -0.006,-0.16899 0.15801,0.0935 0,0 z m 0.0312,0.21875 c -0.12198,-0.13376 0.15899,-0.008 0,0 z m 0.0625,-0.21875 c -0.12205,-0.13366 0.15892,-0.008 0,0 z m 0.0938,0.96875 c 0,0 0,0 0,0 z m 0,-0.1875 c 0,0 0,0 0,0 z m 0,-0.15625 c -0.12202,-0.13368 0.15893,-0.008 0,0 z m 0,-0.375 c -0.21205,-0.15443 0.20519,-0.0645 0,0 z m 0.0937,0.6875 c -0.21205,-0.15443 0.20519,-0.0645 0,0 z m 0,-0.3125 c -0.18864,-0.51992 0.2257,-0.36982 0,0 z m -3e-5,-0.625 c -0.12205,-0.13366 0.15892,-0.008 0,0 z m 0,-0.0937 c -0.12205,-0.13366 0.15892,-0.008 0,0 z m 0.0625,1.0625 c -0.22832,-0.22833 0.21027,-0.15244 0,0 z m 0,-0.3125 c -0.32684,-0.63879 0.34509,-0.29071 0,0 z m 0.0625,-0.21875 c -0.16431,0.0713 0.15287,0.12721 0,0 z m -0.0625,-0.53125 c -0.12205,-0.13366 0.15892,-0.008 0,0 z m 0.25,-0.5625 c 0,0 0,0 0,0 z m 0,-0.0625 c 0.23698,-0.0498 -0.16994,-0.22395 0,0 z m 0.0313,1.28125 c 0,0 0,0 0,0 z m 0,-0.28125 c 0,0 0,0 0,0 z m 0.0312,0.65625 c -0.18893,-0.25313 0.27929,-0.0485 0,0 z m 0.0313,-0.4375 c 0.0128,-0.4286 0.10275,0.26967 0,0 z m 0,-0.40625 c 0.20286,-0.0815 0.14591,-0.0586 0,0 z m 0.0312,0.21875 c -0.1329,-0.35674 0.30594,0.0246 0,0 z m 0.0625,0.3125 c -0.20033,-0.22301 0.22682,-0.0699 0,0 z m 0.0312,0.0937 c -0.12202,-0.13368 0.15893,-0.008 0,0 z m 0,-0.3125 c -0.12202,-0.13368 0.15893,-0.008 0,0 z m 0.0625,-0.53125 c 0.008,-0.15893 0.13366,0.12204 0,0 z m 0.5625,-0.125 c -0.005,0.2973 0.18606,-0.13101 0,0 z"
+           id="path4896" />
+      </g>
+    </g>
+    <rect
+       y="-28.101896"
+       x="-879.34723"
+       height="329.39468"
+       width="457.91006"
+       id="rect3664"
+       style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+       inkscape:export-filename="Z:\private\technique\équipes\stage\lchituc\splashscreens\OD4IS\png\splashscreen.png"
+       inkscape:export-xdpi="112"
+       inkscape:export-ydpi="112" />
+    <g
+       id="g5472">
+      <g
+         id="g5378"
+         inkscape:export-filename="/home/development/git/ModelWriter/Source/releng/eu.modelwriter.branding/intro/images/about.png"
+         inkscape:export-xdpi="204"
+         inkscape:export-ydpi="204">
+        <rect
+           transform="scale(-1,1)"
+           y="805.39429"
+           x="176.68121"
+           height="292"
+           width="150"
+           id="rect3860"
+           style="fill:url(#linearGradient5492);fill-opacity:1;fill-rule:evenodd;stroke:none"
+           inkscape:export-filename="Z:\private\marketing\Design\Produits\UMLDesigner\aboutscreen\png\aboutscreen_UML.png"
+           inkscape:export-xdpi="90"
+           inkscape:export-ydpi="90" />
+        <rect
+           inkscape:export-ydpi="90"
+           inkscape:export-xdpi="90"
+           inkscape:export-filename="Z:\private\général\illustrations\Charte graphique\OD\OD 5.0\aboutpage\png\aboutpage_OD5.0.png"
+           style="opacity:0.99142857;fill:#cccccc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter3614);enable-background:accumulate"
+           id="rect6106"
+           width="39.10931"
+           height="39.10931"
+           x="-223.4366"
+           y="1050.7064"
+           transform="matrix(0.61596339,0,0,0.61596335,-141.42734,403.23382)" />
+        <path
+           inkscape:connector-curvature="0"
+           inkscape:export-ydpi="90"
+           inkscape:export-xdpi="90"
+           inkscape:export-filename="Z:\private\général\illustrations\Charte graphique\OD\OD 5.0\aboutpage\png\aboutpage_OD5.0.png"
+           style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.49142857;fill:#ef2929;fill-opacity:1;stroke:none;display:inline;filter:url(#filter3558);font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+           d="m -92.403025,1026.3635 -2.5665,0.4889 0,1.3444 0.5703,-0.6111 0.6519,0 0,0.2037 -1.2222,0.4074 0,2.0777 0.2037,0 -0.2037,0.2851 0,0.8556 c -0.1242,0.1133 -0.1889,0.1892 -0.2852,0.2851 l 0,0.4889 c 0.096,-0.046 0.1848,-0.06 0.2852,-0.1222 l 0,0.7333 -0.2852,0.2444 0,8.5552 0.6111,2.2406 0.082,0.5704 c -0.028,0.081 -0.061,0.1677 -0.082,0.2444 0.066,0.049 0.108,0.1082 0.163,0.1629 l 0,0.163 -0.2445,-0.082 c -0.024,-0.01 -0.057,-10e-4 -0.082,0 0.036,-0.1266 0.062,-0.2569 0.1222,-0.3666 l -0.1629,-0.6111 -0.4074,0.082 0,3.8702 c 0.014,0 0.027,0 0.041,0 l 0.2037,-0.041 0.041,-0.041 0,0.8555 c -0.09,0.2617 -0.1903,0.5021 -0.2852,0.6925 l 0,0.9778 0.2444,0.082 -0.041,0.1629 -0.2037,-0.082 0,11.1217 0.163,-1.1814 0.1222,0.041 0,1.0185 0.2037,0 0.4889,0.5296 c -0.1,0.082 -0.1897,0.1934 -0.2445,0.3667 l -0.2036,-0.2445 -0.082,0 -0.163,-0.6518 0,0.5703 -0.041,0 -0.2444,0.1223 0,0.8962 0.2851,-0.1222 0,0.3259 -0.1222,-0.041 -0.1222,0.4074 0.2444,0.041 0.3667,-0.1222 0,0.2444 -0.3667,0 0,0.8555 -0.2851,0.082 0,0.2037 0.2851,-0.082 0,0.082 c 0.4141,10e-5 0.5704,-0.1421 0.5704,-0.4481 l -0.2037,-0.2037 0.5296,0 -0.12221,0.082 -0.082,0.2444 0.1222,0 0,0.082 0.2037,0.2445 0,0.2851 -1.0185,0 0,0.2445 3.3813,0 c 0.2347,-0.6384 0.527,-0.9778 0.937,-0.9778 l 0,-0.4074 -0.5703,0 -0.2852,0.2037 -0.1629,0 -0.24451,-0.3259 0.082,-0.2444 -0.2444,0.082 -0.6518,0 -0.32591,0.1222 0,-0.041 -0.3667,-0.082 -0.28521,0.2037 -0.44809,-0.2037 0,-0.2444 1.05921,0 0,-0.2037 -0.20371,-0.2037 0,-0.2444 0.48889,0.1629 -0.082,0.2037 0.57029,0.1222 0.28521,-0.041 0.61109,0.2037 -0.082,0.2445 0.2852,0.082 0.5703,-0.041 0.65179,0.2444 0,0.2037 c -0.3219,0 -0.81629,0.3865 -1.38509,1.1814 l 18.5769,0 c 0.082,-0.08 0.16341,-0.163 0.24451,-0.2444 0.212,0.076 0.504,0.1649 0.73329,0.2444 l 1.4666,0 -0.2445,-0.4074 1.1407,0.082 0.20371,0.082 -0.041,0.163 -0.52958,0.082 0.73329,0 7.86261,0 0.041,-0.163 c 0.061,0.031 0.13559,0.056 0.2037,0.082 l -0.041,0.082 1.30359,0 0.36671,-0.2444 -0.041,0.2444 2.5665,0 0.082,-0.2444 0.2445,0.041 -0.082,0.2037 0.44809,0 0,-1.3444 -0.082,0.2444 -0.24441,-0.041 0.12221,-0.4074 0.20371,0.082 0,-9.044 -0.12221,-0.041 0.12221,-0.5703 0,-1.7111 -0.28522,0.082 -0.041,0.2037 0.2037,0.3259 -0.61109,1.1 -0.20371,-0.041 0.937,-3.5036 0,-1.5888 -0.2852,0.1222 -0.041,1.0593 -0.6518,2.3628 -0.5703,0.2852 1.18141,-4.3998 0.36671,0.5703 0,-1.3443 -0.163,-0.041 0.163,-0.5704 0,-1.8332 c -0.25982,-0.3921 -0.52391,-0.7828 -0.8148,-1.1407 l 0.8148,0.041 0,-1.2222 -0.20371,0.8555 -0.24451,-0.082 0.32592,-1.1814 0.1223,0.041 0,-3.5443 -0.082,0.2852 -0.44821,-0.1222 0.52959,-2.037 0,-7.9848 -0.041,0.1222 -0.8147,0 -0.6519,-0.3666 -0.8147,0 0.041,-0.2037 -0.326,-0.5296 0.082,-0.2852 0.2037,0.041 0.8556,0.774 0.28511,-0.1629 0.082,-0.2852 c -0.3162,-0.3875 -1.75491,-1.0888 -4.31831,-2.0777 l -1.0999,0 2.811,1.1815 -0.1223,0.4073 0.28521,-0.1629 0.69259,0.2037 -0.48888,0.8148 -0.20371,-0.041 -0.16291,-0.2852 -0.2445,-0.041 -0.36659,0.1222 0.12221,-0.4074 0.36658,-0.1629 0,-0.041 -0.2444,-0.2852 -0.2444,-0.082 -0.2852,0.2037 -0.2444,-0.041 -0.6926,-0.4889 -0.5703,0.3667 -1.5481,-1.2629 -1.8333,0 -0.082,0.3259 -0.2444,-0.041 0.082,-0.2852 -3.2998,0 1.0184,1.5481 0.2037,0.041 -0.1629,0.6925 -0.4482,-0.1222 -0.082,0.2037 c 0.3277,0.088 0.5625,0.5585 0.6926,1.3851 l -0.1629,0.6926 -0.2445,-0.082 0.1222,-0.4481 -0.7333,-0.2037 -0.1629,0.4481 0.4888,0.1222 -0.2444,0.8963 -0.4889,-0.1222 -0.2036,0.937 0.4481,0.1222 -0.1222,0.4074 -0.4482,-0.1223 -0.1222,0.4074 0.4481,0.1222 -0.1629,0.6926 c -0.4097,-0.1095 -0.6971,0.1232 -0.937,0.6926 -0.022,0.084 -0.038,0.1751 -0.041,0.2444 l -0.2444,-0.2852 -0.2037,0.2852 c -0.01,-0.09 -0.01,-0.1889 0,-0.2852 l 0.2037,0 0,-0.2037 -0.163,-0.1629 c 0.014,-0.071 0.021,-0.1297 0.041,-0.2037 l 0.5296,0.1629 0.163,-0.6518 -0.4074,-0.6111 0.937,-1.3851 -0.2037,-0.041 0.2852,-0.1629 0.082,-0.2852 -0.2037,-1.4666 0.6518,-0.2444 -0.2444,-0.082 0.4481,-0.6111 c 0.1537,-1.0675 -0.199,-1.6848 -1.0592,-1.9148 l 0.2851,-0.1629 0.082,-0.2444 -1.5888,0 0,0.082 0.6926,0.1629 -0.937,0.7333 c 0.085,-0.3163 0.049,-0.6402 -0.041,-0.9777 l -1.5888,0 -0.2037,0.6925 -0.2445,-0.041 0.163,-0.6518 -0.937,0 0.2444,0.4889 -0.082,0.4481 -0.3666,-0.5703 0.082,-0.3667 -0.4481,0 -0.8555,3.0962 c -0.097,-0.045 -0.1796,-0.077 -0.2852,-0.1222 l -0.041,0 -0.163,-0.2445 0.2852,-0.1222 0.082,-1.1814 0.3666,-1.4259 -0.4888,0 -0.6111,2.3629 -0.2444,0 0.611,-2.3629 -2.6072,0 -0.041,0.163 0.4481,0.1222 -0.2852,1.0592 c -0.9988,-0.3794 -1.8221,-0.6518 -2.4443,-0.6518 -0.1476,0.3742 -0.4355,0.625 -0.7741,0.774 -0.016,-0.069 -0.022,-0.1337 -0.041,-0.2037 l -0.041,-0.2037 0.5704,-0.082 0,-0.2851 c 0,-0.2009 -0.2546,-0.367 -0.774,-0.4889 l -0.041,-0.2037 -0.9778,0 c 10e-4,0.014 0,0.027 0,0.041 l 0,0.2444 c -0.2787,-0.1373 -0.624,-0.216 -1.0185,-0.2852 l -1.711,0 0,0.163 -0.2444,0.082 -0.081,-0.2444 -0.5296,0 0.041,0.1222 -0.163,0.1629 -0.082,-0.2851 -2.7295,0 -0.2037,0.9777 -0.3259,0 0,-0.4889 c 0.085,-0.1761 0.1553,-0.3574 0.2037,-0.4888 l -2.4036,0 z m 36.2576,12.8328 0,-0.937 -0.041,0.041 -0.1629,0.6111 0.2037,0.2851 z m -34.3428,-12.7513 -0.2852,0.4481 -0.4889,0.082 0.082,-0.2851 0,-0.1222 0.6926,-0.1223 z m 13.4845,0.041 0.4482,0.1222 -0.041,0.2445 -0.4482,-0.1223 0.041,-0.2444 z m -16.2955,0.3667 0,0.4888 -0.4481,0 0.4481,-0.4888 z m 7.8218,0 0.082,0.041 0.2037,0.8962 c -0.2224,-0.02 -0.4372,-0.045 -0.611,-0.082 l 0.2036,-0.6518 -0.041,-0.163 0.163,-0.041 z m 1.4666,0 0.4074,0.4888 -0.4074,0 0,-0.4888 z m -2.5665,0.1629 0.082,0.2852 -0.1222,0.041 c -0.071,-0.079 -0.082,-0.1896 -0.082,-0.2852 l 0.1222,-0.041 z m -6.1516,0.041 0.4482,0 0,0.2852 -0.4482,0 0,-0.2852 z m 5.2146,0 0.2037,0 0,0.2852 -0.2037,0 0,-0.2852 z m -2.9739,0.2852 c 0,0 0.038,0 0.041,0 l 0,0.2444 -0.163,0 c 0.038,-0.069 0.088,-0.1795 0.1222,-0.2444 z m 13.0364,0 0.2037,0.082 -0.163,0.6518 -0.3259,-0.5703 0.2852,-0.163 z m 11.8143,0.041 0.4481,0.1222 -0.1222,0.4889 -0.4889,-0.1222 0.163,-0.4889 z m -5.8257,0.1629 0.2444,0.041 -0.1629,1.5889 -0.2852,0.1629 -0.1222,0.4889 -0.5296,2.5258 -0.6518,-0.6518 1.0999,-2.6481 -0.2444,-0.2851 0.082,-0.2037 0.5703,-1.0185 z m 0.9777,0.041 0.5704,0.1223 -0.2852,0.1629 -0.082,0.2037 -0.774,3.8702 -0.2852,0.163 -0.082,1.1406 -0.2037,0.7741 -0.5703,0 0.1629,-0.5704 c 0.2449,-0.096 0.4481,-0.2128 0.4481,-0.3666 l -0.2851,-0.2852 1.3851,-5.2146 z m -17.7214,0.2037 0.2445,0 0.041,0.163 -0.082,0.041 -0.1222,0 -0.082,-0.2037 z m 14.5438,0.1223 0.2037,0.041 -0.082,0.4481 -0.2444,-0.082 0.1222,-0.4074 z m 12.6291,0.041 0.2037,0.082 -0.082,0.4073 -0.2445,-0.082 0.1222,-0.4073 z m -29.8209,0.041 0.6518,0 0,0.2036 -0.6518,0 0,-0.2036 z m -2.0777,0.2036 1.0592,0 c -0.029,0.098 -0.082,0.1887 -0.1222,0.2852 l -0.937,0 0,-0.2852 z m 11.855,0 0,0.5297 -0.4888,0 0.4888,-0.5297 z m 24.3619,0.163 c -0.074,0.2764 0.1417,0.5131 0.5703,0.6518 l 0,-0.5296 -0.5703,-0.1222 z m -6.0701,0.3259 0.4481,0.1222 -0.3666,1.3037 -0.4482,-0.1222 0,-1.1815 0.3667,-0.1222 z m -17.0696,0.4481 0,0.4889 -0.2037,0 -1.6703,0.2444 c 0.035,-0.1863 0.075,-0.3749 0.082,-0.5703 l 1.7925,-0.163 z m 0.3667,0 0.6518,0.2037 0,0.2852 -0.8555,0 0.2037,-0.2852 0,-0.2037 z m 1.0184,0 0.041,0 0.2852,0.4482 -0.041,0.041 -0.2852,0 0,-0.4889 z m 1.8333,0 -0.082,0.326 -0.2852,0.041 0.1222,-0.326 c 0.073,-0.01 0.1596,-0.036 0.2444,-0.041 z m 10.2662,0 0.6518,0.3667 -0.082,0.2037 -0.4481,0.8555 c -0.076,0.6131 0.1199,0.9905 0.5296,1.1 l -0.1222,0.4073 -0.5296,-0.1222 -0.082,0.2852 0.2444,0.2852 -0.3667,0.1222 0.041,1.1814 -0.4888,1.7925 -0.5296,-0.1222 -0.4074,-1.3036 0.1222,-0.4889 0.2444,0.041 -0.1222,0.4889 0.4481,0.1222 0.041,-0.2037 -0.2851,-0.8148 0.2851,-0.1222 c 0.1186,-0.4435 -0.079,-0.7649 -0.5703,-0.8963 l 0.6518,-0.2851 -0.1222,0.4074 0.4889,0.1222 0.3666,-3.2184 0.041,-0.2037 z m -20.4917,0.1223 0.2445,0.041 0.1222,0.4888 -0.3259,-0.082 0,-0.3666 -0.041,-0.082 z m -7.7404,0.082 0.4482,0 -0.4482,0.5296 0,-0.5296 z m 1.3037,0 0.8148,0 c -0.013,0.016 -0.028,0.025 -0.041,0.041 -0.2573,0.2054 -0.343,0.304 -0.5704,0.4888 l -0.2037,-0.2444 0,-0.2852 z m 1.3036,0 0.3667,0 0.4074,0 0,0.2037 -0.082,-0.082 -0.4889,0.1222 0,0.2444 -0.082,0.041 -0.2037,-0.2444 -0.082,0 0.1629,-0.2852 z m 1.1407,0 0.6111,0 -0.041,0.2851 -0.5703,0 0,-0.2851 z m 7.2923,0 0.6518,0 -0.082,0.2444 0.1222,0.4481 -0.2852,0.041 -0.4073,-0.6518 0,-0.082 z m 1.2629,0 0.2037,0 0.082,0.2444 -0.2037,0.041 -0.082,-0.2852 z m 21.1434,0 0.8148,0 0.2445,0.041 -0.082,0.2036 -1.1,0.163 0.1222,-0.4074 z m -12.9142,0.082 0.2037,0.082 -0.082,0.4073 -0.2444,-0.082 0.1222,-0.4073 z m 5.2553,0 -0.082,0.2036 0.4889,0.1223 0.041,-0.2037 -0.4481,-0.1222 z m 10.144,0.3666 0.4889,0.1222 0.4074,0.5704 -0.6518,0.3259 0.2851,0.082 -0.6111,1.0184 c -0.3276,-0.088 -0.3629,-0.3713 -0.2444,-0.8147 l 0.2852,-0.163 0.041,-0.2037 0,-0.937 z m -1.3851,0.2852 0.2444,0.081 0.041,0.7333 -0.4481,-0.1222 0.163,-0.6926 z m -25.5025,0.041 0,0.4074 -0.2852,0 -0.082,-0.3259 0.3666,-0.082 z m 23.9137,0.041 0.2444,0.082 -0.1222,0.4074 -0.2037,-0.041 0.082,-0.4482 z m -24.7285,0.082 0.082,0.2851 -0.2444,0 0,-0.2444 0.1629,-0.041 z m -8.2293,0.041 1.0185,0 c -0.101,0.084 -0.1917,0.1658 -0.2852,0.2444 l -0.7333,0 0,-0.2444 z m 2.0777,0 0.4481,0 0,0.2444 -0.611,0 0.1629,-0.2444 z m 7.8626,0 0,0.2444 -0.2037,0 -0.041,-0.163 0.2445,-0.082 z m 3.748,0 0.4074,0 0,0.2444 -0.4074,0 0,-0.2444 z m 1.0592,0 0.8148,0 0,0.2444 -0.8148,0 0,-0.2444 z m 22.3656,0.041 0.4482,0.1222 0.2851,0.2852 0.081,-0.4074 0.2445,0.041 -0.1222,0.4481 -0.2037,-0.082 0.1629,0.2852 -0.1222,0.4888 c -0.3277,-0.088 -0.616,0.1421 -0.774,0.7333 l -0.3667,-0.611 0.3667,-1.3037 z m -31.0022,0.041 0.2851,0.2037 -0.2037,0.082 -0.082,-0.2852 z m -4.7257,0.082 0.041,0.082 -0.1223,0 c 0.027,-0.031 0.054,-0.05 0.082,-0.082 z m 31.98,0.041 0.5296,0.1629 -0.041,0.2037 -0.5296,-0.1222 0.041,-0.2444 z m -20.4917,0.041 0.3667,0 0,0.2851 -0.3667,0 0,-0.2851 z m 3.5443,0 0.2037,0 c 0.2933,0.1 0.5027,0.2543 0.6518,0.4888 l -0.082,0.1223 c 0.049,0.098 0.1129,0.1884 0.163,0.2851 l -0.3667,0 0,0.2445 0.5296,0.082 c 0.074,0.1378 0.168,0.2723 0.2445,0.4074 l -1.7925,0 0,-0.2037 c 0.5521,10e-5 0.8147,-0.2236 0.8147,-0.5296 l -0.3666,-0.4074 0,-0.4889 z m -9.2885,0.041 0.1223,0.4481 -0.2037,0.041 -0.082,-0.3259 0.1629,-0.163 z m -3.5035,0.082 0.082,0.4481 -0.4481,0.1222 -0.041,-0.1629 0.3259,-0.041 0,-0.326 0.082,-0.041 z m 1.6296,0.041 c 0.2851,1.0667 0.7124,1.5431 1.3036,1.3851 l 0.082,0.163 -0.163,0.2444 -0.2444,-0.1222 c -0.5964,0.7308 -0.8708,1.4517 -0.6926,2.1184 l -0.8555,-0.6518 0.6111,-0.163 -0.1222,-0.4074 c -0.3695,0.099 -0.5984,-0.098 -0.8148,-0.6111 l 0.9777,-0.7333 -0.4481,-0.9369 -0.041,-0.163 0.4074,-0.1222 z m 23.5878,0.2444 0.4481,0.1222 -0.082,0.2445 -0.4481,-0.1223 0.082,-0.2444 z m -14.9512,0.082 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 4.6035,0 0,0.082 -0.041,0.163 -0.2037,-0.041 0.2444,-0.2037 z m -10.5514,0.041 c 0.1566,0.1293 0.3291,0.2464 0.5704,0.3667 l 0,-0.163 0.082,0.3667 0,0.082 -0.4482,0.1222 -0.2037,-0.7741 z m 23.2212,0.041 0.4481,0.1222 0,0.9778 -0.2852,0.1222 -0.041,0.2037 -0.1629,1.4666 -0.4074,0.5703 0.2037,0.2445 -0.3259,0.2036 0.3666,0.5704 -0.2852,0.1222 -0.2444,-0.041 -0.041,1.1407 -0.3259,1.1407 -0.4481,-0.163 -0.2037,0.6926 c 0.013,0.024 0.029,0.057 0.041,0.082 l -0.1222,0.082 0.1629,0.041 c 0.083,0.2038 0.1422,0.4408 0.163,0.6925 l -0.041,0.2037 -0.163,-0.2444 -0.2852,-0.082 -0.041,0.041 0.2445,-1.5481 0.774,-2.8517 0.4481,-0.8148 -0.2851,-1.0592 0.52959,0.163 0.32591,-2.0777 z m -28.4358,0.041 -0.041,0.4481 -0.2851,0.082 -0.2852,-0.1629 -0.2037,0.081 0.3667,0.4889 -0.4889,0.611 -0.3259,-0.4888 c 0.071,-0.017 0.1278,-0.041 0.2037,-0.041 l 0,-0.4889 -0.163,0 -0.2037,0.2852 -0.2037,0 0.3667,-0.6111 1.2629,-0.2037 z m 4.8072,0 0.163,0.6518 -0.2037,0.041 -0.2037,-0.611 0.2444,-0.082 z m -7.0885,0.2852 0.2037,0 0,0.2852 -0.2037,0.2444 -0.2445,0 0,-0.3259 c 0.078,-0.065 0.1634,-0.1301 0.2445,-0.2037 z m 32.5911,0.4074 1.5073,1.3444 -0.1222,0.4481 -0.5296,-0.163 -0.4889,1.7925 -0.2037,-0.041 0.4074,-2.485 -0.2852,0.1222 -0.3259,-0.082 0.041,-0.937 z m 4.4812,0 0.7741,0 -0.1222,0.4074 -0.6926,-0.2037 0.041,-0.2037 z m -27.4172,0.1222 0.041,0 0.2037,0.2037 -0.163,0.041 -0.082,-0.2444 z m 3.422,0 0.5704,0 0,0.2037 -0.5704,0 0,-0.2037 z m 5.4998,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.1629 c -0.014,0.06 -0.024,0.099 -0.041,0.163 l 0.4074,0.1222 c -0.1395,0.1292 -0.3455,0.163 -0.6518,0.163 l -0.2037,0 0,-0.2037 0.4888,-0.2445 z m -4.6442,0.041 0.6518,0.2037 0,0.4482 c -0.414,0 -0.6518,0.1829 -0.6518,0.4888 l -0.163,0 c 0,-0.4589 -0.1313,-0.7332 -0.4074,-0.7333 l 0,-0.2037 0.5704,-0.2037 z m 11.4476,0.041 0.3259,0.6111 -0.041,0.2037 -0.3259,-0.6111 0.041,-0.2037 z m -18.0881,0.041 0.5704,0.2852 0.6518,2.3629 0,0.082 -0.3667,-0.5296 -0.2037,0 0.5704,0.8555 0.041,0.6518 0.2852,0.1222 -0.3667,0.5704 -1.1814,-4.3998 z m 15.4401,0 0.2444,0.041 -0.2852,1.1 -0.2444,-0.041 0.2852,-1.1 z m -7.0886,0.1223 0.5703,0.2037 0,0.2444 -0.774,0 0.2037,-0.2444 0,-0.2037 z m -9.2885,0.2037 0.4889,0.4888 0.041,0.163 -0.4889,0.1222 -0.1629,-0.6518 0.1222,-0.1222 z m 1.9962,0.1222 0.3259,0.3259 0,0.082 0.082,0.041 0.2037,0.2444 -0.1629,0.163 0.6518,2.3628 -0.2852,-0.1629 -0.8147,-3.0554 z m -7.8218,0.082 0.082,0.3666 -0.2037,0.041 -0.082,-0.3666 0.2037,-0.041 z m 2.4443,0.2037 -0.082,0.611 0.082,0.2445 0.2444,0.1629 c -0.7759,0.2075 -1.0756,0.7481 -0.937,1.7111 l 0.3667,0.5703 -0.2037,0.041 0.5703,0.2444 -0.1629,1.3037 0.082,0.2852 0.2444,0.1222 -0.2037,0.041 0.5704,0.8555 c -0.141,0.1125 -0.2864,0.2395 -0.4481,0.4074 l -0.082,-0.2037 -0.4074,0.1222 -0.082,-0.3666 0.4073,-0.1223 -0.2036,-0.8147 -0.4482,0.1222 -0.2037,-0.8148 0.4074,-0.1222 -0.1222,-0.4481 -0.6518,0.2036 0.082,0.4482 -0.2037,0.041 -0.163,-0.6111 c 0.1174,-0.7457 0.3563,-1.1839 0.6519,-1.2629 l -0.082,-0.163 -0.4074,0.082 -0.163,-0.6111 0.2037,-0.041 1.3444,-2.0369 z m 31.3282,0.2037 0.2444,0.041 0.2445,0.2851 0.2851,-0.1222 0.6926,0.163 0.4481,2.2813 -0.041,0.2037 0.2852,0.082 0.2852,-0.1222 0.2444,0.041 -0.6926,2.6481 c -0.6158,-0.323 -0.8481,-0.9057 -0.611,-1.7926 l -0.2037,-0.082 0.2851,-0.1222 0.1223,-0.4888 0.082,-1.1815 -0.5704,-0.1222 -0.6925,2.6888 0.2444,0.2852 -0.3667,0.1222 -0.041,0.2037 0.2037,2.1999 -0.8147,0 c -0.1161,0.5673 -0.1894,1.0843 -0.2445,1.5073 -0.1694,0.1076 -0.2849,0.3972 -0.4074,0.8555 l -0.3259,0.1222 -0.4481,-0.1222 -0.163,-0.937 0.5704,-0.4888 0,-0.1223 c 0.055,0.088 0.1486,0.1672 0.2852,0.2037 l 0.2037,0.041 0.082,-0.2036 0.2444,-1.874 0.3666,-0.5296 0.7333,-3.6258 0.2445,-0.8963 -0.4482,-0.1222 -0.3666,1.3444 -0.3667,0.1222 0.2445,0.2852 -0.1222,0.4889 -0.5296,-0.163 0.8147,-3.0961 z m -9.207,0.1222 0.2037,0.041 -0.2444,0.8962 -0.2852,0.163 -0.2037,-0.082 0.5296,-1.0185 z m 6.0701,0 0.2037,0.041 -0.082,0.4074 -0.2444,-0.041 0.1222,-0.4074 z m -24.9729,0.082 0.2037,0.8148 -0.2037,0.041 -0.2445,-0.7741 0.2445,-0.082 z m -6.7219,0.041 0.041,0 0.1222,0.4481 -0.2037,0.041 -0.041,-0.1222 c 0.028,-0.1061 0.05,-0.2304 0.082,-0.3259 0,-0.013 0,-0.028 0,-0.041 z m 34.2614,0.041 0.2444,0.041 -0.2037,0.6925 -0.2037,-0.041 0.163,-0.6925 z m -26.5618,0.041 0.1222,0.4481 -0.3259,0.4889 -0.082,-0.3667 0.2852,-0.5703 z m 13.892,0.082 0,0.041 -0.3259,0.2037 -0.2037,-0.041 c 0.011,-0.041 -0.01,-0.084 0,-0.1222 0.1891,-0.018 0.3782,-0.056 0.5296,-0.082 z m -11.7328,0.2444 0.1222,0.1222 -0.2037,0.082 -0.041,-0.1629 0.1222,-0.041 z m 27.1321,0.1222 0.774,0.2037 -0.041,0.2445 -0.774,-0.2037 0.041,-0.2445 z m -8.7182,0.041 0.5704,0.163 -0.082,0.2037 -0.5296,-0.1222 0.041,-0.2445 z m -15.4807,0.041 0,0.6111 0.4481,0 c 0,0.3379 0.036,0.6266 0.1222,0.8148 -0.2101,0.043 -0.4005,0.095 -0.5703,0.1629 l 0,-0.041 -0.3667,-0.4073 -0.6518,0.2036 c 0,-0.1101 -0.034,-0.2077 -0.082,-0.2851 l -0.2444,-0.8963 1.3443,-0.1629 z m 2.8924,0 0.2852,0.2037 0.2037,0 1.874,-0.2037 0,0.2037 -0.2852,0.6518 c 0.3992,-0.2211 0.701,-0.4734 0.8148,-0.774 0.071,0.093 0.1312,0.1937 0.2037,0.2852 l -0.3667,0.041 0,0.4481 0.4074,0 0.2445,0.2852 0.1629,-0.2445 c 0.093,0.1068 0.1891,0.2221 0.2852,0.326 l 0.041,0.1629 -0.2037,-0.2037 -0.2444,0.1222 0.041,0.6926 -0.2445,0.1222 -0.081,0.163 -0.6518,-0.1223 c -0.065,-0.1287 -0.1069,-0.2443 -0.1222,-0.3666 l 0.3259,0 0.3666,0.082 0.041,-0.2037 -0.2851,-0.5296 c -0.2712,-0.072 -0.5058,-0.065 -0.7333,-0.082 l -0.2037,-0.2037 -0.082,0.163 c -0.064,0 -0.1437,-0.01 -0.2037,0 l -0.5296,-0.6111 -1.0592,0.2037 -0.7741,-0.2037 -0.4481,0.4481 -0.163,-0.2444 0,-0.2037 c 0.2416,0 0.4327,0.016 0.6111,0 0.5354,-0.049 0.7741,-0.1779 0.7741,-0.4074 z m 16.2956,0 0.2444,0.082 -0.2444,0.8963 -0.2445,-0.082 0.2445,-0.8963 z m -19.9621,0.4074 0,0.4481 0.4074,0 0,-0.4481 -0.4074,0 z m -1.548,0.082 0.2444,0.2852 -0.2037,0.3666 -0.163,-0.5296 0,-0.082 0.1223,-0.041 z m -10.5107,0.1222 0.041,0.3259 -0.1629,0.041 0.1222,-0.3666 z m 21.8361,0 0.1629,0 0,0.2445 -0.1629,0 0,-0.2445 z m -16.6622,0.041 0.5296,0.937 0.041,0.163 -0.2037,0.2851 0.774,1.8333 -0.5296,0.3259 -0.2852,-1.5073 -0.1222,-0.4482 -0.2444,-0.1222 -0.163,-1.4258 0.2037,-0.041 z m -0.8963,0.041 1.1407,4.2369 -0.3259,-0.082 0,-0.082 -0.2852,-0.163 -0.6925,-3.4628 -0.041,-0.2037 -0.2852,-0.1222 0.4888,-0.1222 z m 19.8806,0.082 0.2444,0.082 -0.1222,0.4074 -0.2037,-0.041 0.082,-0.4481 z m -7.7811,0.082 0.6518,0 0,0.2037 c -0.1266,0.036 -0.2233,0.098 -0.3259,0.163 l -0.3259,-0.082 0,-0.2852 z m -9.207,0.1222 0.1222,0.3667 -0.2037,0.041 -0.1222,-0.3667 0.2037,-0.041 z m 15.1141,0.041 0,0.1223 -0.082,0 0.082,-0.1223 z m 9.981,0.2445 0.2444,0.041 -0.1629,0.4888 -0.2037,-0.041 0.1222,-0.4888 z m 5.2553,0 0.2445,0.041 -0.163,0.4888 -0.2037,-0.041 0.1222,-0.4888 z m -22.8137,0.082 0.3666,0 c -0.096,0.1753 -0.2074,0.2729 -0.3666,0.2852 l 0,-0.2852 z m 7.1293,0 0.1629,0 0,0.2037 -0.1629,0 0,-0.2037 z m -1.5074,0.041 0.2852,0.082 -0.2852,0 0,-0.082 z m 4.7257,0.082 0.3259,0.6111 -0.1222,0.4073 -0.4481,-0.1222 0.2444,-0.8962 z m 1.0185,0.2851 0.2037,0.041 c -0.079,0.2957 0.1603,0.5612 0.6518,0.6926 l -0.2444,0.8963 c -0.1374,-0.1603 -0.2848,-0.29 -0.4481,-0.4074 l 0.041,-0.2037 -0.4482,-0.1222 0.2445,-0.8963 z m -5.8664,0.041 0.1222,0 0.082,0.041 -0.1222,0.4482 -0.1629,-0.082 0.082,-0.4074 z m 3.3813,0 0.5704,0 -0.082,0.2037 -0.2445,0 c -0.09,-0.065 -0.1747,-0.1266 -0.2444,-0.2037 z m -7.4144,0.1223 c -0.014,0.04 -0.029,0.079 -0.041,0.1222 l -0.1223,-0.041 0.163,-0.081 z m -15.603,0.1629 0.082,0.163 0.3259,2.9332 0.4074,-0.1222 -0.1222,-0.3667 0.611,0.2444 c -0.4434,0.1186 -0.6364,0.4148 -0.5296,0.8148 l 0.2445,0.1222 -0.2445,0.7333 0.041,0.2037 0.4482,-0.1222 -0.1223,-0.4481 0.2037,-0.041 0.1223,0.4481 -0.3667,1.1407 -0.3666,-0.082 c -0.056,0.071 -0.069,0.1343 -0.1223,0.2037 l -0.4481,-1.5888 0.041,-1.1 -0.3259,-0.081 0.2037,-0.2851 -0.041,-0.2445 -0.4889,0.1222 -0.082,-0.1629 0,-0.082 0,-0.163 c 0.3324,-0.117 0.5134,-0.4115 0.4482,-0.937 l -0.4482,-0.774 -0.041,-0.163 0.5704,-0.3666 z m 31.1652,0 0.5296,0.1222 -0.2037,0.6926 -0.5296,-0.1222 0.2037,-0.6926 z m -28.9246,0.2852 -0.4074,0.082 0.041,0.2037 0.4074,-0.1222 -0.041,-0.163 z m 4.7257,0 0.1222,0.3666 -0.2037,0.041 -0.1222,-0.3666 0.2037,-0.041 z m 8.5144,0.041 0.2037,0.082 -0.2444,0 0.041,-0.082 z m 16.9067,0 0.5296,0.1222 -0.1222,0.4889 0.4481,0.1222 0.1629,-0.6926 0.4482,0.5704 -0.5704,0.8148 -0.1629,1.8739 -0.4482,0.5297 -0.2444,-0.041 c 0.5137,-1.9216 0.411,-2.921 -0.2444,-3.0962 l 0.2037,-0.6926 z m -20.0436,0.082 0.2037,0 -0.1222,0.4481 -0.1629,0 0,-0.2037 0.082,-0.2444 z m 1.7926,0 0.2037,0 c 0.1368,0.1613 0.1865,0.3854 0.1629,0.6518 l -0.1222,0 -0.2444,-0.6518 z m -2.5666,0.1222 0.2037,0.3667 -0.2852,-0.082 0.082,-0.2852 z m 12.5476,0.163 0.2444,0.082 0.2852,0.2037 -0.163,0.2444 c -0.1007,-0.099 -0.2133,-0.1792 -0.3259,-0.2444 l -0.041,-0.2852 z m -7.1701,0.1629 0.2852,0 c 0,0.072 0.024,0.1466 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.7333,0.082 0.4074,0.1222 -0.3259,0 -0.082,-0.1222 z m -6.7219,0.1222 0.2037,0.082 -0.082,1.2222 -0.082,0.2037 -0.2037,-0.082 0.041,-0.4889 0.2037,0 0,-0.6518 -0.082,-0.2852 z m 14.6253,0.041 0.3259,0.082 -0.163,0.6519 -0.2037,-0.082 -0.041,-0.5296 0.082,-0.1223 z m -15.3586,0.041 0,0.2037 -0.1222,0 0.1222,-0.2037 z m -1.4666,0.163 0.1222,0 0.1223,0.1629 0.082,0.2852 -0.3259,-0.4074 0,-0.041 z m 4.522,0.041 0.2037,0 -0.082,0.2037 -0.1629,0 0.041,-0.2037 z m -5.2553,0.1629 -0.041,0.2445 c -0.1412,0.6766 -0.1364,1.0308 0.1222,1.0999 l -0.2444,0.2037 -0.082,0.163 -0.041,0.2444 -0.1222,0.041 -0.163,-0.5703 0.4482,-0.081 c -0.206,-0.7706 -0.1475,-1.243 0.1222,-1.3444 z m 1.874,0 0.041,0.1223 0.082,-0.082 0.163,0.6518 0,0.1222 -0.4889,0.7333 0.2852,0.082 -0.3259,0.1222 -0.082,0.2445 0.2444,0.2851 -0.082,0.163 -0.4074,0.5703 0.041,0.8555 -0.6518,1.3037 0.2444,0.2852 -0.4888,-0.163 0.3666,-1.3444 -1.1814,0.7333 0.2444,0.2852 -0.8555,0.4481 -0.082,1.0185 -0.4074,0.6925 c 0.08,-0.4994 0.011,-0.798 -0.2037,-0.8555 l 0.2852,-0.1629 0.041,-0.2037 0.2037,-1.3037 c 0.1374,-0.1299 0.2764,-0.2714 0.4074,-0.4074 l 0.4481,0.326 c -0.053,-0.2116 -0.1577,-0.3754 -0.2444,-0.5296 0.051,-0.055 0.1128,-0.1065 0.1629,-0.163 l 0.2445,0.041 0.082,-0.3667 0.3666,-0.1629 -0.1629,-0.163 c 0.072,-0.092 0.1339,-0.1912 0.2036,-0.2851 l 0.7333,0.041 0.163,-0.6111 -0.4074,-0.1222 c 0.071,-0.1075 0.1351,-0.2161 0.2037,-0.3259 l 0.2852,0.082 0.2852,-1.0593 c 0.1084,-0.1999 0.2226,-0.4049 0.3259,-0.611 l -0.1223,-0.163 0.041,-0.1222 z m 11.7328,0.041 0.2037,0.4074 0,0.041 -0.4889,0 c 0.012,-0.071 0.03,-0.1354 0.041,-0.2037 l 0.2445,-0.2444 z m -22.1619,0.041 0.082,0.2852 -0.082,0 0,-0.2852 z m 30.4319,0.2037 0.4889,0.1223 -0.4074,0.9369 c -0.091,-0.1361 -0.2088,-0.2648 -0.3667,-0.3666 l 0.2852,-0.6926 z m -10.8773,0.163 0.2037,0.041 -0.2037,0 0,-0.041 z m 0.9778,0.041 0.4073,0.1222 -0.041,0.163 -0.2037,0.041 -0.1629,-0.2852 c 0.01,0 -0.01,-0.038 0,-0.041 z m -8.3923,0.3259 0.4074,0.082 -0.1629,0.6518 -0.2852,-0.5703 0.041,-0.163 z m 23.9138,0.041 c 0.4519,0.2792 0.6049,0.7683 0.4074,1.5073 l -0.5297,1.0593 c -0.1997,1.1223 -0.2914,1.891 -0.2851,2.4035 l -0.163,-0.041 0.041,-0.774 0.1222,-0.4889 -0.3666,-0.774 0.8962,-2.1184 -0.1222,-0.7741 z m -21.8361,0.1222 0.2445,0 0,0.2037 -0.2445,0 0,-0.2037 z m 12.0995,0 0.041,0 -0.163,0.5704 c -0.02,0.077 -0.028,0.1306 -0.041,0.2037 l -0.041,0 0.2037,-0.7741 z m -19.9621,0.041 0.2037,0.041 0.1222,0.2444 -0.3666,-0.1222 0.041,-0.1629 z m -4.1146,0.2037 0.041,0.2037 -0.2852,0.5296 -0.041,-0.1629 0.2852,-0.5704 z m 3.6258,0 c 0.1217,0.056 0.2252,0.1143 0.4074,0.163 l -0.082,0.3666 -0.163,-0.2444 -0.082,-0.041 -0.082,-0.2444 z m 31.1245,0.082 0.2444,0.082 -0.1222,0.4889 -0.2445,-0.082 0.1223,-0.4889 z m -25.4618,0.082 c 0.1305,0.01 0.2859,0.02 0.4481,0.041 l -0.1222,0.3667 c -0.2956,-0.079 -0.55,0.1592 -0.6926,0.6925 l -0.4481,-0.774 c 0.047,-0.1747 0.2132,-0.256 0.4889,-0.2852 l 0.3666,0 -0.041,-0.041 z m 14.0141,0 0.082,0 0.1222,0.041 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.2444 z m -8.1477,0.041 0.2851,0 -0.1222,0.5296 -0.2444,-0.082 c 0.037,-0.1539 0.063,-0.3101 0.082,-0.4481 z m 0.8555,0 0.5703,0 0,0.082 -0.3666,0.5704 0.1222,0.1629 -0.6111,-0.1629 c 0.107,-0.1606 0.1904,-0.4143 0.2852,-0.6519 z m 1.0592,0 0.2444,0 -0.041,0.082 -0.2037,-0.041 0,-0.041 z m 2.2406,0 0.4889,0 -0.1222,0.3667 -0.2037,0.041 0,0.4481 0,0.041 -0.082,0.1629 0.041,0.4482 -0.163,0.041 c -0.1808,-0.2054 -0.2427,-0.4948 -0.2037,-0.8555 0,-0.026 0,-0.055 0,-0.082 0.012,-0.083 0.016,-0.1538 0.041,-0.2445 l 0.2037,-0.3666 z m 0.8555,0 0.7333,0 0.326,0 -0.041,0.2037 -0.2445,0 0,0.4889 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.2852 -0.4889,0.1222 -0.041,-0.5296 0.2445,-0.041 0,-0.4888 -0.2852,0.041 -0.041,-0.2445 z m -7.6996,0.082 0,0.7741 c -0.2652,-0.083 -0.4074,-0.289 -0.4074,-0.6519 0.1827,1e-4 0.3,-0.043 0.4074,-0.1222 z m 5.5405,0 0.4074,0.1222 -0.082,0.3667 -0.4482,-0.1222 0,-0.041 0.163,-0.2037 -0.082,0 0.041,-0.1222 z m 11.9365,0 0.1222,0.6518 c -0.026,-0.012 -0.051,-0.033 -0.082,-0.041 l -0.3259,0.082 -0.041,0.2445 0,0.2851 -0.041,0.082 -0.2037,-0.041 0.041,-0.2036 0.2444,-0.3667 0.163,-0.2852 -0.4482,-0.1222 0.5704,-0.2852 z m -18.8214,0.082 c 0.092,0.016 0.1762,0.041 0.2852,0.041 l 0,0.6518 -0.2444,-0.082 -0.041,0.1223 -0.1223,0 0,0.4481 0,0.082 0.4482,0.1222 0.041,-0.2037 0.1629,0 -0.5296,0.774 -0.2444,-0.3259 -0.082,0.3667 0.2444,0.082 -0.041,0.041 0.5296,0.1222 0.082,0.2444 -0.1222,0.2037 c -0.155,0.076 -0.2587,0.227 -0.2852,0.4481 l -0.041,0.1223 -0.1629,0 c 0,-0.03 0.01,-0.052 0,-0.082 l 0.082,-0.4482 -0.163,-0.041 c -0.084,-0.4331 -0.1524,-0.7924 -0.2444,-1.0592 l 0.4481,-1.6295 z m -7.2922,0.4481 c 0.2126,0.1197 0.3123,0.3225 0.2851,0.6111 l -0.2037,-0.1222 -0.082,-0.4889 z m 18.3324,0 0.041,0 c -0.01,0.03 -0.034,0.052 -0.041,0.082 -0.03,0.1372 -0.06,0.2832 -0.082,0.4074 -0.092,0.016 -0.1761,0.041 -0.2851,0.041 l 0,0.4889 -0.2445,0 0.082,-0.937 0.5296,0 0,-0.082 z m -12.3846,0.082 0.2852,0 0.1222,0.041 0,0.4074 -0.2037,0 0,0.2037 0.082,0.3667 c -0.1678,-0.1492 -0.2705,-0.4892 -0.2851,-1.0185 z m 25.3396,0.041 0.4481,0.1223 -0.1222,0.4073 -0.4481,-0.1222 0.1222,-0.4074 z m -33.9355,0.041 c -0.044,0.049 -0.077,0.1097 -0.1222,0.163 l -0.041,-0.1222 0.163,-0.041 z m -0.8962,0.041 0.4481,0.937 -0.2037,0.041 -0.082,-0.041 c 0.011,-0.045 0.028,-0.075 0.041,-0.1222 l -0.2444,-0.082 -0.2037,-0.6925 0.2444,-0.041 z m 17.5177,0 0.4074,0.1223 -0.082,0.2444 -0.3667,-0.2444 0.041,-0.1223 z m 0.7333,0 0.2037,0.082 -0.1222,0.4074 -0.2037,-0.041 0.1222,-0.4481 z m 7.1293,0.082 0.082,0.1222 0.2852,0.082 0.082,-0.041 -0.2037,1.3444 -0.6926,2.5258 -0.2444,0.4889 -0.082,-0.3666 0.2037,-0.2852 -0.2037,-0.2037 -0.2445,0.082 -0.1629,-0.2852 0.2851,-0.1222 0.2037,0.041 0.041,-1.0592 0.2852,-0.9777 0.4074,0.082 0.1222,-0.5297 0.041,0 0,-0.082 c -0.1251,-0.2296 -0.1809,-0.5083 -0.2037,-0.8147 z m 3.0554,0.041 0.2444,0.082 -0.082,0.2445 0,0.041 -0.1629,0.5296 -0.2037,-0.082 0.2037,-0.8148 z m -20.2472,0.2037 0.4074,0.1222 -0.1222,0.3667 -0.2852,-0.4889 z m -10.6329,0.3259 0.041,0.163 -0.1222,0.041 0,-0.163 0.082,-0.041 z m 5.5405,0.041 0.2037,0.082 -0.082,0.3667 0.2037,0.041 -0.2444,0.1222 -0.1222,0.4889 -0.163,-0.6111 0.2037,-0.4889 z m 27.4173,0 0.3666,0.082 c -0.05,0.1858 -0.025,0.3353 0,0.4482 l -0.3259,-0.082 c 0.053,-0.2001 0.019,-0.3354 -0.041,-0.4482 z m -3.9517,0.082 0.041,0 c -0.023,0.1203 -0.051,0.2388 -0.082,0.3667 l -0.041,0 0.082,-0.3667 z m -17.314,0.041 0.2037,0.041 -0.2444,0.8148 -0.2037,-0.041 0.2444,-0.8148 z m 14.7475,0.041 c 0.1067,0.099 0.2579,0.168 0.4074,0.2445 l -0.163,0.3259 -0.163,-0.041 -0.041,-0.041 c -0.048,-0.04 -0.1096,-0.09 -0.1629,-0.1222 l 0.1222,-0.3667 z m -21.9175,0.163 0.082,0 c 0.01,0.063 0,0.1434 0,0.2037 l -0.082,-0.2037 z m 32.4688,0 0.3259,0.5296 -0.4481,-0.1222 0.1222,-0.4074 z m -33.2429,0.3666 0.041,0.1223 -0.1629,-0.041 0,-0.041 0.1222,-0.041 z m 6.7627,0.163 0.2037,0.082 -0.7333,2.811 -0.2037,-0.082 0.7333,-2.811 z m 9.4514,0 -0.2037,0.8148 0,0.082 c -0.07,0.01 -0.1708,0.032 -0.2444,0.041 l 0.2444,-0.8963 0.2037,-0.041 z m 1.5888,0.1629 c 0,0.051 0,0.1084 0,0.163 -0.1404,0.1712 -0.5033,0.2872 -1.0185,0.4074 l 0.082,-0.2444 0.937,-0.326 z m 8.5959,0.1223 c 0.1067,0.1843 0.2375,0.3374 0.3667,0.4888 l 0,0.1222 0.1629,0.041 c 0.068,0.069 0.1302,0.1437 0.2037,0.2037 l -0.163,0.6519 -0.2036,-0.041 c 0.071,-0.2668 -0.1677,-0.4926 -0.6111,-0.6111 l 0.2444,-0.8555 z m 1.0185,0.041 0,0.1222 -0.082,-0.082 0.082,-0.041 z m 5.5812,0.041 0.4481,0.1222 -0.041,0.2037 -0.4888,-0.1222 0.082,-0.2037 z m -24.1989,0.041 0.1222,0.4481 0.2445,0.8963 -0.4482,0.7333 0.3259,-0.1223 0.2037,0.041 -0.1222,0.3667 -0.2037,-0.041 -0.2037,-0.2444 -0.2444,-0.082 -0.082,0.4481 -0.2444,-0.041 0.6518,-2.4036 z m -1.2222,0.082 0.2037,0.082 -0.1222,0.5296 -0.2037,-0.041 0.1222,-0.5704 z m 7.1293,0 0.2037,0.041 -0.082,0.3666 -0.2036,-0.041 0.082,-0.3666 z m 14.5438,0.041 -0.082,0.2444 0.6926,0.163 0.082,-0.2037 -0.6926,-0.2037 z m -28.6801,0.082 c 0.026,0 0.055,0 0.082,0 -0.126,0.1796 -0.3024,0.3289 -0.5296,0.4481 l -0.041,-0.2037 c 0.1447,-0.1144 0.3061,-0.2068 0.4888,-0.2444 z m 13.3623,0.2037 c 0.1273,0.1138 0.2392,0.2232 0.2852,0.3259 l -0.2852,-0.082 0,-0.2445 z m -12.9549,0.2037 0.041,0 0.3259,0.1222 c 0.028,0.1064 0.051,0.1975 0.082,0.2851 l -0.2037,0.7741 -0.2037,-0.041 c 0.1426,-0.5334 0.011,-0.858 -0.2852,-0.937 l -0.2037,0.082 0.041,-0.163 0.3259,-0.082 0.082,0 0,-0.041 z m -2.5666,0.041 0.082,0.2444 -0.1222,-0.041 0.041,-0.2037 z m 13.4438,0 0.2037,0 c -0.015,0.1005 -0.023,0.219 -0.041,0.3259 l -0.1629,0.1629 0,-0.4888 z m 8.5552,0 0.3666,0 -0.041,0.1629 -0.4073,-0.1222 c 0.02,-0.019 0.064,-0.021 0.082,-0.041 z m 1.0185,0 0.4074,0 0,0.2036 c -0.1952,10e-5 -0.3609,0.036 -0.4889,0.082 l 0.082,-0.2851 z m -19.4325,0.082 0.163,0.041 -0.082,0.3259 -0.082,-0.3667 z m 13.8105,0.1222 0,0.5296 -0.041,0.041 -0.041,0.1629 -0.2444,0 0.2037,-0.6925 0.1222,-0.041 z m 0.8555,0 0.937,0 -0.041,0.1629 0,0.1222 -0.2444,0 -0.2852,-0.041 -0.082,0.041 -0.2852,0 c 0,0.015 0,0.026 0,0.041 l -0.082,-0.041 0.082,-0.2851 z m 3.0554,0.1629 -0.082,0.3667 -0.3666,0 -0.1222,-0.1222 0.041,-0.163 c 0.2044,-0.021 0.3677,-0.034 0.5296,-0.082 z m 9.0441,0 c 0.6944,0.3642 0.9331,1.0147 0.6925,1.9148 l -0.4888,-0.1223 -0.163,0.5296 0.3666,0.5704 -0.8555,1.2629 0.2037,0.041 -0.2444,0.1222 -0.082,0.2852 0.1629,1.3036 -0.5703,0.2445 0.2037,0.041 -0.3667,0.5703 c -0.1386,0.963 0.1611,1.5036 0.937,1.711 l -0.2444,0.163 -0.082,0.2444 0.082,0.6111 -1.3444,-2.0369 -0.2037,-0.041 0.163,-0.6111 0.4481,0.082 0.041,-0.163 c -0.2956,-0.079 -0.5344,-0.5172 -0.6518,-1.2629 l 0.1629,-0.6111 0.2037,0.041 -0.082,0.4482 0.6926,0.2037 0.082,-0.4482 -0.4074,-0.1222 0.2444,-0.8148 0.4074,0.1223 0.2037,-0.8148 -0.4074,-0.1222 0.082,-0.3667 0.4482,0.1222 0.082,-0.3666 -0.4074,-0.1222 0.1629,-0.6111 c 0.3696,0.099 0.5984,-0.1382 0.8148,-0.6518 0.1069,-0.4 0,-0.6148 -0.4481,-0.7333 l 0.1629,-0.6111 z m -24.5248,0.041 0.4888,0.1223 -0.4074,0.5703 -0.2444,-0.082 0.163,-0.6111 z m 23.3026,0 c 0.1376,0.073 0.2979,0.1151 0.4481,0.163 l -0.1222,0.4074 -0.3259,-0.5296 0,-0.041 z m -16.7029,0.082 0.6518,0 0.2037,0.2445 0.1629,0 -0.1629,0.6111 -0.6111,0 -0.2444,-0.8556 z m 5.7034,0.2037 0.082,0 c -0.036,0.1613 -0.082,0.3166 -0.1222,0.4482 l -0.082,0 0.1222,-0.4482 z m 4.8887,0.041 0,0.163 -0.082,0.2444 -0.2037,0 0.041,-0.2037 0.2444,-0.2037 z m -7.7404,0.082 0.2037,0.041 -0.041,0.082 -0.2037,0 0.041,-0.1222 z m -8.6367,0.082 0.6519,0.3667 -0.2852,1.0185 -0.2037,-0.082 -0.2444,-0.937 0.082,-0.3667 z m 20.8991,0 0.4888,0.1223 0.3667,1.1406 -0.1222,0.4482 -0.2037,-0.041 0.1222,-0.4482 -0.4481,-0.1222 -0.041,0.2037 0.2444,0.7333 -0.2444,0.1222 c -0.1069,0.4001 0.086,0.6963 0.5296,0.8148 l -0.5704,0.2444 0.082,-0.3666 -0.4074,-0.1222 -0.3259,2.9332 -0.082,0.1629 -0.5703,-0.3259 0.082,-0.2037 0.4074,-0.774 c 0.069,-0.5531 -0.1194,-0.879 -0.4889,-0.9777 l 0.1222,-0.3667 0.4889,0.1222 0.041,-0.2444 -0.2037,-0.2852 0.3259,-0.082 -0.041,-1.0999 0.4481,-1.5889 z m -18.9843,0.041 0.4074,0.1223 -0.041,0.2036 -0.4074,-0.1222 0.041,-0.2037 z m 11.2032,0 0.1629,0 c 0.066,0.059 0.1536,0.1174 0.2444,0.163 l -0.041,0.1222 -0.082,0.2852 -0.2851,-0.5296 0,-0.041 z m -19.9621,0.041 0.3259,0.4889 -0.2444,-0.2444 -0.2037,-0.041 0.1222,-0.2037 z m 1.1,0.082 0.1629,0.041 0,0.163 -0.1629,0.6518 -0.2037,-0.082 0.2037,-0.774 z m 31.0837,0 c 0.044,0.1029 0.088,0.1838 0.163,0.2037 l 0.2037,0.041 0,0.4482 -1.7111,6.3552 -0.4888,-0.1222 0.2851,-0.1222 0.041,-0.2037 0.6926,-3.4628 0.2852,-0.1222 0.041,-1.0592 0.4888,-1.9555 z m 1.0185,0 0.2037,0.041 -0.2037,0.6519 -0.2037,-0.082 0.1629,-0.5704 0.041,-0.041 z m -15.6437,0.1222 0.041,0.4482 -0.1222,0.041 -0.082,-0.3259 0.1629,-0.163 z m 12.792,0 0.2037,0.041 -0.1223,0.3667 -0.2037,-0.041 0.1223,-0.3667 z m -9.5737,0.041 c 0.1347,0.034 0.3237,0.061 0.4889,0.082 l -0.1222,0.4889 -0.4481,-0.1629 0.082,-0.4074 z m -20.9805,0.326 0.4889,0.1222 -0.082,0.2037 -0.163,1.3851 c 0.01,-0.1844 -0.023,-0.3523 -0.082,-0.5704 l -0.2037,-0.8147 0.041,-0.3259 z m 3.2999,0.041 0.4481,0.082 c -0.1069,0.3999 -0.01,0.695 0.2852,0.774 l -0.041,0.2037 c -0.4434,-0.1186 -0.7027,-0.1037 -0.7741,0.1629 l -0.2037,-0.041 -0.082,-0.611 0.3667,-0.5704 z m 16.8251,0.041 0.2852,0 -0.082,0.2444 -0.2037,0 0,-0.2444 z m -13.7697,0.1629 0.2037,0.041 -0.041,1.0592 -0.4074,-0.1222 0.2444,-0.9777 z m 20.125,0.2037 0.4481,0.163 -0.041,0.1629 -0.4889,-0.1222 0.082,-0.2037 z m 3.0961,0 0.2037,0.041 -0.4481,0.937 -0.2037,-0.041 0.2037,-0.8148 0.2444,-0.1222 z m -19.5139,0.1222 0.937,0.041 -0.1222,0.5704 -0.9777,0 0.1629,-0.6111 z m 8.5959,0.163 0.2037,0 0,0.041 -0.2037,-0.041 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3628,0 0.326,0 0,0.2037 -0.3667,0 0,-0.1222 0.041,-0.082 z m -19.5139,0.041 0.3259,0.5296 -0.2851,0.1222 -0.2037,-0.041 c 0.062,-0.2333 0.1326,-0.4345 0.1629,-0.6111 z m -4.3183,0.1629 0.2037,0.041 -0.1222,0.3667 -0.2037,-0.041 0.1222,-0.3667 z m 32.3059,0 0.2037,0.041 c -0.1069,0.4 -0.01,0.6951 0.2852,0.7741 l -1.4259,3.5035 0.2037,0.2444 -0.041,0.2037 -0.5296,0.8963 -0.2037,-0.041 0.163,-1.4259 0.2444,-0.1222 0.1222,-0.4481 0.6926,-3.4221 0.2852,-0.2037 z m -35.3613,0.1222 0.1222,0.8556 0.2037,0.1222 c -0.012,0.096 -0.014,0.1835 -0.041,0.2852 l 0,0.082 -0.041,-0.082 -0.2037,0.082 c 0.022,0.084 0.035,0.1371 0.041,0.2036 l -0.3666,0.163 c -0.01,-0.044 -0.031,-0.08 -0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 0.1629,-1.3444 z m 9.4514,0.041 0.6111,0.163 -0.041,0.2037 -0.6926,0.082 0.1223,-0.4481 z m -4.8072,0.2445 0.2037,0.082 -0.1629,0.5296 -0.2037,-0.041 0.1629,-0.5703 z m 28.9654,0 0.2037,0.041 -0.2852,1.0185 -0.2037,-0.082 0.2852,-0.9778 z m -20.4917,0.1222 0.3667,0.5296 -0.163,0.6111 -0.2037,-0.3259 -0.4074,-0.1222 c -0.1069,0.4 -0.412,0.5666 -0.8555,0.4481 0.107,-0.4 -0.01,-0.6555 -0.4481,-0.7741 l 0.041,-0.2036 0.4074,0.1222 0.1629,0.2444 c 0.08,-0.3 0.4464,-0.4543 1.1,-0.5296 z m 10.8365,0.2037 0.1223,0 0,0.1222 -0.1223,-0.1222 z m 13.118,0 0.8962,0.2444 -0.4481,1.7518 c -0.2956,-0.079 -0.3768,-0.5444 -0.163,-1.3444 l -0.4481,-0.082 0.163,-0.5703 z m -6.1516,0.041 0.2852,0.5296 -0.041,0.2037 -0.2852,-0.5704 0.041,-0.1629 z m -28.558,0.082 -0.2036,1.6296 -0.8148,0.2444 0.2444,-0.8963 c 0.4491,-0.2229 0.7308,-0.5468 0.774,-0.9777 z m 0.6926,0 0.2444,0.082 -0.082,0.3666 -0.2851,-0.082 0.1222,-0.3666 z m 21.8768,0.041 0.1629,0.041 0,0.2444 -0.4074,0 0.2445,-0.2851 z m -9.5329,0.041 0.2037,0 0.1629,0.2444 -0.2851,0 -0.082,0 0,-0.041 0,-0.2037 z m -6.9664,0.2444 0.4889,0.1222 -0.082,0.2445 -0.5296,0.937 -0.163,-0.2445 -0.2036,-0.082 -0.5297,0.2852 0.041,0.6518 c -0.2956,-0.079 -0.5041,0.048 -0.611,0.4482 l -0.163,-0.2445 -0.2037,-0.041 -0.2444,0.1222 0.2037,-1.6295 0.6111,0.1629 0.1222,-0.4073 c 0.739,0.1975 1.156,0.074 1.2629,-0.326 z m 2.8518,0.1222 0.2037,0.082 -0.082,0.3667 -0.2445,-0.041 0.1222,-0.4074 z m -7.8626,0.041 0.2037,0.082 -0.082,0.3667 -0.2445,-0.041 0.1222,-0.4074 z m 6.6404,0.041 0.2037,0.082 -0.082,0.4074 -0.2445,-0.041 0.1223,-0.4481 z m -9.2885,0.1223 0.2037,0.082 -0.2444,0.082 0.041,-0.163 z m -0.041,0.2851 0.163,0.1222 0,0.041 -0.2037,-0.041 0.041,-0.1222 z m 15.7252,0.082 c 0,0.2066 -0.1299,0.3083 -0.3259,0.3667 l -0.5296,0.041 0,-0.163 0,-0.041 0.8555,-0.2037 z m 3.2591,0 c 0.013,0 0.029,-0.01 0.041,0 0.089,0.046 0.1749,0.1109 0.2037,0.2037 l -0.2444,0 0,-0.2037 z m 1.5481,0 0.4074,0 0.082,0.1223 -0.2037,0.8147 c -0.045,0 -0.075,0 -0.1222,0 l 0,0.2037 -0.2037,-0.2037 -0.4074,0 -0.1629,-0.2444 0.1222,-0.4481 c 0.1892,0.051 0.3495,-0.044 0.4889,-0.2445 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.059 0,0.082 -0.098,0.3379 -0.3274,0.5986 -0.6518,0.7333 l -0.1222,-0.041 0.4481,-0.774 z m 4.4405,0 -0.041,0.2037 -0.4888,0 0,-0.1222 c 0.2001,-0.028 0.3723,-0.051 0.5296,-0.082 z m 8.8811,0 0.2037,0.041 -0.082,0.3667 -0.2037,-0.041 0.082,-0.3667 z m -26.8469,0.082 0.4074,0.1223 -0.1222,0.4481 -0.4074,-0.1222 0.1222,-0.4482 z m 9.7366,0.1223 0.1629,0 -0.1629,0.5703 0,-0.5703 z m -11.9773,0.1629 -0.082,0.3667 0.4074,0.1222 0.1223,-0.3667 -0.4482,-0.1222 z m 4.9702,0.041 0.6925,0.2037 -0.1222,0.3667 0.4482,0.1222 0.1629,-0.6111 0.3259,0.3666 c -0.3477,0.1724 -0.5886,0.4468 -0.7333,0.8148 -0.062,0.026 -0.089,0.046 -0.1222,0.082 l -0.2037,-0.041 c 0.1402,-0.4439 -0.02,-0.7271 -0.4074,-0.8148 l -0.2037,-0.041 c 0.071,-0.1146 0.1184,-0.2814 0.163,-0.4481 z m 16.9066,0 0.4074,0.1222 -0.082,0.2445 -0.4074,-0.1223 0.082,-0.2444 z m -14.4215,0.2037 0.1222,0.041 c -0.043,2e-4 -0.081,0 -0.1222,0 l 0,-0.041 z m -13.729,0.2444 0.4481,0.082 -0.082,0.2037 -0.4074,-0.1222 0.041,-0.1629 z m 20.1657,0 0.163,0.082 -0.2037,0.041 0.041,-0.1222 z m -10.4699,0.041 0.163,0.2445 0.2037,0.041 c 0.1185,0.032 0.2232,0.042 0.3259,0.041 -0.1474,0.093 -0.2951,0.1253 -0.4889,0.082 l -0.2037,0.6518 c 0.3876,0.088 0.6345,0.219 0.774,0.4481 l -0.4888,0.2444 0.4074,0.082 0.082,-0.2851 c 0.1221,0.2248 0.1522,0.5026 0.041,0.8555 l 0.6518,0.1629 -0.3666,1.1 -0.6111,-0.1222 0,2.1184 -1.3444,1.1407 0.2037,0.3259 -1.7518,2.4036 0.4481,-0.1222 0.2445,0.082 -0.1222,0.4074 -0.2852,-0.041 -0.2852,-0.326 -0.2852,-0.041 -0.1222,0.4889 -0.2852,-0.082 2.4851,-7.7811 0.2445,-0.041 -0.2852,0.9777 0.6518,0.1222 0.4074,-1.3036 -0.4481,-0.082 0.041,-0.1222 -0.2037,-0.082 -0.2852,0 0.041,-0.1223 0.2852,-0.041 0.082,-0.2036 -0.2445,-0.082 0.163,-0.5704 -0.2037,-0.2852 0.082,-0.2037 0.2852,-0.082 z m 6.6812,0.041 0.2037,0.041 -0.041,0.1222 -0.163,-0.1629 z m 7.8626,0 0.041,0.163 -0.2852,-0.082 0.2444,-0.082 z m -20.0435,0.1223 0.4481,0.774 -0.3259,0.1629 -0.163,-0.041 0.041,-0.8962 z m -0.6926,0.041 0.2037,0.041 -0.1222,0.4481 -0.2037,-0.041 0.1222,-0.4481 z m 19.8806,0.1629 -0.082,0.2444 -0.2037,-0.041 0,-0.082 0.2852,-0.1222 z m -1.3852,0.1222 0.082,0.1222 0,0.2852 -0.4481,-0.1222 0.163,0 0.2037,-0.2852 z m 3.8702,0.1222 0.2445,0.082 0,0.2852 0,0.6518 0,0.1223 -0.3259,0.1222 -0.4074,-0.082 0.2851,-1.1407 0.041,0 c 0.064,-0.01 0.1028,-0.032 0.163,-0.041 z m -25.3803,0.1223 0.3667,0.4888 -0.4889,-0.1222 0.1222,-0.3666 z m 35.4021,0.041 0.2037,0.041 -0.1222,0.3666 -0.2037,-0.041 0.1222,-0.3666 z m -11.4476,0.1222 -0.041,0.2037 -0.7741,0.081 -0.2037,-0.081 0,-0.041 1.0185,-0.163 z m 6.4367,0 -0.041,0.2037 0.4074,0.081 0.041,-0.163 -0.4074,-0.1222 z m -27.1728,0.2444 0,0.2037 -0.4074,0.2037 0.3259,0.3259 -0.1222,0.082 -0.2852,-0.082 0.082,-0.3259 -0.1222,-0.041 0,-0.041 0.5296,-0.3259 z m 3.1369,0 0.3666,0.082 -0.2444,0.6926 -0.3259,-0.082 0.2037,-0.6926 z m 8.3107,0 0.4074,0 0,0.041 -0.4074,0 0,-0.041 z m -13.6068,0.082 0.2037,0.041 -0.3666,1.3444 c -0.019,-0.2982 -0.091,-0.4868 -0.2445,-0.5703 l 0.041,-0.326 0.3667,-0.4888 z m 10.307,0.082 0.2444,0.082 -0.1222,0.4481 -0.2852,-0.041 0.163,-0.4888 z m 2.1184,0.041 0.2444,0.041 -0.082,0.2444 0.041,0.163 c -0.01,0.1969 0.032,0.3372 0.1222,0.4481 l 0,0.082 -0.1629,0 -0.4074,0.4482 -0.2037,0 0.2444,-0.8556 0.163,-0.2851 -0.041,-0.041 0.081,-0.2445 z m 1.3851,0.041 0.2444,0.2852 0,0.2852 c -0.1625,-0.1175 -0.2809,-0.2535 -0.4073,-0.3667 l 0.1629,-0.2037 z m -7.6996,0.2037 0.2851,0.041 -0.1629,0.4889 -0.2444,-0.082 0.1222,-0.4481 z m 13.9734,0.082 0.2037,0.041 0.3259,0.4889 -0.082,0.2444 -0.2037,-0.082 -0.082,-0.082 0,-0.1629 -0.2037,0 c 0.013,-0.1554 0.042,-0.3219 0.041,-0.4482 z m -16.54,0.082 -0.1222,0.3667 -0.041,1.4258 -0.65179,0.8148 0.36659,0.082 -0.44809,0.1222 -0.082,0.2445 0.2852,0.3259 -0.041,0.2037 -0.57039,0.611 0.082,0.9778 -0.8555,1.4258 0.2852,0.2852 -0.6111,-0.1222 0.4481,-1.5481 -1.5073,0.8555 0.2852,0.2852 -1.0185,0.4481 c -0.1112,-0.2192 -0.218,-0.4175 -0.3259,-0.6518 -0.01,-0.011 0,-0.03 0,-0.041 l 0.1222,-0.774 0.2852,0.082 0.6925,0.4481 c -0.2005,-0.6795 -0.5592,-1.0906 -1.1407,-1.2222 l 0.2037,-0.6925 c 0.015,-0.046 0.027,-0.077 0.041,-0.1223 l 0.1223,-0.041 0.041,-0.2037 -0.082,-0.041 c 0.068,-0.2257 0.1079,-0.4497 0.1629,-0.6518 l 0.163,-0.1222 0.041,-0.2037 -0.041,-0.1222 c 0.059,-0.2398 0.045,-0.4104 0.082,-0.6111 0.2165,-0.041 0.45,-0.1549 0.6925,-0.3666 -0.087,0.5222 -0.036,0.8328 0.2445,0.8962 l -0.3259,0.2037 -0.041,0.082 c -0.1806,0.1124 -0.3752,0.2435 -0.5297,0.3667 l -0.041,0.2444 0.4074,0.1222 -0.3259,1.6703 0.57039,0.1222 0.12221,-0.4074 0.44808,-0.2037 -0.2852,-0.2851 -0.28511,-0.082 0.082,-0.2037 1.5073,0.1222 0.2037,-0.6926 -0.52959,-0.1222 0.1222,-0.4074 0.57039,0.1222 0.3666,-1.1406 0.2444,-0.163 -0.2037,-0.041 0.4889,-1.5481 0.3259,-0.1222 z m -6.1108,0.041 0.2444,0.082 -0.1222,0.3667 -0.2037,-0.041 0.082,-0.4074 z m 24.0359,0 0.163,0.2444 0.2037,0.082 0.3259,-0.1222 -0.041,0.163 c -0.3962,0.037 -0.7257,0.1179 -0.9778,0.2037 l -0.041,0 -0.16291,-0.041 0.28521,-0.4482 0.24441,-0.082 z m -12.01791,0.082 0.611,0.1222 -0.12221,0.4074 -0.48879,-0.5296 z m 3.9516,0.1222 0.3259,0.082 -0.041,0.163 -0.2851,0.082 0,-0.041 0,-0.2852 z m 4.80719,0.041 0.2037,0.041 0,0.041 -0.2037,0 c 0,-0.03 0,-0.052 0,-0.082 z m -13.8105,0.082 0.2852,0.082 -0.082,0.6111 -0.36659,0.1222 0.041,-0.4074 0.12221,-0.4074 z m 29.5765,0.041 0.2036,0.041 -0.1222,0.3667 -0.2037,-0.041 0.1223,-0.3667 z m -7.4553,0.3259 0.40741,0.1223 -0.082,0.4481 -0.40741,-0.2445 0.082,-0.3259 z m -26.35799,0.041 0.4074,0.1223 -0.082,0.2036 -0.40741,-0.1222 0.082,-0.2037 z m 1.6703,0 0.2037,0.2445 -0.041,0.2037 -0.3259,-0.3259 0.1629,-0.1223 z m 18.16949,0.041 c 0.1619,0.088 0.2758,0.1839 0.4889,0.2852 -0.019,0.058 -0.041,0.1396 -0.041,0.2037 l -0.52959,0 c 0.031,-0.1732 0.06,-0.3361 0.082,-0.4889 z m -3.2591,0.2037 0.16301,0 0,0.041 -0.16301,-0.041 z m -12.1402,0.2037 -0.082,0.5704 -0.041,0.2444 -0.2851,-0.082 0.041,-0.6111 0.3666,-0.1222 z m -3.2998,0.082 0.2444,0.041 -0.1222,0.4889 -0.2852,-0.041 0.163,-0.4889 z m 10.7143,0.041 0.73329,0.163 0,0.082 -0.082,0.2444 -0.082,0.1222 0,0.163 0,0.041 -0.12221,0.2852 -0.082,0 -0.2037,-0.2852 c 0.017,-0.3233 -0.065,-0.5992 -0.163,-0.8148 z m 20.00279,0 c -0.17819,0.6667 0.096,1.3876 0.6925,2.1184 l 0.24451,-0.1222 0.1629,0.2445 -0.041,0.1629 c -0.2463,-0.066 -0.4957,0.012 -0.6925,0.163 -0.042,-0.016 -0.074,-0.03 -0.1222,-0.041 l -0.3667,0.1222 c 0.1402,-0.4439 0.062,-0.7271 -0.32591,-0.8148 l -0.4074,0.1222 -0.041,0.082 -0.2852,-0.2037 c 0.2165,-0.5135 0.4453,-0.7098 0.8148,-0.611 l 0.1222,-0.4074 -0.611,-0.163 0.8555,-0.6518 z m 2.4036,0.041 0.32591,0.4889 -0.1222,0.4481 -0.28521,-0.5703 0.082,-0.3667 z m -17.9659,0.082 0.2852,0.082 -0.1222,0.4074 -0.2444,-0.3259 0.082,-0.163 z m -14.2586,0.041 0.2852,0.041 -0.082,0.2037 c -0.1131,0.033 -0.21799,0.087 -0.3259,0.1222 l 0.1222,-0.3666 z m 15.76599,0 0.7333,0 -0.082,0.2037 -0.69259,0.082 c 0.022,-0.1067 0.02,-0.1839 0.041,-0.2852 z m -3.99239,0.082 0.041,0 0,0.1222 -0.041,0 0,-0.1222 z m 19.67679,0 0.20371,0.041 -0.20371,0.8148 -0.2037,-0.041 0.2037,-0.8148 z m -28.4357,0.163 0.5704,0.1222 -0.2445,0.6926 -0.3666,-0.6111 0.041,-0.2037 z m 2.15921,0.041 -0.082,1.1407 0.6111,0.1629 0.082,-1.1814 -0.6111,-0.1222 z m 19.5546,0.1222 0.16301,0.041 -0.12221,0.4481 -0.2037,-0.041 0,-0.041 0.041,0 0.1222,-0.4074 z m -13.4438,0.041 0.12221,0 0.2852,0.7333 -0.1222,0.1629 -0.163,0 -0.20371,-0.611 c 0,-0.011 -0.01,-0.029 0,-0.041 l 0,-0.041 c 0.026,-0.066 0.056,-0.1341 0.082,-0.2037 z m 6.3145,0 0.4074,0 -0.082,0.4889 -0.3259,0 0,-0.4889 z m 4.03319,0 0.24441,0.041 -0.041,0.1629 -0.2444,-0.082 0.041,-0.1222 z m -25.70619,0.082 0.082,0.041 -0.041,0.2037 -0.082,-0.041 0.041,-0.2037 z m 38.17229,0.082 -0.041,0.163 0.041,0.041 0,-0.2037 z m -21.55089,0.041 0.082,0 0,0.3259 -0.20371,-0.041 0.12221,-0.2852 z m -10.918,0.2444 c 0.27319,-0.046 0.6794,-0.013 1.1814,0.041 l -0.1222,0.4074 c -0.3876,-0.088 -0.75,0.1822 -0.937,0.7741 l -0.5704,-0.8939 c 0.053,-0.1665 0.1749,-0.2803 0.44821,-0.3259 z m 14.0956,0.041 0.3259,0 -0.1222,0.2037 -0.2037,0 0,-0.2037 z m 0.77409,0 0.082,0 0,0.2037 -0.041,0 -0.041,-0.2037 z m 15.15481,0.041 0.48889,0.1222 -0.2852,1.0185 -0.3666,-0.4889 0.16291,-0.6518 z m -17.9658,0.041 0.24441,0.041 -0.28511,0.082 0.041,-0.1222 z m 10.8365,0 0.2037,0.041 -0.041,0.1222 -0.24441,0.1223 0,0.082 -0.041,0 0.041,-0.082 0.082,-0.2852 z m 9.5737,0.1222 -0.1222,0.082 -0.082,0.163 0.20361,0.2444 0,-0.4888 z m -13.8105,0.082 0.40741,0.082 -0.32591,0.4482 -0.3259,-0.082 -0.041,-0.163 0.28511,-0.2851 z m -10.4292,0.041 0.1223,0.082 0,0.2445 -0.16301,-0.041 c 0.032,-0.1025 0.017,-0.1886 0.041,-0.2852 z m 13.8513,0.041 0.611,0.5297 0.041,0.041 -0.1222,0.611 c -0.1738,-0.1301 -0.3351,-0.2838 -0.48879,-0.3666 -0.043,-0.2456 -0.071,-0.5152 -0.041,-0.8148 z m -8.5552,0.041 0.36659,0 0,0.2445 -0.36659,0 0,-0.2445 z m -16.4585,0.082 0.16291,0.041 -0.12221,0.4074 -0.2851,-0.082 0.082,-0.2851 0.1629,-0.082 z m 4.1961,0.2037 0.5296,0.1223 0,1.1814 c -0.3391,-0.077 -0.521,-0.5091 -0.5296,-1.3037 z m 1.79251,0.163 -0.24441,0.6926 0.6518,0.1629 0.2037,-0.6926 -0.61109,-0.1629 z m 3.01469,0.2444 c 0.53689,0.1214 0.591,1.2375 0.1629,3.2999 -0.149,0.2487 -0.3558,0.702 -0.57029,1.1407 l -0.5704,-0.1223 -0.52959,-1.3443 c 0.3877,0.088 0.5932,-0.086 0.73329,-0.5296 l 0.082,-1.1815 0.20371,0.2445 0.65189,0.1629 -0.163,-1.6703 z m 9.6958,0.041 0.1222,0.1222 -0.24441,0.2852 -0.1222,0.4481 -0.1222,0 -0.2852,-0.082 -0.041,-0.4481 0.082,-0.1222 0.2445,0.2444 0.3666,-0.4481 z m 5.3776,0 c 0,0.306 -0.1563,0.4482 -0.5704,0.4482 l 0,0.2036 0.40741,0 -0.36659,0.6519 -0.40741,-0.082 0.082,-0.082 0,-0.2852 -0.041,-0.041 0.40741,-0.774 c 0.1595,-0.01 0.3126,-0.041 0.4888,-0.041 z m -13.4439,0.041 0.2852,0.041 -0.44809,1.2629 -0.082,0.3259 c 0.198,0.081 0.36659,0.1667 0.52959,0.2445 l -0.2444,0.4481 -0.1223,-0.2037 -0.3259,0.163 -0.24441,-0.041 c 0.067,-0.1419 0.1305,-0.2725 0.2037,-0.4889 l -0.2037,0 0.163,-0.4889 0.041,0.041 0.2851,0 0.16301,-1.3036 z m -8.1885,0.082 0.5704,0.1222 -0.163,0.4074 -0.40741,-0.5296 z m 13.1587,0.082 0.082,0.082 -0.163,-0.041 0.082,-0.041 z m 4.359,0 0.32591,0 c -0.046,0.2543 -0.075,0.4487 -0.082,0.6518 l -0.611,0 0.082,-0.5703 0.2851,-0.082 z m -3.13689,0.082 0.082,0.4889 c -0.2042,-0.1068 -0.34879,-0.235 -0.44809,-0.4074 l 0.3667,-0.082 z m -1.75171,0.082 -0.1222,0.4889 -0.163,0 0,-0.4074 0.2852,-0.082 z m 18.00661,0.041 0.2036,0.041 -0.1629,0.6518 -0.2037,-0.082 0.163,-0.611 z m 0.6518,0 0.48879,0.1222 -0.40729,1.4666 -0.16301,-0.041 c -0.083,-0.019 -0.171,0.021 -0.2444,0.041 l 0,-0.3666 0.32591,-1.2222 z m -21.22501,0.041 0.1222,0 0,0.041 -0.1222,-0.041 z m 3.5036,0.1222 c 0.081,0.036 0.13431,0.08 0.20371,0.1223 l -0.24451,0.041 0.041,-0.163 z m -12.181,0.082 0.2852,0.041 -0.2852,0.8963 -0.28511,-0.041 0.28511,-0.8963 z m 1.7926,0.163 -0.1223,0.4481 0.6111,0.1222 -0.4888,-0.5703 z m 19.5954,0 c 0.045,0.041 0.155,0.1195 0.20361,0.163 l -0.082,0.5296 -0.8962,2.8517 -0.5704,0.8148 0.36671,1.0592 -0.6518,-0.163 -0.36671,2.0777 -0.52959,-0.1222 0,-0.9777 0.32591,-0.1223 0.082,-0.2037 0.163,-1.4666 0.48889,-0.5703 -0.1223,-0.1222 c 0.028,-0.055 0.041,-0.1272 0.041,-0.2037 l 0.2037,-0.1222 -0.40741,-0.5704 0.36671,-0.1222 0.2444,0.041 0.082,-1.1407 0.3667,-1.1407 0.5296,0.1222 0.1629,-0.611 z m 1.2629,0.082 0.1222,0.163 -0.163,-0.041 0.041,-0.1223 z m 1.8332,0.1222 0.082,1.6296 0.48889,0.1222 0.20371,-0.2037 -0.2445,0.8148 c -0.1147,-0.1898 -0.1569,-0.2814 -0.28511,-0.4889 l -0.2037,0.082 c -0.022,-0.018 -0.056,-0.024 -0.082,-0.041 l -0.4074,-0.6518 0.4481,-1.2629 z m 0.5296,0 0.3667,0.082 0,0.082 -0.2445,0.3667 -0.24441,-0.082 0.12221,-0.4482 z m 3.78869,0.163 0.2037,0.041 -0.1222,0.4481 -0.2037,-0.082 0.1222,-0.4074 z m 1.7925,0.2444 0.20371,0.082 0,1.0592 0,0.041 c -0.05,0.036 -0.11671,0.064 -0.16291,0.1222 l -0.3667,-0.082 0.3259,-1.2221 z m -32.1022,0.041 0.2444,0.081 -0.9777,3.0962 -0.2444,-0.041 0.9777,-3.1369 z m 29.5764,0.163 0.082,0.041 -0.1629,0.6111 -0.2037,-0.041 0.1222,-0.4482 0.1629,-0.1629 z m -14.0141,0.1629 0.20361,0 0,0.4889 -0.20361,0 0,-0.4889 z m 11.692,0.082 0.20371,0.082 0.041,0.2444 -0.2852,-0.2036 0.041,-0.1223 z m -24.28039,0.082 -0.16291,0.4481 0.6111,0.163 0.1629,-0.4889 -0.61109,-0.1222 z m 27.1321,0.041 0.2037,0.041 0.041,0.6926 -0.40741,-0.1222 0.163,-0.6111 z m -29.0468,0.041 0.28521,0.041 -0.20371,0.6518 -0.2444,-0.082 0.1629,-0.611 z m 31.5726,0.2037 0.40741,0.1222 -0.082,1.0592 -0.082,0.326 -0.24441,-0.082 0.082,-1.1407 c -0.055,-0.013 -0.1121,-0.01 -0.163,0 l 0.082,-0.2852 z m -19.5546,0.2444 0.041,0 0,0.4482 -0.2037,0 0.1629,-0.4482 z m -5.5405,0.041 0.6926,0.163 -0.5704,1.1814 -0.3259,0.4482 -0.082,0 0.2037,-0.6111 0,-1.0592 c 0.035,-0.028 0.048,-0.074 0.081,-0.1223 z m 5.9479,0.2037 0.40741,0 0,0.4889 0.2444,0 0.041,-0.041 -0.041,0.2852 -0.3259,0.082 -0.041,-0.1222 0.041,-0.2037 -0.36671,-0.082 -0.1629,0.041 c 0.1408,-0.1216 0.2037,-0.2569 0.2037,-0.4482 z m 13.8919,0 0.2445,0.041 0.1222,0.7333 -0.082,0.2445 -0.4074,-0.6111 0.1222,-0.4074 z m -11.81421,0.2037 0.082,0 -0.2037,0.8963 -0.082,0.041 -0.2037,-0.2037 c -0.1036,0 -0.1645,0.01 -0.2445,0.041 l 0.2037,-0.6518 0.4481,-0.1222 z m 0.774,0 0.4889,0 0.1629,0.041 -0.2444,0.7741 -0.5296,0.3259 -0.2445,0 0.082,-0.2037 0.163,0 0,-0.2037 0.2852,-0.082 -0.2852,-0.2852 0.1222,-0.3666 z m 2.85171,0 0.6518,0 -0.082,0.2037 -0.611,-0.1222 0.041,-0.082 z m -22.5286,0.163 0.6518,0.1629 -0.4888,0.6111 -0.3667,-0.082 0.2037,-0.6925 z m 14.9512,0.1222 0.2037,0 0.3666,0.082 -0.40741,0.2037 -0.041,0.2037 0.041,0.1222 -0.1629,0.041 -0.2037,0 0.2037,-0.6518 z m 20.0028,0.041 0.2037,0.041 -0.041,0.2037 -0.2037,-0.041 0.041,-0.2037 z m -18.82141,0.163 0.24441,0.041 -0.041,0.2037 -0.2851,0.041 0.082,-0.2852 z m 6.19231,0 0.2852,0.041 -0.041,0.082 -0.2444,-0.082 0,-0.041 z m 6.1516,0.2037 0.6518,0.1222 0.2852,0.8555 c 0.027,0.314 0.036,0.6162 -0.041,0.937 l -0.20371,-0.082 0.16291,-0.4481 -0.5703,-0.1223 -0.041,0.2037 0.32591,0.8148 -0.32591,0.1222 c -0.1051,0.333 -0.023,0.6072 0.28521,0.7741 -0.041,0.1099 -0.074,0.22 -0.12221,0.3259 l -0.2445,0.082 0.12221,-0.4074 -0.5703,-0.1222 -0.24441,1.7517 c -0.1708,0.1744 -0.368,0.3713 -0.57039,0.5296 l 0.2037,-0.2851 c 0.09,-0.6138 -0.12649,-0.9904 -0.61109,-1.1 l 0.1222,-0.4074 0.61109,0.1223 0.12221,-0.2852 -0.32591,-0.2852 0.44821,-0.1222 0,-1.1814 0.52959,-1.7925 z m -27.3765,0.041 0.81471,0.4073 -0.32591,1.1 -0.28511,-0.082 -0.3259,-1.0185 0.1222,-0.4074 z m 2.485,0.041 0.5704,0.1222 -0.081,0.2037 -0.5296,-0.1223 0.041,-0.2036 z m 32.02081,0.1222 0.2852,0.041 -0.2037,0.6925 -0.28521,-0.041 0.20371,-0.6925 z m -23.3026,0.041 0.2037,0 0,0.2037 -0.2445,-0.041 0.041,-0.163 z m 10.1439,0 0,0.082 -0.041,0 0.041,-0.082 z m 11.8143,0.2851 -0.36659,1.3444 -0.041,0 0.4073,-1.3444 z m -11.48839,0.082 0.2445,0.082 -0.082,0.2037 -0.2852,0.1223 0.1222,-0.4074 z m 10.307,0 0.041,0 c 0.027,0.1988 0.01,0.4181 -0.041,0.6519 l -0.163,-0.041 0.163,-0.6111 z m 1.5888,0 0.1222,0.041 0,0.2037 -0.1629,-0.041 0.041,-0.2037 z m -16.33631,0.1223 0.163,0 -0.4482,0.4481 -0.2037,0 0.48889,-0.4481 z m 3.1369,0 0.2852,0 -0.082,0.4481 -0.3259,0 0.1222,-0.4481 z m -22.4471,0.2037 0.082,0.1222 -0.041,0.082 c -0.011,-0.069 -0.041,-0.1361 -0.041,-0.2037 z m 20.1657,0 0.5296,0 0.082,0.081 -0.082,0.3259 -0.6111,-0.1222 0.081,-0.2852 z m -18.90279,0.081 0.2037,0.041 0,0.2444 c -0.066,-0.097 -0.13829,-0.184 -0.2037,-0.2852 z m 10.71429,0.2037 -0.082,0.2851 -0.041,0.082 -0.041,0.1222 -0.1629,-0.2037 0.3259,-0.2851 z m 19.7176,0 0.2037,0.041 -0.082,0.1629 c -0.028,-0.054 -0.092,-0.1467 -0.1222,-0.2037 z m -4.1553,0.041 0.611,0.1222 -0.082,0.2444 -0.611,-0.163 0.082,-0.2036 z m 7.94399,0 0.163,0.041 -0.2852,0.9777 -0.1222,-0.041 0.2444,-0.9777 z m -29.4542,0.082 1.22221,0.082 -0.20371,0.611 -1.26289,0 0.2444,-0.6925 z m 10.9181,0.041 0.6518,0 0,0.2037 -0.1222,0 -0.6111,-0.163 c 0.029,-0.014 0.051,-0.027 0.081,-0.041 z m 14.2993,0.082 0.28521,0.4073 -0.28521,0.4482 -0.2444,-0.041 0.2444,-0.8148 z m 1.14071,0.3259 0.1222,0.611 -0.28521,-0.082 0.16301,-0.5296 z m 4.15539,0.041 0.12221,0 c -0.064,0.2039 -0.057,0.392 0,0.5296 l -0.041,0 -0.1222,0.4074 0.041,0.8962 -0.4074,0.4889 -0.20371,-0.041 0.32591,-1.1815 -0.44809,-0.1222 0.2444,-0.8148 0.4074,0.1223 0.082,-0.2852 z m -17.2326,0.041 0.3667,0 0,0.2851 -0.2445,0.082 -0.1222,-0.041 0,-0.3259 z m 0.774,0 0.4074,0 -0.1629,0.5703 -0.2445,-0.041 -0.082,-0.082 0.082,0 0,-0.4481 z m 2.037,0 0.40741,0 -0.1222,0.6925 c -0.146,0.1527 -0.3488,0.2497 -0.5704,0.3259 l -0.61109,-0.4481 c 0.097,0.029 0.20249,0.064 0.3259,0.082 0.4141,0 0.5704,-0.1928 0.5704,-0.6518 z m -22.44709,0.041 c 0.01,0.018 0.071,0.022 0.082,0.041 l -0.082,0 0,-0.041 z m 2.7702,0.041 0.8148,0.2037 -0.082,0.2036 -0.8148,0.082 c -0.02,-0.022 -0.021,-0.059 -0.041,-0.082 l 0.1222,-0.4073 z m 21.42871,0 0.2851,0.1629 -0.082,0.2037 -0.2851,-0.041 0.082,-0.3259 z m -2.3222,0.082 0.28521,0.082 -0.28521,0 0,-0.082 z m -14.2993,0.3666 0.48889,0.5296 -0.2037,0.6518 -0.041,0 -0.2445,-0.3259 -0.52959,-0.1222 c -0.048,0.151 -0.1391,0.2794 -0.24441,0.3667 l -0.8555,-0.2445 c -0.047,-0.2318 -0.22209,-0.4008 -0.61109,-0.4888 l 0.041,-0.2037 0.5704,0.1222 0.2036,0.2444 c 0.1053,-0.3329 0.569,-0.446 1.4259,-0.5296 z m 3.1776,0.3259 0.3667,0.4482 -0.65179,-0.1223 0.2851,-0.3259 z m 21.67309,0 0.12221,0.2037 c -0.02,0.075 -0.087,0.1637 -0.12221,0.2445 l -0.1222,-0.041 0.1222,-0.4074 z m -1.34439,0.1222 0.20371,0.3667 -0.041,0.2037 -0.2444,-0.3667 c 0.023,-0.07 0.061,-0.1319 0.082,-0.2037 z m -25.9099,0.4074 0.24441,0.041 -0.1222,0.4074 -0.24441,-0.041 0.1222,-0.4074 z m -1.5073,0.082 0.20371,0.041 -0.041,0.1222 c -0.061,-0.042 -0.10221,-0.1176 -0.163,-0.1629 z m -3.91099,0.082 c 0.1984,0.045 0.3656,0.107 0.5296,0.1222 l 0.48889,0.6111 0,-0.4888 -0.1222,-0.1223 c 0.17359,-0.011 0.33159,-0.066 0.44809,-0.1222 0.1559,0.2002 0.3052,0.4271 0.48889,0.6519 l -0.3259,0.4481 -0.1222,-0.1222 -0.082,-0.163 -0.28521,-0.041 -0.65179,0.2852 0.041,0.6111 c -0.1697,-0.1506 -0.3284,-0.3246 -0.48889,-0.4889 l 0.082,-0.2037 -0.3666,-0.082 c -0.1552,-0.1722 -0.30259,-0.3448 -0.4482,-0.5296 l 0.6518,0.1222 0.163,-0.4888 z m 11.7328,0.2445 0.4482,0 0,0.4888 -0.4482,0 0,-0.4888 z m 11.6921,0 0.1629,0 0,0.1222 -0.1629,-0.1222 z m -4.44051,0.041 0.16291,0.2851 -0.041,0.163 -0.97771,0 -0.2852,0 0,-0.041 c 0.097,0.022 0.1955,0.061 0.2852,0.041 0.1794,-0.041 0.3596,-0.1964 0.4888,-0.4074 l 0.3667,-0.041 z m -0.73329,0.041 0,0.041 -0.5296,0 0.5296,-0.041 z m 2.19989,0.041 c 0.1,0.077 0.15689,0.2268 0.1629,0.3666 l -0.69259,0 0.163,-0.2852 0.3667,-0.082 z m 17.11031,0.041 0.1629,0.041 -0.041,0.1629 -0.1629,-0.082 0.041,-0.1222 z m -21.14351,0.041 0.12221,0 c 0.1262,0.063 0.21979,0.1547 0.2445,0.2851 l -0.36671,0 0,-0.2851 z m 11.6921,0.4481 0.5296,0.1222 -0.082,0.2444 -0.5296,-0.1222 0.082,-0.2444 z m -13.0365,0.082 0.163,0.1222 -0.082,0.2037 -0.082,-0.041 0,-0.2852 z m -4.1146,0.082 0.2444,0.041 0.1222,0.082 0.16301,0 -0.082,0.2444 -0.3666,0.2037 -0.1223,0.041 0,-0.082 0.1223,0.041 0.041,-0.2037 -0.1223,-0.2851 0,-0.082 z m 25.4211,0.041 0.1222,0.4481 -0.1222,0.2852 0,-0.7333 z m -16.1734,0.163 -0.041,0.2036 -0.041,0.4889 -0.937,-0.1222 -0.081,-0.082 0.77409,-0.3667 -0.3667,-0.082 0.6926,-0.041 z m -3.50351,0.041 -0.041,0.1222 -0.28521,-0.082 0.32591,-0.041 z m 4.7664,0 0.44821,0.082 0,0.041 0,0.2036 c -0.19051,0 -0.299,0.048 -0.40741,0.1223 l -0.041,-0.4482 z m -2.5665,0.041 -0.1222,0.4481 -0.6111,-0.082 -0.2445,-0.2445 -0.082,0.2037 -0.28511,-0.041 0.082,-0.2444 0.082,0 0.2037,0.082 -0.041,-0.082 0.2851,0 0.7333,-0.041 z m 3.78869,0 0.12221,0.041 -0.12221,0 0,-0.041 z m -15.2771,0.041 0.163,0.2444 0.28511,0 0.163,-0.1222 0.2852,0.2851 -0.3259,0.3667 c -0.7619,0.018 -1.1994,0.1247 -1.2629,0.3259 l -0.082,0.2037 0.28511,0.082 0.5296,0 -0.24441,0.2852 c -0.3067,0 -0.7246,-0.1575 -1.1814,-0.3667 l 0.1222,-0.3259 -0.36671,-0.082 -0.3259,0.163 c -0.3253,-0.1839 -0.6735,-0.4253 -1.0592,-0.6926 0.52999,0.1199 0.94079,0.021 1.2222,-0.2852 0.452,0.097 0.8964,0.163 1.3851,0.163 l 0.082,0 0.163,0.041 0.041,-0.163 0.12221,-0.1222 z m 1.91471,0.082 c 0.012,0.2781 0.1751,0.4716 0.61109,0.5703 l -0.041,0.1222 -0.16291,0.082 c -0.4016,-0.033 -0.77869,-0.07 -1.1,-0.082 0.1876,-0.1742 0.4654,-0.4655 0.6926,-0.6925 z m 25.17669,0 0.12221,0.041 -0.24451,1.0184 -0.1222,-0.041 0.2445,-1.0185 z m -10.9588,0.082 0.24441,0.082 -0.082,0.2851 -0.16291,0 0,-0.3666 z m -20.81759,0.1222 c 0.2965,0.3446 0.63239,0.7122 0.9778,1.0999 l -0.7333,-0.1629 c -0.294,-0.2508 -0.5828,-0.5253 -0.8555,-0.8148 l 0.611,-0.1222 z m -1.05921,0.2444 0.44821,0.7333 -0.32591,0 c -0.2314,-0.1353 -0.4738,-0.2499 -0.69259,-0.4074 0.047,-0.067 0.091,-0.1468 0.1222,-0.2444 l 0.44809,-0.082 z m 23.2212,0.163 0.5703,0.1222 0,1.1814 -0.4481,0.1222 -0.5296,-0.1222 0.40741,-1.3036 z m 11.2847,0.1222 -0.2037,0.4074 0.082,-0.3259 0.1222,-0.082 z m -16.2956,0.1222 0.2444,0 0,0.082 -0.2444,-0.041 0,-0.041 z m -19.67691,0.1222 c 0.029,0.01 0.054,0 0.082,0 l 0.082,0.082 -0.36659,0 0.2037,-0.082 z m 29.1691,0.041 -0.041,0.3667 -0.2852,-0.082 c 0.1195,-0.087 0.2148,-0.1918 0.3259,-0.2852 z m 3.8294,0 0,0.082 -0.041,0 0.041,-0.082 z m -0.9777,0.041 0.2037,0.082 c -0.072,0.065 -0.1696,0.1008 -0.2445,0.163 -0.1919,0.1594 -0.368,0.3385 -0.5703,0.4888 -0.078,-0.08 -0.1398,-0.2016 -0.2037,-0.3259 0.1573,-0.079 0.2843,-0.1614 0.4481,-0.2444 l 0.3259,0.082 0.041,-0.2037 c 0.01,0 -0.01,-0.038 0,-0.041 z m -23.5471,0.2037 -1.0999,0.5296 -0.163,0 0,-0.2037 c 0.1087,0 0.2966,-0.111 0.5296,-0.2851 l 0.7333,-0.041 z m -4.9294,0.1222 c 0.1297,0.1454 0.2302,0.2561 0.3667,0.4074 l 0,0.2037 c -0.065,-0.042 -0.139,-0.078 -0.2037,-0.1222 l 0.041,-0.082 -0.163,-0.041 c -0.08,-0.056 -0.166,-0.1047 -0.2444,-0.163 l 0.1629,-0.041 0.041,-0.1629 z m 10.0218,0.082 0.3666,0.2445 -0.082,0.082 -0.2037,0 c 0,-0.1207 -0.037,-0.2282 -0.082,-0.3259 z m -2.037,0.3259 0.6519,0 0,0.2037 -0.6519,0 0,-0.2037 z m 6.6405,0 0.4074,0 0,0.082 -0.2445,0.1223 -0.1629,0 0,-0.2037 z m -3.0962,0.1223 0.4074,0.082 -0.4074,0 0,-0.082 z m 5.8257,0 0.2444,0.041 0.2444,0.2851 0.082,0 0,0.4074 c -0.3615,0.031 -0.7579,0.061 -1.1406,0.082 l 0.32591,-0.4888 c 0.079,0 0.1557,0 0.2444,0 l 0,-0.326 z m -6.4775,0.3259 0.6518,0 0,0.4888 -1.0185,0 0.3667,-0.4888 z m 8.1885,0.041 0.2852,0.082 -0.041,0.1222 c -0.1063,0.015 -0.2175,0.027 -0.3259,0.041 l 0.082,-0.2444 z m 9.4107,0.041 c -0.02,0.2876 -0.042,0.5616 0.041,0.774 l -0.163,0.082 -0.1222,0.4074 -0.3259,-0.4481 0.5703,-0.8148 z m -12.0587,0.041 c 0.01,0 0.03,0 0.041,0 l 0.041,0.041 -0.082,0.2444 -0.2445,-0.041 c 0.043,-0.093 0.1038,-0.1842 0.2445,-0.2444 z m -8.6367,0.1629 0.6519,0 0,0.2037 -0.6519,0.2037 0,-0.4074 z m 1.0185,0 0.4889,0 0,0.2037 -0.4889,0 0,-0.2037 z m 3.585,0 0.3667,0 -0.3667,0.4074 -0.4888,0 0.4888,-0.4074 z m -15.1548,0.2037 0.041,0 0,0.2037 -0.4482,0 0,-0.041 0.4074,-0.1629 z m 3.3406,0 0.611,0 0,0.2037 -0.611,0 0,-0.2037 z m 4.9701,0 0.6111,0 0,0.2037 -0.6111,0 0,-0.2037 z m 3.9109,0 0.6519,0 0,0.2037 -0.6519,0 0,-0.2037 z m 18.0474,0.041 0.082,0 0,0.041 -0.082,-0.041 z m -2.7295,0.082 0.041,0 -0.163,0.4889 -0.5296,-0.1222 0.041,-0.082 c 0.17551,-0.071 0.415,-0.2009 0.6111,-0.2852 z m 5.296,0 c 0.072,0.09 0.1611,0.1484 0.2444,0.2445 l 0,0.041 -0.4074,-0.082 c -0.029,-0.024 -0.055,-0.058 -0.082,-0.082 l 0.2445,-0.1223 z m -32.6318,0.2852 0.6518,0 0,0.2444 -0.6518,0 0,-0.2444 z m 2.9332,0 0.3666,0 -0.3666,0.5296 0,-0.5296 z m -3.5443,0.2444 0.4481,0 0,0.2852 -0.4481,0 0,-0.2852 z m 9.3292,0 0.6111,0 1.0184,0.2852 1.2222,-0.2852 1.30371,0 0,0.4889 -5.1739,0 0,-0.2037 1.0185,-0.2852 z m 4.522,0 4.60351,0 -0.4481,0.4889 -0.2037,-0.2037 -1.0185,0.2037 -2.4851,0 -0.4481,-0.4889 z m 5.459,0 0.5704,0 0,0.2852 -0.5704,0 0,-0.2852 z m 15.3178,0 c -0.021,0.067 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.1629 0.041,-0.041 z m -30.5134,0.2852 1.0185,0 0,0.2037 -1.0185,0 0,-0.2037 z"
+           id="path6112"
+           transform="matrix(0.61596339,0,0,0.61596335,-152.58919,403.21413)" />
+        <path
+           inkscape:connector-curvature="0"
+           inkscape:export-ydpi="90"
+           inkscape:export-xdpi="90"
+           inkscape:export-filename="Z:\private\général\illustrations\Charte graphique\OD\OD 5.0\aboutpage\png\aboutpage_OD5.0.png"
+           style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.49142857;fill:#fce94f;fill-opacity:1;stroke:none;display:inline;filter:url(#filter3544);font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+           d="m -152.38187,1050.7059 -2.5666,0.4889 0,1.3444 0.5704,-0.6111 0.6518,0 0,0.2037 -1.2222,0.4074 0,2.0777 0.2037,0 -0.2037,0.2851 0,0.8555 c -0.1242,0.1134 -0.1888,0.1893 -0.2852,0.2852 l 0,0.4889 c 0.096,-0.046 0.1848,-0.06 0.2852,-0.1222 l 0,0.7333 -0.2852,0.2444 0,8.5552 0.6111,2.2406 0.082,0.5703 c -0.028,0.081 -0.061,0.1678 -0.082,0.2445 0.066,0.049 0.108,0.1082 0.163,0.1629 l 0,0.163 -0.2445,-0.082 c -0.024,-0.01 -0.057,-10e-4 -0.082,0 0.036,-0.1267 0.062,-0.2569 0.1223,-0.3667 l -0.163,-0.6111 -0.4074,0.082 0,3.8702 c 0.014,0 0.027,0 0.041,0 l 0.2037,-0.041 0.041,-0.041 0,0.8555 c -0.09,0.2618 -0.1903,0.5021 -0.2852,0.6926 l 0,0.9777 0.2445,0.082 -0.041,0.163 -0.2037,-0.082 0,11.1217 0.1629,-1.1814 0.1222,0.041 0,1.0184 0.2037,0 0.4889,0.5297 c -0.1,0.082 -0.1897,0.1934 -0.2444,0.3666 l -0.2037,-0.2444 -0.082,0 -0.163,-0.6519 0,0.5704 -0.041,0 -0.2444,0.1222 0,0.8963 0.2852,-0.1223 0,0.326 -0.1223,-0.041 -0.1222,0.4073 0.2445,0.041 0.3666,-0.1222 0,0.2445 -0.3666,0 0,0.8555 -0.2852,0.082 0,0.2037 0.2852,-0.082 0,0.082 c 0.414,0 0.5703,-0.1422 0.5703,-0.4482 l -0.2037,-0.2036 0.5296,0 -0.1222,0.082 -0.082,0.2444 0.1222,0 0,0.082 0.2037,0.2444 0,0.2852 -1.0185,0 0,0.2444 3.3814,0 c 0.2346,-0.6383 0.5269,-0.9777 0.937,-0.9777 l 0,-0.4074 -0.5704,0 -0.2852,0.2037 -0.1629,0 -0.2444,-0.3259 0.082,-0.2444 -0.2445,0.082 -0.6518,0 -0.3259,0.1222 0,-0.041 -0.3667,-0.082 -0.2851,0.2037 -0.4482,-0.2037 0,-0.2444 1.0593,0 0,-0.2037 -0.2037,-0.2037 0,-0.2445 0.4888,0.163 -0.082,0.2037 0.5704,0.1222 0.2851,-0.041 0.6111,0.2037 -0.082,0.2444 0.2852,0.082 0.5703,-0.041 0.6519,0.2445 0,0.2037 c -0.3219,0 -0.8163,0.3865 -1.3852,1.1814 l 18.577,0 c 0.082,-0.08 0.1634,-0.1631 0.2444,-0.2445 0.2121,0.076 0.504,0.165 0.7333,0.2445 l 1.4666,0 -0.2444,-0.4074 1.1407,0.082 0.2037,0.082 -0.041,0.1629 -0.5297,0.082 0.7333,0 7.8626,0 0.041,-0.1629 c 0.061,0.031 0.1356,0.056 0.2037,0.082 l -0.041,0.082 1.3037,0 0.3666,-0.2444 -0.041,0.2444 2.5666,0 0.082,-0.2444 0.2444,0.041 -0.082,0.2037 0.4481,0 0,-1.3444 -0.082,0.2444 -0.2444,-0.041 0.1222,-0.4074 0.2037,0.082 0,-9.044 -0.1222,-0.041 0.1222,-0.5703 0,-1.7111 -0.2851,0.082 -0.041,0.2037 0.2036,0.3259 -0.611,1.1 -0.2037,-0.041 0.937,-3.5036 0,-1.5888 -0.2852,0.1222 -0.041,1.0592 -0.6518,2.3629 -0.5704,0.2852 1.1815,-4.3998 0.3666,0.5703 0,-1.3444 -0.163,-0.041 0.163,-0.5703 0,-1.8333 c -0.2597,-0.392 -0.5239,-0.7827 -0.8148,-1.1406 l 0.8148,0.041 0,-1.2222 -0.2037,0.8555 -0.2444,-0.082 0.3259,-1.1814 0.1222,0.041 0,-3.5443 -0.082,0.2852 -0.4481,-0.1222 0.5296,-2.037 0,-7.9848 -0.041,0.1222 -0.8148,0 -0.6518,-0.3666 -0.8148,0 0.041,-0.2037 -0.3259,-0.5296 0.082,-0.2852 0.2037,0.041 0.8555,0.774 0.2852,-0.1629 0.082,-0.2852 c -0.3163,-0.3876 -1.755,-1.0888 -4.3183,-2.0777 l -1.1,0 2.811,1.1814 -0.1222,0.4074 0.2851,-0.1629 0.6926,0.2037 -0.4889,0.8147 -0.2037,-0.041 -0.1629,-0.2851 -0.2444,-0.041 -0.3667,0.1222 0.1222,-0.4074 0.3667,-0.1629 0,-0.041 -0.2445,-0.2852 -0.2444,-0.082 -0.2852,0.2037 -0.2444,-0.041 -0.6926,-0.4889 -0.5703,0.3667 -1.5481,-1.2629 -1.8332,0 -0.082,0.3259 -0.2445,-0.041 0.082,-0.2852 -3.2998,0 1.0184,1.5481 0.2037,0.041 -0.1629,0.6925 -0.4481,-0.1222 -0.082,0.2037 c 0.3276,0.088 0.5624,0.5585 0.6925,1.3851 l -0.1629,0.6926 -0.2445,-0.082 0.1223,-0.4481 -0.7333,-0.2037 -0.163,0.4481 0.4889,0.1222 -0.2445,0.8963 -0.4888,-0.1222 -0.2037,0.937 0.4481,0.1222 -0.1222,0.4074 -0.4481,-0.1223 -0.1223,0.4074 0.4482,0.1222 -0.163,0.6926 c -0.4096,-0.1095 -0.6971,0.1232 -0.937,0.6926 -0.022,0.084 -0.038,0.1751 -0.041,0.2444 l -0.2444,-0.2852 -0.2037,0.2852 c -0.01,-0.089 -0.01,-0.1889 0,-0.2852 l 0.2037,0 0,-0.2037 -0.163,-0.1629 c 0.014,-0.071 0.021,-0.1297 0.041,-0.2037 l 0.5296,0.1629 0.163,-0.6518 -0.4074,-0.6111 0.937,-1.3851 -0.2037,-0.041 0.2852,-0.1629 0.082,-0.2852 -0.2037,-1.4666 0.6518,-0.2444 -0.2444,-0.082 0.4481,-0.6111 c 0.1537,-1.0675 -0.199,-1.6848 -1.0592,-1.9148 l 0.2852,-0.1629 0.082,-0.2444 -1.5889,0 0,0.082 0.6926,0.1629 -0.937,0.7333 c 0.085,-0.3163 0.049,-0.6402 -0.041,-0.9777 l -1.5888,0 -0.2037,0.6925 -0.2444,-0.041 0.1629,-0.6518 -0.937,0 0.2445,0.4889 -0.082,0.4481 -0.3667,-0.5703 0.082,-0.3667 -0.4481,0 -0.8555,3.0962 c -0.097,-0.045 -0.1796,-0.077 -0.2852,-0.1222 l -0.041,0 -0.163,-0.2445 0.2852,-0.1222 0.082,-1.1814 0.3667,-1.4259 -0.4889,0 -0.6111,2.3629 -0.2444,0 0.6111,-2.3629 -2.6073,0 -0.041,0.163 0.4481,0.1222 -0.2852,1.0592 c -0.9988,-0.3794 -1.8221,-0.6518 -2.4443,-0.6518 -0.1476,0.3741 -0.4355,0.625 -0.774,0.774 -0.017,-0.069 -0.022,-0.1337 -0.041,-0.2037 l -0.041,-0.2037 0.5703,-0.082 0,-0.2851 c 0,-0.2009 -0.2546,-0.367 -0.774,-0.4889 l -0.041,-0.2037 -0.9778,0 c 0.001,0.014 0,0.027 0,0.041 l 0,0.2444 c -0.2787,-0.1372 -0.624,-0.216 -1.0184,-0.2851 l -1.7111,0 0,0.1629 -0.2444,0.082 -0.082,-0.2444 -0.5296,0 0.041,0.1222 -0.163,0.163 -0.081,-0.2852 -2.7295,0 -0.2037,0.9777 -0.3259,0 0,-0.4888 c 0.085,-0.1762 0.1553,-0.3575 0.2037,-0.4889 l -2.4036,0 z m 36.2576,12.8328 0,-0.937 -0.041,0.041 -0.163,0.6111 0.2037,0.2851 z m -34.3429,-12.7513 -0.2852,0.4481 -0.4888,0.082 0.082,-0.2851 0,-0.1222 0.6925,-0.1223 z m 13.4846,0.041 0.4481,0.1222 -0.041,0.2445 -0.4481,-0.1223 0.041,-0.2444 z m -16.2956,0.3667 0,0.4888 -0.4481,0 0.4481,-0.4888 z m 7.8219,0 0.082,0.041 0.2037,0.8962 c -0.2225,-0.02 -0.4372,-0.045 -0.6111,-0.082 l 0.2037,-0.6518 -0.041,-0.163 0.1629,-0.041 z m 1.4666,0 0.4074,0.4888 -0.4074,0 0,-0.4888 z m -2.5666,0.1629 0.082,0.2852 -0.1222,0.041 c -0.071,-0.079 -0.082,-0.1896 -0.082,-0.2852 l 0.1222,-0.041 z m -6.1515,0.041 0.4481,0 0,0.2852 -0.4481,0 0,-0.2852 z m 5.2145,0 0.2037,0 0,0.2852 -0.2037,0 0,-0.2852 z m -2.9739,0.2852 c 0,-0.01 0.038,0 0.041,0 l 0,0.2444 -0.163,0 c 0.038,-0.069 0.088,-0.1795 0.1223,-0.2444 z m 13.0364,0 0.2037,0.081 -0.1629,0.6518 -0.3259,-0.5703 0.2851,-0.163 z m 11.8143,0.041 0.4481,0.1222 -0.1222,0.4889 -0.4889,-0.1223 0.163,-0.4888 z m -5.8257,0.1629 0.2445,0.041 -0.163,1.5888 -0.2852,0.163 -0.1222,0.4889 -0.5296,2.5258 -0.6518,-0.6518 1.1,-2.6481 -0.2445,-0.2851 0.082,-0.2037 0.5704,-1.0185 z m 0.9778,0.041 0.5703,0.1222 -0.2852,0.163 -0.082,0.2037 -0.774,3.8702 -0.2852,0.1629 -0.082,1.1407 -0.2037,0.7741 -0.5703,0 0.1629,-0.5704 c 0.245,-0.096 0.4482,-0.2129 0.4482,-0.3666 l -0.2852,-0.2852 1.3851,-5.2146 z m -17.7214,0.2037 0.2444,0 0.041,0.163 -0.082,0.041 -0.1222,0 -0.082,-0.2037 z m 14.5437,0.1222 0.2037,0.041 -0.082,0.4482 -0.2444,-0.082 0.1222,-0.4074 z m 12.6291,0.041 0.2037,0.082 -0.082,0.4074 -0.2444,-0.082 0.1222,-0.4074 z m -29.8209,0.041 0.6519,0 0,0.2037 -0.6519,0 0,-0.2037 z m -2.0776,0.2037 1.0592,0 c -0.029,0.098 -0.082,0.1887 -0.1222,0.2852 l -0.937,0 0,-0.2852 z m 11.855,0 0,0.5296 -0.4889,0 0.4889,-0.5296 z m 24.3618,0.163 c -0.074,0.2764 0.1417,0.5131 0.5704,0.6518 l 0,-0.5296 -0.5704,-0.1222 z m -6.0701,0.3259 0.4481,0.1222 -0.3666,1.3037 -0.4481,-0.1223 0,-1.1814 0.3666,-0.1222 z m -17.0696,0.4481 0,0.4889 -0.2037,0 -1.6703,0.2444 c 0.035,-0.1864 0.074,-0.3749 0.082,-0.5703 l 1.7926,-0.163 z m 0.3667,0 0.6518,0.2037 0,0.2852 -0.8555,0 0.2037,-0.2852 0,-0.2037 z m 1.0185,0 0.041,0 0.2851,0.4482 -0.041,0.041 -0.2851,0 0,-0.4889 z m 1.8332,0 -0.082,0.3259 -0.2852,0.041 0.1223,-0.3259 c 0.073,-0.01 0.1596,-0.036 0.2444,-0.041 z m 10.2662,0 0.6518,0.3667 -0.082,0.2037 -0.4481,0.8555 c -0.076,0.6131 0.1199,0.9904 0.5296,1.0999 l -0.1222,0.4074 -0.5296,-0.1222 -0.082,0.2852 0.2444,0.2852 -0.3666,0.1222 0.041,1.1814 -0.4889,1.7925 -0.5296,-0.1222 -0.4074,-1.3037 0.1222,-0.4888 0.2444,0.041 -0.1222,0.4888 0.4482,0.1223 0.041,-0.2037 -0.2852,-0.8148 0.2852,-0.1222 c 0.1185,-0.4435 -0.079,-0.7649 -0.5704,-0.8963 l 0.6518,-0.2852 -0.1222,0.4074 0.4889,0.1223 0.3666,-3.2184 0.041,-0.2037 z m -20.4916,0.1222 0.2444,0.041 0.1222,0.4889 -0.3259,-0.082 0,-0.3666 -0.041,-0.082 z m -7.7404,0.082 0.4481,0 -0.4481,0.5296 0,-0.5296 z m 1.3036,0 0.8148,0 c -0.013,0.016 -0.028,0.025 -0.041,0.041 -0.2572,0.2055 -0.3429,0.3041 -0.5704,0.4889 l -0.2037,-0.2444 0,-0.2852 z m 1.3037,0 0.3666,0 0.4074,0 0,0.2037 -0.082,-0.082 -0.4889,0.1222 0,0.2445 -0.082,0.041 -0.2037,-0.2444 -0.082,0 0.163,-0.2852 z m 1.1406,0 0.6111,0 -0.041,0.2852 -0.5703,0 0,-0.2852 z m 7.2923,0 0.6518,0 -0.082,0.2445 0.1222,0.4481 -0.2851,0.041 -0.4074,-0.6518 0,-0.082 z m 1.2629,0 0.2037,0 0.082,0.2445 -0.2037,0.041 -0.082,-0.2852 z m 21.1435,0 0.8148,0 0.2444,0.041 -0.082,0.2037 -1.1,0.163 0.1223,-0.4074 z m -12.9142,0.082 0.2036,0.082 -0.082,0.4074 -0.2444,-0.082 0.1222,-0.4074 z m 5.2553,0 -0.081,0.2037 0.4888,0.1223 0.041,-0.2037 -0.4481,-0.1223 z m 10.1439,0.3667 0.4889,0.1222 0.4074,0.5704 -0.6518,0.3259 0.2852,0.082 -0.6111,1.0184 c -0.3277,-0.088 -0.363,-0.3713 -0.2445,-0.8147 l 0.2852,-0.163 0.041,-0.2037 0,-0.937 z m -1.3851,0.2852 0.2445,0.082 0.041,0.7333 -0.4482,-0.1223 0.163,-0.6925 z m -25.5025,0.041 0,0.4074 -0.2852,0 -0.082,-0.326 0.3667,-0.082 z m 23.9137,0.041 0.2444,0.082 -0.1222,0.4074 -0.2037,-0.041 0.082,-0.4482 z m -24.7285,0.082 0.082,0.2851 -0.2444,0 0,-0.2444 0.1629,-0.041 z m -8.2292,0.041 1.0184,0 c -0.1009,0.084 -0.1917,0.1658 -0.2851,0.2444 l -0.7333,0 0,-0.2444 z m 2.0776,0 0.4482,0 0,0.2444 -0.6111,0 0.1629,-0.2444 z m 7.8626,0 0,0.2444 -0.2036,0 -0.041,-0.163 0.2444,-0.082 z m 3.748,0 0.4074,0 0,0.2444 -0.4074,0 0,-0.2444 z m 1.0592,0 0.8148,0 0,0.2444 -0.8148,0 0,-0.2444 z m 22.3657,0.041 0.4481,0.1222 0.2852,0.2852 0.082,-0.4074 0.2444,0.041 -0.1222,0.4481 -0.2037,-0.082 0.163,0.2852 -0.1223,0.4888 c -0.3277,-0.088 -0.616,0.1421 -0.774,0.7333 l -0.3666,-0.611 0.3666,-1.3037 z m -31.0023,0.041 0.2852,0.2037 -0.2037,0.082 -0.082,-0.2852 z m -4.7257,0.082 0.041,0.082 -0.1222,0 c 0.027,-0.031 0.054,-0.05 0.082,-0.082 z m 31.98,0.041 0.5296,0.1629 -0.041,0.2037 -0.5296,-0.1222 0.041,-0.2444 z m -20.4917,0.041 0.3667,0 0,0.2851 -0.3667,0 0,-0.2851 z m 3.5443,0 0.2037,0 c 0.2933,0.1 0.5027,0.2543 0.6518,0.4888 l -0.081,0.1222 c 0.049,0.098 0.1129,0.1885 0.163,0.2852 l -0.3666,0 0,0.2444 0.5296,0.082 c 0.074,0.1379 0.1679,0.2724 0.2444,0.4074 l -1.7925,0 0,-0.2037 c 0.5521,10e-5 0.8148,-0.2235 0.8148,-0.5296 l -0.3667,-0.4074 0,-0.4888 z m -9.2884,0.041 0.1222,0.4481 -0.2037,0.041 -0.082,-0.3259 0.1629,-0.163 z m -3.5036,0.082 0.082,0.4481 -0.4481,0.1222 -0.041,-0.1629 0.3259,-0.041 0,-0.326 0.082,-0.041 z m 1.6296,0.041 c 0.2851,1.0667 0.7124,1.5431 1.3036,1.3851 l 0.082,0.1629 -0.1629,0.2445 -0.2445,-0.1222 c -0.5964,0.7308 -0.8708,1.4517 -0.6925,2.1184 l -0.8555,-0.6518 0.611,-0.163 -0.1222,-0.4074 c -0.3695,0.099 -0.5984,-0.098 -0.8148,-0.6111 l 0.9778,-0.7333 -0.4482,-0.937 -0.041,-0.1629 0.4074,-0.1222 z m 23.5878,0.2444 0.4481,0.1222 -0.082,0.2444 -0.4481,-0.1222 0.082,-0.2444 z m -14.9512,0.082 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 4.6035,0 0,0.082 -0.041,0.163 -0.2037,-0.041 0.2445,-0.2037 z m -10.5514,0.041 c 0.1566,0.1293 0.3292,0.2463 0.5704,0.3666 l 0,-0.1629 0.082,0.3666 0,0.082 -0.4481,0.1223 -0.2037,-0.7741 z m 23.2212,0.041 0.4481,0.1222 0,0.9777 -0.2851,0.1223 -0.041,0.2037 -0.163,1.4666 -0.4074,0.5703 0.2037,0.2444 -0.3259,0.2037 0.3666,0.5704 -0.2851,0.1222 -0.2445,-0.041 -0.041,1.1407 -0.3259,1.1407 -0.4481,-0.163 -0.2037,0.6926 c 0.013,0.024 0.029,0.057 0.041,0.082 l -0.1222,0.082 0.1629,0.041 c 0.083,0.2037 0.1422,0.4408 0.163,0.6925 l -0.041,0.2037 -0.163,-0.2444 -0.2851,-0.082 -0.041,0.041 0.2444,-1.5481 0.774,-2.8517 0.4482,-0.8148 -0.2852,-1.0592 0.5296,0.163 0.3259,-2.0777 z m -28.4357,0.041 -0.041,0.4481 -0.2852,0.082 -0.2852,-0.1629 -0.2037,0.082 0.3667,0.4888 -0.4889,0.6111 -0.3259,-0.4888 c 0.071,-0.017 0.1278,-0.041 0.2037,-0.041 l 0,-0.4889 -0.163,0 -0.2037,0.2852 -0.2037,0 0.3667,-0.6111 1.2629,-0.2037 z m 4.8072,0 0.1629,0.6518 -0.2037,0.041 -0.2037,-0.6111 0.2445,-0.082 z m -7.0886,0.2852 0.2037,0 0,0.2851 -0.2037,0.2445 -0.2444,0 0,-0.3259 c 0.078,-0.065 0.1633,-0.1301 0.2444,-0.2037 z m 32.5911,0.4074 1.5073,1.3443 -0.1222,0.4482 -0.5296,-0.163 -0.4889,1.7925 -0.2037,-0.041 0.4074,-2.4851 -0.2851,0.1223 -0.326,-0.082 0.041,-0.937 z m 4.4813,0 0.774,0 -0.1222,0.4073 -0.6926,-0.2037 0.041,-0.2036 z m -27.4173,0.1222 0.041,0 0.2037,0.2037 -0.163,0.041 -0.082,-0.2445 z m 3.4221,0 0.5703,0 0,0.2037 -0.5703,0 0,-0.2037 z m 5.4997,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.1629 c -0.014,0.06 -0.024,0.099 -0.041,0.163 l 0.4074,0.1222 c -0.1394,0.1292 -0.3455,0.163 -0.6518,0.163 l -0.2037,0 0,-0.2037 0.4889,-0.2445 z m -4.6442,0.041 0.6518,0.2037 0,0.4481 c -0.414,0 -0.6518,0.1829 -0.6518,0.4889 l -0.163,0 c 0,-0.4589 -0.1313,-0.7332 -0.4074,-0.7333 l 0,-0.2037 0.5704,-0.2037 z m 11.4476,0.041 0.3259,0.6111 -0.041,0.2037 -0.3259,-0.6111 0.041,-0.2037 z m -18.088,0.041 0.5703,0.2852 0.6518,2.3628 0,0.082 -0.3666,-0.5296 -0.2037,0 0.5703,0.8556 0.041,0.6518 0.2852,0.1222 -0.3667,0.5703 -1.1814,-4.3998 z m 15.44,0 0.2444,0.041 -0.2852,1.1 -0.2444,-0.041 0.2852,-1.1 z m -7.0886,0.1222 0.5704,0.2037 0,0.2445 -0.7741,0 0.2037,-0.2445 0,-0.2037 z m -9.2884,0.2037 0.4888,0.4889 0.041,0.163 -0.4888,0.1222 -0.163,-0.6518 0.1222,-0.1223 z m 1.9962,0.1223 0.3259,0.3259 0,0.082 0.082,0.041 0.2037,0.2444 -0.163,0.163 0.6518,2.3628 -0.2851,-0.1629 -0.8148,-3.0555 z m -7.8219,0.082 0.082,0.3666 -0.2037,0.041 -0.082,-0.3666 0.2037,-0.041 z m 2.4443,0.2037 -0.082,0.611 0.082,0.2445 0.2445,0.1629 c -0.776,0.2075 -1.0756,0.7481 -0.937,1.7111 l 0.3666,0.5703 -0.2037,0.041 0.5704,0.2444 -0.163,1.3037 0.082,0.2852 0.2445,0.1222 -0.2037,0.041 0.5703,0.8555 c -0.1409,0.1125 -0.2864,0.2395 -0.4481,0.4074 l -0.082,-0.2037 -0.4074,0.1222 -0.082,-0.3666 0.4074,-0.1223 -0.2037,-0.8147 -0.4481,0.1222 -0.2037,-0.8148 0.4073,-0.1222 -0.1222,-0.4481 -0.6518,0.2036 0.082,0.4482 -0.2037,0.041 -0.1629,-0.6111 c 0.1174,-0.7457 0.3562,-1.1839 0.6518,-1.2629 l -0.082,-0.163 -0.4074,0.082 -0.163,-0.611 0.2037,-0.041 1.3444,-2.037 z m 31.3282,0.2036 0.2445,0.041 0.2444,0.2852 0.2852,-0.1222 0.6925,0.163 0.4482,2.2813 -0.041,0.2037 0.2851,0.082 0.2852,-0.1222 0.2444,0.041 -0.6925,2.648 c -0.6159,-0.3229 -0.8482,-0.9056 -0.6111,-1.7925 l -0.2037,-0.082 0.2852,-0.1222 0.1222,-0.4889 0.082,-1.1814 -0.5704,-0.1222 -0.6925,2.6888 0.2444,0.2851 -0.3666,0.1223 -0.041,0.2036 0.2037,2.1999 -0.8148,0 c -0.1161,0.5674 -0.1894,1.0843 -0.2445,1.5074 -0.1694,0.1075 -0.2848,0.3972 -0.4073,0.8555 l -0.326,0.1222 -0.4481,-0.1222 -0.1629,-0.937 0.5703,-0.4889 0,-0.1222 c 0.055,0.088 0.1486,0.1672 0.2852,0.2037 l 0.2037,0.041 0.082,-0.2037 0.2444,-1.874 0.3666,-0.5296 0.7333,-3.6257 0.2445,-0.8963 -0.4481,-0.1222 -0.3667,1.3444 -0.3666,0.1222 0.2444,0.2852 -0.1222,0.4888 -0.5296,-0.1629 0.8147,-3.0962 z m -9.207,0.1223 0.2037,0.041 -0.2444,0.8962 -0.2852,0.163 -0.2037,-0.082 0.5296,-1.0185 z m 6.0701,0 0.2037,0.041 -0.082,0.4074 -0.2444,-0.041 0.1222,-0.4074 z m -24.9729,0.082 0.2037,0.8147 -0.2037,0.041 -0.2444,-0.774 0.2444,-0.082 z m -6.7219,0.041 0.041,0 0.1222,0.4481 -0.2037,0.041 -0.041,-0.1222 c 0.028,-0.1062 0.05,-0.2305 0.082,-0.3259 0,-0.013 0,-0.028 0,-0.041 z m 34.2614,0.041 0.2444,0.041 -0.2037,0.6925 -0.2037,-0.041 0.163,-0.6925 z m -26.5618,0.041 0.1223,0.4481 -0.326,0.4889 -0.082,-0.3667 0.2852,-0.5703 z m 13.892,0.082 0,0.041 -0.3259,0.2037 -0.2037,-0.041 c 0.011,-0.041 -0.01,-0.084 0,-0.1223 0.1891,-0.018 0.3782,-0.056 0.5296,-0.082 z m -11.7328,0.2444 0.1222,0.1222 -0.2037,0.082 -0.041,-0.1629 0.1222,-0.041 z m 27.1321,0.1222 0.774,0.2037 -0.041,0.2444 -0.774,-0.2037 0.041,-0.2444 z m -8.7181,0.041 0.5703,0.163 -0.082,0.2037 -0.5296,-0.1223 0.041,-0.2444 z m -15.4808,0.041 0,0.6111 0.4481,0 c 0,0.3378 0.036,0.6266 0.1222,0.8148 -0.2101,0.043 -0.4005,0.095 -0.5703,0.1629 l 0,-0.041 -0.3667,-0.4074 -0.6518,0.2037 c 0,-0.1101 -0.034,-0.2077 -0.082,-0.2851 l -0.2444,-0.8963 1.3444,-0.163 z m 2.8925,0 0.2851,0.2037 0.2037,0 1.874,-0.2037 0,0.2037 -0.2852,0.6518 c 0.3993,-0.2212 0.701,-0.4734 0.8148,-0.774 0.071,0.093 0.1313,0.1937 0.2037,0.2852 l -0.3666,0.041 0,0.4481 0.4073,0 0.2445,0.2852 0.1629,-0.2445 c 0.093,0.1068 0.1891,0.2221 0.2852,0.3259 l 0.041,0.163 -0.2037,-0.2037 -0.2444,0.1222 0.041,0.6926 -0.2444,0.1222 -0.082,0.1629 -0.6519,-0.1222 c -0.065,-0.1287 -0.1069,-0.2443 -0.1222,-0.3666 l 0.3259,0 0.3667,0.082 0.041,-0.2037 -0.2852,-0.5296 c -0.2712,-0.072 -0.5058,-0.065 -0.7333,-0.082 l -0.2037,-0.2037 -0.082,0.1629 c -0.064,0 -0.1436,-0.01 -0.2037,0 l -0.5296,-0.611 -1.0592,0.2037 -0.774,-0.2037 -0.4482,0.4481 -0.1629,-0.2444 0,-0.2037 c 0.2415,0 0.4326,0.016 0.6111,0 0.5353,-0.049 0.774,-0.1779 0.774,-0.4074 z m 16.2955,0 0.2444,0.082 -0.2444,0.8963 -0.2444,-0.082 0.2444,-0.8963 z m -19.962,0.4074 0,0.4481 0.4073,0 0,-0.4481 -0.4073,0 z m -1.5481,0.082 0.2444,0.2852 -0.2037,0.3666 -0.1629,-0.5296 0,-0.082 0.1222,-0.041 z m -10.5106,0.1222 0.041,0.3259 -0.163,0.041 0.1222,-0.3666 z m 21.836,0 0.1629,0 0,0.2445 -0.1629,0 0,-0.2445 z m -16.6622,0.041 0.5296,0.937 0.041,0.163 -0.2037,0.2851 0.774,1.8333 -0.5296,0.3259 -0.2851,-1.5073 -0.1223,-0.4482 -0.2444,-0.1222 -0.1629,-1.4258 0.2037,-0.041 z m -0.8963,0.041 1.1407,4.2369 -0.3259,-0.082 0,-0.082 -0.2852,-0.163 -0.6925,-3.4628 -0.041,-0.2037 -0.2852,-0.1222 0.4889,-0.1222 z m 19.8806,0.082 0.2444,0.082 -0.1222,0.4074 -0.2037,-0.041 0.082,-0.4481 z m -7.7811,0.082 0.6518,0 0,0.2037 c -0.1266,0.036 -0.2233,0.098 -0.3259,0.163 l -0.3259,-0.082 0,-0.2852 z m -9.207,0.1222 0.1222,0.3667 -0.2037,0.041 -0.1222,-0.3667 0.2037,-0.041 z m 15.1141,0.041 0,0.1223 -0.082,0 0.082,-0.1223 z m 9.981,0.2445 0.2445,0.041 -0.163,0.4888 -0.2037,-0.041 0.1222,-0.4888 z m 5.2553,0 0.2445,0.041 -0.163,0.4888 -0.2037,-0.041 0.1222,-0.4888 z m -22.8137,0.082 0.3666,0 c -0.096,0.1753 -0.2074,0.2729 -0.3666,0.2851 l 0,-0.2851 z m 7.1293,0 0.1629,0 0,0.2037 -0.1629,0 0,-0.2037 z m -1.5074,0.041 0.2852,0.082 -0.2852,0 0,-0.082 z m 4.7258,0.082 0.3259,0.6111 -0.1222,0.4073 -0.4482,-0.1222 0.2445,-0.8962 z m 1.0184,0.2851 0.2037,0.041 c -0.079,0.2957 0.1603,0.5612 0.6518,0.6926 l -0.2444,0.8963 c -0.1373,-0.1603 -0.2848,-0.29 -0.4481,-0.4074 l 0.041,-0.2037 -0.4481,-0.1222 0.2444,-0.8963 z m -5.8664,0.041 0.1222,0 0.082,0.041 -0.1222,0.4482 -0.1629,-0.082 0.082,-0.4074 z m 3.3814,0 0.5703,0 -0.082,0.2037 -0.2444,0 c -0.089,-0.065 -0.1748,-0.1266 -0.2445,-0.2037 z m -7.4145,0.1223 c -0.014,0.04 -0.029,0.079 -0.041,0.1222 l -0.1222,-0.041 0.1629,-0.081 z m -15.603,0.1629 0.082,0.163 0.3259,2.9332 0.4074,-0.1222 -0.1222,-0.3667 0.6111,0.2444 c -0.4434,0.1186 -0.6365,0.4148 -0.5296,0.8148 l 0.2444,0.1222 -0.2444,0.7333 0.041,0.2037 0.4481,-0.1222 -0.1222,-0.4481 0.2037,-0.041 0.1222,0.4481 -0.3667,1.1407 -0.3666,-0.082 c -0.056,0.071 -0.069,0.1343 -0.1222,0.2037 l -0.4482,-1.5888 0.041,-1.1 -0.3259,-0.081 0.2037,-0.2852 -0.041,-0.2444 -0.4888,0.1222 -0.082,-0.1629 0,-0.082 0,-0.163 c 0.3323,-0.117 0.5134,-0.4115 0.4481,-0.937 l -0.4481,-0.774 -0.041,-0.163 0.5703,-0.3666 z m 31.1652,0 0.5296,0.1222 -0.2037,0.6926 -0.5296,-0.1222 0.2037,-0.6926 z m -28.9246,0.2852 -0.4074,0.082 0.041,0.2037 0.4074,-0.1222 -0.041,-0.163 z m 4.7257,0 0.1223,0.3666 -0.2037,0.041 -0.1222,-0.3666 0.2036,-0.041 z m 8.5145,0.041 0.2037,0.082 -0.2445,0 0.041,-0.082 z m 16.9066,0 0.5296,0.1222 -0.1222,0.4889 0.4481,0.1222 0.163,-0.6926 0.4481,0.5704 -0.5703,0.8147 -0.163,1.874 -0.4481,0.5296 -0.2445,-0.041 c 0.5137,-1.9215 0.411,-2.9209 -0.2444,-3.0961 l 0.2037,-0.6926 z m -20.0435,0.082 0.2037,0 -0.1222,0.4481 -0.163,0 0,-0.2037 0.082,-0.2444 z m 1.7925,0 0.2037,0 c 0.1368,0.1613 0.1865,0.3854 0.1629,0.6518 l -0.1222,0 -0.2444,-0.6518 z m -2.5666,0.1222 0.2037,0.3667 -0.2851,-0.082 0.082,-0.2852 z m 12.5476,0.163 0.2444,0.082 0.2852,0.2036 -0.1629,0.2445 c -0.1007,-0.099 -0.2134,-0.1792 -0.326,-0.2445 l -0.041,-0.2851 z m -7.17,0.1629 0.2851,0 c 0,0.072 0.024,0.1466 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.7333,0.082 0.4074,0.1222 -0.326,0 -0.082,-0.1222 z m -6.7219,0.1222 0.2036,0.082 -0.082,1.2222 -0.082,0.2037 -0.2037,-0.082 0.041,-0.4889 0.2037,0 0,-0.6518 -0.082,-0.2852 z m 14.6252,0.041 0.3259,0.082 -0.1629,0.6519 -0.2037,-0.082 -0.041,-0.5296 0.082,-0.1223 z m -15.3585,0.041 0,0.2037 -0.1223,0 0.1223,-0.2037 z m -1.4666,0.163 0.1222,0 0.1222,0.1629 0.082,0.2852 -0.3259,-0.4074 0,-0.041 z m 4.522,0.041 0.2037,0 -0.082,0.2037 -0.163,0 0.041,-0.2037 z m -5.2553,0.1629 -0.041,0.2445 c -0.1413,0.6766 -0.1365,1.0308 0.1222,1.0999 l -0.2445,0.2037 -0.082,0.163 -0.041,0.2444 -0.1222,0.041 -0.1629,-0.5703 0.4481,-0.081 c -0.206,-0.7706 -0.1475,-1.243 0.1222,-1.3444 z m 1.8739,0 0.041,0.1223 0.082,-0.082 0.163,0.6518 0,0.1222 -0.4889,0.7333 0.2852,0.082 -0.3259,0.1222 -0.081,0.2445 0.2444,0.2851 -0.082,0.163 -0.4074,0.5703 0.041,0.8555 -0.6518,1.3037 0.2444,0.2852 -0.4888,-0.163 0.3666,-1.3444 -1.1814,0.7333 0.2444,0.2852 -0.8555,0.4481 -0.082,1.0185 -0.4074,0.6926 c 0.08,-0.4995 0.011,-0.7981 -0.2037,-0.8556 l 0.2852,-0.1629 0.041,-0.2037 0.2037,-1.3037 c 0.1374,-0.1298 0.2764,-0.2714 0.4074,-0.4073 l 0.4481,0.3259 c -0.053,-0.2116 -0.1577,-0.3754 -0.2444,-0.5296 0.051,-0.055 0.1128,-0.1065 0.1629,-0.163 l 0.2445,0.041 0.082,-0.3666 0.3666,-0.163 -0.1629,-0.163 c 0.072,-0.092 0.1339,-0.1912 0.2037,-0.2851 l 0.7333,0.041 0.1629,-0.6111 -0.4074,-0.1222 c 0.071,-0.1075 0.1351,-0.2161 0.2037,-0.3259 l 0.2852,0.082 0.2852,-1.0592 c 0.1084,-0.2 0.2226,-0.4049 0.3259,-0.6111 l -0.1222,-0.163 0.041,-0.1222 z m 11.7328,0.041 0.2037,0.4074 0,0.041 -0.4888,0 c 0.012,-0.071 0.03,-0.1354 0.041,-0.2037 l 0.2444,-0.2444 z m -22.1619,0.041 0.082,0.2852 -0.082,0 0,-0.2852 z m 30.4319,0.2037 0.4889,0.1223 -0.4074,0.9369 c -0.091,-0.1361 -0.2088,-0.2648 -0.3666,-0.3666 l 0.2851,-0.6926 z m -10.8773,0.163 0.2037,0.041 -0.2037,0 0,-0.041 z m 0.9778,0.041 0.4074,0.1222 -0.041,0.163 -0.2037,0.041 -0.163,-0.2852 c 0.01,0 -0.01,-0.038 0,-0.041 z m -8.3922,0.3259 0.4074,0.082 -0.163,0.6518 -0.2852,-0.5703 0.041,-0.163 z m 23.9137,0.041 c 0.4519,0.2793 0.6049,0.7683 0.4074,1.5073 l -0.5296,1.0593 c -0.1998,1.1223 -0.2915,1.891 -0.2852,2.4036 l -0.163,-0.041 0.041,-0.7741 0.1223,-0.4889 -0.3667,-0.774 0.8963,-2.1184 -0.1223,-0.7741 z m -21.836,0.1222 0.2444,0 0,0.2037 -0.2444,0 0,-0.2037 z m 12.0994,0 0.041,0 -0.1629,0.5704 c -0.021,0.077 -0.028,0.1306 -0.041,0.2037 l -0.041,0 0.2037,-0.7741 z m -19.962,0.041 0.2037,0.041 0.1222,0.2445 -0.3667,-0.1223 0.041,-0.1629 z m -4.1147,0.2037 0.041,0.2037 -0.2851,0.5296 -0.041,-0.1629 0.2851,-0.5704 z m 3.6258,0 c 0.1218,0.056 0.2252,0.1143 0.4074,0.163 l -0.082,0.3666 -0.163,-0.2444 -0.082,-0.041 -0.082,-0.2444 z m 31.1245,0.082 0.2444,0.082 -0.1222,0.4889 -0.2444,-0.082 0.1222,-0.4889 z m -25.4618,0.082 c 0.1305,0.01 0.286,0.02 0.4481,0.041 l -0.1222,0.3667 c -0.2956,-0.079 -0.55,0.1592 -0.6926,0.6925 l -0.4481,-0.774 c 0.047,-0.1747 0.2133,-0.256 0.4889,-0.2852 l 0.3666,0 -0.041,-0.041 z m 14.0142,0 0.082,0 0.1222,0.041 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.2444 z m -8.1478,0.041 0.2852,0 -0.1223,0.5296 -0.2444,-0.082 c 0.037,-0.1539 0.063,-0.3101 0.082,-0.4481 z m 0.8555,0 0.5703,0 0,0.082 -0.3666,0.5704 0.1222,0.1629 -0.6111,-0.1629 c 0.1071,-0.1606 0.1904,-0.4143 0.2852,-0.6519 z m 1.0592,0 0.2444,0 -0.041,0.082 -0.2037,-0.041 0,-0.041 z m 2.2407,0 0.4888,0 -0.1222,0.3667 -0.2037,0.041 0,0.4481 0,0.041 -0.082,0.163 0.041,0.4481 -0.163,0.041 c -0.1808,-0.2054 -0.2426,-0.4948 -0.2036,-0.8555 0,-0.026 0,-0.055 0,-0.082 0.012,-0.083 0.016,-0.1538 0.041,-0.2445 l 0.2037,-0.3666 z m 0.8555,0 0.7333,0 0.3259,0 -0.041,0.2037 -0.2445,0 0,0.4889 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.2852 -0.4888,0.1222 -0.041,-0.5296 0.2444,-0.041 0,-0.4889 -0.2852,0.041 -0.041,-0.2444 z m -7.6997,0.082 0,0.7741 c -0.2652,-0.083 -0.4074,-0.289 -0.4074,-0.6519 0.1827,1e-4 0.3,-0.043 0.4074,-0.1222 z m 5.5405,0 0.4074,0.1222 -0.082,0.3667 -0.4481,-0.1222 0,-0.041 0.1629,-0.2037 -0.082,0 0.041,-0.1222 z m 11.9365,0 0.1222,0.6518 c -0.026,-0.012 -0.051,-0.033 -0.082,-0.041 l -0.3259,0.082 -0.041,0.2445 0,0.2851 -0.041,0.082 -0.2037,-0.041 0.041,-0.2037 0.2444,-0.3666 0.163,-0.2852 -0.4481,-0.1222 0.5703,-0.2852 z m -18.8214,0.082 c 0.092,0.016 0.1762,0.041 0.2852,0.041 l 0,0.6518 -0.2444,-0.082 -0.041,0.1223 -0.1222,0 0,0.4481 0,0.082 0.4481,0.1222 0.041,-0.2037 0.1629,0 -0.5296,0.774 -0.2444,-0.3259 -0.082,0.3667 0.2444,0.082 -0.041,0.041 0.5296,0.1222 0.082,0.2444 -0.1222,0.2037 c -0.1549,0.076 -0.2587,0.2271 -0.2851,0.4482 l -0.041,0.1222 -0.163,0 c -0.01,-0.03 0,-0.052 0,-0.082 l 0.082,-0.4482 -0.163,-0.041 c -0.084,-0.4331 -0.1523,-0.7924 -0.2444,-1.0592 l 0.4481,-1.6295 z m -7.2922,0.4481 c 0.2126,0.1197 0.3124,0.3225 0.2852,0.6111 l -0.2037,-0.1222 -0.082,-0.4889 z m 18.3325,0 0.041,0 c -0.01,0.03 -0.034,0.052 -0.041,0.082 -0.03,0.1372 -0.06,0.2832 -0.082,0.4074 -0.092,0.016 -0.1762,0.041 -0.2852,0.041 l 0,0.4889 -0.2444,0 0.082,-0.937 0.5296,0 0,-0.082 z m -12.3846,0.082 0.2851,0 0.1222,0.041 0,0.4074 -0.2036,0 0,0.2037 0.082,0.3667 c -0.1679,-0.1492 -0.2705,-0.4892 -0.2852,-1.0185 z m 25.3395,0.041 0.4482,0.1223 -0.1223,0.4073 -0.4481,-0.1222 0.1222,-0.4074 z m -33.9354,0.041 c -0.044,0.049 -0.077,0.1097 -0.1223,0.163 l -0.041,-0.1222 0.163,-0.041 z m -0.8963,0.041 0.4481,0.937 -0.2037,0.041 -0.082,-0.041 c 0.01,-0.045 0.028,-0.075 0.041,-0.1222 l -0.2444,-0.082 -0.2037,-0.6925 0.2444,-0.041 z m 17.5177,0 0.4074,0.1223 -0.082,0.2444 -0.3666,-0.2444 0.041,-0.1223 z m 0.7333,0 0.2037,0.082 -0.1222,0.4074 -0.2037,-0.041 0.1222,-0.4481 z m 7.1293,0.082 0.082,0.1223 0.2852,0.082 0.082,-0.041 -0.2037,1.3443 -0.6926,2.5259 -0.2444,0.4888 -0.082,-0.3666 0.2037,-0.2852 -0.2037,-0.2037 -0.2444,0.082 -0.163,-0.2852 0.2852,-0.1222 0.2037,0.041 0.041,-1.0592 0.2851,-0.9777 0.4074,0.082 0.1223,-0.5296 0.041,0 0,-0.082 c -0.1251,-0.2297 -0.181,-0.5084 -0.2037,-0.8148 z m 3.0554,0.041 0.2445,0.082 -0.082,0.2445 0,0.041 -0.163,0.5296 -0.2037,-0.082 0.2037,-0.8148 z m -20.2472,0.2037 0.4074,0.1223 -0.1222,0.3666 -0.2852,-0.4889 z m -10.6328,0.326 0.041,0.1629 -0.1222,0.041 0,-0.1629 0.082,-0.041 z m 5.5405,0.041 0.2037,0.082 -0.082,0.3666 0.2036,0.041 -0.2444,0.1222 -0.1222,0.4889 -0.163,-0.6111 0.2037,-0.4889 z m 27.4172,0 0.3667,0.082 c -0.05,0.1857 -0.025,0.3352 0,0.4481 l -0.3259,-0.082 c 0.053,-0.2 0.019,-0.3353 -0.041,-0.4481 z m -3.9517,0.082 0.041,0 c -0.023,0.1202 -0.051,0.2387 -0.082,0.3666 l -0.041,0 0.082,-0.3666 z m -17.314,0.041 0.2037,0.041 -0.2444,0.8147 -0.2037,-0.041 0.2444,-0.8147 z m 14.7475,0.041 c 0.1067,0.099 0.2579,0.168 0.4074,0.2444 l -0.163,0.3259 -0.1629,-0.041 -0.041,-0.041 c -0.048,-0.04 -0.1097,-0.09 -0.163,-0.1222 l 0.1222,-0.3667 z m -21.9175,0.1629 0.082,0 c 0.01,0.063 0,0.1434 0,0.2037 l -0.082,-0.2037 z m 32.4689,0 0.3259,0.5296 -0.4482,-0.1222 0.1223,-0.4074 z m -33.243,0.3667 0.041,0.1222 -0.1629,-0.041 0,-0.041 0.1222,-0.041 z m 6.7627,0.1629 0.2037,0.082 -0.7333,2.811 -0.2037,-0.082 0.7333,-2.811 z m 9.4514,0 -0.2037,0.8148 0,0.082 c -0.07,0.01 -0.1707,0.032 -0.2444,0.041 l 0.2444,-0.8963 0.2037,-0.041 z m 1.5888,0.163 c 0,0.051 0,0.1083 0,0.1629 -0.1403,0.1712 -0.5032,0.2873 -1.0184,0.4074 l 0.082,-0.2444 0.937,-0.3259 z m 8.5959,0.1222 c 0.1067,0.1844 0.2375,0.3374 0.3667,0.4889 l 0,0.1222 0.1629,0.041 c 0.068,0.069 0.1302,0.1436 0.2037,0.2037 l -0.1629,0.6518 -0.2037,-0.041 c 0.071,-0.2667 -0.1677,-0.4926 -0.6111,-0.6111 l 0.2444,-0.8555 z m 1.0185,0.041 0,0.1222 -0.082,-0.082 0.082,-0.041 z m 5.5812,0.041 0.4482,0.1222 -0.041,0.2037 -0.4889,-0.1222 0.082,-0.2037 z m -24.1989,0.041 0.1223,0.4481 0.2444,0.8963 -0.4481,0.7333 0.3259,-0.1222 0.2037,0.041 -0.1222,0.3666 -0.2037,-0.041 -0.2037,-0.2444 -0.2445,-0.082 -0.082,0.4481 -0.2444,-0.041 0.6518,-2.4036 z m -1.2221,0.082 0.2037,0.082 -0.1222,0.5296 -0.2037,-0.041 0.1222,-0.5703 z m 7.1293,0 0.2037,0.041 -0.082,0.3666 -0.2037,-0.041 0.082,-0.3666 z m 14.5438,0.041 -0.082,0.2444 0.6925,0.163 0.082,-0.2037 -0.6925,-0.2037 z m -28.6802,0.082 c 0.026,0 0.055,0 0.082,0 -0.126,0.1796 -0.3024,0.329 -0.5296,0.4481 l -0.041,-0.2037 c 0.1448,-0.1144 0.3062,-0.2067 0.4889,-0.2444 z m 13.3623,0.2037 c 0.1273,0.1138 0.2392,0.2232 0.2852,0.3259 l -0.2852,-0.082 0,-0.2444 z m -12.9549,0.2037 0.041,0 0.3259,0.1222 c 0.029,0.1064 0.051,0.1975 0.082,0.2852 l -0.2037,0.774 -0.2037,-0.041 c 0.1427,-0.5334 0.01,-0.858 -0.2852,-0.937 l -0.2037,0.082 0.041,-0.1629 0.3259,-0.082 0.082,0 0,-0.041 z m -2.5666,0.041 0.082,0.2444 -0.1222,-0.041 0.041,-0.2037 z m 13.4439,0 0.2037,0 c -0.015,0.1005 -0.023,0.219 -0.041,0.3259 l -0.163,0.1629 0,-0.4888 z m 8.5551,0 0.3667,0 -0.041,0.1629 -0.4074,-0.1222 c 0.02,-0.019 0.064,-0.021 0.082,-0.041 z m 1.0185,0 0.4074,0 0,0.2037 c -0.1951,0 -0.3609,0.036 -0.4889,0.082 l 0.082,-0.2852 z m -19.4324,0.082 0.1629,0.041 -0.082,0.3259 -0.082,-0.3667 z m 13.8104,0.1222 0,0.5296 -0.041,0.041 -0.041,0.163 -0.2444,0 0.2037,-0.6926 0.1222,-0.041 z m 0.8555,0 0.937,0 -0.041,0.1629 0,0.1223 -0.2444,0 -0.2852,-0.041 -0.082,0.041 -0.2851,0 c 0,0.015 0,0.026 0,0.041 l -0.082,-0.041 0.082,-0.2852 z m 3.0555,0.1629 -0.082,0.3667 -0.3667,0 -0.1222,-0.1222 0.041,-0.163 c 0.2044,-0.021 0.3677,-0.034 0.5296,-0.082 z m 9.044,0 c 0.6945,0.3642 0.9331,1.0148 0.6925,1.9148 l -0.4888,-0.1222 -0.163,0.5296 0.3667,0.5703 -0.8555,1.2629 0.2037,0.041 -0.2445,0.1222 -0.082,0.2852 0.163,1.3036 -0.5704,0.2445 0.2037,0.041 -0.3666,0.5703 c -0.1387,0.963 0.161,1.5036 0.937,1.7111 l -0.2445,0.1629 -0.082,0.2444 0.082,0.6111 -1.3444,-2.0369 -0.2036,-0.041 0.1629,-0.6111 0.4481,0.082 0.041,-0.163 c -0.2956,-0.079 -0.5344,-0.5172 -0.6518,-1.2629 l 0.163,-0.611 0.2037,0.041 -0.082,0.4481 0.6925,0.2037 0.082,-0.4482 -0.4074,-0.1222 0.2445,-0.8147 0.4074,0.1222 0.2036,-0.8148 -0.4073,-0.1222 0.082,-0.3667 0.4481,0.1222 0.082,-0.3666 -0.4074,-0.1222 0.163,-0.6111 c 0.3695,0.099 0.5983,-0.1382 0.8147,-0.6518 0.1069,-0.4 -0.01,-0.6148 -0.4481,-0.7333 l 0.163,-0.6111 z m -24.5248,0.041 0.4889,0.1223 -0.4074,0.5703 -0.2445,-0.082 0.163,-0.6111 z m 23.3026,0 c 0.1377,0.073 0.2979,0.1151 0.4481,0.163 l -0.1222,0.4074 -0.3259,-0.5296 0,-0.041 z m -16.7029,0.082 0.6518,0 0.2037,0.2445 0.163,0 -0.163,0.6111 -0.6111,0 -0.2444,-0.8556 z m 5.7034,0.2037 0.082,0 c -0.036,0.1613 -0.082,0.3166 -0.1222,0.4482 l -0.082,0 0.1222,-0.4482 z m 4.8887,0.041 0,0.163 -0.082,0.2444 -0.2037,0 0.041,-0.2037 0.2444,-0.2037 z m -7.7404,0.082 0.2037,0.041 -0.041,0.082 -0.2037,0 0.041,-0.1222 z m -8.6366,0.082 0.6518,0.3667 -0.2852,1.0185 -0.2037,-0.082 -0.2444,-0.937 0.082,-0.3667 z m 20.899,0 0.4889,0.1223 0.3666,1.1406 -0.1222,0.4482 -0.2037,-0.041 0.1222,-0.4482 -0.4481,-0.1222 -0.041,0.2037 0.2444,0.7333 -0.2444,0.1222 c -0.1069,0.4001 0.086,0.6963 0.5296,0.8148 l -0.5703,0.2444 0.082,-0.3666 -0.4074,-0.1222 -0.3259,2.9332 -0.082,0.1629 -0.5704,-0.3259 0.082,-0.2037 0.4074,-0.774 c 0.069,-0.5531 -0.1193,-0.879 -0.4889,-0.9777 l 0.1223,-0.3667 0.4888,0.1222 0.041,-0.2444 -0.2037,-0.2852 0.3259,-0.082 -0.041,-1.0999 0.4482,-1.5888 z m -18.9843,0.041 0.4074,0.1222 -0.041,0.2037 -0.4074,-0.1222 0.041,-0.2037 z m 11.2032,0 0.1629,0 c 0.066,0.058 0.1536,0.1174 0.2445,0.163 l -0.041,0.1222 -0.082,0.2852 -0.2852,-0.5296 0,-0.041 z m -19.9621,0.041 0.3259,0.4889 -0.2444,-0.2444 -0.2037,-0.041 0.1222,-0.2037 z m 1.1,0.082 0.1629,0.041 0,0.163 -0.1629,0.6518 -0.2037,-0.082 0.2037,-0.774 z m 31.0837,0 c 0.044,0.1029 0.088,0.1838 0.163,0.2037 l 0.2037,0.041 0,0.4482 -1.711,6.3552 -0.4889,-0.1222 0.2852,-0.1222 0.041,-0.2037 0.6925,-3.4628 0.2852,-0.1222 0.041,-1.0592 0.4889,-1.9555 z m 1.0185,0 0.2037,0.041 -0.2037,0.6519 -0.2037,-0.082 0.163,-0.5704 0.041,-0.041 z m -15.6437,0.1223 0.041,0.4481 -0.1222,0.041 -0.082,-0.3259 0.1629,-0.163 z m 12.792,0 0.2037,0.041 -0.1222,0.3666 -0.2037,-0.041 0.1222,-0.3666 z m -9.5736,0.041 c 0.1346,0.034 0.3236,0.061 0.4888,0.082 l -0.1222,0.4888 -0.4481,-0.1629 0.082,-0.4074 z m -20.9806,0.3259 0.4889,0.1222 -0.082,0.2037 -0.163,1.3851 c 0.01,-0.1844 -0.023,-0.3523 -0.082,-0.5703 l -0.2036,-0.8148 0.041,-0.3259 z m 3.2999,0.041 0.4481,0.082 c -0.1069,0.3999 -0.01,0.695 0.2852,0.774 l -0.041,0.2037 c -0.4434,-0.1185 -0.7027,-0.1037 -0.774,0.163 l -0.2037,-0.041 -0.082,-0.6111 0.3666,-0.5704 z m 16.8251,0.041 0.2852,0 -0.082,0.2444 -0.2037,0 0,-0.2444 z m -13.7697,0.1629 0.2037,0.041 -0.041,1.0592 -0.4074,-0.1222 0.2444,-0.9777 z m 20.125,0.2037 0.4481,0.163 -0.041,0.1629 -0.4888,-0.1222 0.082,-0.2037 z m 3.0962,0 0.2037,0.041 -0.4482,0.937 -0.2037,-0.041 0.2037,-0.8148 0.2445,-0.1222 z m -19.514,0.1222 0.937,0.041 -0.1222,0.5704 -0.9777,0 0.1629,-0.6111 z m 8.5959,0.163 0.2037,0 0,0.041 -0.2037,-0.041 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3629,0 0.3259,0 0,0.2037 -0.3667,0 0,-0.1222 0.041,-0.082 z m -19.5139,0.041 0.3259,0.5296 -0.2852,0.1222 -0.2037,-0.041 c 0.062,-0.2333 0.1327,-0.4344 0.163,-0.6111 z m -4.3184,0.1629 0.2037,0.041 -0.1222,0.3667 -0.2037,-0.041 0.1222,-0.3667 z m 32.306,0 0.2037,0.041 c -0.107,0.4 -0.01,0.6951 0.2851,0.7741 l -1.4258,3.5035 0.2037,0.2445 -0.041,0.2036 -0.5296,0.8963 -0.2037,-0.041 0.1629,-1.4259 0.2444,-0.1222 0.1223,-0.4481 0.6925,-3.4221 0.2852,-0.2037 z m -35.3614,0.1223 0.1222,0.8555 0.2037,0.1222 c -0.012,0.096 -0.014,0.1835 -0.041,0.2852 l 0,0.082 -0.041,-0.082 -0.2037,0.082 c 0.022,0.084 0.035,0.1372 0.041,0.2037 l -0.3666,0.1629 c -0.01,-0.043 -0.032,-0.08 -0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 0.163,-1.3444 z m 9.4514,0.041 0.6111,0.1629 -0.041,0.2037 -0.6925,0.082 0.1222,-0.4481 z m -4.8071,0.2444 0.2036,0.082 -0.1629,0.5296 -0.2037,-0.041 0.163,-0.5704 z m 28.9653,0 0.2037,0.041 -0.2852,1.0185 -0.2037,-0.082 0.2852,-0.9778 z m -20.4917,0.1222 0.3667,0.5296 -0.163,0.6111 -0.2037,-0.3259 -0.4074,-0.1222 c -0.1069,0.4 -0.412,0.5666 -0.8555,0.4481 0.107,-0.4 -0.01,-0.6555 -0.4481,-0.774 l 0.041,-0.2037 0.4074,0.1222 0.1629,0.2444 c 0.08,-0.3 0.4464,-0.4543 1.1,-0.5296 z m 10.8366,0.2037 0.1222,0 0,0.1222 -0.1222,-0.1222 z m 13.1179,0 0.8962,0.2444 -0.4481,1.7518 c -0.2955,-0.079 -0.3768,-0.5444 -0.1629,-1.3444 l -0.4482,-0.082 0.163,-0.5703 z m -6.1516,0.041 0.2852,0.5296 -0.041,0.2037 -0.2852,-0.5703 0.041,-0.163 z m -28.5579,0.082 -0.2037,1.6296 -0.8148,0.2444 0.2444,-0.8963 c 0.4491,-0.2229 0.7309,-0.5468 0.7741,-0.9777 z m 0.6925,0 0.2445,0.082 -0.082,0.3666 -0.2852,-0.082 0.1222,-0.3666 z m 21.8768,0.041 0.163,0.041 0,0.2444 -0.4074,0 0.2444,-0.2851 z m -9.5329,0.041 0.2037,0 0.163,0.2444 -0.2852,0 -0.082,0 0,-0.041 0,-0.2037 z m -6.9663,0.2444 0.4888,0.1222 -0.082,0.2445 -0.5296,0.937 -0.1629,-0.2445 -0.2037,-0.082 -0.5296,0.2852 0.041,0.6518 c -0.2956,-0.079 -0.5041,0.048 -0.6111,0.4482 l -0.163,-0.2445 -0.2037,-0.041 -0.2444,0.1222 0.2037,-1.6295 0.6111,0.1629 0.1222,-0.4073 c 0.739,0.1975 1.156,0.074 1.2629,-0.326 z m 2.8517,0.1222 0.2037,0.082 -0.082,0.3667 -0.2444,-0.041 0.1222,-0.4074 z m -7.8626,0.041 0.2037,0.082 -0.082,0.3667 -0.2445,-0.041 0.1223,-0.4074 z m 6.6404,0.041 0.2037,0.082 -0.082,0.4074 -0.2444,-0.041 0.1222,-0.4481 z m -9.2884,0.1223 0.2037,0.082 -0.2445,0.082 0.041,-0.163 z m -0.041,0.2851 0.1629,0.1222 0,0.041 -0.2037,-0.041 0.041,-0.1222 z m 15.7252,0.082 c 0,0.2066 -0.13,0.3083 -0.326,0.3667 l -0.5296,0.041 0,-0.163 0,-0.041 0.8556,-0.2037 z m 3.2591,0 c 0.013,0 0.029,-0.01 0.041,0 0.089,0.046 0.1748,0.1109 0.2037,0.2037 l -0.2445,0 0,-0.2037 z m 1.548,0 0.4074,0 0.082,0.1222 -0.2037,0.8148 c -0.045,0 -0.075,0 -0.1222,0 l 0,0.2037 -0.2037,-0.2037 -0.4074,0 -0.1629,-0.2444 0.1222,-0.4481 c 0.1892,0.051 0.3495,-0.044 0.4889,-0.2445 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.059 0,0.082 -0.099,0.3379 -0.3273,0.5986 -0.6518,0.7333 l -0.1222,-0.041 0.4481,-0.774 z m 4.4405,0 -0.041,0.2037 -0.4888,0 0,-0.1222 c 0.2001,-0.028 0.3723,-0.051 0.5296,-0.082 z m 8.8811,0 0.2037,0.041 -0.082,0.3667 -0.2037,-0.041 0.082,-0.3667 z m -26.8469,0.082 0.4074,0.1222 -0.1222,0.4482 -0.4074,-0.1222 0.1222,-0.4482 z m 9.7366,0.1222 0.1629,0 -0.1629,0.5704 0,-0.5704 z m -11.9772,0.163 -0.082,0.3666 0.4074,0.1223 0.1222,-0.3667 -0.4482,-0.1222 z m 4.9701,0.041 0.6926,0.2037 -0.1223,0.3666 0.4482,0.1223 0.1629,-0.6111 0.3259,0.3666 c -0.3477,0.1723 -0.5886,0.4468 -0.7333,0.8148 -0.062,0.026 -0.088,0.046 -0.1222,0.082 l -0.2037,-0.041 c 0.1402,-0.4439 -0.02,-0.7271 -0.4074,-0.8148 l -0.2036,-0.041 c 0.071,-0.1146 0.1184,-0.2814 0.1629,-0.4481 z m 16.9066,0 0.4074,0.1222 -0.082,0.2444 -0.4074,-0.1222 0.082,-0.2444 z m -14.4215,0.2037 0.1222,0.041 c -0.043,2e-4 -0.081,0 -0.1222,0 l 0,-0.041 z m -13.729,0.2444 0.4481,0.082 -0.082,0.2037 -0.4074,-0.1222 0.041,-0.163 z m 20.1657,0 0.163,0.082 -0.2037,0.041 0.041,-0.1222 z m -10.4699,0.041 0.163,0.2445 0.2037,0.041 c 0.1185,0.032 0.2232,0.042 0.3259,0.041 -0.1474,0.093 -0.295,0.1253 -0.4889,0.082 l -0.2037,0.6518 c 0.3877,0.088 0.6346,0.2189 0.7741,0.4481 l -0.4889,0.2444 0.4074,0.082 0.082,-0.2851 c 0.1221,0.2248 0.1522,0.5025 0.041,0.8555 l 0.6518,0.1629 -0.3666,1.1 -0.6111,-0.1222 0,2.1184 -1.3444,1.1407 0.2037,0.3259 -1.7518,2.4036 0.4481,-0.1222 0.2445,0.082 -0.1222,0.4074 -0.2852,-0.041 -0.2852,-0.326 -0.2852,-0.041 -0.1222,0.4889 -0.2851,-0.082 2.485,-7.7811 0.2445,-0.041 -0.2852,0.9777 0.6518,0.1222 0.4074,-1.3036 -0.4481,-0.082 0.041,-0.1222 -0.2037,-0.082 -0.2852,0 0.041,-0.1222 0.2852,-0.041 0.082,-0.2037 -0.2445,-0.082 0.163,-0.5704 -0.2037,-0.2851 0.082,-0.2037 0.2852,-0.082 z m 6.6812,0.041 0.2037,0.041 -0.041,0.1222 -0.163,-0.1629 z m 7.8626,0 0.041,0.163 -0.2852,-0.082 0.2445,-0.082 z m -20.0435,0.1222 0.4481,0.7741 -0.3259,0.1629 -0.163,-0.041 0.041,-0.8962 z m -0.6926,0.041 0.2037,0.041 -0.1222,0.4482 -0.2037,-0.041 0.1222,-0.4482 z m 19.8806,0.163 -0.082,0.2444 -0.2037,-0.041 0,-0.082 0.2852,-0.1222 z m -1.3851,0.1222 0.082,0.1222 0,0.2852 -0.4482,-0.1222 0.163,0 0.2037,-0.2852 z m 3.8702,0.1222 0.2444,0.082 0,0.2852 0,0.6518 0,0.1222 -0.3259,0.1223 -0.4074,-0.082 0.2852,-1.1407 0.041,0 c 0.064,-0.01 0.1027,-0.032 0.1629,-0.041 z m -25.3804,0.1222 0.3667,0.4889 -0.4889,-0.1222 0.1222,-0.3667 z m 35.4021,0.041 0.2037,0.041 -0.1222,0.3667 -0.2037,-0.041 0.1222,-0.3667 z m -11.4476,0.1223 -0.041,0.2037 -0.774,0.082 -0.2037,-0.082 0,-0.041 1.0184,-0.163 z m 6.4367,0 -0.041,0.2037 0.4074,0.082 0.041,-0.163 -0.4074,-0.1222 z m -27.1728,0.2444 0,0.2037 -0.4074,0.2037 0.3259,0.3259 -0.1222,0.082 -0.2852,-0.082 0.082,-0.3259 -0.1222,-0.041 0,-0.041 0.5296,-0.3259 z m 3.1369,0 0.3667,0.082 -0.2445,0.6926 -0.3259,-0.082 0.2037,-0.6926 z m 8.3107,0 0.4074,0 0,0.041 -0.4074,0 0,-0.041 z m -13.6067,0.082 0.2037,0.041 -0.3667,1.3444 c -0.019,-0.2982 -0.091,-0.4868 -0.2444,-0.5704 l 0.041,-0.3259 0.3666,-0.4888 z m 10.3069,0.082 0.2444,0.082 -0.1222,0.4481 -0.2852,-0.041 0.163,-0.4888 z m 2.1184,0.041 0.2444,0.041 -0.082,0.2444 0.041,0.163 c -0.01,0.1969 0.032,0.3372 0.1223,0.4481 l 0,0.082 -0.163,0 -0.4074,0.4481 -0.2037,0 0.2445,-0.8555 0.1629,-0.2852 -0.041,-0.041 0.082,-0.2444 z m 1.3851,0.041 0.2445,0.2852 0,0.2851 c -0.1626,-0.1174 -0.281,-0.2534 -0.4074,-0.3666 l 0.1629,-0.2037 z m -7.6996,0.2037 0.2852,0.041 -0.163,0.4889 -0.2444,-0.082 0.1222,-0.4482 z m 13.9734,0.082 0.2037,0.041 0.3259,0.4889 -0.082,0.2444 -0.2037,-0.082 -0.082,-0.082 0,-0.163 -0.2037,0 c 0.013,-0.1553 0.042,-0.3218 0.041,-0.4481 z m -16.54,0.082 -0.1222,0.3666 -0.041,1.4259 -0.6518,0.8148 0.3666,0.082 -0.4481,0.1222 -0.082,0.2444 0.2852,0.3259 -0.041,0.2037 -0.5703,0.6111 0.082,0.9777 -0.8556,1.4259 0.2852,0.2852 -0.6111,-0.1222 0.4482,-1.5481 -1.5074,0.8555 0.2852,0.2852 -1.0185,0.4481 c -0.1111,-0.2193 -0.218,-0.4175 -0.3259,-0.6518 0,-0.011 0.01,-0.03 0,-0.041 l 0.1222,-0.7741 0.2852,0.082 0.6926,0.4482 c -0.2006,-0.6795 -0.5593,-1.0906 -1.1407,-1.2222 l 0.2037,-0.6926 c 0.015,-0.046 0.027,-0.077 0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 -0.082,-0.041 c 0.068,-0.2257 0.1079,-0.4497 0.1629,-0.6518 l 0.163,-0.1222 0.041,-0.2037 -0.041,-0.1222 c 0.059,-0.2398 0.045,-0.4104 0.082,-0.6111 0.2165,-0.041 0.45,-0.155 0.6925,-0.3666 -0.087,0.5222 -0.036,0.8327 0.2445,0.8962 l -0.3259,0.2037 -0.041,0.082 c -0.1805,0.1124 -0.3752,0.2435 -0.5296,0.3667 l -0.041,0.2444 0.4074,0.1222 -0.326,1.6703 0.5704,0.1222 0.1222,-0.4074 0.4481,-0.2037 -0.2851,-0.2851 -0.2852,-0.082 0.082,-0.2037 1.5073,0.1222 0.2037,-0.6926 -0.5296,-0.1222 0.1222,-0.4074 0.5704,0.1222 0.3666,-1.1406 0.2445,-0.163 -0.2037,-0.041 0.4888,-1.5481 0.3259,-0.1222 z m -6.1108,0.041 0.2444,0.082 -0.1222,0.3666 -0.2037,-0.041 0.082,-0.4074 z m 24.0359,0 0.163,0.2444 0.2037,0.082 0.3259,-0.1222 -0.041,0.163 c -0.3962,0.037 -0.7256,0.1178 -0.9777,0.2036 l -0.041,0 -0.163,-0.041 0.2852,-0.4481 0.2444,-0.082 z m -12.0179,0.082 0.6111,0.1222 -0.1223,0.4074 -0.4888,-0.5296 z m 3.9516,0.1222 0.326,0.082 -0.041,0.1629 -0.2852,0.082 0,-0.041 0,-0.2851 z m 4.8072,0.041 0.2037,0.041 0,0.041 -0.2037,0 c 0,-0.03 0,-0.052 0,-0.082 z m -13.8104,0.082 0.2851,0.082 -0.082,0.6111 -0.3666,0.1222 0.041,-0.4074 0.1222,-0.4074 z m 29.5764,0.041 0.2037,0.041 -0.1223,0.3666 -0.2036,-0.041 0.1222,-0.3666 z m -7.4552,0.3259 0.4073,0.1222 -0.082,0.4481 -0.4073,-0.2444 0.082,-0.3259 z m -26.3581,0.041 0.4074,0.1222 -0.082,0.2037 -0.4074,-0.1222 0.082,-0.2037 z m 1.6703,0 0.2037,0.2444 -0.041,0.2037 -0.3259,-0.3259 0.1629,-0.1222 z m 18.1695,0.041 c 0.1619,0.088 0.2758,0.1839 0.4889,0.2852 -0.019,0.058 -0.041,0.1396 -0.041,0.2037 l -0.5296,0 c 0.031,-0.1732 0.06,-0.3361 0.082,-0.4889 z m -3.2591,0.2037 0.163,0 0,0.041 -0.163,-0.041 z m -12.1402,0.2037 -0.082,0.5703 -0.041,0.2445 -0.2851,-0.082 0.041,-0.6111 0.3666,-0.1222 z m -3.2998,0.082 0.2444,0.041 -0.1222,0.4889 -0.2852,-0.041 0.163,-0.4889 z m 10.7143,0.041 0.7333,0.1629 0,0.082 -0.082,0.2445 -0.082,0.1222 0,0.163 0,0.041 -0.1222,0.2851 -0.082,0 -0.2037,-0.2851 c 0.017,-0.3234 -0.065,-0.5992 -0.1629,-0.8148 z m 20.0028,0 c -0.1782,0.6667 0.096,1.3875 0.6926,2.1184 l 0.2444,-0.1222 0.163,0.2444 -0.041,0.163 c -0.2464,-0.066 -0.4958,0.012 -0.6926,0.1629 -0.042,-0.016 -0.074,-0.03 -0.1222,-0.041 l -0.3667,0.1223 c 0.1402,-0.4439 0.062,-0.7271 -0.3259,-0.8148 l -0.4074,0.1222 -0.041,0.082 -0.2851,-0.2037 c 0.2164,-0.5136 0.4452,-0.7099 0.8147,-0.6111 l 0.1223,-0.4074 -0.6111,-0.1629 0.8555,-0.6518 z m 2.4036,0.041 0.3259,0.4889 -0.1222,0.4481 -0.2852,-0.5704 0.082,-0.3666 z m -17.9658,0.082 0.2851,0.082 -0.1222,0.4074 -0.2444,-0.3259 0.082,-0.163 z m -14.2586,0.041 0.2851,0.041 -0.082,0.2037 c -0.113,0.033 -0.218,0.087 -0.3259,0.1222 l 0.1222,-0.3667 z m 15.7659,0 0.7333,0 -0.082,0.2037 -0.6926,0.082 c 0.022,-0.1067 0.02,-0.184 0.041,-0.2852 z m -3.9924,0.082 0.041,0 0,0.1222 -0.041,0 0,-0.1222 z m 19.6769,0 0.2037,0.041 -0.2037,0.8148 -0.2037,-0.041 0.2037,-0.8148 z m -28.4358,0.1629 0.5704,0.1223 -0.2445,0.6925 -0.3666,-0.6111 0.041,-0.2037 z m 2.1592,0.041 -0.082,1.1407 0.6111,0.163 0.082,-1.1814 -0.6111,-0.1223 z m 19.5546,0.1223 0.163,0.041 -0.1222,0.4481 -0.2037,-0.041 0,-0.041 0.041,0 0.1222,-0.4074 z m -13.4438,0.041 0.1222,0 0.2852,0.7333 -0.1222,0.1629 -0.163,0 -0.2037,-0.6111 c 0,-0.011 -0.01,-0.029 0,-0.041 l 0,-0.041 c 0.026,-0.066 0.056,-0.134 0.082,-0.2037 z m 6.3145,0 0.4074,0 -0.081,0.4888 -0.3259,0 0,-0.4888 z m 4.0332,0 0.2444,0.041 -0.041,0.1629 -0.2444,-0.082 0.041,-0.1222 z m -25.7062,0.082 0.082,0.041 -0.041,0.2037 -0.082,-0.041 0.041,-0.2037 z m 38.1723,0.082 -0.041,0.1629 0.041,0.041 0,-0.2037 z m -21.5509,0.041 0.082,0 0,0.3259 -0.2037,-0.041 0.1222,-0.2852 z m -10.918,0.2444 c 0.2732,-0.046 0.6795,-0.013 1.1814,0.041 l -0.1222,0.4074 c -0.3875,-0.088 -0.75,0.1822 -0.937,0.774 l -0.5703,-0.8962 c 0.053,-0.1665 0.1749,-0.2803 0.4481,-0.3259 z m 14.0957,0.041 0.3259,0 -0.1222,0.2037 -0.2037,0 0,-0.2037 z m 0.774,0 0.082,0 0,0.2037 -0.041,0 -0.041,-0.2037 z m 15.1549,0.041 0.4888,0.1222 -0.2852,1.0185 -0.3666,-0.4889 0.163,-0.6518 z m -17.9659,0.041 0.2444,0.041 -0.2851,0.082 0.041,-0.1222 z m 10.8366,0 0.2036,0.041 -0.041,0.1222 -0.2444,0.1222 0,0.082 -0.041,0 0.041,-0.082 0.082,-0.2851 z m 9.5736,0.1222 -0.1222,0.082 -0.082,0.163 0.2037,0.2444 0,-0.4889 z m -13.8105,0.082 0.4074,0.082 -0.3259,0.4481 -0.3259,-0.082 -0.041,-0.1629 0.2851,-0.2852 z m -10.4291,0.041 0.1222,0.082 0,0.2444 -0.163,-0.041 c 0.032,-0.1024 0.017,-0.1885 0.041,-0.2851 z m 13.8512,0.041 0.6111,0.5296 0.041,0.041 -0.1223,0.6111 c -0.1737,-0.1302 -0.3351,-0.2839 -0.4888,-0.3666 -0.043,-0.2456 -0.071,-0.5152 -0.041,-0.8148 z m -8.5552,0.041 0.3667,0 0,0.2444 -0.3667,0 0,-0.2444 z m -16.4585,0.082 0.163,0.041 -0.1223,0.4074 -0.2851,-0.082 0.082,-0.2852 0.1629,-0.082 z m 4.1961,0.2037 0.5296,0.1222 0,1.1814 c -0.3391,-0.077 -0.5209,-0.509 -0.5296,-1.3036 z m 1.7925,0.163 -0.2444,0.6925 0.6518,0.163 0.2037,-0.6926 -0.6111,-0.1629 z m 3.0147,0.2444 c 0.5369,0.1214 0.591,1.2374 0.163,3.2998 -0.1491,0.2487 -0.3559,0.7021 -0.5704,1.1407 l -0.5703,-0.1222 -0.5296,-1.3444 c 0.3877,0.088 0.5931,-0.086 0.7333,-0.5296 l 0.082,-1.1814 0.2037,0.2444 0.6518,0.163 -0.163,-1.6703 z m 9.6959,0.041 0.1222,0.1222 -0.2445,0.2852 -0.1222,0.4481 -0.1222,0 -0.2852,-0.082 -0.041,-0.4481 0.082,-0.1223 0.2445,0.2445 0.3666,-0.4481 z m 5.3775,0 c 0,0.306 -0.1563,0.4481 -0.5704,0.4481 l 0,0.2037 0.4074,0 -0.3666,0.6518 -0.4074,-0.082 0.082,-0.082 0,-0.2852 -0.041,-0.041 0.4074,-0.774 c 0.1595,-0.01 0.3126,-0.041 0.4888,-0.041 z m -13.4438,0.041 0.2851,0.041 -0.4481,1.2629 -0.082,0.3259 c 0.198,0.081 0.3666,0.1667 0.5296,0.2444 l -0.2444,0.4482 -0.1223,-0.2037 -0.3259,0.1629 -0.2444,-0.041 c 0.067,-0.1419 0.1305,-0.2725 0.2037,-0.4889 l -0.2037,0 0.163,-0.4888 0.041,0.041 0.2851,0 0.163,-1.3037 z m -8.1886,0.082 0.5704,0.1222 -0.163,0.4074 -0.4074,-0.5296 z m 13.1587,0.082 0.082,0.082 -0.163,-0.041 0.082,-0.041 z m 4.3591,0 0.3259,0 c -0.046,0.2543 -0.075,0.4486 -0.082,0.6518 l -0.6111,0 0.082,-0.5703 0.2852,-0.082 z m -3.1369,0.082 0.082,0.4889 c -0.2043,-0.1068 -0.3489,-0.235 -0.4482,-0.4074 l 0.3667,-0.082 z m -1.7518,0.082 -0.1222,0.4888 -0.163,0 0,-0.4073 0.2852,-0.082 z m 18.0066,0.041 0.2037,0.041 -0.163,0.6518 -0.2037,-0.082 0.163,-0.6111 z m 0.6518,0 0.4889,0.1222 -0.4074,1.4666 -0.163,-0.041 c -0.083,-0.019 -0.171,0.021 -0.2444,0.041 l 0,-0.3667 0.3259,-1.2221 z m -21.225,0.041 0.1223,0 0,0.041 -0.1223,-0.041 z m 3.5036,0.1222 c 0.081,0.036 0.1343,0.08 0.2037,0.1222 l -0.2445,0.041 0.041,-0.1629 z m -12.1809,0.082 0.2851,0.041 -0.2851,0.8962 -0.2852,-0.041 0.2852,-0.8962 z m 1.7925,0.163 -0.1222,0.4481 0.611,0.1222 -0.4888,-0.5703 z m 19.5954,0 c 0.045,0.041 0.1551,0.1194 0.2037,0.1629 l -0.082,0.5296 -0.8963,2.8517 -0.5703,0.8148 0.3666,1.0592 -0.6518,-0.1629 -0.3667,2.0776 -0.5296,-0.1222 0,-0.9777 0.3259,-0.1222 0.082,-0.2037 0.163,-1.4666 0.4889,-0.5704 -0.1222,-0.1222 c 0.028,-0.055 0.041,-0.1272 0.041,-0.2037 l 0.2036,-0.1222 -0.4073,-0.5703 0.3666,-0.1222 0.2444,0.041 0.082,-1.1407 0.3667,-1.1407 0.5296,0.1222 0.163,-0.6111 z m 1.2629,0.082 0.1222,0.1629 -0.163,-0.041 0.041,-0.1222 z m 1.8332,0.1222 0.082,1.6295 0.4889,0.1222 0.2037,-0.2036 -0.2445,0.8147 c -0.1146,-0.1897 -0.1569,-0.2813 -0.2851,-0.4888 l -0.2037,0.082 c -0.022,-0.018 -0.055,-0.024 -0.082,-0.041 l -0.4074,-0.6519 0.4481,-1.2629 z m 0.5296,0 0.3667,0.082 0,0.082 -0.2445,0.3666 -0.2444,-0.082 0.1222,-0.4481 z m 3.7887,0.1629 0.2037,0.041 -0.1222,0.4482 -0.2037,-0.082 0.1222,-0.4074 z m 1.7926,0.2445 0.2036,0.082 0,1.0592 0,0.041 c -0.05,0.036 -0.1167,0.064 -0.1629,0.1222 l -0.3667,-0.082 0.326,-1.2222 z m -32.1023,0.041 0.2445,0.082 -0.9778,3.0961 -0.2444,-0.041 0.9777,-3.1369 z m 29.5764,0.1629 0.082,0.041 -0.1629,0.6111 -0.2037,-0.041 0.1222,-0.4481 0.163,-0.163 z m -14.0141,0.163 0.2037,0 0,0.4888 -0.2037,0 0,-0.4888 z m 11.692,0.082 0.2037,0.082 0.041,0.2444 -0.2852,-0.2037 0.041,-0.1222 z m -24.2803,0.082 -0.163,0.4481 0.6111,0.163 0.1629,-0.4889 -0.611,-0.1222 z m 27.132,0.041 0.2037,0.041 0.041,0.6925 -0.4073,-0.1222 0.1629,-0.6111 z m -29.0468,0.041 0.2852,0.041 -0.2037,0.6518 -0.2444,-0.082 0.1629,-0.6111 z m 31.5727,0.2037 0.4073,0.1222 -0.082,1.0592 -0.082,0.3259 -0.2444,-0.082 0.082,-1.1407 c -0.055,-0.013 -0.1121,-0.01 -0.163,0 l 0.082,-0.2852 z m -19.5547,0.2444 0.041,0 0,0.4481 -0.2037,0 0.163,-0.4481 z m -5.5405,0.041 0.6926,0.163 -0.5704,1.1814 -0.3259,0.4481 -0.082,0 0.2037,-0.6111 0,-1.0592 c 0.035,-0.028 0.048,-0.074 0.082,-0.1222 z m 5.9479,0.2037 0.4074,0 0,0.4889 0.2444,0 0.041,-0.041 -0.041,0.2851 -0.3259,0.082 -0.041,-0.1222 0.041,-0.2037 -0.3666,-0.082 -0.163,0.041 c 0.1408,-0.1215 0.2037,-0.2569 0.2037,-0.4481 z m 13.8919,0 0.2445,0.041 0.1222,0.7333 -0.082,0.2444 -0.4074,-0.6111 0.1222,-0.4073 z m -11.8142,0.2037 0.082,0 -0.2037,0.8962 -0.082,0.041 -0.2037,-0.2036 c -0.1035,0 -0.1645,0.01 -0.2444,0.041 l 0.2036,-0.6519 0.4482,-0.1222 z m 0.774,0 0.4889,0 0.1629,0.041 -0.2444,0.774 -0.5296,0.3259 -0.2444,0 0.082,-0.2037 0.1629,0 0,-0.2036 0.2852,-0.082 -0.2852,-0.2852 0.1222,-0.3667 z m 2.8517,0 0.6519,0 -0.082,0.2037 -0.6111,-0.1222 0.041,-0.082 z m -22.5286,0.1629 0.6519,0.163 -0.4889,0.6111 -0.3667,-0.082 0.2037,-0.6926 z m 14.9512,0.1223 0.2037,0 0.3666,0.082 -0.4073,0.2037 -0.041,0.2037 0.041,0.1222 -0.163,0.041 -0.2037,0 0.2037,-0.6519 z m 20.0028,0.041 0.2037,0.041 -0.041,0.2037 -0.2037,-0.041 0.041,-0.2037 z m -18.8214,0.1629 0.2445,0.041 -0.041,0.2037 -0.2852,0.041 0.082,-0.2852 z m 6.1923,0 0.2852,0.041 -0.041,0.082 -0.2444,-0.082 0,-0.041 z m 6.1516,0.2037 0.6518,0.1222 0.2852,0.8555 c 0.027,0.314 0.036,0.6162 -0.041,0.937 l -0.2037,-0.082 0.163,-0.4481 -0.5704,-0.1222 -0.041,0.2037 0.3259,0.8148 -0.3259,0.1222 c -0.1051,0.3329 -0.023,0.6072 0.2852,0.774 -0.04,0.1099 -0.074,0.22 -0.1222,0.3259 l -0.2445,0.082 0.1223,-0.4074 -0.5704,-0.1222 -0.2444,1.7518 c -0.1708,0.1743 -0.368,0.3712 -0.5704,0.5296 l 0.2037,-0.2852 c 0.09,-0.6137 -0.1265,-0.9903 -0.6111,-1.0999 l 0.1223,-0.4074 0.611,0.1222 0.1223,-0.2852 -0.3259,-0.2851 0.4481,-0.1223 0,-1.1814 0.5296,-1.7925 z m -27.3765,0.041 0.8148,0.4074 -0.3259,1.0999 -0.2852,-0.082 -0.3259,-1.0184 0.1222,-0.4074 z m 2.4851,0.041 0.5703,0.1222 -0.082,0.2037 -0.5296,-0.1222 0.041,-0.2037 z m 32.0207,0.1222 0.2852,0.041 -0.2037,0.6926 -0.2852,-0.041 0.2037,-0.6926 z m -23.3026,0.041 0.2037,0 0,0.2037 -0.2445,-0.041 0.041,-0.1629 z m 10.144,0 0,0.082 -0.041,0 0.041,-0.082 z m 11.8142,0.2852 -0.3666,1.3444 -0.041,0 0.4074,-1.3444 z m -11.4883,0.082 0.2444,0.082 -0.082,0.2037 -0.2852,0.1222 0.1222,-0.4074 z m 10.3069,0 0.041,0 c 0.027,0.1987 0.01,0.4181 -0.041,0.6518 l -0.163,-0.041 0.163,-0.6111 z m 1.5888,0 0.1222,0.041 0,0.2037 -0.1629,-0.041 0.041,-0.2037 z m -16.3363,0.1222 0.163,0 -0.4481,0.4481 -0.2037,0 0.4888,-0.4481 z m 3.1369,0 0.2852,0 -0.082,0.4481 -0.3259,0 0.1222,-0.4481 z m -22.4471,0.2037 0.082,0.1222 -0.041,0.082 c -0.011,-0.069 -0.041,-0.1361 -0.041,-0.2037 z m 20.1657,0 0.5297,0 0.082,0.082 -0.082,0.3259 -0.6111,-0.1222 0.082,-0.2852 z m -18.9028,0.082 0.2037,0.041 0,0.2444 c -0.066,-0.097 -0.1383,-0.184 -0.2037,-0.2851 z m 10.7143,0.2037 -0.082,0.2852 -0.041,0.082 -0.041,0.1222 -0.1629,-0.2037 0.3259,-0.2852 z m 19.7176,0 0.2037,0.041 -0.082,0.163 c -0.028,-0.054 -0.092,-0.1467 -0.1222,-0.2037 z m -4.1553,0.041 0.6111,0.1222 -0.081,0.2444 -0.6111,-0.1629 0.082,-0.2037 z m 7.9441,0 0.1629,0.041 -0.2852,0.9777 -0.1222,-0.041 0.2445,-0.9777 z m -29.4542,0.082 1.2221,0.082 -0.2037,0.6111 -1.2629,0 0.2445,-0.6926 z m 10.918,0.041 0.6518,0 0,0.2037 -0.1222,0 -0.6111,-0.163 c 0.029,-0.014 0.051,-0.027 0.082,-0.041 z m 14.2993,0.082 0.2852,0.4074 -0.2852,0.4481 -0.2444,-0.041 0.2444,-0.8148 z m 1.1407,0.3259 0.1222,0.6111 -0.2852,-0.082 0.163,-0.5296 z m 4.1554,0.041 0.1222,0 c -0.064,0.204 -0.057,0.3921 0,0.5296 l -0.041,0 -0.1222,0.4074 0.041,0.8963 -0.4074,0.4888 -0.2037,-0.041 0.3259,-1.1814 -0.4481,-0.1222 0.2444,-0.8148 0.4074,0.1222 0.081,-0.2852 z m -17.2326,0.041 0.3667,0 0,0.2852 -0.2445,0.082 -0.1222,-0.041 0,-0.3259 z m 0.7741,0 0.4074,0 -0.163,0.5703 -0.2444,-0.041 -0.082,-0.082 0.082,0 0,-0.4481 z m 2.0369,0 0.4074,0 -0.1222,0.6926 c -0.146,0.1526 -0.3488,0.2496 -0.5704,0.3259 l -0.611,-0.4482 c 0.097,0.029 0.2025,0.064 0.3259,0.082 0.414,0 0.5703,-0.1928 0.5703,-0.6518 z m -22.4471,0.041 c 0.01,0.018 0.071,0.022 0.082,0.041 l -0.082,0 0,-0.041 z m 2.7702,0.041 0.8148,0.2037 -0.082,0.2037 -0.8148,0.082 c -0.02,-0.022 -0.021,-0.059 -0.041,-0.082 l 0.1223,-0.4074 z m 21.4287,0 0.2852,0.163 -0.082,0.2037 -0.2852,-0.041 0.082,-0.326 z m -2.3221,0.082 0.2851,0.082 -0.2851,0 0,-0.082 z m -14.2994,0.3667 0.4889,0.5296 -0.2037,0.6518 -0.041,0 -0.2444,-0.3259 -0.5296,-0.1222 c -0.048,0.151 -0.1392,0.2794 -0.2445,0.3666 l -0.8555,-0.2444 c -0.047,-0.2318 -0.2221,-0.4009 -0.6111,-0.4889 l 0.041,-0.2037 0.5704,0.1222 0.2037,0.2445 c 0.1052,-0.3329 0.5689,-0.4461 1.4258,-0.5296 z m 3.1777,0.3259 0.3666,0.4481 -0.6518,-0.1222 0.2852,-0.3259 z m 21.673,0 0.1222,0.2037 c -0.02,0.075 -0.087,0.1636 -0.1222,0.2444 l -0.1222,-0.041 0.1222,-0.4074 z m -1.3443,0.1222 0.2036,0.3666 -0.041,0.2037 -0.2444,-0.3666 c 0.023,-0.07 0.061,-0.132 0.082,-0.2037 z m -25.91,0.4074 0.2445,0.041 -0.1223,0.4074 -0.2444,-0.041 0.1222,-0.4074 z m -1.5073,0.082 0.2037,0.041 -0.041,0.1222 c -0.061,-0.042 -0.1022,-0.1177 -0.163,-0.163 z m -3.9109,0.082 c 0.1983,0.045 0.3656,0.1069 0.5296,0.1222 l 0.4888,0.6111 0,-0.4889 -0.1222,-0.1222 c 0.1736,-0.011 0.3316,-0.066 0.4481,-0.1222 0.1559,0.2001 0.3052,0.427 0.4889,0.6518 l -0.3259,0.4481 -0.1222,-0.1222 -0.082,-0.1629 -0.2852,-0.041 -0.6518,0.2851 0.041,0.6111 c -0.1697,-0.1506 -0.3284,-0.3246 -0.4889,-0.4889 l 0.082,-0.2036 -0.3666,-0.082 c -0.1552,-0.1722 -0.3026,-0.3448 -0.4482,-0.5297 l 0.6519,0.1223 0.1629,-0.4889 z m 11.7328,0.2444 0.4481,0 0,0.4889 -0.4481,0 0,-0.4889 z m 11.692,0 0.163,0 0,0.1222 -0.163,-0.1222 z m -4.4405,0.041 0.1629,0.2852 -0.041,0.1629 -0.9777,0 -0.2852,0 0,-0.041 c 0.097,0.022 0.1955,0.061 0.2852,0.041 0.1794,-0.041 0.3596,-0.1963 0.4889,-0.4073 l 0.3666,-0.041 z m -0.7333,0.041 0,0.041 -0.5296,0 0.5296,-0.041 z m 2.1999,0.041 c 0.1,0.077 0.1569,0.2268 0.1629,0.3667 l -0.6925,0 0.1629,-0.2852 0.3667,-0.082 z m 17.1103,0.041 0.163,0.041 -0.041,0.163 -0.163,-0.082 0.041,-0.1222 z m -21.1435,0.041 0.1222,0 c 0.1262,0.063 0.2198,0.1547 0.2445,0.2852 l -0.3667,0 0,-0.2852 z m 11.6921,0.4481 0.5296,0.1223 -0.082,0.2444 -0.5296,-0.1222 0.082,-0.2445 z m -13.0365,0.082 0.163,0.1223 -0.081,0.2037 -0.082,-0.041 0,-0.2852 z m -4.1146,0.082 0.2445,0.041 0.1222,0.082 0.1629,0 -0.082,0.2445 -0.3666,0.2037 -0.1222,0.041 0,-0.082 0.1222,0.041 0.041,-0.2037 -0.1222,-0.2852 0,-0.082 z m 25.4211,0.041 0.1222,0.4482 -0.1222,0.2851 0,-0.7333 z m -16.1734,0.163 -0.041,0.2037 -0.041,0.4889 -0.937,-0.1223 -0.082,-0.081 0.7741,-0.3666 -0.3667,-0.082 0.6926,-0.041 z m -3.5035,0.041 -0.041,0.1222 -0.2852,-0.082 0.3259,-0.041 z m 4.7664,0 0.4482,0.082 0,0.041 0,0.2037 c -0.1905,0 -0.299,0.048 -0.4074,0.1222 l -0.041,-0.4481 z m -2.5665,0.041 -0.1222,0.4481 -0.6111,-0.082 -0.2444,-0.2444 -0.082,0.2037 -0.2852,-0.041 0.082,-0.2444 0.082,0 0.2037,0.082 -0.041,-0.082 0.2852,0 0.7333,-0.041 z m 3.7887,0 0.1222,0.041 -0.1222,0 0,-0.041 z m -15.2771,0.041 0.163,0.2444 0.2852,0 0.1629,-0.1222 0.2852,0.2852 -0.3259,0.3666 c -0.7619,0.018 -1.1994,0.1248 -1.2629,0.326 l -0.082,0.2037 0.2851,0.082 0.5297,0 -0.2445,0.2851 c -0.3067,0 -0.7246,-0.1575 -1.1814,-0.3666 l 0.1222,-0.3259 -0.3666,-0.082 -0.3259,0.1629 c -0.3254,-0.1839 -0.6736,-0.4252 -1.0593,-0.6925 0.53,0.1198 0.9409,0.021 1.2222,-0.2852 0.452,0.097 0.8964,0.1629 1.3851,0.1629 l 0.082,0 0.163,0.041 0.041,-0.1629 0.1222,-0.1222 z m 1.9148,0.082 c 0.012,0.2782 0.175,0.4717 0.611,0.5704 l -0.041,0.1222 -0.1629,0.082 c -0.4016,-0.033 -0.7787,-0.07 -1.1,-0.082 0.1876,-0.1742 0.4654,-0.4656 0.6926,-0.6926 z m 25.1766,0 0.1222,0.041 -0.2444,1.0185 -0.1223,-0.041 0.2445,-1.0185 z m -10.9588,0.082 0.2445,0.082 -0.082,0.2852 -0.163,0 0,-0.3667 z m -20.8175,0.1222 c 0.2965,0.3446 0.6323,0.7123 0.9777,1.1 l -0.7333,-0.163 c -0.294,-0.2508 -0.5827,-0.5252 -0.8555,-0.8148 l 0.6111,-0.1222 z m -1.0592,0.2445 0.4481,0.7333 -0.3259,0 c -0.2314,-0.1354 -0.4738,-0.25 -0.6926,-0.4074 0.047,-0.067 0.091,-0.1469 0.1222,-0.2445 l 0.4482,-0.082 z m 23.2211,0.1629 0.5704,0.1222 0,1.1815 -0.4482,0.1222 -0.5296,-0.1222 0.4074,-1.3037 z m 11.2847,0.1222 -0.2037,0.4074 0.082,-0.3259 0.1222,-0.082 z m -16.2956,0.1222 0.2445,0 0,0.082 -0.2445,-0.041 0,-0.041 z m -19.6768,0.1223 c 0.029,0.01 0.054,0 0.081,0 l 0.082,0.082 -0.3667,0 0.2037,-0.082 z m 29.169,0.041 -0.041,0.3666 -0.2852,-0.082 c 0.1196,-0.087 0.2148,-0.1918 0.3259,-0.2852 z m 3.8294,0 0,0.082 -0.041,0 0.041,-0.082 z m -0.9777,0.041 0.2037,0.082 c -0.072,0.065 -0.1696,0.1008 -0.2444,0.1629 -0.192,0.1594 -0.3681,0.3385 -0.5704,0.4889 -0.078,-0.08 -0.1397,-0.2017 -0.2037,-0.3259 0.1573,-0.079 0.2844,-0.1615 0.4482,-0.2445 l 0.3259,0.082 0.041,-0.2037 c 0.01,0 -0.01,-0.038 0,-0.041 z m -23.5471,0.2037 -1.0999,0.5296 -0.163,0 0,-0.2037 c 0.1087,0 0.2967,-0.1111 0.5296,-0.2852 l 0.7333,-0.041 z m -4.9294,0.1222 c 0.1298,0.1453 0.2302,0.2561 0.3667,0.4074 l 0,0.2037 c -0.065,-0.042 -0.139,-0.078 -0.2037,-0.1223 l 0.041,-0.082 -0.163,-0.041 c -0.08,-0.056 -0.1659,-0.1046 -0.2444,-0.1629 l 0.163,-0.041 0.041,-0.163 z m 10.0218,0.082 0.3666,0.2444 -0.082,0.082 -0.2037,0 c 0,-0.1207 -0.037,-0.2282 -0.082,-0.3259 z m -2.0369,0.3259 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 6.6404,0 0.4074,0 0,0.082 -0.2445,0.1222 -0.1629,0 0,-0.2037 z m -3.0962,0.1222 0.4074,0.082 -0.4074,0 0,-0.082 z m 5.8257,0 0.2444,0.041 0.2445,0.2852 0.082,0 0,0.4074 c -0.3616,0.031 -0.758,0.061 -1.1407,0.082 l 0.3259,-0.4889 c 0.079,0 0.1557,0 0.2444,0 l 0,-0.3259 z m -6.4775,0.3259 0.6518,0 0,0.4889 -1.0184,0 0.3666,-0.4889 z m 8.1885,0.041 0.2852,0.082 -0.041,0.1222 c -0.1062,0.015 -0.2175,0.027 -0.3259,0.041 l 0.082,-0.2444 z m 9.4107,0.041 c -0.02,0.2876 -0.041,0.5616 0.041,0.774 l -0.163,0.082 -0.1222,0.4074 -0.3259,-0.4481 0.5704,-0.8148 z m -12.0587,0.041 c 0.01,0 0.03,0 0.041,0 l 0.041,0.041 -0.082,0.2444 -0.2444,-0.041 c 0.043,-0.093 0.1037,-0.1841 0.2444,-0.2444 z m -8.6366,0.163 0.6518,0 0,0.2037 -0.6518,0.2036 0,-0.4073 z m 1.0184,0 0.4889,0 0,0.2037 -0.4889,0 0,-0.2037 z m 3.5851,0 0.3666,0 -0.3666,0.4073 -0.4889,0 0.4889,-0.4073 z m -15.1549,0.2037 0.041,0 0,0.2036 -0.4481,0 0,-0.041 0.4074,-0.1629 z m 3.3406,0 0.6111,0 0,0.2036 -0.6111,0 0,-0.2036 z m 4.9701,0 0.6111,0 0,0.2036 -0.6111,0 0,-0.2036 z m 3.911,0 0.6518,0 0,0.2036 -0.6518,0 0,-0.2036 z m 18.0473,0.041 0.082,0 0,0.041 -0.082,-0.041 z m -2.7295,0.082 0.041,0 -0.163,0.4888 -0.5296,-0.1222 0.041,-0.082 c 0.1755,-0.071 0.415,-0.2008 0.6111,-0.2852 z m 5.296,0 c 0.072,0.09 0.1611,0.1484 0.2445,0.2444 l 0,0.041 -0.4074,-0.082 c -0.029,-0.024 -0.055,-0.058 -0.082,-0.082 l 0.2444,-0.1222 z m -32.6318,0.2851 0.6518,0 0,0.2445 -0.6518,0 0,-0.2445 z m 2.9332,0 0.3666,0 -0.3666,0.5296 0,-0.5296 z m -3.5443,0.2445 0.4481,0 0,0.2851 -0.4481,0 0,-0.2851 z m 9.3292,0 0.6111,0 1.0185,0.2851 1.2221,-0.2851 1.3037,0 0,0.4888 -5.1739,0 0,-0.2037 1.0185,-0.2851 z m 4.522,0 4.6035,0 -0.4481,0.4888 -0.2037,-0.2037 -1.0185,0.2037 -2.4851,0 -0.4481,-0.4888 z m 5.459,0 0.5704,0 0,0.2851 -0.5704,0 0,-0.2851 z m 15.3178,0 c -0.021,0.067 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.163 0.041,-0.041 z m -30.5134,0.2851 1.0185,0 0,0.2037 -1.0185,0 0,-0.2037 z"
+           id="path6114"
+           transform="matrix(0.61596339,0,0,0.61596335,-144.21421,403.21413)" />
+        <path
+           inkscape:connector-curvature="0"
+           inkscape:export-ydpi="90"
+           inkscape:export-xdpi="90"
+           inkscape:export-filename="Z:\private\général\illustrations\Charte graphique\OD\OD 5.0\aboutpage\png\aboutpage_OD5.0.png"
+           style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke:none;display:inline;filter:url(#filter3530);font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+           d="m -163.14137,992.23552 -2.5665,0.48886 0,1.34439 0.5703,-0.61109 0.6518,0 0,0.2037 -1.2221,0.40739 0,2.07768 0.2036,0 -0.2036,0.28517 0,0.85552 c -0.1243,0.11339 -0.1889,0.18925 -0.2852,0.28517 l 0,0.48886 c 0.096,-0.0462 0.1847,-0.0603 0.2852,-0.12221 l 0,0.7333 -0.2852,0.24443 0,8.55511 0.6111,2.2407 0.082,0.5703 c -0.028,0.081 -0.061,0.1678 -0.082,0.2445 0.066,0.049 0.1079,0.1081 0.1629,0.1629 l 0,0.163 -0.2444,-0.082 c -0.024,-0.01 -0.057,0 -0.081,0 0.036,-0.1267 0.062,-0.2569 0.1222,-0.3667 l -0.163,-0.6111 -0.4073,0.082 0,3.8702 c 0.014,0 0.027,0 0.041,0 l 0.2037,-0.041 0.041,-0.041 0,0.8556 c -0.09,0.2617 -0.1903,0.502 -0.2852,0.6925 l 0,0.9777 0.2444,0.082 -0.041,0.163 -0.2037,-0.082 0,11.1217 0.163,-1.1814 0.1222,0.041 0,1.0185 0.2037,0 0.4889,0.5296 c -0.1,0.082 -0.1897,0.1934 -0.2445,0.3666 l -0.2037,-0.2444 -0.082,0 -0.1629,-0.6518 0,0.5703 -0.041,0 -0.2445,0.1222 0,0.8963 0.2852,-0.1222 0,0.3259 -0.1222,-0.041 -0.1222,0.4074 0.2444,0.041 0.3667,-0.1223 0,0.2445 -0.3667,0 0,0.8555 -0.2852,0.082 0,0.2037 0.2852,-0.082 0,0.082 c 0.4141,0 0.5704,-0.1422 0.5704,-0.4482 l -0.2037,-0.2036 0.5296,0 -0.1223,0.081 -0.082,0.2444 0.1223,0 0,0.082 0.2037,0.2444 0,0.2852 -1.0185,0 0,0.2444 3.3813,0 c 0.2347,-0.6383 0.527,-0.9777 0.937,-0.9777 l 0,-0.4074 -0.5703,0 -0.2852,0.2037 -0.163,0 -0.2444,-0.3259 0.082,-0.2444 -0.2444,0.082 -0.6519,0 -0.3259,0.1222 0,-0.041 -0.3666,-0.082 -0.2852,0.2037 -0.4481,-0.2037 0,-0.2445 1.0592,0 0,-0.2036 -0.2037,-0.2037 0,-0.2445 0.4889,0.163 -0.082,0.2037 0.5703,0.1222 0.2852,-0.041 0.6111,0.2037 -0.082,0.2444 0.2851,0.082 0.5704,-0.041 0.6518,0.2445 0,0.2036 c -0.3219,1e-4 -0.8163,0.3866 -1.3851,1.1815 l 18.5769,0 c 0.082,-0.08 0.1634,-0.1631 0.2444,-0.2445 0.2121,0.076 0.5041,0.165 0.7333,0.2445 l 1.4666,0 -0.2444,-0.4074 1.1407,0.082 0.2037,0.082 -0.041,0.1629 -0.5296,0.082 0.7333,0 7.8626,0 0.041,-0.1629 c 0.061,0.031 0.1355,0.056 0.2037,0.082 l -0.041,0.082 1.3036,0 0.3667,-0.2445 -0.041,0.2445 2.5665,0 0.082,-0.2445 0.2444,0.041 -0.082,0.2037 0.4482,0 0,-1.3443 -0.082,0.2444 -0.2445,-0.041 0.1223,-0.4074 0.2037,0.082 0,-9.044 -0.1223,-0.041 0.1223,-0.5704 0,-1.711 -0.2852,0.082 -0.041,0.2037 0.2037,0.3259 -0.6111,1.1 -0.2037,-0.041 0.937,-3.5036 0,-1.5888 -0.2852,0.1222 -0.041,1.0592 -0.6518,2.3629 -0.5703,0.2851 1.1814,-4.3997 0.3666,0.5703 0,-1.3444 -0.1629,-0.041 0.1629,-0.5703 0,-1.8333 c -0.2597,-0.3921 -0.5238,-0.7828 -0.8147,-1.1407 l 0.8147,0.041 0,-1.2221 -0.2037,0.8555 -0.2444,-0.082 0.3259,-1.1814 0.1222,0.041 0,-3.5443 -0.082,0.2852 -0.4481,-0.1223 0.5296,-2.0369 0,-7.98483 -0.041,0.12222 -0.8148,0 -0.6518,-0.36665 -0.8148,0 0.041,-0.20369 -0.3259,-0.52961 0.082,-0.28517 0.2037,0.0407 0.8555,0.77404 0.2852,-0.16296 0.082,-0.28517 c -0.3163,-0.38756 -1.7549,-1.08882 -4.3183,-2.07768 l -1.1,0 2.811,1.18142 -0.1222,0.40739 0.2852,-0.16295 0.6925,0.20369 -0.4888,0.81478 -0.2037,-0.0407 -0.163,-0.28517 -0.2444,-0.0407 -0.3667,0.12222 0.1222,-0.40739 0.3667,-0.16296 0,-0.0407 -0.2444,-0.28517 -0.2445,-0.0815 -0.2851,0.2037 -0.2445,-0.0407 -0.6925,-0.48887 -0.5704,0.36665 -1.5481,-1.2629 -1.8332,0 -0.082,0.32591 -0.2444,-0.0407 0.082,-0.28517 -3.2999,0 1.0185,1.54807 0.2037,0.0407 -0.163,0.69256 -0.4481,-0.12221 -0.082,0.20369 c 0.3276,0.0876 0.5624,0.55849 0.6926,1.38512 l -0.163,0.69256 -0.2444,-0.0815 0.1222,-0.44813 -0.7333,-0.2037 -0.163,0.44813 0.4889,0.12222 -0.2444,0.89625 -0.4889,-0.12221 -0.2037,0.93699 0.4481,0.12222 -0.1222,0.40739 -0.4481,-0.12222 -0.1222,0.40739 0.4481,0.12221 -0.163,0.69256 c -0.4096,-0.10951 -0.697,0.12321 -0.937,0.69253 -0.022,0.084 -0.038,0.1752 -0.041,0.2445 l -0.2444,-0.2852 -0.2037,0.2852 c -0.01,-0.089 -0.01,-0.189 0,-0.2852 l 0.2037,0 0,-0.2037 -0.1629,-0.1629 c 0.014,-0.071 0.021,-0.1297 0.041,-0.20375 l 0.5296,0.16295 0.1629,-0.65181 -0.4074,-0.61109 0.937,-1.38512 -0.2037,-0.0407 0.2852,-0.16295 0.081,-0.28518 -0.2037,-1.46659 0.6518,-0.24444 -0.2444,-0.0815 0.4481,-0.61108 c 0.1537,-1.06751 -0.199,-1.68478 -1.0592,-1.91472 l 0.2852,-0.16296 0.082,-0.24443 -1.5888,0 0,0.0815 0.6925,0.16296 -0.937,0.7333 c 0.085,-0.31634 0.048,-0.64018 -0.041,-0.97773 l -1.5888,0 -0.2037,0.69256 -0.2444,-0.0407 0.1629,-0.65182 -0.937,0 0.2445,0.48886 -0.082,0.44813 -0.3667,-0.57034 0.082,-0.36665 -0.4481,0 -0.8555,3.09615 c -0.097,-0.0451 -0.1796,-0.0767 -0.2852,-0.12222 l -0.041,0 -0.1629,-0.24443 0.2851,-0.12222 0.082,-1.18142 0.3667,-1.42586 -0.4889,0 -0.6111,2.36285 -0.2444,0 0.6111,-2.36285 -2.6073,0 -0.041,0.16295 0.4481,0.12222 -0.2852,1.05921 c -0.9987,-0.37944 -1.8221,-0.65178 -2.4443,-0.65182 -0.1476,0.37417 -0.4354,0.62502 -0.774,0.77404 -0.016,-0.069 -0.022,-0.13369 -0.041,-0.2037 l -0.041,-0.20369 0.5703,-0.0815 0,-0.28517 c 1e-4,-0.20089 -0.2546,-0.36699 -0.774,-0.48887 l -0.041,-0.20369 -0.9778,0 c 0.001,0.0136 0,0.0271 0,0.0407 l 0,0.24443 c -0.2786,-0.13728 -0.624,-0.21604 -1.0184,-0.28517 l -1.7111,0 0,0.16295 -0.2444,0.0815 -0.082,-0.24443 -0.5296,0 0.041,0.12221 -0.163,0.16296 -0.082,-0.28517 -2.7295,0 -0.2037,0.97773 -0.3259,0 0,-0.48887 c 0.085,-0.17617 0.1553,-0.35747 0.2037,-0.48886 l -2.4036,0 z m 36.2576,12.83278 0,-0.937 -0.041,0.041 -0.163,0.6111 0.2037,0.2851 z m -34.3429,-12.75131 -0.2851,0.44813 -0.4889,0.0815 0.082,-0.28517 0,-0.12222 0.6925,-0.12222 z m 13.4846,0.0407 0.4481,0.12222 -0.041,0.24443 -0.4481,-0.12221 0.041,-0.24444 z m -16.2956,0.36665 0,0.48887 -0.4481,0 0.4481,-0.48887 z m 7.8219,0 0.082,0.0407 0.2037,0.89626 c -0.2224,-0.0204 -0.4372,-0.0455 -0.6111,-0.0815 l 0.2037,-0.65182 -0.041,-0.16296 0.163,-0.0407 z m 1.4666,0 0.4074,0.48887 -0.4074,0 0,-0.48887 z m -2.5665,0.16296 0.082,0.28517 -0.1223,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.1516,0.0407 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 5.2146,0 0.2037,0 0,0.28517 -0.2037,0 0,-0.28517 z m -2.974,0.28517 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24443 -0.1629,0 c 0.038,-0.0691 0.088,-0.17948 0.1222,-0.24443 z m 13.0365,0 0.2037,0.0815 -0.163,0.65182 -0.3259,-0.57035 0.2852,-0.16295 z m 11.8142,0.0407 0.4482,0.1222 -0.1223,0.48888 -0.4888,-0.12223 0.1629,-0.48885 z m -5.8256,0.16295 0.2444,0.0407 -0.1629,1.58882 -0.2852,0.16295 -0.1222,0.48887 -0.5296,2.52581 -0.6519,-0.65182 1.1,-2.64803 -0.2444,-0.28517 0.082,-0.20369 0.5703,-1.01848 z m 0.9777,0.0407 0.5704,0.12222 -0.2852,0.16295 -0.082,0.2037 -0.7741,3.87019 -0.2851,0.16296 -0.082,1.14068 -0.2037,0.77404 -0.5704,0 0.163,-0.57034 c 0.2449,-0.0957 0.4481,-0.21289 0.4481,-0.36665 l -0.2852,-0.28517 1.3852,-5.21458 z m -17.7214,0.2037 0.2444,0 0.041,0.16295 -0.082,0.0407 -0.1222,0 -0.082,-0.20369 z m 14.5438,0.12221 0.2037,0.0407 -0.082,0.44813 -0.2445,-0.0815 0.1223,-0.40739 z m 12.629,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m -29.8208,0.0407 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m -2.0777,0.2037 1.0592,0 c -0.029,0.0977 -0.082,0.18868 -0.1222,0.28517 l -0.937,0 0,-0.28517 z m 11.855,0 0,0.5296 -0.4889,0 0.4889,-0.5296 z m 24.3618,0.16295 c -0.074,0.27639 0.1418,0.51308 0.5704,0.65182 l 0,-0.5296 -0.5704,-0.12222 z m -6.07,0.32591 0.4481,0.12222 -0.3667,1.30364 -0.4481,-0.12221 0,-1.18143 0.3667,-0.12222 z m -17.0696,0.44813 0,0.48887 -0.2037,0 -1.6703,0.24443 c 0.035,-0.18638 0.074,-0.3749 0.082,-0.57035 l 1.7925,-0.16295 z m 0.3666,0 0.6518,0.20369 0,0.28518 -0.8555,0 0.2037,-0.28518 0,-0.20369 z m 1.0185,0 0.041,0 0.2852,0.44813 -0.041,0.0407 -0.2852,0 0,-0.48887 z m 1.8332,0 -0.082,0.32591 -0.2851,0.0407 0.1222,-0.32591 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.2662,0 0.6519,0.36665 -0.082,0.20369 -0.4482,0.85552 c -0.076,0.61312 0.12,0.99046 0.5296,1.09995 l -0.1222,0.40739 -0.5296,-0.12222 -0.082,0.28517 0.2445,0.28518 -0.3667,0.12221 0.041,1.18143 -0.4889,1.79251 -0.5296,-0.1222 -0.4074,-1.3037 0.1223,-0.48883 0.2444,0.0407 -0.1222,0.48883 0.4481,0.1223 0.041,-0.2037 -0.2852,-0.81482 0.2852,-0.12221 c 0.1185,-0.44346 -0.079,-0.76489 -0.5703,-0.89626 l 0.6518,-0.28517 -0.1222,0.40739 0.4888,0.12221 0.3667,-3.21837 0.041,-0.20369 z m -20.4916,0.12222 0.2444,0.0407 0.1222,0.48887 -0.3259,-0.0815 0,-0.36665 -0.041,-0.0815 z m -7.7404,0.0815 0.4481,0 -0.4481,0.52961 0,-0.52961 z m 1.3036,0 0.8148,0 c -0.013,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2572,0.20542 -0.3429,0.30401 -0.5703,0.48887 l -0.2037,-0.24443 0,-0.28518 z m 1.3037,0 0.3666,0 0.4074,0 0,0.2037 -0.082,-0.0815 -0.4888,0.12222 0,0.24443 -0.082,0.0407 -0.2037,-0.24443 -0.082,0 0.1629,-0.28518 z m 1.1407,0 0.6111,0 -0.041,0.28518 -0.5704,0 0,-0.28518 z m 7.2922,0 0.6519,0 -0.082,0.24444 0.1222,0.44812 -0.2852,0.0407 -0.4074,-0.65182 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24444 -0.2037,0.0407 -0.082,-0.28518 z m 21.1435,0 0.8148,0 0.2444,0.0407 -0.082,0.2037 -1.0999,0.16295 0.1222,-0.40739 z m -12.9142,0.0815 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m 5.2553,0 -0.082,0.2037 0.4889,0.12221 0.041,-0.20369 -0.4482,-0.12222 z m 10.144,0.36665 0.4888,0.12222 0.4074,0.57034 -0.6518,0.32591 0.2852,0.0815 -0.6111,1.01847 c -0.3277,-0.0876 -0.363,-0.37134 -0.2444,-0.81478 l 0.2851,-0.16295 0.041,-0.20369 0,-0.937 z m -1.3851,0.28517 0.2444,0.0815 0.041,0.7333 -0.4481,-0.12222 0.1629,-0.69256 z m -25.5026,0.0407 0,0.40739 -0.2851,0 -0.082,-0.32591 0.3666,-0.0815 z m 23.9137,0.0407 0.2445,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -24.7284,0.0815 0.082,0.28517 -0.2445,0 0,-0.24443 0.163,-0.0407 z m -8.2293,0.0407 1.0185,0 c -0.101,0.0837 -0.1918,0.16587 -0.2852,0.24443 l -0.7333,0 0,-0.24443 z m 2.0777,0 0.4481,0 0,0.24443 -0.6111,0 0.163,-0.24443 z m 7.8626,0 0,0.24443 -0.2037,0 -0.041,-0.16295 0.2444,-0.0815 z m 3.748,0 0.4073,0 0,0.24443 -0.4073,0 0,-0.24443 z m 1.0592,0 0.8147,0 0,0.24443 -0.8147,0 0,-0.24443 z m 22.3656,0.0407 0.4481,0.12221 0.2852,0.28518 0.082,-0.40739 0.2444,0.0407 -0.1222,0.44812 -0.2037,-0.0815 0.163,0.28517 -0.1222,0.48886 c -0.3277,-0.0875 -0.6161,0.14207 -0.7741,0.7333 l -0.3666,-0.61108 0.3666,-1.30364 z m -31.0023,0.0407 0.2852,0.20369 -0.2037,0.0815 -0.082,-0.28517 z m -4.7257,0.0815 0.041,0.0815 -0.1222,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.98,0.0407 0.5296,0.16296 -0.041,0.20369 -0.5296,-0.12221 0.041,-0.24444 z m -20.4916,0.0407 0.3666,0 0,0.28517 -0.3666,0 0,-0.28517 z m 3.5443,0 0.2037,0 c 0.2933,0.10004 0.5027,0.25432 0.6518,0.48887 l -0.082,0.12221 c 0.049,0.098 0.1128,0.18842 0.1629,0.28518 l -0.3666,0 0,0.24443 0.5296,0.0815 c 0.074,0.1378 0.1679,0.27231 0.2444,0.40739 l -1.7925,0 0,-0.2037 c 0.5521,1.1e-4 0.8148,-0.22357 0.8148,-0.5296 l -0.3667,-0.40739 0,-0.48887 z m -9.2885,0.0407 0.1222,0.44813 -0.2037,0.0407 -0.082,-0.32591 0.163,-0.16296 z m -3.5035,0.0815 0.082,0.44812 -0.4482,0.12222 -0.041,-0.16295 0.326,-0.0407 0,-0.32591 0.082,-0.0407 z m 1.6295,0.0407 c 0.2851,1.0667 0.7124,1.54315 1.3037,1.38512 l 0.081,0.16295 -0.163,0.24444 -0.2444,-0.12222 c -0.5965,0.73087 -0.8709,1.45178 -0.6926,2.11845 l -0.8555,-0.65185 0.6111,-0.16296 -0.1222,-0.40739 c -0.3696,0.0988 -0.5984,-0.0975 -0.8148,-0.61108 l 0.9777,-0.7333 -0.4481,-0.93699 -0.041,-0.16296 0.4074,-0.12221 z m 23.5878,0.24443 0.4481,0.12222 -0.082,0.24443 -0.4481,-0.12222 0.082,-0.24443 z m -14.9511,0.0815 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 4.6034,0 0,0.0815 -0.041,0.16296 -0.2036,-0.0407 0.2444,-0.20369 z m -10.5513,0.0407 c 0.1566,0.1293 0.3291,0.24633 0.5703,0.36665 l 0,-0.16296 0.082,0.36665 0,0.0815 -0.4481,0.12221 -0.2037,-0.77403 z m 23.2211,0.0407 0.4482,0.12222 0,0.97773 -0.2852,0.12222 -0.041,0.2037 -0.163,1.46659 -0.4074,0.57035 0.2037,0.2444 -0.3259,0.2037 0.3667,0.5704 -0.2852,0.1222 -0.2444,-0.041 -0.041,1.1407 -0.3259,1.1407 -0.4482,-0.163 -0.2037,0.6926 c 0.013,0.024 0.029,0.056 0.041,0.082 l -0.1222,0.081 0.163,0.041 c 0.083,0.2038 0.1422,0.4408 0.1629,0.6925 l -0.041,0.2037 -0.1629,-0.2444 -0.2852,-0.082 -0.041,0.041 0.2444,-1.5481 0.7741,-2.8517 0.4481,-0.81478 -0.2852,-1.05921 0.5296,0.16296 0.326,-2.07769 z m -28.4357,0.0407 -0.041,0.44813 -0.2852,0.0815 -0.2851,-0.16296 -0.2037,0.0815 0.3666,0.48887 -0.4888,0.61108 -0.326,-0.48887 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48887 -0.1629,0 -0.2037,0.28517 -0.2037,0 0.3666,-0.61108 1.2629,-0.2037 z m 4.8072,0 0.1629,0.65183 -0.2036,0.0407 -0.2037,-0.61108 0.2444,-0.0815 z m -7.0886,0.28518 0.2037,0 0,0.28517 -0.2037,0.24443 -0.2444,0 0,-0.32591 c 0.078,-0.065 0.1633,-0.13004 0.2444,-0.20369 z m 32.5911,0.40738 1.5074,1.34439 -0.1223,0.44812 -0.5296,-0.16295 -0.4888,1.79249 -0.2037,-0.041 0.4074,-2.48505 -0.2852,0.12222 -0.3259,-0.0815 0.041,-0.937 z m 4.4813,0 0.774,0 -0.1222,0.40739 -0.6925,-0.20369 0.041,-0.2037 z m -27.4173,0.12222 0.041,0 0.2037,0.2037 -0.1629,0.0407 -0.082,-0.24443 z m 3.4221,0 0.5703,0 0,0.2037 -0.5703,0 0,-0.2037 z m 5.4998,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.16296 c -0.014,0.0596 -0.024,0.0991 -0.041,0.16295 l 0.4073,0.12222 c -0.1394,0.12918 -0.3454,0.16298 -0.6518,0.16295 l -0.2037,0 0,-0.20369 0.4889,-0.24443 z m -4.6443,0.0407 0.6518,0.20369 0,0.44813 c -0.414,0 -0.6518,0.1829 -0.6518,0.48886 l -0.1629,0 c 0,-0.45892 -0.1314,-0.73324 -0.4074,-0.7333 l 0,-0.20369 0.5703,-0.20369 z m 11.4476,0.0407 0.326,0.61109 -0.041,0.20369 -0.326,-0.61108 0.041,-0.2037 z m -18.088,0.0407 0.5703,0.28518 0.6519,2.36289 0,0.082 -0.3667,-0.5296 -0.2037,0 0.5704,0.8555 0.041,0.6518 0.2851,0.1222 -0.3666,0.5704 -1.1814,-4.39985 z m 15.44,0 0.2445,0.0407 -0.2852,1.09995 -0.2445,-0.0407 0.2852,-1.09995 z m -7.0885,0.12222 0.5703,0.20369 0,0.24444 -0.774,0 0.2037,-0.24444 0,-0.20369 z m -9.2885,0.20369 0.4889,0.48887 0.041,0.16296 -0.4889,0.12221 -0.163,-0.65182 0.1223,-0.12222 z m 1.9962,0.12222 0.3259,0.32591 0,0.0815 0.082,0.0407 0.2037,0.24443 -0.1629,0.16296 0.6518,2.36284 -0.2852,-0.1629 -0.8148,-3.05546 z m -7.8219,0.0815 0.082,0.36665 -0.2037,0.0407 -0.082,-0.36665 0.2037,-0.0407 z m 2.4444,0.20369 -0.082,0.61109 0.082,0.24443 0.2444,0.16295 c -0.776,0.20748 -1.0756,0.74808 -0.937,1.71108 l 0.3667,0.5703 -0.2037,0.041 0.5703,0.2444 -0.1629,1.3037 0.082,0.2852 0.2444,0.1222 -0.2037,0.041 0.5703,0.8555 c -0.1409,0.1125 -0.2863,0.2395 -0.4481,0.4074 l -0.082,-0.2037 -0.4074,0.1222 -0.082,-0.3666 0.4074,-0.1223 -0.2037,-0.8147 -0.4481,0.1222 -0.2037,-0.8148 0.4074,-0.1222 -0.1222,-0.4481 -0.6519,0.2037 0.082,0.4481 -0.2037,0.041 -0.1629,-0.6111 c 0.1174,-0.7457 0.3563,-1.1839 0.6518,-1.2629 l -0.082,-0.163 -0.4074,0.082 -0.1629,-0.6111 0.2037,-0.041 1.3444,-2.03691 z m 31.3282,0.2037 0.2444,0.0407 0.2444,0.28517 0.2852,-0.12222 0.6926,0.16296 0.4481,2.28134 -0.041,0.2037 0.2852,0.082 0.2851,-0.1222 0.2445,0.041 -0.6926,2.648 c -0.6159,-0.3229 -0.8481,-0.9056 -0.6111,-1.7925 l -0.2037,-0.082 0.2852,-0.1222 0.1222,-0.4889 0.082,-1.1814 -0.5703,-0.1222 -0.6926,2.6888 0.2444,0.2851 -0.3666,0.1222 -0.041,0.2037 0.2037,2.1999 -0.8148,0 c -0.1161,0.5674 -0.1894,1.0843 -0.2444,1.5074 -0.1694,0.1075 -0.2849,0.3971 -0.4074,0.8555 l -0.3259,0.1222 -0.4482,-0.1222 -0.1629,-0.937 0.5703,-0.4889 0,-0.1222 c 0.055,0.088 0.1487,0.1672 0.2852,0.2037 l 0.2037,0.041 0.082,-0.2037 0.2444,-1.874 0.3667,-0.5296 0.7333,-3.6257 0.2444,-0.8963 -0.4481,-0.1222 -0.3667,1.3444 -0.3666,0.1222 0.2444,0.2852 -0.1222,0.4888 -0.5296,-0.1629 0.8148,-3.09618 z m -9.207,0.12221 0.2037,0.0407 -0.2445,0.89624 -0.2851,0.163 -0.2037,-0.082 0.5296,-1.01851 z m 6.0701,0 0.2037,0.0407 -0.082,0.40739 -0.2445,-0.0407 0.1222,-0.40739 z m -24.973,0.0815 0.2037,0.81474 -0.2037,0.041 -0.2444,-0.774 0.2444,-0.0815 z m -6.7219,0.0407 0.041,0 0.1222,0.44813 -0.2037,0.0407 -0.041,-0.12222 c 0.028,-0.10614 0.05,-0.23043 0.082,-0.32591 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.2614,0.0407 0.2444,0.0407 -0.2036,0.69254 -0.2037,-0.041 0.1629,-0.69254 z m -26.5617,0.0407 0.1222,0.44813 -0.3259,0.48891 -0.082,-0.3667 0.2851,-0.57034 z m 13.8919,0.0815 0,0.0407 -0.3259,0.2037 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1891,-0.0178 0.3782,-0.0562 0.5296,-0.0815 z m -11.7328,0.24443 0.1223,0.12222 -0.2037,0.0815 -0.041,-0.16295 0.1222,-0.0407 z m 27.1321,0.12222 0.7741,0.20369 -0.041,0.2444 -0.7741,-0.2037 0.041,-0.24439 z m -8.7181,0.0407 0.5703,0.16299 -0.082,0.2037 -0.5296,-0.1222 0.041,-0.24449 z m -15.4808,0.0407 0,0.61109 0.4482,0 c 0,0.3379 0.036,0.6266 0.1222,0.8148 -0.2102,0.043 -0.4006,0.095 -0.5704,0.1629 l 0,-0.041 -0.3666,-0.4074 -0.6518,0.2037 c 0,-0.1101 -0.034,-0.2077 -0.082,-0.2851 l -0.2445,-0.8963 1.3444,-0.16295 z m 2.8925,0 0.2852,0.20369 0.2037,0 1.8739,-0.20369 0,0.20369 -0.2851,0.6518 c 0.3992,-0.2212 0.7009,-0.4734 0.8148,-0.77401 0.071,0.0934 0.1312,0.19371 0.2036,0.28521 l -0.3666,0.041 0,0.4481 0.4074,0 0.2444,0.2852 0.163,-0.2445 c 0.093,0.1068 0.1891,0.2221 0.2851,0.3259 l 0.041,0.163 -0.2037,-0.2037 -0.2444,0.1222 0.041,0.6926 -0.2444,0.1222 -0.082,0.163 -0.6518,-0.1223 c -0.065,-0.1287 -0.107,-0.2443 -0.1223,-0.3666 l 0.326,0 0.3666,0.082 0.041,-0.2037 -0.2852,-0.5296 c -0.2711,-0.072 -0.5057,-0.065 -0.7333,-0.082 l -0.2037,-0.2037 -0.082,0.1629 c -0.064,0 -0.1436,-0.01 -0.2037,0 l -0.5296,-0.611 -1.0592,0.2037 -0.774,-0.2037 -0.4481,0.4481 -0.163,-0.2444 0,-0.2037 c 0.2415,0 0.4326,0.016 0.6111,0 0.5354,-0.049 0.774,-0.1779 0.774,-0.40743 z m 16.2955,0 0.2445,0.0815 -0.2445,0.89629 -0.2444,-0.082 0.2444,-0.89629 z m -19.962,0.40739 0,0.4481 0.4074,0 0,-0.4481 -0.4074,0 z m -1.5481,0.082 0.2445,0.2852 -0.2037,0.3666 -0.163,-0.5296 0,-0.082 0.1222,-0.041 z m -10.5106,0.1222 0.041,0.3259 -0.163,0.041 0.1222,-0.3666 z m 21.836,0 0.163,0 0,0.2445 -0.163,0 0,-0.2445 z m -16.6622,0.041 0.5296,0.937 0.041,0.163 -0.2037,0.2851 0.7741,1.8333 -0.5296,0.3259 -0.2852,-1.5073 -0.1222,-0.4482 -0.2444,-0.1222 -0.163,-1.4258 0.2037,-0.041 z m -0.8962,0.041 1.1407,4.2369 -0.326,-0.082 0,-0.082 -0.2851,-0.163 -0.6926,-3.4628 -0.041,-0.2037 -0.2852,-0.1222 0.4889,-0.1222 z m 19.8805,0.082 0.2445,0.082 -0.1222,0.4074 -0.2037,-0.041 0.082,-0.4481 z m -7.7811,0.082 0.6518,0 0,0.2037 c -0.1266,0.036 -0.2232,0.098 -0.3259,0.163 l -0.3259,-0.082 0,-0.2852 z m -9.207,0.1222 0.1222,0.3667 -0.2036,0.041 -0.1223,-0.3667 0.2037,-0.041 z m 15.1141,0.041 0,0.1223 -0.082,0 0.082,-0.1223 z m 9.9811,0.2445 0.2444,0.041 -0.163,0.4888 -0.2036,-0.041 0.1222,-0.4888 z m 5.2553,0 0.2444,0.041 -0.1629,0.4888 -0.2037,-0.041 0.1222,-0.4888 z m -22.8138,0.082 0.3667,0 c -0.095,0.1753 -0.2075,0.273 -0.3667,0.2852 l 0,-0.2852 z m 7.1293,0 0.163,0 0,0.2037 -0.163,0 0,-0.2037 z m -1.5073,0.041 0.2852,0.082 -0.2852,0 0,-0.082 z m 4.7257,0.082 0.3259,0.6111 -0.1222,0.4074 -0.4481,-0.1223 0.2444,-0.8962 z m 1.0185,0.2852 0.2037,0.041 c -0.079,0.2957 0.1602,0.5611 0.6518,0.6925 l -0.2445,0.8963 c -0.1373,-0.1603 -0.2847,-0.29 -0.4481,-0.4074 l 0.041,-0.2037 -0.4481,-0.1222 0.2444,-0.8963 z m -5.8664,0.041 0.1222,0 0.082,0.041 -0.1222,0.4481 -0.163,-0.082 0.082,-0.4074 z m 3.3813,0 0.5703,0 -0.082,0.2037 -0.2444,0 c -0.09,-0.065 -0.1747,-0.1267 -0.2444,-0.2037 z m -7.4145,0.1222 c -0.014,0.04 -0.029,0.079 -0.041,0.1222 l -0.1222,-0.041 0.1629,-0.082 z m -15.603,0.1629 0.082,0.163 0.3259,2.9332 0.4074,-0.1222 -0.1222,-0.3667 0.6111,0.2445 c -0.4434,0.1185 -0.6365,0.4147 -0.5296,0.8147 l 0.2444,0.1222 -0.2444,0.7333 0.041,0.2037 0.4481,-0.1222 -0.1222,-0.4481 0.2037,-0.041 0.1222,0.4481 -0.3666,1.1407 -0.3667,-0.082 c -0.056,0.071 -0.068,0.1343 -0.1222,0.2037 l -0.4481,-1.5888 0.041,-1.1 -0.3259,-0.082 0.2037,-0.2851 -0.041,-0.2445 -0.4889,0.1223 -0.082,-0.163 0,-0.082 0,-0.163 c 0.3324,-0.117 0.5134,-0.4115 0.4481,-0.9369 l -0.4481,-0.7741 -0.041,-0.1629 0.5703,-0.3667 z m 31.1653,0 0.5296,0.1222 -0.2037,0.6926 -0.5296,-0.1222 0.2037,-0.6926 z m -28.9246,0.2852 -0.4074,0.082 0.041,0.2037 0.4074,-0.1222 -0.041,-0.163 z m 4.7257,0 0.1222,0.3667 -0.2037,0.041 -0.1222,-0.3667 0.2037,-0.041 z m 8.5144,0.041 0.2037,0.082 -0.2444,0 0.041,-0.082 z m 16.9066,0 0.5296,0.1222 -0.1222,0.4889 0.4481,0.1222 0.163,-0.6926 0.4481,0.5704 -0.5703,0.8148 -0.163,1.8739 -0.4481,0.5297 -0.2444,-0.041 c 0.5137,-1.9216 0.4109,-2.921 -0.2445,-3.0962 l 0.2037,-0.6926 z m -20.0435,0.082 0.2037,0 -0.1222,0.4481 -0.163,0 0,-0.2037 0.082,-0.2444 z m 1.7925,0 0.2037,0 c 0.1368,0.1613 0.1866,0.3854 0.163,0.6518 l -0.1222,0 -0.2445,-0.6518 z m -2.5665,0.1222 0.2037,0.3667 -0.2852,-0.082 0.082,-0.2852 z m 12.5475,0.163 0.2445,0.082 0.2851,0.2037 -0.1629,0.2444 c -0.1007,-0.099 -0.2134,-0.1792 -0.3259,-0.2444 l -0.041,-0.2852 z m -7.17,0.1629 0.2852,0 c 0,0.072 0.024,0.1467 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.7333,0.082 0.4074,0.1223 -0.3259,0 -0.082,-0.1223 z m -6.7219,0.1223 0.2037,0.082 -0.082,1.2221 -0.082,0.2037 -0.2037,-0.081 0.041,-0.4889 0.2037,0 0,-0.6518 -0.082,-0.2851 z m 14.6252,0.041 0.326,0.082 -0.163,0.6518 -0.2037,-0.082 -0.041,-0.5296 0.082,-0.1223 z m -15.3585,0.041 0,0.2037 -0.1222,0 0.1222,-0.2037 z m -1.4666,0.1629 0.1222,0 0.1222,0.163 0.082,0.2851 -0.3259,-0.4073 0,-0.041 z m 4.522,0.041 0.2037,0 -0.082,0.2037 -0.163,0 0.041,-0.2037 z m -5.2553,0.163 -0.041,0.2444 c -0.1412,0.6766 -0.1364,1.0308 0.1222,1.1 l -0.2444,0.2036 -0.082,0.163 -0.041,0.2444 -0.1222,0.041 -0.163,-0.5703 0.4481,-0.082 c -0.2059,-0.7706 -0.1474,-1.243 0.1223,-1.3444 z m 1.874,0 0.041,0.1222 0.082,-0.082 0.1629,0.6518 0,0.1222 -0.4888,0.7333 0.2851,0.081 -0.3259,0.1222 -0.082,0.2445 0.2445,0.2851 -0.082,0.163 -0.4074,0.5703 0.041,0.8556 -0.6518,1.3036 0.2444,0.2852 -0.4889,-0.163 0.3667,-1.3444 -1.1815,0.7333 0.2445,0.2852 -0.8555,0.4481 -0.082,1.0185 -0.4074,0.6926 c 0.08,-0.4995 0.011,-0.7981 -0.2037,-0.8556 l 0.2851,-0.1629 0.041,-0.2037 0.2037,-1.3036 c 0.1375,-0.1299 0.2765,-0.2715 0.4074,-0.4074 l 0.4482,0.3259 c -0.053,-0.2116 -0.1577,-0.3754 -0.2445,-0.5296 0.051,-0.055 0.1128,-0.1065 0.163,-0.163 l 0.2444,0.041 0.082,-0.3666 0.3667,-0.163 -0.163,-0.163 c 0.072,-0.092 0.134,-0.1912 0.2037,-0.2851 l 0.7333,0.041 0.163,-0.6111 -0.4074,-0.1222 c 0.071,-0.1075 0.135,-0.2161 0.2037,-0.3259 l 0.2851,0.082 0.2852,-1.0592 c 0.1084,-0.2 0.2227,-0.4049 0.3259,-0.6111 l -0.1222,-0.163 0.041,-0.1222 z m 11.7328,0.041 0.2037,0.4074 0,0.041 -0.4889,0 c 0.012,-0.071 0.03,-0.1355 0.041,-0.2037 l 0.2444,-0.2445 z m -22.162,0.041 0.082,0.2851 -0.082,0 0,-0.2851 z m 30.432,0.2037 0.4888,0.1222 -0.4074,0.937 c -0.091,-0.1361 -0.2088,-0.2648 -0.3666,-0.3667 l 0.2852,-0.6925 z m -10.8773,0.1629 0.2037,0.041 -0.2037,0 0,-0.041 z m 0.9777,0.041 0.4074,0.1222 -0.041,0.163 -0.2037,0.041 -0.1629,-0.2852 c 0.01,0 -0.01,-0.037 0,-0.041 z m -8.3922,0.3259 0.4074,0.082 -0.163,0.6518 -0.2851,-0.5703 0.041,-0.163 z m 23.9137,0.041 c 0.452,0.2793 0.6049,0.7683 0.4074,1.5074 l -0.5296,1.0592 c -0.1997,1.1223 -0.2914,1.891 -0.2852,2.4036 l -0.1629,-0.041 0.041,-0.7741 0.1222,-0.4888 -0.3666,-0.7741 0.8962,-2.1184 -0.1222,-0.774 z m -21.836,0.1222 0.2444,0 0,0.2037 -0.2444,0 0,-0.2037 z m 12.0994,0 0.041,0 -0.1629,0.5704 c -0.02,0.077 -0.028,0.1306 -0.041,0.2037 l -0.041,0 0.2037,-0.7741 z m -19.962,0.041 0.2037,0.041 0.1222,0.2445 -0.3666,-0.1222 0.041,-0.163 z m -4.1146,0.2037 0.041,0.2037 -0.2852,0.5296 -0.041,-0.1629 0.2852,-0.5704 z m 3.6257,0 c 0.1218,0.056 0.2252,0.1143 0.4074,0.163 l -0.082,0.3666 -0.1629,-0.2444 -0.082,-0.041 -0.082,-0.2444 z m 31.1245,0.082 0.2445,0.082 -0.1223,0.4889 -0.2444,-0.082 0.1222,-0.4889 z m -25.4618,0.082 c 0.1306,0.01 0.286,0.02 0.4482,0.041 l -0.1223,0.3667 c -0.2956,-0.079 -0.5499,0.1592 -0.6925,0.6925 l -0.4481,-0.774 c 0.047,-0.1747 0.2132,-0.256 0.4888,-0.2852 l 0.3667,0 -0.041,-0.041 z m 14.0142,0 0.082,0 0.1222,0.041 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.2444 z m -8.1478,0.041 0.2852,0 -0.1222,0.5296 -0.2445,-0.082 c 0.037,-0.1539 0.063,-0.3101 0.082,-0.4481 z m 0.8555,0 0.5704,0 0,0.082 -0.3667,0.5704 0.1223,0.1629 -0.6111,-0.1629 c 0.107,-0.1606 0.1904,-0.4143 0.2851,-0.6518 z m 1.0593,0 0.2444,0 -0.041,0.082 -0.2037,-0.041 0,-0.041 z m 2.2406,0 0.4889,0 -0.1223,0.3667 -0.2037,0.041 0,0.4481 0,0.041 -0.082,0.163 0.041,0.4481 -0.1629,0.041 c -0.1809,-0.2054 -0.2427,-0.4948 -0.2037,-0.8555 0,-0.026 0,-0.055 0,-0.082 0.012,-0.083 0.017,-0.1538 0.041,-0.2445 l 0.2037,-0.3666 z m 0.8555,0 0.7333,0 0.3259,0 -0.041,0.2037 -0.2444,0 0,0.4889 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.2852 -0.4889,0.1222 -0.041,-0.5296 0.2444,-0.041 0,-0.4888 -0.2851,0.041 -0.041,-0.2445 z m -7.6996,0.082 0,0.7741 c -0.2653,-0.083 -0.4074,-0.289 -0.4074,-0.6518 0.1826,0 0.2999,-0.043 0.4074,-0.1223 z m 5.5404,0 0.4074,0.1223 -0.082,0.3666 -0.4481,-0.1222 0,-0.041 0.163,-0.2037 -0.082,0 0.041,-0.1222 z m 11.9365,0 0.1222,0.6519 c -0.026,-0.012 -0.051,-0.033 -0.082,-0.041 l -0.3259,0.082 -0.041,0.2444 0,0.2852 -0.041,0.082 -0.2037,-0.041 0.041,-0.2037 0.2445,-0.3667 0.1629,-0.2852 -0.4481,-0.1222 0.5703,-0.2851 z m -18.8213,0.082 c 0.092,0.016 0.1761,0.041 0.2851,0.041 l 0,0.6519 -0.2444,-0.082 -0.041,0.1222 -0.1222,0 0,0.4481 0,0.082 0.4481,0.1222 0.041,-0.2037 0.163,0 -0.5296,0.7741 -0.2445,-0.326 -0.082,0.3667 0.2445,0.082 -0.041,0.041 0.5296,0.1222 0.082,0.2444 -0.1222,0.2037 c -0.155,0.076 -0.2588,0.2271 -0.2852,0.4482 l -0.041,0.1222 -0.163,0 c 0,-0.03 0.01,-0.052 0,-0.082 l 0.082,-0.4481 -0.1629,-0.041 c -0.084,-0.4332 -0.1524,-0.7924 -0.2445,-1.0593 l 0.4482,-1.6295 z m -7.2923,0.4482 c 0.2126,0.1196 0.3124,0.3224 0.2852,0.611 l -0.2037,-0.1222 -0.082,-0.4888 z m 18.3325,0 0.041,0 c -0.01,0.03 -0.034,0.052 -0.041,0.082 -0.03,0.1371 -0.06,0.2831 -0.082,0.4074 -0.092,0.016 -0.1761,0.041 -0.2852,0.041 l 0,0.4888 -0.2444,0 0.082,-0.937 0.5296,0 0,-0.082 z m -12.3846,0.082 0.2852,0 0.1222,0.041 0,0.4074 -0.2037,0 0,0.2036 0.082,0.3667 c -0.1679,-0.1492 -0.2705,-0.4892 -0.2852,-1.0185 z m 25.3396,0.041 0.4481,0.1222 -0.1222,0.4074 -0.4481,-0.1222 0.1222,-0.4074 z m -33.9355,0.041 c -0.044,0.05 -0.077,0.1097 -0.1222,0.1629 l -0.041,-0.1222 0.1629,-0.041 z m -0.8963,0.041 0.4482,0.9369 -0.2037,0.041 -0.081,-0.041 c 0.011,-0.045 0.028,-0.075 0.041,-0.1222 l -0.2445,-0.082 -0.2037,-0.6925 0.2445,-0.041 z m 17.5178,0 0.4073,0.1222 -0.082,0.2444 -0.3666,-0.2444 0.041,-0.1222 z m 0.7332,0 0.2037,0.082 -0.1222,0.4073 -0.2037,-0.041 0.1222,-0.4481 z m 7.1294,0.082 0.082,0.1222 0.2851,0.082 0.082,-0.041 -0.2037,1.3444 -0.6925,2.5258 -0.2444,0.4888 -0.082,-0.3666 0.2036,-0.2852 -0.2036,-0.2037 -0.2445,0.082 -0.1629,-0.2851 0.2851,-0.1223 0.2037,0.041 0.041,-1.0592 0.2852,-0.9777 0.4074,0.082 0.1222,-0.5296 0.041,0 0,-0.082 c -0.1251,-0.2297 -0.1809,-0.5083 -0.2037,-0.8148 z m 3.0554,0.041 0.2444,0.082 -0.082,0.2444 0,0.041 -0.163,0.5296 -0.2037,-0.082 0.2037,-0.8148 z m -20.2472,0.2037 0.4073,0.1222 -0.1222,0.3666 -0.2851,-0.4888 z m -10.6329,0.3259 0.041,0.1629 -0.1222,0.041 0,-0.1629 0.082,-0.041 z m 5.5405,0.041 0.2037,0.082 -0.082,0.3666 0.2037,0.041 -0.2445,0.1222 -0.1222,0.4889 -0.1629,-0.6111 0.2037,-0.4889 z m 27.4172,0 0.3667,0.082 c -0.05,0.1857 -0.024,0.3352 0,0.4481 l -0.3259,-0.082 c 0.053,-0.2 0.019,-0.3353 -0.041,-0.4481 z m -3.9516,0.082 0.041,0 c -0.023,0.1202 -0.051,0.2387 -0.082,0.3666 l -0.041,0 0.082,-0.3666 z m -17.314,0.041 0.2037,0.041 -0.2445,0.8147 -0.2037,-0.041 0.2445,-0.8148 z m 14.7474,0.041 c 0.1068,0.098 0.258,0.168 0.4074,0.2444 l -0.1629,0.3259 -0.163,-0.041 -0.041,-0.041 c -0.048,-0.04 -0.1096,-0.09 -0.1629,-0.1222 l 0.1222,-0.3667 z m -21.9175,0.1629 0.082,0 c 0.01,0.063 0,0.1434 0,0.2037 l -0.082,-0.2037 z m 32.4689,0 0.3259,0.5296 -0.4481,-0.1222 0.1222,-0.4074 z m -33.2429,0.3667 0.041,0.1222 -0.163,-0.041 0,-0.041 0.1222,-0.041 z m 6.7626,0.1629 0.2037,0.082 -0.7333,2.811 -0.2037,-0.082 0.7333,-2.811 z m 9.4515,0 -0.2037,0.8148 0,0.082 c -0.07,0.01 -0.1708,0.032 -0.2445,0.041 l 0.2445,-0.8963 0.2037,-0.041 z m 1.5888,0.163 c 0,0.051 0,0.1083 0,0.1629 -0.1404,0.1712 -0.5033,0.2873 -1.0185,0.4074 l 0.082,-0.2444 0.937,-0.3259 z m 8.5959,0.1222 c 0.1067,0.1844 0.2374,0.3374 0.3666,0.4889 l 0,0.1222 0.163,0.041 c 0.068,0.068 0.1301,0.1436 0.2037,0.2037 l -0.163,0.6518 -0.2037,-0.041 c 0.071,-0.2668 -0.1676,-0.4926 -0.6111,-0.6111 l 0.2445,-0.8555 z m 1.0184,0.041 0,0.1222 -0.082,-0.082 0.082,-0.041 z m 5.5813,0.041 0.4481,0.1222 -0.041,0.2037 -0.4889,-0.1222 0.082,-0.2037 z m -24.1989,0.041 0.1222,0.4481 0.2444,0.8963 -0.4481,0.7333 0.3259,-0.1223 0.2037,0.041 -0.1222,0.3667 -0.2037,-0.041 -0.2037,-0.2444 -0.2444,-0.082 -0.082,0.4481 -0.2445,-0.041 0.6519,-2.4036 z m -1.2222,0.082 0.2037,0.082 -0.1222,0.5296 -0.2037,-0.041 0.1222,-0.5704 z m 7.1293,0 0.2037,0.041 -0.082,0.3666 -0.2037,-0.041 0.082,-0.3666 z m 14.5438,0.041 -0.082,0.2444 0.6926,0.163 0.082,-0.2037 -0.6926,-0.2037 z m -28.6802,0.082 c 0.026,0 0.055,0 0.082,0 -0.1259,0.1796 -0.3023,0.3289 -0.5296,0.4481 l -0.041,-0.2037 c 0.1448,-0.1144 0.3062,-0.2068 0.4889,-0.2444 z m 13.3624,0.2037 c 0.1272,0.1138 0.2391,0.2232 0.2851,0.3259 l -0.2851,-0.082 0,-0.2444 z m -12.955,0.2037 0.041,0 0.3259,0.1222 c 0.028,0.1064 0.051,0.1975 0.082,0.2852 l -0.2037,0.774 -0.2037,-0.041 c 0.1427,-0.5334 0.011,-0.858 -0.2851,-0.937 l -0.2037,0.082 0.041,-0.1629 0.3259,-0.082 0.082,0 0,-0.041 z m -2.5665,0.041 0.082,0.2444 -0.1223,-0.041 0.041,-0.2037 z m 13.4438,0 0.2037,0 c -0.015,0.1005 -0.023,0.219 -0.041,0.3259 l -0.163,0.1629 0,-0.4888 z m 8.5552,0 0.3666,0 -0.041,0.1629 -0.4074,-0.1222 c 0.02,-0.019 0.064,-0.021 0.082,-0.041 z m 1.0184,0 0.4074,0 0,0.2037 c -0.1951,0 -0.3609,0.037 -0.4889,0.082 l 0.082,-0.2852 z m -19.4324,0.082 0.1629,0.041 -0.082,0.3259 -0.082,-0.3667 z m 13.8105,0.1222 0,0.5296 -0.041,0.041 -0.041,0.1629 -0.2445,0 0.2037,-0.6925 0.1222,-0.041 z m 0.8555,0 0.937,0 -0.041,0.1629 0,0.1223 -0.2445,0 -0.2851,-0.041 -0.082,0.041 -0.2852,0 c 0,0.015 0,0.026 0,0.041 l -0.082,-0.041 0.082,-0.2852 z m 3.0554,0.1629 -0.082,0.3667 -0.3667,0 -0.1222,-0.1222 0.041,-0.163 c 0.2044,-0.021 0.3677,-0.034 0.5296,-0.082 z m 9.044,0 c 0.6945,0.3642 0.9331,1.0147 0.6926,1.9148 l -0.4889,-0.1222 -0.1629,0.5296 0.3666,0.5703 -0.8555,1.2629 0.2037,0.041 -0.2444,0.1222 -0.082,0.2852 0.1629,1.3036 -0.5703,0.2445 0.2037,0.041 -0.3667,0.5703 c -0.1386,0.963 0.1611,1.5036 0.937,1.711 l -0.2444,0.163 -0.082,0.2444 0.082,0.6111 -1.3444,-2.0369 -0.2037,-0.041 0.163,-0.6111 0.4481,0.082 0.041,-0.163 c -0.2956,-0.079 -0.5344,-0.5172 -0.6518,-1.2629 l 0.1629,-0.6111 0.2037,0.041 -0.082,0.4482 0.6926,0.2037 0.082,-0.4482 -0.4074,-0.1222 0.2444,-0.8148 0.4074,0.1223 0.2037,-0.8148 -0.4074,-0.1222 0.082,-0.3667 0.4481,0.1222 0.082,-0.3666 -0.4073,-0.1222 0.1629,-0.6111 c 0.3695,0.099 0.5984,-0.1382 0.8148,-0.6518 0.1069,-0.4 -0.01,-0.6148 -0.4481,-0.7333 l 0.1629,-0.6111 z m -24.5248,0.041 0.4889,0.1223 -0.4074,0.5703 -0.2444,-0.082 0.1629,-0.6111 z m 23.3027,0 c 0.1376,0.073 0.2979,0.1151 0.4481,0.163 l -0.1222,0.4074 -0.3259,-0.5296 0,-0.041 z m -16.703,0.082 0.6518,0 0.2037,0.2445 0.163,0 -0.163,0.6111 -0.611,0 -0.2445,-0.8556 z m 5.7035,0.2037 0.082,0 c -0.036,0.1613 -0.082,0.3166 -0.1222,0.4482 l -0.082,0 0.1222,-0.4482 z m 4.8886,0.041 0,0.163 -0.082,0.2444 -0.2037,0 0.041,-0.2037 0.2445,-0.2037 z m -7.7404,0.082 0.2037,0.041 -0.041,0.082 -0.2037,0 0.041,-0.1222 z m -8.6366,0.082 0.6518,0.3667 -0.2851,1.0185 -0.2037,-0.082 -0.2445,-0.937 0.082,-0.3667 z m 20.899,0 0.4889,0.1223 0.3667,1.1407 -0.1223,0.4481 -0.2037,-0.041 0.1223,-0.4481 -0.4482,-0.1223 -0.041,0.2037 0.2445,0.7333 -0.2445,0.1222 c -0.1069,0.4001 0.086,0.6963 0.5296,0.8148 l -0.5703,0.2445 0.082,-0.3667 -0.4074,-0.1222 -0.3259,2.9332 -0.082,0.1629 -0.5703,-0.3259 0.082,-0.2037 0.4073,-0.774 c 0.069,-0.5531 -0.1193,-0.879 -0.4888,-0.9777 l 0.1222,-0.3667 0.4889,0.1222 0.041,-0.2444 -0.2037,-0.2852 0.3259,-0.082 -0.041,-1.0999 0.4481,-1.5888 z m -18.9843,0.041 0.4074,0.1223 -0.041,0.2037 -0.4074,-0.1223 0.041,-0.2037 z m 11.2032,0 0.163,0 c 0.066,0.058 0.1536,0.1175 0.2444,0.163 l -0.041,0.1222 -0.082,0.2852 -0.2852,-0.5296 0,-0.041 z m -19.962,0.041 0.3259,0.4889 -0.2445,-0.2444 -0.2036,-0.041 0.1222,-0.2037 z m 1.0999,0.082 0.163,0.041 0,0.163 -0.163,0.6518 -0.2037,-0.082 0.2037,-0.774 z m 31.0838,0 c 0.044,0.1029 0.088,0.1838 0.1629,0.2037 l 0.2037,0.041 0,0.4482 -1.711,6.3552 -0.4889,-0.1222 0.2852,-0.1222 0.041,-0.2037 0.6926,-3.4628 0.2851,-0.1222 0.041,-1.0592 0.4889,-1.9555 z m 1.0184,0 0.2037,0.041 -0.2037,0.6519 -0.2036,-0.082 0.1629,-0.5704 0.041,-0.041 z m -15.6437,0.1223 0.041,0.4481 -0.1222,0.041 -0.082,-0.3259 0.163,-0.163 z m 12.792,0 0.2037,0.041 -0.1222,0.3666 -0.2037,-0.041 0.1222,-0.3666 z m -9.5736,0.041 c 0.1346,0.034 0.3237,0.061 0.4889,0.082 l -0.1223,0.4888 -0.4481,-0.1629 0.082,-0.4074 z m -20.9805,0.3259 0.4888,0.1222 -0.082,0.2037 -0.1629,1.3851 c 0.01,-0.1844 -0.023,-0.3523 -0.082,-0.5703 l -0.2037,-0.8148 0.041,-0.3259 z m 3.2998,0.041 0.4482,0.082 c -0.1069,0.4 -0.01,0.695 0.2851,0.774 l -0.041,0.2037 c -0.4433,-0.1185 -0.7027,-0.1037 -0.774,0.163 l -0.2037,-0.041 -0.082,-0.6111 0.3666,-0.5704 z m 16.8252,0.041 0.2851,0 -0.082,0.2444 -0.2037,0 0,-0.2444 z m -13.7698,0.1629 0.2037,0.041 -0.041,1.0593 -0.4074,-0.1223 0.2445,-0.9777 z m 20.125,0.2037 0.4482,0.163 -0.041,0.1629 -0.4889,-0.1222 0.082,-0.2037 z m 3.0962,0 0.2037,0.041 -0.4481,0.937 -0.2037,-0.041 0.2037,-0.8147 0.2444,-0.1223 z m -19.5139,0.1223 0.937,0.041 -0.1222,0.5703 -0.9778,0 0.163,-0.6111 z m 8.5959,0.1629 0.2037,0 0,0.041 -0.2037,-0.041 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3628,0 0.3259,0 0,0.2037 -0.3666,0 0,-0.1222 0.041,-0.082 z m -19.5139,0.041 0.3259,0.5296 -0.2852,0.1222 -0.2037,-0.041 c 0.062,-0.2333 0.1327,-0.4344 0.163,-0.6111 z m -4.3183,0.163 0.2037,0.041 -0.1223,0.3666 -0.2036,-0.041 0.1222,-0.3666 z m 32.3059,0 0.2037,0.041 c -0.107,0.4 -0.01,0.695 0.2852,0.774 l -1.4259,3.5035 0.2037,0.2445 -0.041,0.2037 -0.5296,0.8962 -0.2037,-0.041 0.1629,-1.4258 0.2445,-0.1222 0.1222,-0.4482 0.6926,-3.422 0.2851,-0.2037 z m -35.3613,0.1222 0.1222,0.8555 0.2037,0.1222 c -0.012,0.097 -0.014,0.1835 -0.041,0.2852 l 0,0.082 -0.041,-0.082 -0.2037,0.082 c 0.022,0.084 0.035,0.1372 0.041,0.2037 l -0.3667,0.1629 c -0.01,-0.044 -0.031,-0.08 -0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 0.163,-1.3444 z m 9.4514,0.041 0.6111,0.1629 -0.041,0.2037 -0.6926,0.082 0.1222,-0.4481 z m -4.8072,0.2444 0.2037,0.082 -0.163,0.5296 -0.2037,-0.041 0.163,-0.5703 z m 28.9653,0 0.2037,0.041 -0.2852,1.0185 -0.2037,-0.082 0.2852,-0.9777 z m -20.4916,0.1222 0.3666,0.5296 -0.1629,0.6111 -0.2037,-0.3259 -0.4074,-0.1222 c -0.1069,0.4 -0.4121,0.5667 -0.8555,0.4481 0.1069,-0.4 0,-0.6555 -0.4482,-0.774 l 0.041,-0.2037 0.4074,0.1222 0.163,0.2444 c 0.08,-0.2999 0.4464,-0.4543 1.0999,-0.5296 z m 10.8365,0.2037 0.1222,0 0,0.1223 -0.1222,-0.1223 z m 13.1179,0 0.8963,0.2445 -0.4481,1.7517 c -0.2956,-0.079 -0.3768,-0.5444 -0.163,-1.3443 l -0.4481,-0.082 0.1629,-0.5704 z m -6.1515,0.041 0.2851,0.5296 -0.041,0.2037 -0.2851,-0.5703 0.041,-0.163 z m -28.558,0.082 -0.2037,1.6296 -0.8148,0.2444 0.2445,-0.8962 c 0.449,-0.223 0.7308,-0.5469 0.774,-0.9778 z m 0.6926,0 0.2444,0.082 -0.082,0.3667 -0.2852,-0.082 0.1223,-0.3667 z m 21.8767,0.041 0.163,0.041 0,0.2445 -0.4074,0 0.2444,-0.2852 z m -9.5329,0.041 0.2037,0 0.163,0.2445 -0.2852,0 -0.082,0 0,-0.041 0,-0.2037 z m -6.9663,0.2445 0.4889,0.1222 -0.082,0.2444 -0.5296,0.937 -0.163,-0.2444 -0.2037,-0.082 -0.5296,0.2852 0.041,0.6518 c -0.2956,-0.079 -0.5041,0.048 -0.6111,0.4481 l -0.1629,-0.2444 -0.2037,-0.041 -0.2445,0.1222 0.2037,-1.6296 0.6111,0.163 0.1222,-0.4074 c 0.7391,0.1975 1.1561,0.074 1.2629,-0.3259 z m 2.8517,0.1222 0.2037,0.082 -0.082,0.3666 -0.2444,-0.041 0.1222,-0.4074 z m -7.8626,0.041 0.2037,0.082 -0.082,0.3666 -0.2444,-0.041 0.1222,-0.4074 z m 6.6405,0.041 0.2037,0.082 -0.082,0.4074 -0.2445,-0.041 0.1222,-0.4482 z m -9.2885,0.1222 0.2037,0.082 -0.2444,0.081 0.041,-0.1629 z m -0.041,0.2852 0.163,0.1222 0,0.041 -0.2037,-0.041 0.041,-0.1222 z m 15.7252,0.082 c 0,0.2065 -0.13,0.3082 -0.3259,0.3666 l -0.5296,0.041 0,-0.1629 0,-0.041 0.8555,-0.2037 z m 3.2591,0 c 0.013,0 0.029,-0.01 0.041,0 0.089,0.046 0.1749,0.1108 0.2037,0.2037 l -0.2444,0 0,-0.2037 z m 1.5481,0 0.4074,0 0.082,0.1222 -0.2037,0.8148 c -0.045,0 -0.075,0 -0.1222,0 l 0,0.2037 -0.2037,-0.2037 -0.4074,0 -0.163,-0.2445 0.1222,-0.4481 c 0.1893,0.051 0.3495,-0.044 0.4889,-0.2444 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.059 0,0.082 -0.099,0.3378 -0.3274,0.5985 -0.6519,0.7333 l -0.1222,-0.041 0.4482,-0.7741 z m 4.4405,0 -0.041,0.2037 -0.4889,0 0,-0.1223 c 0.2002,-0.028 0.3723,-0.051 0.5296,-0.082 z m 8.8811,0 0.2037,0.041 -0.082,0.3666 -0.2037,-0.041 0.082,-0.3666 z m -26.847,0.082 0.4074,0.1222 -0.1222,0.4481 -0.4074,-0.1222 0.1222,-0.4481 z m 9.7366,0.1222 0.163,0 -0.163,0.5703 0,-0.5703 z m -11.9772,0.163 -0.082,0.3666 0.4074,0.1222 0.1222,-0.3666 -0.4481,-0.1222 z m 4.9702,0.041 0.6925,0.2036 -0.1222,0.3667 0.4481,0.1222 0.163,-0.6111 0.3259,0.3667 c -0.3478,0.1723 -0.5887,0.4467 -0.7333,0.8148 -0.062,0.027 -0.089,0.046 -0.1222,0.082 l -0.2037,-0.041 c 0.1401,-0.4439 -0.02,-0.7271 -0.4074,-0.8148 l -0.2037,-0.041 c 0.072,-0.1147 0.1184,-0.2815 0.163,-0.4481 z m 16.9066,0 0.4074,0.1222 -0.082,0.2444 -0.4074,-0.1222 0.082,-0.2444 z m -14.4216,0.2036 0.1222,0.041 c -0.043,3e-4 -0.081,0 -0.1222,0 l 0,-0.041 z m -13.729,0.2445 0.4482,0.082 -0.082,0.2037 -0.4074,-0.1222 0.041,-0.163 z m 20.1658,0 0.1629,0.082 -0.2037,0.041 0.041,-0.1222 z m -10.4699,0.041 0.1629,0.2444 0.2037,0.041 c 0.1186,0.032 0.2233,0.042 0.3259,0.041 -0.1473,0.093 -0.295,0.1253 -0.4888,0.082 l -0.2037,0.6518 c 0.3876,0.088 0.6345,0.219 0.774,0.4482 l -0.4889,0.2444 0.4074,0.082 0.082,-0.2852 c 0.1221,0.2248 0.1522,0.5026 0.041,0.8555 l 0.6519,0.163 -0.3667,1.0999 -0.6111,-0.1222 0,2.1184 -1.3444,1.1407 0.2037,0.3259 -1.7517,2.4036 0.4481,-0.1222 0.2444,0.082 -0.1222,0.4074 -0.2852,-0.041 -0.2851,-0.3259 -0.2852,-0.041 -0.1222,0.4889 -0.2852,-0.082 2.4851,-7.7812 0.2444,-0.041 -0.2852,0.9778 0.6519,0.1222 0.4073,-1.3037 -0.4481,-0.082 0.041,-0.1222 -0.2037,-0.082 -0.2852,0 0.041,-0.1222 0.2852,-0.041 0.082,-0.2037 -0.2444,-0.082 0.1629,-0.5703 -0.2037,-0.2852 0.082,-0.2037 0.2852,-0.082 z m 6.6811,0.041 0.2037,0.041 -0.041,0.1222 -0.1629,-0.163 z m 7.8626,0 0.041,0.1629 -0.2851,-0.082 0.2444,-0.082 z m -20.0435,0.1222 0.4482,0.774 -0.326,0.163 -0.1629,-0.041 0.041,-0.8963 z m -0.6925,0.041 0.2037,0.041 -0.1223,0.4481 -0.2037,-0.041 0.1223,-0.4481 z m 19.8805,0.1629 -0.082,0.2445 -0.2037,-0.041 0,-0.082 0.2852,-0.1222 z m -1.3851,0.1223 0.082,0.1222 0,0.2852 -0.4481,-0.1223 0.1629,0 0.2037,-0.2851 z m 3.8702,0.1222 0.2444,0.082 0,0.2852 0,0.6518 0,0.1222 -0.3259,0.1222 -0.4074,-0.082 0.2852,-1.1407 0.041,0 c 0.064,-0.01 0.1028,-0.032 0.163,-0.041 z m -25.3803,0.1222 0.3666,0.4889 -0.4888,-0.1223 0.1222,-0.3666 z m 35.4021,0.041 0.2037,0.041 -0.1223,0.3666 -0.2037,-0.041 0.1223,-0.3666 z m -11.4477,0.1222 -0.041,0.2037 -0.774,0.082 -0.2037,-0.082 0,-0.041 1.0185,-0.1629 z m 6.4368,0 -0.041,0.2037 0.4074,0.082 0.041,-0.163 -0.4074,-0.1222 z m -27.1728,0.2444 0,0.2037 -0.4074,0.2037 0.3259,0.3259 -0.1222,0.082 -0.2852,-0.082 0.082,-0.3259 -0.1222,-0.041 0,-0.041 0.5296,-0.3259 z m 3.1369,0 0.3666,0.082 -0.2444,0.6926 -0.3259,-0.081 0.2037,-0.6926 z m 8.3107,0 0.4074,0 0,0.041 -0.4074,0 0,-0.041 z m -13.6068,0.082 0.2037,0.041 -0.3667,1.3444 c -0.019,-0.2982 -0.091,-0.4868 -0.2444,-0.5703 l 0.041,-0.3259 0.3667,-0.4889 z m 10.3069,0.082 0.2445,0.082 -0.1222,0.4482 -0.2852,-0.041 0.1629,-0.4889 z m 2.1185,0.041 0.2444,0.041 -0.082,0.2445 0.041,0.1629 c -0.01,0.1969 0.032,0.3372 0.1222,0.4482 l 0,0.082 -0.1629,0 -0.4074,0.4481 -0.2037,0 0.2444,-0.8555 0.163,-0.2852 -0.041,-0.041 0.082,-0.2444 z m 1.3851,0.041 0.2444,0.2852 0,0.2852 c -0.1625,-0.1175 -0.2809,-0.2535 -0.4074,-0.3667 l 0.163,-0.2037 z m -7.6997,0.2037 0.2852,0.041 -0.163,0.4889 -0.2444,-0.082 0.1222,-0.4481 z m 13.9735,0.082 0.2037,0.041 0.3259,0.4889 -0.082,0.2444 -0.2037,-0.082 -0.082,-0.082 0,-0.1629 -0.2037,0 c 0.013,-0.1553 0.042,-0.3219 0.041,-0.4481 z m -16.54,0.082 -0.1222,0.3667 -0.041,1.4259 -0.6519,0.8147 0.3667,0.081 -0.4481,0.1223 -0.082,0.2444 0.2851,0.3259 -0.041,0.2037 -0.5703,0.6111 0.082,0.9777 -0.8555,1.4259 0.2852,0.2851 -0.6111,-0.1222 0.4481,-1.5481 -1.5073,0.8556 0.2851,0.2851 -1.0184,0.4482 c -0.1112,-0.2193 -0.218,-0.4175 -0.326,-0.6519 -0.01,-0.011 0,-0.03 0,-0.041 l 0.1223,-0.774 0.2851,0.082 0.6926,0.4481 c -0.2006,-0.6795 -0.5592,-1.0906 -1.1407,-1.2221 l 0.2037,-0.6926 c 0.015,-0.046 0.027,-0.077 0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 -0.081,-0.041 c 0.068,-0.2257 0.108,-0.4498 0.163,-0.6518 l 0.1629,-0.1222 0.041,-0.2037 -0.041,-0.1223 c 0.059,-0.2398 0.045,-0.4104 0.082,-0.611 0.2166,-0.041 0.4501,-0.155 0.6926,-0.3667 -0.087,0.5222 -0.036,0.8328 0.2444,0.8963 l -0.3259,0.2037 -0.041,0.082 c -0.1805,0.1124 -0.3751,0.2434 -0.5296,0.3666 l -0.041,0.2444 0.4074,0.1223 -0.3259,1.6702 0.5703,0.1223 0.1222,-0.4074 0.4482,-0.2037 -0.2852,-0.2852 -0.2852,-0.082 0.082,-0.2037 1.5074,0.1222 0.2037,-0.6925 -0.5296,-0.1223 0.1222,-0.4073 0.5703,0.1222 0.3667,-1.1407 0.2444,-0.163 -0.2037,-0.041 0.4889,-1.548 0.3259,-0.1223 z m -6.1108,0.041 0.2444,0.082 -0.1222,0.3667 -0.2037,-0.041 0.082,-0.4074 z m 24.0359,0 0.1629,0.2445 0.2037,0.082 0.3259,-0.1222 -0.041,0.1629 c -0.3961,0.037 -0.7256,0.1179 -0.9777,0.2037 l -0.041,0 -0.1629,-0.041 0.2851,-0.4481 0.2445,-0.082 z m -12.018,0.082 0.6111,0.1223 -0.1222,0.4074 -0.4889,-0.5297 z m 3.9517,0.1223 0.3259,0.082 -0.041,0.1629 -0.2852,0.082 0,-0.041 0,-0.2851 z m 4.8072,0.041 0.2037,0.041 0,0.041 -0.2037,0 c 0,-0.03 0,-0.052 0,-0.082 z m -13.8105,0.082 0.2852,0.082 -0.082,0.611 -0.3667,0.1223 0.041,-0.4074 0.1222,-0.4074 z m 29.5764,0.041 0.2037,0.041 -0.1222,0.3666 -0.2037,-0.041 0.1222,-0.3666 z m -7.4552,0.3259 0.4074,0.1222 -0.082,0.4481 -0.4074,-0.2444 0.082,-0.3259 z m -26.358,0.041 0.4073,0.1222 -0.082,0.2037 -0.4073,-0.1222 0.082,-0.2037 z m 1.6702,0 0.2037,0.2444 -0.041,0.2037 -0.3259,-0.3259 0.163,-0.1222 z m 18.1696,0.041 c 0.1619,0.088 0.2757,0.1838 0.4889,0.2851 -0.019,0.058 -0.041,0.1397 -0.041,0.2037 l -0.5297,0 c 0.032,-0.1732 0.06,-0.336 0.082,-0.4888 z m -3.2591,0.2037 0.1629,0 0,0.041 -0.1629,-0.041 z m -12.1402,0.2037 -0.082,0.5703 -0.041,0.2444 -0.2852,-0.082 0.041,-0.611 0.3667,-0.1223 z m -3.2999,0.082 0.2445,0.041 -0.1222,0.4888 -0.2852,-0.041 0.1629,-0.4888 z m 10.7144,0.041 0.7333,0.1629 0,0.082 -0.082,0.2444 -0.082,0.1223 0,0.1629 0,0.041 -0.1223,0.2852 -0.082,0 -0.2036,-0.2852 c 0.017,-0.3233 -0.065,-0.5992 -0.163,-0.8148 z m 20.0027,0 c -0.1782,0.6666 0.096,1.3875 0.6926,2.1184 l 0.2444,-0.1222 0.163,0.2444 -0.041,0.163 c -0.2464,-0.066 -0.4957,0.012 -0.6926,0.1629 -0.042,-0.016 -0.074,-0.03 -0.1222,-0.041 l -0.3666,0.1222 c 0.1402,-0.4438 0.062,-0.7271 -0.3259,-0.8148 l -0.4074,0.1223 -0.041,0.082 -0.2852,-0.2037 c 0.2165,-0.5136 0.4453,-0.7099 0.8148,-0.6111 l 0.1222,-0.4074 -0.6111,-0.163 0.8555,-0.6518 z m 2.4036,0.041 0.326,0.4888 -0.1223,0.4482 -0.2851,-0.5704 0.082,-0.3666 z m -17.9658,0.082 0.2852,0.082 -0.1222,0.4074 -0.2445,-0.326 0.082,-0.1629 z m -14.2586,0.041 0.2852,0.041 -0.082,0.2037 c -0.1131,0.033 -0.218,0.087 -0.3259,0.1222 l 0.1222,-0.3667 z m 15.7659,0 0.7333,0 -0.082,0.2037 -0.6925,0.082 c 0.022,-0.1067 0.02,-0.184 0.041,-0.2852 z m -3.9924,0.082 0.041,0 0,0.1222 -0.041,0 0,-0.1222 z m 19.6769,0 0.2037,0.041 -0.2037,0.8147 -0.2037,-0.041 0.2037,-0.8147 z m -28.4357,0.1629 0.5703,0.1222 -0.2444,0.6926 -0.3667,-0.6111 0.041,-0.2037 z m 2.1591,0.041 -0.082,1.1407 0.6111,0.163 0.082,-1.1815 -0.6111,-0.1222 z m 19.5547,0.1222 0.1629,0.041 -0.1222,0.4482 -0.2037,-0.041 0,-0.041 0.041,0 0.1223,-0.4074 z m -13.4438,0.041 0.1222,0 0.2852,0.7333 -0.1223,0.163 -0.1629,0 -0.2037,-0.6111 c 0.01,-0.011 0,-0.029 0,-0.041 l 0,-0.041 c 0.026,-0.066 0.056,-0.134 0.082,-0.2037 z m 6.3145,0 0.4074,0 -0.082,0.4889 -0.3259,0 0,-0.4889 z m 4.0331,0 0.2445,0.041 -0.041,0.163 -0.2445,-0.082 0.041,-0.1222 z m -25.7062,0.082 0.082,0.041 -0.041,0.2037 -0.082,-0.041 0.041,-0.2037 z m 38.1723,0.082 -0.041,0.163 0.041,0.041 0,-0.2037 z m -21.5508,0.041 0.082,0 0,0.3259 -0.2037,-0.041 0.1222,-0.2851 z m -10.918,0.2445 c 0.2732,-0.046 0.6794,-0.013 1.1814,0.041 l -0.1222,0.4074 c -0.3876,-0.088 -0.7501,0.1822 -0.937,0.774 l -0.5704,-0.8963 c 0.053,-0.1664 0.1749,-0.2802 0.4482,-0.3259 z m 14.0956,0.041 0.3259,0 -0.1222,0.2037 -0.2037,0 0,-0.2037 z m 0.774,0 0.082,0 0,0.2037 -0.041,0 -0.041,-0.2037 z m 15.1549,0.041 0.4889,0.1222 -0.2852,1.0185 -0.3667,-0.4889 0.163,-0.6518 z m -17.9658,0.041 0.2444,0.041 -0.2852,0.082 0.041,-0.1222 z m 10.8365,0 0.2037,0.041 -0.041,0.1222 -0.2444,0.1222 0,0.082 -0.041,0 0.041,-0.082 0.082,-0.2852 z m 9.5736,0.1222 -0.1222,0.082 -0.082,0.1629 0.2037,0.2445 0,-0.4889 z m -13.8104,0.082 0.4073,0.082 -0.3259,0.4481 -0.3259,-0.082 -0.041,-0.1629 0.2852,-0.2852 z m -10.4292,0.041 0.1222,0.081 0,0.2444 -0.1629,-0.041 c 0.032,-0.1024 0.017,-0.1886 0.041,-0.2851 z m 13.8512,0.041 0.6111,0.5296 0.041,0.041 -0.1222,0.6111 c -0.1738,-0.1302 -0.3351,-0.2839 -0.4889,-0.3667 -0.043,-0.2456 -0.071,-0.5151 -0.041,-0.8147 z m -8.5551,0.041 0.3666,0 0,0.2444 -0.3666,0 0,-0.2444 z m -16.4585,0.082 0.1629,0.041 -0.1222,0.4074 -0.2852,-0.082 0.082,-0.2852 0.163,-0.082 z m 4.1961,0.2037 0.5296,0.1222 0,1.1814 c -0.3391,-0.077 -0.521,-0.509 -0.5296,-1.3036 z m 1.7925,0.1629 -0.2445,0.6926 0.6519,0.163 0.2037,-0.6926 -0.6111,-0.163 z m 3.0146,0.2445 c 0.537,0.1214 0.591,1.2374 0.163,3.2998 -0.149,0.2487 -0.3559,0.7021 -0.5703,1.1407 l -0.5704,-0.1222 -0.5296,-1.3444 c 0.3877,0.088 0.5932,-0.086 0.7333,-0.5296 l 0.082,-1.1814 0.2037,0.2444 0.6518,0.163 -0.1629,-1.6703 z m 9.6959,0.041 0.1222,0.1222 -0.2444,0.2852 -0.1222,0.4481 -0.1223,0 -0.2851,-0.082 -0.041,-0.4481 0.082,-0.1222 0.2444,0.2444 0.3667,-0.4481 z m 5.3775,0 c 1e-4,0.306 -0.1563,0.4481 -0.5703,0.4481 l 0,0.2037 0.4074,0 -0.3667,0.6518 -0.4074,-0.082 0.082,-0.082 0,-0.2851 -0.041,-0.041 0.4074,-0.7741 c 0.1595,-0.01 0.3126,-0.041 0.4889,-0.041 z m -13.4438,0.041 0.2852,0.041 -0.4482,1.2629 -0.082,0.3259 c 0.198,0.081 0.3667,0.1667 0.5297,0.2444 l -0.2445,0.4482 -0.1222,-0.2037 -0.3259,0.1629 -0.2444,-0.041 c 0.067,-0.1419 0.1305,-0.2725 0.2037,-0.4889 l -0.2037,0 0.1629,-0.4888 0.041,0.041 0.2852,0 0.1629,-1.3037 z m -8.1885,0.082 0.5703,0.1222 -0.1629,0.4074 -0.4074,-0.5296 z m 13.1586,0.082 0.082,0.082 -0.1629,-0.041 0.082,-0.041 z m 4.3591,0 0.3259,0 c -0.046,0.2542 -0.075,0.4486 -0.081,0.6518 l -0.6111,0 0.082,-0.5703 0.2852,-0.082 z m -3.1369,0.082 0.082,0.4888 c -0.2042,-0.1067 -0.3488,-0.235 -0.4481,-0.4074 l 0.3666,-0.082 z m -1.7518,0.082 -0.1222,0.4888 -0.1629,0 0,-0.4073 0.2851,-0.082 z m 18.0066,0.041 0.2037,0.041 -0.1629,0.6518 -0.2037,-0.082 0.1629,-0.6111 z m 0.6518,0 0.4889,0.1222 -0.4074,1.4666 -0.1629,-0.041 c -0.083,-0.019 -0.171,0.021 -0.2445,0.041 l 0,-0.3667 0.3259,-1.2221 z m -21.2249,0.041 0.1222,0 0,0.041 -0.1222,-0.041 z m 3.5035,0.1222 c 0.081,0.036 0.1343,0.08 0.2037,0.1222 l -0.2444,0.041 0.041,-0.1629 z m -12.1809,0.082 0.2852,0.041 -0.2852,0.8963 -0.2852,-0.041 0.2852,-0.8963 z m 1.7925,0.1629 -0.1222,0.4482 0.6111,0.1222 -0.4889,-0.5704 z m 19.5954,0 c 0.045,0.041 0.1551,0.1195 0.2037,0.163 l -0.082,0.5296 -0.8963,2.8517 -0.5703,0.8148 0.3667,1.0592 -0.6519,-0.1629 -0.3666,2.0776 -0.5296,-0.1222 0,-0.9777 0.3259,-0.1222 0.082,-0.2037 0.1629,-1.4666 0.4889,-0.5704 -0.1222,-0.1222 c 0.028,-0.055 0.041,-0.1272 0.041,-0.2037 l 0.2037,-0.1222 -0.4074,-0.5703 0.3666,-0.1223 0.2445,0.041 0.082,-1.1406 0.3666,-1.1407 0.5296,0.1222 0.163,-0.6111 z m 1.2629,0.082 0.1222,0.163 -0.1629,-0.041 0.041,-0.1222 z m 1.8333,0.1223 0.082,1.6295 0.4888,0.1222 0.2037,-0.2037 -0.2444,0.8148 c -0.1147,-0.1898 -0.1569,-0.2813 -0.2852,-0.4889 l -0.2037,0.082 c -0.022,-0.018 -0.055,-0.024 -0.082,-0.041 l -0.4074,-0.6518 0.4482,-1.2629 z m 0.5296,0 0.3666,0.082 0,0.082 -0.2444,0.3666 -0.2444,-0.082 0.1222,-0.4481 z m 3.7887,0.1629 0.2037,0.041 -0.1222,0.4481 -0.2037,-0.082 0.1222,-0.4073 z m 1.7925,0.2444 0.2037,0.082 0,1.0593 0,0.041 c -0.05,0.036 -0.1167,0.064 -0.163,0.1222 l -0.3666,-0.082 0.3259,-1.2222 z m -32.1022,0.041 0.2444,0.082 -0.9777,3.0962 -0.2445,-0.041 0.9778,-3.1369 z m 29.5764,0.163 0.082,0.041 -0.163,0.6111 -0.2037,-0.041 0.1223,-0.4481 0.1629,-0.163 z m -14.0142,0.163 0.2037,0 0,0.4888 -0.2037,0 0,-0.4888 z m 11.6921,0.082 0.2037,0.082 0.041,0.2444 -0.2852,-0.2037 0.041,-0.1222 z m -24.2804,0.082 -0.1629,0.4481 0.611,0.1629 0.163,-0.4888 -0.6111,-0.1222 z m 27.1321,0.041 0.2037,0.041 0.041,0.6925 -0.4074,-0.1222 0.163,-0.6111 z m -29.0468,0.041 0.2852,0.041 -0.2037,0.6518 -0.2445,-0.082 0.163,-0.6111 z m 31.5726,0.2036 0.4074,0.1223 -0.082,1.0592 -0.082,0.3259 -0.2444,-0.082 0.082,-1.1407 c -0.055,-0.012 -0.1121,0 -0.163,0 l 0.082,-0.2852 z m -19.5547,0.2445 0.041,0 0,0.4481 -0.2036,0 0.1629,-0.4481 z m -5.5404,0.041 0.6925,0.1629 -0.5703,1.1815 -0.3259,0.4481 -0.082,0 0.2037,-0.6111 0,-1.0592 c 0.035,-0.028 0.048,-0.074 0.082,-0.1222 z m 5.9478,0.2037 0.4074,0 0,0.4888 0.2445,0 0.041,-0.041 -0.041,0.2852 -0.326,0.082 -0.041,-0.1222 0.041,-0.2037 -0.3666,-0.082 -0.163,0.041 c 0.1409,-0.1216 0.2037,-0.2569 0.2037,-0.4481 z m 13.892,0 0.2444,0.041 0.1222,0.7333 -0.082,0.2444 -0.4074,-0.6111 0.1223,-0.4074 z m -11.8143,0.2037 0.082,0 -0.2037,0.8962 -0.082,0.041 -0.2037,-0.2037 c -0.1035,0 -0.1645,0.01 -0.2444,0.041 l 0.2037,-0.6518 0.4481,-0.1222 z m 0.7741,0 0.4888,0 0.163,0.041 -0.2445,0.774 -0.5296,0.3259 -0.2444,0 0.082,-0.2037 0.163,0 0,-0.2037 0.2851,-0.082 -0.2851,-0.2851 0.1222,-0.3667 z m 2.8517,0 0.6518,0 -0.082,0.2037 -0.6111,-0.1223 0.041,-0.082 z m -22.5286,0.1629 0.6518,0.163 -0.4889,0.6111 -0.3666,-0.082 0.2037,-0.6926 z m 14.9511,0.1222 0.2037,0 0.3667,0.082 -0.4074,0.2037 -0.041,0.2037 0.041,0.1222 -0.163,0.041 -0.2036,0 0.2036,-0.6518 z m 20.0028,0.041 0.2037,0.041 -0.041,0.2037 -0.2037,-0.041 0.041,-0.2037 z m -18.8213,0.163 0.2444,0.041 -0.041,0.2037 -0.2852,0.041 0.082,-0.2852 z m 6.1923,0 0.2852,0.041 -0.041,0.082 -0.2445,-0.082 0,-0.041 z m 6.1516,0.2037 0.6518,0.1222 0.2851,0.8555 c 0.027,0.314 0.036,0.6162 -0.041,0.937 l -0.2036,-0.082 0.1629,-0.4481 -0.5703,-0.1222 -0.041,0.2037 0.3259,0.8147 -0.3259,0.1223 c -0.1052,0.3329 -0.023,0.6072 0.2851,0.774 -0.041,0.1099 -0.074,0.22 -0.1222,0.3259 l -0.2444,0.082 0.1222,-0.4074 -0.5703,-0.1222 -0.2445,1.7518 c -0.1707,0.1743 -0.3679,0.3712 -0.5703,0.5296 l 0.2037,-0.2852 c 0.09,-0.6137 -0.1266,-0.9903 -0.6111,-1.0999 l 0.1222,-0.4074 0.6111,0.1222 0.1222,-0.2852 -0.3259,-0.2852 0.4481,-0.1222 0,-1.1814 0.5296,-1.7925 z m -27.3766,0.041 0.8148,0.4074 -0.3259,1.0999 -0.2852,-0.082 -0.3259,-1.0184 0.1222,-0.4074 z m 2.4851,0.041 0.5703,0.1222 -0.082,0.2037 -0.5296,-0.1222 0.041,-0.2037 z m 32.0208,0.1222 0.2851,0.041 -0.2037,0.6926 -0.2851,-0.041 0.2037,-0.6926 z m -23.3027,0.041 0.2037,0 0,0.2037 -0.2444,-0.041 0.041,-0.163 z m 10.144,0 0,0.082 -0.041,0 0.041,-0.082 z m 11.8143,0.2852 -0.3667,1.3444 -0.041,0 0.4074,-1.3444 z m -11.4884,0.082 0.2444,0.082 -0.082,0.2037 -0.2851,0.1222 0.1222,-0.4074 z m 10.3069,0 0.041,0 c 0.027,0.1987 0.01,0.418 -0.041,0.6518 l -0.1629,-0.041 0.1629,-0.6111 z m 1.5889,0 0.1222,0.041 0,0.2037 -0.163,-0.041 0.041,-0.2037 z m -16.3363,0.1222 0.1629,0 -0.4481,0.4481 -0.2037,0 0.4889,-0.4481 z m 3.1369,0 0.2851,0 -0.082,0.4481 -0.3259,0 0.1222,-0.4481 z m -22.4471,0.2037 0.082,0.1222 -0.041,0.082 c -0.011,-0.069 -0.041,-0.1361 -0.041,-0.2037 z m 20.1657,0 0.5296,0 0.082,0.082 -0.082,0.3259 -0.6111,-0.1222 0.082,-0.2852 z m -18.9028,0.082 0.2037,0.041 0,0.2444 c -0.066,-0.097 -0.1384,-0.184 -0.2037,-0.2852 z m 10.7143,0.2037 -0.082,0.2852 -0.041,0.082 -0.041,0.1222 -0.163,-0.2037 0.3259,-0.2852 z m 19.7176,0 0.2037,0.041 -0.082,0.1629 c -0.028,-0.054 -0.092,-0.1466 -0.1222,-0.2037 z m -4.1554,0.041 0.6111,0.1222 -0.082,0.2444 -0.6111,-0.1629 0.082,-0.2037 z m 7.9441,0 0.163,0.041 -0.2852,0.9777 -0.1222,-0.041 0.2444,-0.9777 z m -29.4542,0.082 1.2222,0.082 -0.2037,0.6111 -1.2629,0 0.2444,-0.6926 z m 10.918,0.041 0.6518,0 0,0.2037 -0.1222,0 -0.6111,-0.163 c 0.029,-0.014 0.051,-0.027 0.082,-0.041 z m 14.2994,0.082 0.2851,0.4074 -0.2851,0.4481 -0.2445,-0.041 0.2445,-0.8148 z m 1.1406,0.3259 0.1223,0.6111 -0.2852,-0.082 0.1629,-0.5296 z m 4.1554,0.041 0.1222,0 c -0.064,0.204 -0.057,0.3921 0,0.5296 l -0.041,0 -0.1222,0.4074 0.041,0.8962 -0.4074,0.4889 -0.2037,-0.041 0.3259,-1.1814 -0.4481,-0.1222 0.2444,-0.8148 0.4074,0.1222 0.082,-0.2852 z m -17.2325,0.041 0.3666,0 0,0.2852 -0.2444,0.082 -0.1222,-0.041 0,-0.3259 z m 0.774,0 0.4074,0 -0.163,0.5703 -0.2444,-0.041 -0.082,-0.082 0.082,0 0,-0.4481 z m 2.037,0 0.4073,0 -0.1222,0.6926 c -0.1459,0.1526 -0.3487,0.2496 -0.5703,0.3259 l -0.6111,-0.4482 c 0.097,0.029 0.2025,0.064 0.3259,0.082 0.414,0 0.5704,-0.1928 0.5704,-0.6518 z m -22.4472,0.041 c 0.01,0.018 0.071,0.022 0.082,0.041 l -0.082,0 0,-0.041 z m 2.7703,0.041 0.8148,0.2037 -0.082,0.2037 -0.8148,0.082 c -0.02,-0.022 -0.021,-0.059 -0.041,-0.082 l 0.1222,-0.4074 z m 21.4286,0 0.2852,0.1629 -0.082,0.2037 -0.2852,-0.041 0.082,-0.3259 z m -2.3221,0.082 0.2852,0.082 -0.2852,0 0,-0.082 z m -14.2993,0.3666 0.4888,0.5296 -0.2037,0.6519 -0.041,0 -0.2444,-0.3259 -0.5296,-0.1223 c -0.048,0.151 -0.1391,0.2794 -0.2444,0.3667 l -0.8555,-0.2444 c -0.047,-0.2319 -0.2222,-0.4009 -0.6111,-0.4889 l 0.041,-0.2037 0.5703,0.1222 0.2037,0.2444 c 0.1053,-0.3329 0.5689,-0.446 1.4259,-0.5296 z m 3.1776,0.326 0.3667,0.4481 -0.6519,-0.1222 0.2852,-0.3259 z m 21.6731,0 0.1222,0.2036 c -0.02,0.075 -0.087,0.1637 -0.1222,0.2445 l -0.1222,-0.041 0.1222,-0.4074 z m -1.3444,0.1222 0.2037,0.3666 -0.041,0.2037 -0.2445,-0.3666 c 0.023,-0.07 0.061,-0.132 0.082,-0.2037 z m -25.9099,0.4074 0.2444,0.041 -0.1222,0.4073 -0.2444,-0.041 0.1222,-0.4073 z m -1.5074,0.082 0.2037,0.041 -0.041,0.1222 c -0.061,-0.042 -0.1022,-0.1177 -0.1629,-0.163 z m -3.9109,0.082 c 0.1984,0.045 0.3656,0.1069 0.5296,0.1222 l 0.4889,0.6111 0,-0.4889 -0.1222,-0.1222 c 0.1736,-0.011 0.3316,-0.066 0.4481,-0.1222 0.1559,0.2001 0.3052,0.427 0.4889,0.6518 l -0.326,0.4481 -0.1222,-0.1222 -0.082,-0.163 -0.2852,-0.041 -0.6518,0.2852 0.041,0.6111 c -0.1697,-0.1506 -0.3284,-0.3246 -0.4888,-0.4889 l 0.082,-0.2037 -0.3667,-0.082 c -0.1552,-0.1722 -0.3026,-0.3448 -0.4481,-0.5296 l 0.6518,0.1222 0.163,-0.4888 z m 11.7328,0.2444 0.4481,0 0,0.4889 -0.4481,0 0,-0.4889 z m 11.6921,0 0.1629,0 0,0.1222 -0.1629,-0.1222 z m -4.4406,0.041 0.163,0.2852 -0.041,0.1629 -0.9778,0 -0.2851,0 0,-0.041 c 0.097,0.022 0.1954,0.061 0.2851,0.041 0.1795,-0.041 0.3597,-0.1964 0.4889,-0.4074 l 0.3667,-0.041 z m -0.7333,0.041 0,0.041 -0.5296,0 0.5296,-0.041 z m 2.1999,0.041 c 0.1,0.077 0.157,0.2268 0.163,0.3666 l -0.6926,0 0.163,-0.2851 0.3666,-0.082 z m 17.1103,0.041 0.163,0.041 -0.041,0.1629 -0.163,-0.082 0.041,-0.1222 z m -21.1434,0.041 0.1222,0 c 0.1262,0.063 0.2198,0.1547 0.2444,0.2852 l -0.3666,0 0,-0.2852 z m 11.692,0.4481 0.5296,0.1222 -0.082,0.2445 -0.5296,-0.1222 0.082,-0.2445 z m -13.0364,0.082 0.1629,0.1222 -0.082,0.2037 -0.082,-0.041 0,-0.2851 z m -4.1146,0.082 0.2444,0.041 0.1222,0.082 0.163,0 -0.082,0.2445 -0.3667,0.2036 -0.1222,0.041 0,-0.082 0.1222,0.041 0.041,-0.2036 -0.1222,-0.2852 0,-0.082 z m 25.421,0.041 0.1222,0.4481 -0.1222,0.2852 0,-0.7333 z m -16.1733,0.163 -0.041,0.2037 -0.041,0.4888 -0.937,-0.1222 -0.082,-0.082 0.774,-0.3666 -0.3666,-0.082 0.6925,-0.041 z m -3.5036,0.041 -0.041,0.1222 -0.2851,-0.082 0.3259,-0.041 z m 4.7665,0 0.4481,0.082 0,0.041 0,0.2037 c -0.1904,-10e-5 -0.2989,0.048 -0.4074,0.1222 l -0.041,-0.4482 z m -2.5666,0.041 -0.1222,0.4481 -0.6111,-0.082 -0.2444,-0.2444 -0.082,0.2037 -0.2852,-0.041 0.082,-0.2445 0.082,0 0.2037,0.082 -0.041,-0.082 0.2852,0 0.7333,-0.041 z m 3.7888,0 0.1222,0.041 -0.1222,0 0,-0.041 z m -15.2771,0.041 0.1629,0.2444 0.2852,0 0.163,-0.1222 0.2851,0.2852 -0.3259,0.3666 c -0.7618,0.018 -1.1993,0.1248 -1.2629,0.3259 l -0.082,0.2037 0.2852,0.082 0.5296,0 -0.2444,0.2852 c -0.3068,0 -0.7246,-0.1575 -1.1815,-0.3667 l 0.1223,-0.3259 -0.3667,-0.082 -0.3259,0.163 c -0.3254,-0.1839 -0.6735,-0.4253 -1.0592,-0.6926 0.5299,0.1199 0.9408,0.021 1.2222,-0.2852 0.452,0.097 0.8964,0.163 1.3851,0.163 l 0.082,0 0.1629,0.041 0.041,-0.163 0.1222,-0.1222 z m 1.9147,0.082 c 0.012,0.2781 0.1751,0.4716 0.6111,0.5703 l -0.041,0.1222 -0.163,0.082 c -0.4016,-0.033 -0.7787,-0.07 -1.0999,-0.082 0.1875,-0.1742 0.4654,-0.4655 0.6925,-0.6925 z m 25.1766,0 0.1222,0.041 -0.2444,1.0184 -0.1222,-0.041 0.2444,-1.0184 z m -10.9587,0.082 0.2444,0.082 -0.082,0.2851 -0.1629,0 0,-0.3666 z m -20.8176,0.1222 c 0.2965,0.3446 0.6324,0.7122 0.9777,1.0999 l -0.7333,-0.1629 c -0.2939,-0.2508 -0.5827,-0.5253 -0.8555,-0.8148 l 0.6111,-0.1222 z m -1.0592,0.2444 0.4481,0.7333 -0.3259,0 c -0.2313,-0.1353 -0.4738,-0.2499 -0.6925,-0.4074 0.047,-0.067 0.091,-0.1468 0.1222,-0.2444 l 0.4481,-0.082 z m 23.2212,0.163 0.5703,0.1222 0,1.1814 -0.4481,0.1222 -0.5296,-0.1222 0.4074,-1.3036 z m 11.2846,0.1222 -0.2037,0.4074 0.082,-0.3259 0.1222,-0.082 z m -16.2955,0.1222 0.2444,0 0,0.082 -0.2444,-0.041 0,-0.041 z m -19.6769,0.1222 c 0.029,0.01 0.054,0 0.082,0 l 0.082,0.082 -0.3666,0 0.2037,-0.082 z m 29.169,0.041 -0.041,0.3667 -0.2852,-0.082 c 0.1196,-0.087 0.2149,-0.1918 0.326,-0.2852 z m 3.8295,0 0,0.082 -0.041,0 0.041,-0.082 z m -0.9777,0.041 0.2036,0.082 c -0.072,0.065 -0.1696,0.1008 -0.2444,0.163 -0.1919,0.1594 -0.368,0.3385 -0.5703,0.4889 -0.078,-0.08 -0.1398,-0.2017 -0.2037,-0.326 0.1572,-0.079 0.2843,-0.1614 0.4481,-0.2444 l 0.3259,0.082 0.041,-0.2037 c 0.01,0 -0.01,-0.038 0,-0.041 z m -23.5471,0.2037 -1.1,0.5296 -0.1629,0 0,-0.2037 c 0.1087,0 0.2966,-0.111 0.5296,-0.2851 l 0.7333,-0.041 z m -4.9294,0.1222 c 0.1297,0.1454 0.2301,0.2561 0.3666,0.4074 l 0,0.2037 c -0.066,-0.043 -0.1389,-0.078 -0.2037,-0.1222 l 0.041,-0.082 -0.1629,-0.041 c -0.08,-0.056 -0.166,-0.1047 -0.2445,-0.163 l 0.163,-0.041 0.041,-0.1629 z m 10.0217,0.082 0.3667,0.2445 -0.082,0.082 -0.2037,0 c 0,-0.1208 -0.037,-0.2283 -0.082,-0.3259 z m -2.0369,0.3259 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 6.6404,0 0.4074,0 0,0.082 -0.2444,0.1223 -0.163,0 0,-0.2037 z m -3.0961,0.1223 0.4074,0.081 -0.4074,0 0,-0.081 z m 5.8256,0 0.2445,0.041 0.2444,0.2851 0.082,0 0,0.4074 c -0.3615,0.031 -0.758,0.061 -1.1407,0.082 l 0.3259,-0.4889 c 0.079,0 0.1557,0 0.2445,0 l 0,-0.3259 z m -6.4774,0.3259 0.6518,0 0,0.4888 -1.0185,0 0.3667,-0.4888 z m 8.1885,0.041 0.2851,0.082 -0.041,0.1222 c -0.1062,0.015 -0.2175,0.027 -0.3259,0.041 l 0.082,-0.2445 z m 9.4107,0.041 c -0.02,0.2876 -0.042,0.5616 0.041,0.774 l -0.163,0.082 -0.1222,0.4074 -0.3259,-0.4481 0.5703,-0.8148 z m -12.0588,0.041 c 0.01,0 0.03,0 0.041,0 l 0.041,0.041 -0.082,0.2444 -0.2444,-0.041 c 0.043,-0.093 0.1038,-0.1842 0.2444,-0.2444 z m -8.6366,0.1629 0.6518,0 0,0.2037 -0.6518,0.2037 0,-0.4074 z m 1.0185,0 0.4888,0 0,0.2037 -0.4888,0 0,-0.2037 z m 3.585,0 0.3666,0 -0.3666,0.4074 -0.4889,0 0.4889,-0.4074 z m -15.1549,0.2037 0.041,0 0,0.2037 -0.4481,0 0,-0.041 0.4074,-0.163 z m 3.3406,0 0.6111,0 0,0.2037 -0.6111,0 0,-0.2037 z m 4.9702,0 0.6111,0 0,0.2037 -0.6111,0 0,-0.2037 z m 3.9109,0 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 18.0473,0.041 0.082,0 0,0.041 -0.082,-0.041 z m -2.7295,0.081 0.041,0 -0.1629,0.4889 -0.5296,-0.1222 0.041,-0.082 c 0.1754,-0.071 0.4149,-0.2009 0.611,-0.2852 z m 5.2961,0 c 0.072,0.09 0.1611,0.1484 0.2444,0.2444 l 0,0.041 -0.4074,-0.082 c -0.029,-0.024 -0.055,-0.058 -0.082,-0.082 l 0.2444,-0.1222 z m -32.6319,0.2852 0.6519,0 0,0.2444 -0.6519,0 0,-0.2444 z m 2.9332,0 0.3667,0 -0.3667,0.5296 0,-0.5296 z m -3.5442,0.2444 0.4481,0 0,0.2852 -0.4481,0 0,-0.2852 z m 9.3292,0 0.611,0 1.0185,0.2852 1.2222,-0.2852 1.3036,0 0,0.4889 -5.1738,0 0,-0.2037 1.0185,-0.2852 z m 4.522,0 4.6035,0 -0.4482,0.4889 -0.2037,-0.2037 -1.0184,0.2037 -2.4851,0 -0.4481,-0.4889 z m 5.459,0 0.5703,0 0,0.2852 -0.5703,0 0,-0.2852 z m 15.3178,0 c -0.021,0.067 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.1629 0.041,-0.041 z m -30.5134,0.2852 1.0184,0 0,0.2037 -1.0184,0 0,-0.2037 z"
+           id="path6116"
+           transform="matrix(0.61596339,0,0,0.61596335,-145.60766,407.39447)" />
+        <path
+           inkscape:connector-curvature="0"
+           inkscape:export-ydpi="90"
+           inkscape:export-xdpi="90"
+           inkscape:export-filename="Z:\private\général\illustrations\Charte graphique\OD\OD 5.0\aboutpage\png\aboutpage_OD5.0.png"
+           style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.22999998;fill:#8ae234;fill-opacity:1;stroke:none;display:inline;filter:url(#filter4332);font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+           d="m -104.31687,974.2719 -2.5665,0.48886 0,1.34439 0.5703,-0.61109 0.6518,0 0,0.2037 -1.2221,0.40739 0,2.07768 0.2037,0 -0.2037,0.28517 0,0.85552 c -0.1243,0.11339 -0.1889,0.18925 -0.2852,0.28517 l 0,0.48886 c 0.096,-0.0462 0.1847,-0.0603 0.2852,-0.12221 l 0,0.7333 -0.2852,0.24443 0,8.55516 0.6111,2.24064 0.082,0.57034 c -0.028,0.0807 -0.061,0.16777 -0.082,0.24444 0.066,0.0489 0.1079,0.10817 0.1629,0.16295 l 0,0.16296 -0.2444,-0.0815 c -0.024,-0.006 -0.057,-10e-4 -0.082,0 0.036,-0.12665 0.062,-0.25692 0.1222,-0.36665 l -0.1629,-0.61108 -0.4074,0.0815 0,3.87019 c 0.014,-0.002 0.027,0.004 0.041,0 l 0.2037,-0.0407 0.041,-0.0407 0,0.85552 c -0.09,0.26172 -0.1903,0.50209 -0.2852,0.69256 l 0,0.97773 0.2444,0.0815 -0.041,0.16295 -0.2036,-0.0815 0,11.12172 0.1629,-1.1814 0.1222,0.041 0,1.0184 0.2037,0 0.4889,0.5296 c -0.1,0.082 -0.1897,0.1934 -0.2444,0.3667 l -0.2037,-0.2444 -0.082,0 -0.163,-0.6519 0,0.5704 -0.041,0 -0.2444,0.1222 0,0.8962 0.2851,-0.1222 0,0.3259 -0.1222,-0.041 -0.1222,0.4074 0.2444,0.041 0.3667,-0.1222 0,0.2444 -0.3667,0 0,0.8556 -0.2851,0.082 0,0.2037 0.2851,-0.082 0,0.082 c 0.4141,0 0.5704,-0.1422 0.5704,-0.4482 l -0.2037,-0.2037 0.5296,0 -0.1222,0.082 -0.082,0.2445 0.1222,0 0,0.082 0.2037,0.2444 0,0.2852 -1.0185,0 0,0.2444 3.3813,0 c 0.2347,-0.6383 0.527,-0.9777 0.937,-0.9777 l 0,-0.4074 -0.5703,0 -0.2852,0.2037 -0.1629,0 -0.2445,-0.3259 0.082,-0.2445 -0.2444,0.082 -0.6518,0 -0.3259,0.1223 0,-0.041 -0.3667,-0.082 -0.2852,0.2037 -0.4481,-0.2037 0,-0.2445 1.0592,0 0,-0.2037 -0.2037,-0.2037 0,-0.2444 0.4889,0.163 -0.082,0.2037 0.5703,0.1222 0.2852,-0.041 0.6111,0.2037 -0.082,0.2444 0.2852,0.082 0.5703,-0.041 0.6518,0.2444 0,0.2037 c -0.3219,10e-5 -0.8162,0.3865 -1.3851,1.1815 l 18.576905,0 c 0.082,-0.08 0.1635,-0.1631 0.2445,-0.2445 0.212,0.076 0.504,0.165 0.7333,0.2445 l 1.4666,0 -0.2445,-0.4074 1.1407,0.082 0.2037,0.082 -0.041,0.1629 -0.5296,0.082 0.7333,0 7.8626,0 0.041,-0.1629 c 0.061,0.031 0.1356,0.056 0.2037,0.082 l -0.041,0.082 1.3037,0 0.3666,-0.2445 -0.041,0.2445 2.5666,0 0.082,-0.2445 0.2444,0.041 -0.082,0.2037 0.4481,0 0,-1.3444 -0.082,0.2445 -0.2444,-0.041 0.1222,-0.4074 0.2037,0.082 0,-9.044 -0.1222,-0.041 0.1222,-0.5704 0,-1.711 -0.2852,0.082 -0.041,0.2037 0.2037,0.3259 -0.6111,1.0999 -0.2037,-0.041 0.937,-3.5035 0,-1.58882 -0.2851,0.12222 -0.041,1.05921 -0.6519,2.36289 -0.5703,0.2851 1.1814,-4.39976 0.3667,0.57034 0,-1.34438 -0.163,-0.0407 0.163,-0.57035 0,-1.83324 c -0.2598,-0.39209 -0.5239,-0.78278 -0.8148,-1.14069 l 0.8148,0.0407 0,-1.22217 -0.2037,0.85552 -0.2445,-0.0815 0.326,-1.18143 0.1222,0.0407 0,-3.54428 -0.082,0.28517 -0.4482,-0.12222 0.5297,-2.03694 0,-7.98482 -0.041,0.12222 -0.8148,0 -0.6518,-0.36665 -0.8148,0 0.041,-0.20369 -0.3259,-0.52961 0.082,-0.28517 0.2037,0.0407 0.8555,0.77404 0.2851,-0.16296 0.082,-0.28517 c -0.3162,-0.38756 -1.7549,-1.08882 -4.3183,-2.07768 l -1.0999,0 2.811,1.18142 -0.1223,0.40739 0.2852,-0.16295 0.6926,0.20369 -0.4889,0.81478 -0.2037,-0.0407 -0.1629,-0.28517 -0.2445,-0.0407 -0.3666,0.12222 0.1222,-0.40739 0.3666,-0.16296 0,-0.0407 -0.2444,-0.28517 -0.2444,-0.0815 -0.2852,0.2037 -0.2444,-0.0407 -0.6926,-0.48887 -0.5703,0.36665 -1.5481,-1.2629 -1.8333,0 -0.082,0.32591 -0.2444,-0.0407 0.082,-0.28517 -3.2998,0 1.0184,1.54807 0.2037,0.0407 -0.1629,0.69256 -0.4482,-0.12221 -0.082,0.20369 c 0.3277,0.0876 0.5624,0.55849 0.6926,1.38512 l -0.163,0.69256 -0.2444,-0.0815 0.1222,-0.44812 -0.7333,-0.2037 -0.1629,0.44813 0.4888,0.12222 -0.2444,0.89625 -0.4889,-0.12221 -0.2037,0.93699 0.4482,0.12222 -0.1222,0.40738 -0.4482,-0.12221 -0.1222,0.40739 0.4481,0.12221 -0.1629,0.69256 c -0.4097,-0.10951 -0.6971,0.12321 -0.937,0.69256 -0.022,0.0836 -0.038,0.17515 -0.041,0.24444 l -0.2444,-0.28517 -0.2037,0.28517 c -0.01,-0.0895 -0.01,-0.18894 0,-0.28517 l 0.2037,0 0,-0.2037 -0.163,-0.16295 c 0.014,-0.071 0.021,-0.12964 0.041,-0.2037 l 0.5296,0.16296 0.163,-0.65182 -0.4074,-0.61109 0.937,-1.38512 -0.2037,-0.0407 0.2851,-0.16295 0.082,-0.28518 -0.2037,-1.46659 0.6519,-0.24444 -0.2445,-0.0815 0.4482,-0.61108 c 0.1537,-1.06751 -0.199,-1.68478 -1.0592,-1.91472 l 0.2851,-0.16296 0.082,-0.24443 -1.5888,0 0,0.0815 0.6926,0.16296 -0.937,0.7333 c 0.085,-0.31634 0.048,-0.64018 -0.041,-0.97773 l -1.5888,0 -0.2037,0.69256 -0.2445,-0.0407 0.163,-0.65182 -0.937,0 0.2444,0.48886 -0.081,0.44813 -0.3666,-0.57034 0.082,-0.36665 -0.4481,0 -0.8556,3.09615 c -0.097,-0.0451 -0.1796,-0.0767 -0.2851,-0.12222 l -0.041,0 -0.163,-0.24443 0.2852,-0.12222 0.082,-1.18142 0.3666,-1.42586 -0.4888,0 -0.6111,2.36285 -0.2444,0 0.611,-2.36285 -2.6072,0 -0.041,0.16295 0.4481,0.12222 -0.2852,1.05921 c -0.9988,-0.37944 -1.8221,-0.65178 -2.4443,-0.65182 -0.1476,0.37417 -0.4355,0.62502 -0.7741,0.77404 -0.016,-0.069 -0.022,-0.13369 -0.041,-0.2037 l -0.041,-0.20369 0.5704,-0.0815 0,-0.28517 c 0,-0.20089 -0.2546,-0.36699 -0.7741,-0.48887 l -0.041,-0.20369 -0.9777,0 c 0.001,0.0136 0,0.0271 0,0.0407 l 0,0.24443 c -0.2787,-0.13728 -0.624,-0.21604 -1.0185,-0.28517 l -1.711,0 0,0.16295 -0.2444,0.0815 -0.082,-0.24443 -0.5296,0 0.041,0.12221 -0.163,0.16296 -0.082,-0.28517 -2.729505,0 -0.2037,0.97773 -0.3259,0 0,-0.48887 c 0.085,-0.17617 0.1553,-0.35747 0.2037,-0.48886 l -2.4036,0 z m 36.257605,12.83274 0,-0.93699 -0.041,0.0407 -0.1629,0.61109 0.2037,0.28517 z m -34.342905,-12.75127 -0.2851,0.44813 -0.4889,0.0815 0.082,-0.28517 0,-0.12222 0.6926,-0.12222 z m 13.484605,0.0407 0.4481,0.12222 -0.041,0.24443 -0.4481,-0.12221 0.041,-0.24444 z m -16.295505,0.36665 0,0.48887 -0.4482,0 0.4482,-0.48887 z m 7.821805,0 0.082,0.0407 0.2037,0.89625 c -0.2224,-0.0204 -0.4372,-0.0455 -0.6111,-0.0815 l 0.2037,-0.65182 -0.041,-0.16296 0.163,-0.0407 z m 1.4666,0 0.4074,0.48887 -0.4074,0 0,-0.48887 z m -2.5665,0.16296 0.082,0.28517 -0.1222,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.151605,0.0407 0.4481,0 0,0.28516 -0.4481,0 0,-0.28516 z m 5.214605,0 0.2037,0 0,0.28516 -0.2037,0 0,-0.28516 z m -2.974005,0.28516 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24444 -0.1629,0 c 0.038,-0.0691 0.088,-0.17948 0.1222,-0.24444 z m 13.036505,0 0.2037,0.0815 -0.163,0.65182 -0.3259,-0.57035 0.2852,-0.16295 z m 11.8143,0.0407 0.4481,0.12221 -0.1222,0.48887 -0.4889,-0.12222 0.163,-0.48886 z m -5.8257,0.16295 0.2444,0.0407 -0.1629,1.58882 -0.2852,0.16295 -0.1222,0.48887 -0.5296,2.52581 -0.6518,-0.65182 1.0999,-2.64803 -0.2444,-0.28517 0.082,-0.20369 0.5703,-1.01848 z m 0.9777,0.0407 0.5704,0.12222 -0.2852,0.16295 -0.082,0.2037 -0.774,3.87019 -0.2852,0.16296 -0.082,1.14068 -0.2037,0.77404 -0.5703,0 0.1629,-0.57034 c 0.2449,-0.0957 0.4481,-0.21289 0.4481,-0.36665 l -0.2851,-0.28517 1.3851,-5.21458 z m -17.721405,0.2037 0.244505,0 0.041,0.16295 -0.082,0.0407 -0.122305,0 -0.082,-0.20369 z m 14.543805,0.12221 0.2037,0.0407 -0.082,0.44813 -0.2444,-0.0815 0.1222,-0.40739 z m 12.629,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m -29.820805,0.0407 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m -2.0777,0.2037 1.0592,0 c -0.029,0.0977 -0.082,0.18868 -0.1222,0.28517 l -0.937,0 0,-0.28517 z m 11.855005,0 0,0.5296 -0.4888,0 0.4888,-0.5296 z m 24.3619,0.16295 c -0.074,0.27639 0.1417,0.51308 0.5703,0.65182 l 0,-0.5296 -0.5703,-0.12222 z m -6.0701,0.32591 0.4481,0.12222 -0.3666,1.30364 -0.4482,-0.12221 0,-1.18143 0.3667,-0.12222 z m -17.0696,0.44813 0,0.48887 -0.2037,0 -1.6703,0.24443 c 0.035,-0.18638 0.074,-0.3749 0.082,-0.57035 l 1.7925,-0.16295 z m 0.3666,0 0.6519,0.20369 0,0.28518 -0.8556,0 0.2037,-0.28518 0,-0.20369 z m 1.0185,0 0.041,0 0.2852,0.44813 -0.041,0.0407 -0.2852,0 0,-0.48887 z m 1.8333,0 -0.082,0.32591 -0.2852,0.0407 0.1222,-0.32591 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.2662,0 0.6518,0.36665 -0.082,0.20369 -0.4482,0.85552 c -0.076,0.61312 0.12,0.99046 0.5296,1.09995 l -0.1222,0.40739 -0.5296,-0.12222 -0.082,0.28517 0.2445,0.28518 -0.3667,0.12221 0.041,1.18143 -0.4889,1.79251 -0.5296,-0.12222 -0.4073,-1.30364 0.1222,-0.48887 0.2444,0.0407 -0.1222,0.48887 0.4481,0.12221 0.041,-0.20369 -0.2852,-0.81478 0.2852,-0.12221 c 0.1185,-0.44346 -0.079,-0.76489 -0.5703,-0.89626 l 0.6518,-0.28517 -0.1222,0.40739 0.4888,0.12221 0.3667,-3.21837 0.041,-0.20369 z m -20.4917,0.12222 0.2444,0.0407 0.1223,0.48887 -0.326,-0.0815 0,-0.36665 -0.041,-0.0815 z m -7.740405,0.0815 0.4481,0 -0.4481,0.52961 0,-0.52961 z m 1.3037,0 0.8147,0 c -0.012,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2572,0.20542 -0.3429,0.30401 -0.5703,0.48887 l -0.2037,-0.24443 0,-0.28518 z m 1.3036,0 0.3667,0 0.4073,0 0,0.2037 -0.082,-0.0815 -0.4888,0.12222 0,0.24443 -0.082,0.0407 -0.2037,-0.24443 -0.082,0 0.1629,-0.28518 z m 1.1407,0 0.6111,0 -0.041,0.28518 -0.5704,0 0,-0.28518 z m 7.292305,0 0.6518,0 -0.082,0.24444 0.1222,0.44812 -0.2852,0.0407 -0.4074,-0.65182 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24444 -0.2037,0.0407 -0.082,-0.28518 z m 21.1434,0 0.8148,0 0.2444,0.0407 -0.082,0.2037 -1.0999,0.16295 0.1222,-0.40739 z m -12.9142,0.0815 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m 5.2553,0 -0.082,0.2037 0.4889,0.12221 0.041,-0.20369 -0.4481,-0.12222 z m 10.144,0.36665 0.4889,0.12222 0.4074,0.57034 -0.6519,0.32591 0.2852,0.0815 -0.6111,1.01847 c -0.3277,-0.0876 -0.3629,-0.37134 -0.2444,-0.81478 l 0.2852,-0.16295 0.041,-0.2037 0,-0.93699 z m -1.3851,0.28517 0.2444,0.0815 0.041,0.7333 -0.4481,-0.12222 0.1629,-0.69256 z m -25.5025,0.0407 0,0.40739 -0.2852,0 -0.082,-0.32591 0.3666,-0.0815 z m 23.9137,0.0407 0.2444,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -24.7285,0.0815 0.082,0.28517 -0.2445,0 0,-0.24443 0.163,-0.0407 z m -8.229305,0.0407 1.0185,0 c -0.101,0.0837 -0.1917,0.16587 -0.2852,0.24443 l -0.7333,0 0,-0.24443 z m 2.0777,0 0.4481,0 0,0.24443 -0.6111,0 0.163,-0.24443 z m 7.862605,0 0,0.24443 -0.2037,0 -0.041,-0.16295 0.2444,-0.0815 z m 3.748,0 0.4074,0 0,0.24443 -0.4074,0 0,-0.24443 z m 1.0592,0 0.8148,0 0,0.24443 -0.8148,0 0,-0.24443 z m 22.3656,0.0407 0.4482,0.12221 0.2851,0.28517 0.082,-0.40738 0.2445,0.0407 -0.1223,0.44812 -0.2037,-0.0815 0.163,0.28518 -0.1222,0.48886 c -0.3277,-0.0875 -0.616,0.14207 -0.7741,0.7333 l -0.3666,-0.61108 0.3666,-1.30364 z m -31.002205,0.0407 0.2851,0.20369 -0.2037,0.0815 -0.082,-0.28517 z m -4.7258,0.0815 0.041,0.0815 -0.1222,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.980105,0.0407 0.5296,0.16296 -0.041,0.20369 -0.5296,-0.12222 0.041,-0.24443 z m -20.4917,0.0407 0.3667,0 0,0.28517 -0.3667,0 0,-0.28517 z m 3.5443,0 0.2037,0 c 0.2933,0.10004 0.5027,0.25432 0.6518,0.48887 l -0.082,0.12221 c 0.049,0.098 0.1128,0.18842 0.163,0.28518 l -0.3667,0 0,0.24443 0.5296,0.0815 c 0.074,0.1378 0.1679,0.27231 0.2444,0.40739 l -1.7925,0 0,-0.2037 c 0.5522,1.1e-4 0.8148,-0.22357 0.8148,-0.5296 l -0.3666,-0.40739 0,-0.48887 z m -9.2885,0.0407 0.1222,0.44813 -0.2037,0.0407 -0.082,-0.32592 0.163,-0.16295 z m -3.503505,0.0815 0.081,0.44812 -0.4481,0.12222 -0.041,-0.16295 0.3259,-0.0407 0,-0.32591 0.082,-0.0407 z m 1.6295,0.0407 c 0.2852,1.0667 0.7124,1.54315 1.303705,1.38512 l 0.082,0.16295 -0.163005,0.24444 -0.2444,-0.12222 c -0.5964,0.73087 -0.8708,1.45178 -0.6926,2.11842 l -0.8555,-0.65182 0.6111,-0.16296 -0.1222,-0.40739 c -0.3695,0.0988 -0.5984,-0.0975 -0.8148,-0.61108 l 0.9777,-0.7333 -0.4481,-0.93699 -0.041,-0.16296 0.4074,-0.12221 z m 23.587805,0.24443 0.4482,0.12222 -0.082,0.24443 -0.4482,-0.12222 0.082,-0.24443 z m -14.9511,0.0815 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 4.6035,0 0,0.0815 -0.041,0.16296 -0.2037,-0.0407 0.2444,-0.20369 z m -10.5514,0.0407 c 0.1566,0.1293 0.3291,0.24633 0.5703,0.36665 l 0,-0.16296 0.082,0.36665 0,0.0815 -0.4481,0.12221 -0.2037,-0.77403 z m 23.2212,0.0407 0.4481,0.12222 0,0.97773 -0.2852,0.12222 -0.041,0.2037 -0.1629,1.46659 -0.4074,0.57035 0.2037,0.24443 -0.3259,0.2037 0.3666,0.57034 -0.2852,0.12222 -0.2444,-0.0407 -0.041,1.14069 -0.3259,1.14068 -0.4481,-0.16295 -0.2037,0.69256 c 0.013,0.0242 0.029,0.0565 0.041,0.0815 l -0.1223,0.0815 0.163,0.0407 c 0.083,0.20379 0.1422,0.44083 0.163,0.69256 l -0.041,0.2037 -0.163,-0.24443 -0.2852,-0.0815 -0.041,0.0407 0.2445,-1.54808 0.774,-2.85172 0.4481,-0.81478 -0.2851,-1.05921 0.5296,0.16296 0.3259,-2.07769 z m -28.435805,0.0407 -0.041,0.44813 -0.2851,0.0815 -0.2852,-0.16296 -0.2037,0.0815 0.3666,0.48887 -0.4888,0.61108 -0.3259,-0.48887 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48887 -0.163,0 -0.2037,0.28517 -0.2037,0 0.3667,-0.61108 1.2629,-0.2037 z m 4.807205,0 0.163,0.65183 -0.2037,0.0407 -0.2037,-0.61108 0.2444,-0.0815 z m -7.088605,0.28518 0.2037,0 0,0.28517 -0.2037,0.24443 -0.2444,0 0,-0.32591 c 0.078,-0.065 0.1634,-0.13004 0.2444,-0.20369 z m 32.591105,0.40738 1.5074,1.34439 -0.1222,0.44812 -0.5296,-0.16295 -0.4889,1.79251 -0.2037,-0.0407 0.4074,-2.48507 -0.2852,0.12222 -0.3259,-0.0815 0.041,-0.937 z m 4.4813,0 0.7741,0 -0.1223,0.40739 -0.6925,-0.20369 0.041,-0.2037 z m -27.4172,0.12222 0.041,0 0.2037,0.2037 -0.163,0.0407 -0.082,-0.24443 z m 3.422,0 0.5704,0 0,0.2037 -0.5704,0 0,-0.2037 z m 5.4998,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.16296 c -0.014,0.0596 -0.024,0.0991 -0.041,0.16295 l 0.4074,0.12222 c -0.1395,0.12918 -0.3455,0.16298 -0.6519,0.16295 l -0.2036,0 0,-0.20369 0.4888,-0.24443 z m -4.6443,0.0407 0.6519,0.20369 0,0.44813 c -0.4141,0 -0.6518,0.1829 -0.6519,0.48886 l -0.1629,0 c 0,-0.45892 -0.1314,-0.73324 -0.4074,-0.7333 l 0,-0.20369 0.5703,-0.20369 z m 11.4477,0.0407 0.3259,0.61109 -0.041,0.20369 -0.3259,-0.61108 0.041,-0.2037 z m -18.0881,0.0407 0.5704,0.28518 0.6518,2.36285 0,0.0815 -0.3667,-0.52961 -0.2037,0 0.5704,0.85552 0.041,0.65182 0.2851,0.12222 -0.3666,0.57034 -1.1814,-4.3998 z m 15.44,0 0.2445,0.0407 -0.2852,1.09995 -0.2444,-0.0407 0.2851,-1.09995 z m -7.0885,0.12222 0.5703,0.20369 0,0.24444 -0.774,0 0.2037,-0.24444 0,-0.20369 z m -9.2885,0.20369 0.4889,0.48887 0.041,0.16296 -0.4889,0.12221 -0.1629,-0.65182 0.1222,-0.12222 z m 1.9962,0.12222 0.3259,0.32591 0,0.0815 0.082,0.0407 0.2037,0.24443 -0.1629,0.16296 0.6518,2.36285 -0.2852,-0.16295 -0.8148,-3.05542 z m -7.821805,0.0815 0.082,0.36665 -0.2037,0.0407 -0.082,-0.36665 0.2037,-0.0407 z m 2.4443,0.20369 -0.082,0.61109 0.082,0.24443 0.2444,0.16295 c -0.7759,0.20744 -1.0756,0.74803 -0.937,1.71104 l 0.3667,0.57034 -0.2037,0.0407 0.5703,0.24443 -0.1629,1.30365 0.082,0.28517 0.2444,0.12222 -0.2037,0.0407 0.5704,0.85552 c -0.141,0.11253 -0.2864,0.23952 -0.4482,0.40739 l -0.082,-0.2037 -0.4074,0.12222 -0.082,-0.36665 0.4074,-0.12222 -0.2037,-0.81477 -0.4481,0.12221 -0.2037,-0.81477 0.4074,-0.12222 -0.1222,-0.44813 -0.6518,0.2037 0.082,0.44812 -0.2037,0.0407 -0.163,-0.61108 c 0.1174,-0.74568 0.3563,-1.1839 0.6518,-1.2629 l -0.082,-0.16296 -0.4074,0.0815 -0.1629,-0.61109 0.2037,-0.0407 1.3444,-2.03695 z m 31.328205,0.2037 0.2444,0.0407 0.2444,0.28517 0.2852,-0.12222 0.6926,0.16296 0.4481,2.28137 -0.041,0.2037 0.2852,0.0815 0.2852,-0.12222 0.2444,0.0407 -0.6926,2.64802 c -0.6159,-0.32291 -0.8481,-0.90564 -0.6111,-1.79251 l -0.2037,-0.0815 0.2852,-0.12222 0.1222,-0.48887 0.082,-1.18142 -0.5703,-0.12222 -0.6926,2.68876 0.2445,0.28518 -0.3667,0.12221 -0.041,0.2037 0.2037,2.1999 -0.8148,0 c -0.1161,0.56732 -0.1894,1.08429 -0.2444,1.50733 -0.1694,0.10755 -0.2849,0.39717 -0.4074,0.85552 l -0.3259,0.12222 -0.4481,-0.12222 -0.163,-0.93699 0.5704,-0.48887 0,-0.12222 c 0.055,0.0879 0.1486,0.1672 0.2851,0.2037 l 0.2037,0.0407 0.082,-0.2037 0.2445,-1.87399 0.3666,-0.5296 0.7333,-3.62576 0.2444,-0.89625 -0.4481,-0.12222 -0.3666,1.34438 -0.3667,0.12222 0.2444,0.28517 -0.1222,0.48887 -0.5296,-0.16296 0.8148,-3.09615 z m -9.207,0.12221 0.2037,0.0407 -0.2444,0.89626 -0.2852,0.16295 -0.2037,-0.0815 0.5296,-1.01848 z m 6.0701,0 0.2037,0.0407 -0.082,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -24.9729,0.0815 0.2037,0.81478 -0.2037,0.0407 -0.2445,-0.77404 0.2445,-0.0815 z m -6.722005,0.0407 0.041,0 0.1223,0.44813 -0.2037,0.0407 -0.041,-0.12222 c 0.028,-0.10614 0.05,-0.23043 0.082,-0.32591 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.261405,0.0407 0.2445,0.0407 -0.2037,0.69256 -0.2037,-0.0407 0.1629,-0.69256 z m -26.5617,0.0407 0.1222,0.44813 -0.3259,0.48886 -0.082,-0.36665 0.2852,-0.57034 z m 13.8919,0.0815 0,0.0407 -0.3259,0.2037 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1892,-0.0178 0.3783,-0.0562 0.5296,-0.0815 z m -11.7327,0.24443 0.1222,0.12222 -0.2037,0.0815 -0.041,-0.16295 0.1222,-0.0407 z m 27.132,0.12222 0.7741,0.20369 -0.041,0.24443 -0.7741,-0.20369 0.041,-0.24443 z m -8.7181,0.0407 0.5704,0.16296 -0.082,0.20369 -0.5296,-0.12221 0.041,-0.24444 z m -15.4807,0.0407 0,0.61109 0.4481,0 c 0,0.33785 0.036,0.62662 0.1222,0.81477 -0.2101,0.0427 -0.4005,0.0946 -0.5703,0.16296 l 0,-0.0407 -0.3667,-0.40739 -0.6518,0.2037 c 0,-0.11015 -0.034,-0.20771 -0.082,-0.28518 l -0.2444,-0.89625 1.3443,-0.16296 z m 2.8924,0 0.2852,0.2037 0.2037,0 1.874,-0.2037 0,0.2037 -0.2852,0.65182 c 0.3992,-0.22119 0.701,-0.47342 0.8148,-0.77404 0.071,0.0934 0.1312,0.1937 0.2037,0.28517 l -0.3667,0.0407 0,0.44813 0.4074,0 0.2444,0.28517 0.163,-0.24443 c 0.093,0.10678 0.1891,0.22207 0.2852,0.32591 l 0.041,0.16295 -0.2037,-0.20369 -0.2445,0.12222 0.041,0.69256 -0.2444,0.12221 -0.082,0.16296 -0.6518,-0.12222 c -0.065,-0.12871 -0.1069,-0.24434 -0.1222,-0.36665 l 0.3259,0 0.3666,0.0815 0.041,-0.20369 -0.2851,-0.52961 c -0.2712,-0.0725 -0.5058,-0.0647 -0.7333,-0.0815 l -0.2037,-0.20369 -0.082,0.16295 c -0.064,0.002 -0.1437,-0.007 -0.2037,0 l -0.5296,-0.61108 -1.0592,0.2037 -0.7741,-0.2037 -0.4481,0.44813 -0.163,-0.24443 0,-0.2037 c 0.2416,3e-5 0.4327,0.0164 0.6111,0 0.5354,-0.049 0.7741,-0.17787 0.7741,-0.40739 z m 16.2956,0 0.2444,0.0815 -0.2444,0.89626 -0.2445,-0.0815 0.2445,-0.89626 z m -19.9621,0.40739 0,0.44813 0.4074,0 0,-0.44813 -0.4074,0 z m -1.5481,0.0815 0.2445,0.28517 -0.2037,0.36665 -0.163,-0.5296 0,-0.0815 0.1222,-0.0407 z m -10.510605,0.12222 0.041,0.32591 -0.1629,0.0407 0.1222,-0.36665 z m 21.836005,0 0.163,0 0,0.24443 -0.163,0 0,-0.24443 z m -16.662205,0.0407 0.5297,0.937 0.041,0.16295 -0.2037,0.28518 0.774005,1.83325 -0.529605,0.32591 -0.2852,-1.50734 -0.1222,-0.44813 -0.2444,-0.12222 -0.163,-1.42586 0.2037,-0.0407 z m -0.8962,0.0407 1.1407,4.23685 -0.3259,-0.0815 0,-0.0815 -0.2852,-0.16296 -0.6926,-3.4628 -0.041,-0.20369 -0.2851,-0.12222 0.4888,-0.12222 z m 19.880605,0.0815 0.2444,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -7.7812,0.0815 0.6519,0 0,0.20369 c -0.1266,0.0362 -0.2233,0.0983 -0.326,0.16296 l -0.3259,-0.0815 0,-0.28517 z m -9.2069,0.12222 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 15.1141,0.0407 0,0.12222 -0.082,0 0.082,-0.12222 z m 9.981,0.24444 0.2444,0.0407 -0.1629,0.48886 -0.2037,-0.0407 0.1222,-0.48886 z m 5.2553,0 0.2444,0.0407 -0.1629,0.48886 -0.2037,-0.0407 0.1222,-0.48886 z m -22.8138,0.0815 0.3667,0 c -0.095,0.17535 -0.2074,0.27297 -0.3667,0.28517 l 0,-0.28517 z m 7.1293,0 0.163,0 0,0.20369 -0.163,0 0,-0.20369 z m -1.5073,0.0407 0.2852,0.0815 -0.2852,0 0,-0.0815 z m 4.7257,0.0815 0.3259,0.61109 -0.1222,0.40738 -0.4481,-0.12221 0.2444,-0.89626 z m 1.0185,0.28517 0.2037,0.0407 c -0.079,0.2957 0.1602,0.56117 0.6518,0.69256 l -0.2444,0.89626 c -0.1374,-0.16028 -0.2848,-0.28993 -0.4482,-0.40739 l 0.041,-0.20369 -0.4481,-0.12222 0.2445,-0.89626 z m -5.8664,0.0407 0.1222,0 0.082,0.0407 -0.1222,0.44813 -0.163,-0.0815 0.082,-0.40739 z m 3.3813,0 0.5704,0 -0.082,0.2037 -0.2445,0 c -0.09,-0.0653 -0.1747,-0.12663 -0.2444,-0.2037 z m -7.4145,0.12222 c -0.014,0.0405 -0.029,0.0791 -0.041,0.12222 l -0.1222,-0.0407 0.163,-0.0815 z m -15.602905,0.16296 0.082,0.16295 0.3259,2.9332 0.4074,-0.12222 -0.1223,-0.36665 0.6111,0.24444 c -0.4434,0.11851 -0.6365,0.41476 -0.5296,0.81477 l 0.2444,0.12222 -0.2444,0.7333 0.041,0.20369 0.4481,-0.12221 -0.1222,-0.44813 0.2037,-0.0407 0.1222,0.44813 -0.3666,1.14069 -0.3667,-0.0815 c -0.056,0.0711 -0.069,0.13431 -0.1222,0.20369 l -0.4481,-1.58881 0.041,-1.09995 -0.3259,-0.0815 0.2037,-0.28517 -0.041,-0.24444 -0.4889,0.12222 -0.082,-0.16295 0,-0.0815 0,-0.16296 c 0.3324,-0.11704 0.5134,-0.41156 0.4481,-0.93699 l -0.4481,-0.77404 -0.041,-0.16295 0.5704,-0.36665 z m 31.165205,0 0.5296,0.12221 -0.2037,0.69256 -0.5296,-0.12221 0.2037,-0.69256 z m -28.924605,0.28517 -0.4074,0.0815 0.041,0.20369 0.4074,-0.12222 -0.041,-0.16295 z m 4.725705,0 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 8.5144,0.0407 0.2037,0.0815 -0.2444,0 0.041,-0.0815 z m 16.9067,0 0.5296,0.12221 -0.1223,0.48887 0.4482,0.12222 0.1629,-0.69256 0.4482,0.57034 -0.5704,0.81478 -0.1629,1.87398 -0.4482,0.52961 -0.2444,-0.0407 c 0.5137,-1.92153 0.4109,-2.92097 -0.2444,-3.09615 l 0.2037,-0.69256 z m -20.0436,0.0815 0.2037,0 -0.1222,0.44813 -0.1629,0 0,-0.20369 0.082,-0.24444 z m 1.7925,0 0.2037,0 c 0.1369,0.16132 0.1866,0.38537 0.163,0.65183 l -0.1222,0 -0.2445,-0.65183 z m -2.5665,0.12222 0.2037,0.36665 -0.2852,-0.0815 0.082,-0.28517 z m 12.5476,0.16296 0.2444,0.0815 0.2852,0.2037 -0.163,0.24443 c -0.1007,-0.099 -0.2134,-0.17918 -0.3259,-0.24443 l -0.041,-0.28517 z m -7.1701,0.16295 0.2852,0 c 0,0.0716 0.024,0.14662 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.7333,0.0815 0.4074,0.12222 -0.3259,0 -0.081,-0.12222 z m -6.7219,0.12222 0.2037,0.0815 -0.082,1.22217 -0.082,0.20369 -0.2037,-0.0815 0.041,-0.48887 0.2037,0 0,-0.65182 -0.082,-0.28517 z m 14.6253,0.0407 0.3259,0.0815 -0.163,0.65182 -0.2037,-0.0815 -0.041,-0.52961 0.082,-0.12222 z m -15.3586,0.0407 0,0.2037 -0.1222,0 0.1222,-0.2037 z m -1.4666,0.16296 0.1222,0 0.1222,0.16295 0.082,0.28518 -0.3259,-0.40739 0,-0.0407 z m 4.522,0.0407 0.2037,0 -0.082,0.20369 -0.1629,0 0.041,-0.20369 z m -5.2553,0.16295 -0.041,0.24444 c -0.1412,0.67657 -0.1364,1.03083 0.1222,1.09995 l -0.2444,0.20369 -0.082,0.16296 -0.041,0.24443 -0.1222,0.0407 -0.163,-0.57035 0.4482,-0.0815 c -0.206,-0.77059 -0.1475,-1.24298 0.1222,-1.34439 z m 1.874,0 0.041,0.12222 0.082,-0.0815 0.163,0.65182 0,0.12222 -0.4889,0.7333 0.2852,0.0815 -0.326,0.12221 -0.082,0.24444 0.2445,0.28517 -0.082,0.16296 -0.4074,0.57034 0.041,0.85552 -0.6518,1.30364 0.2444,0.28517 -0.4889,-0.16295 0.3667,-1.34439 -1.1814,0.7333 0.2444,0.28517 -0.8555,0.44813 -0.082,1.01847 -0.4074,0.69256 c 0.08,-0.49941 0.011,-0.79803 -0.2037,-0.85551 l 0.2852,-0.16296 0.041,-0.20369 0.2037,-1.30364 c 0.1374,-0.1299 0.2764,-0.27149 0.4074,-0.40739 l 0.4481,0.32591 c -0.053,-0.21157 -0.1577,-0.37537 -0.2445,-0.52961 0.051,-0.0555 0.1128,-0.10648 0.163,-0.16295 l 0.2444,0.0407 0.082,-0.36665 0.3667,-0.16296 -0.163,-0.16296 c 0.072,-0.0919 0.134,-0.19121 0.2037,-0.28517 l 0.7333,0.0407 0.163,-0.61108 -0.4074,-0.12222 c 0.071,-0.1075 0.135,-0.2161 0.2037,-0.32591 l 0.2852,0.0815 0.2851,-1.05921 c 0.1085,-0.19992 0.2227,-0.4049 0.3259,-0.61108 l -0.1222,-0.16296 0.041,-0.12222 z m 11.7328,0.0407 0.2037,0.40739 0,0.0407 -0.4889,0 c 0.012,-0.0714 0.03,-0.13545 0.041,-0.20369 l 0.2445,-0.24444 z m -22.162005,0.0407 0.082,0.28517 -0.082,0 0,-0.28517 z m 30.432005,0.2037 0.4888,0.12221 -0.4073,0.937 c -0.091,-0.13612 -0.2088,-0.26481 -0.3667,-0.36665 l 0.2852,-0.69256 z m -10.8773,0.16295 0.2037,0.0407 -0.2037,0 0,-0.0407 z m 0.9777,0.0407 0.4074,0.12222 -0.041,0.16295 -0.2037,0.0407 -0.1629,-0.28517 c 0.01,-0.003 -0.01,-0.0375 0,-0.0407 z m -8.3922,0.32591 0.4074,0.0815 -0.1629,0.65182 -0.2852,-0.57034 0.041,-0.16296 z m 23.9137,0.0407 c 0.452,0.27924 0.6049,0.76826 0.4074,1.50734 l -0.5296,1.05921 c -0.1997,1.12234 -0.2914,1.89101 -0.2851,2.40359 l -0.163,-0.0407 0.041,-0.77404 0.1222,-0.48886 -0.3666,-0.77404 0.8962,-2.11842 -0.1222,-0.77404 z m -21.836,0.12222 0.2444,0 0,0.20369 -0.2444,0 0,-0.20369 z m 12.0995,0 0.041,0 -0.163,0.57034 c -0.021,0.0768 -0.028,0.1306 -0.041,0.20369 l -0.041,0 0.2037,-0.77403 z m -19.9621,0.0407 0.2037,0.0407 0.1222,0.24444 -0.3666,-0.12222 0.041,-0.16296 z m -4.114605,0.2037 0.041,0.20369 -0.2852,0.52961 -0.041,-0.16296 0.2852,-0.57034 z m 3.6257,0 c 0.1218,0.0561 0.225305,0.11426 0.407405,0.16295 l -0.082,0.36665 -0.162905,-0.24443 -0.082,-0.0407 -0.082,-0.24443 z m 31.124505,0.0815 0.2445,0.0815 -0.1222,0.48887 -0.2445,-0.0815 0.1222,-0.48886 z m -25.4618,0.0815 c 0.1306,0.006 0.286,0.0201 0.4482,0.0407 l -0.1222,0.36665 c -0.2956,-0.079 -0.55,0.15923 -0.6926,0.69256 l -0.4481,-0.77403 c 0.047,-0.17471 0.2132,-0.25604 0.4888,-0.28518 l 0.3667,0 -0.041,-0.0407 z m 14.0142,0 0.082,0 0.1222,0.0407 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.24444 z m -8.1478,0.0407 0.2852,0 -0.1222,0.52961 -0.2444,-0.0815 c 0.037,-0.15395 0.063,-0.31014 0.082,-0.44813 z m 0.8556,0 0.5703,0 0,0.0815 -0.3666,0.57035 0.1222,0.16295 -0.6111,-0.16295 c 0.107,-0.16059 0.1904,-0.4143 0.2852,-0.65183 z m 1.0592,0 0.2444,0 -0.041,0.0815 -0.2037,-0.0407 0,-0.0407 z m 2.2406,0 0.4889,0 -0.1222,0.36665 -0.2037,0.0407 0,0.44813 0,0.0407 -0.081,0.16295 0.041,0.44813 -0.163,0.0407 c -0.1808,-0.20535 -0.2427,-0.4948 -0.2037,-0.85552 0,-0.0259 0,-0.0547 0,-0.0815 0.012,-0.0828 0.016,-0.15377 0.041,-0.24444 l 0.2037,-0.36665 z m 0.8555,0 0.7333,0 0.3259,0 -0.041,0.2037 -0.2444,0 0,0.48886 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.28517 -0.4889,0.12222 -0.041,-0.52961 0.2445,-0.0407 0,-0.48886 -0.2852,0.0407 -0.041,-0.24444 z m -7.6996,0.0815 0,0.77404 c -0.2652,-0.0831 -0.4074,-0.28894 -0.4074,-0.65182 0.1827,2e-5 0.2999,-0.0425 0.4074,-0.12222 z m 5.5405,0 0.4074,0.12222 -0.082,0.36665 -0.4482,-0.12222 0,-0.0407 0.163,-0.20369 -0.082,0 0.041,-0.12222 z m 11.9365,0 0.1222,0.65182 c -0.026,-0.0119 -0.051,-0.0326 -0.082,-0.0407 l -0.3259,0.0815 -0.041,0.24444 0,0.28517 -0.041,0.0815 -0.2037,-0.0407 0.041,-0.2037 0.2444,-0.36665 0.163,-0.28517 -0.4482,-0.12222 0.5704,-0.28517 z m -18.8214,0.0815 c 0.092,0.0158 0.1761,0.0407 0.2852,0.0407 l 0,0.65182 -0.2445,-0.0815 -0.041,0.12222 -0.1222,0 0,0.44813 0,0.0815 0.4481,0.12222 0.041,-0.20369 0.163,0 -0.5296,0.77403 -0.2444,-0.32591 -0.082,0.36665 0.2444,0.0815 -0.041,0.0407 0.5296,0.12222 0.082,0.24443 -0.1222,0.20369 c -0.155,0.0761 -0.2587,0.22703 -0.2852,0.44813 l -0.041,0.12222 -0.1629,0 c -0.01,-0.0298 0,-0.0522 0,-0.0815 l 0.082,-0.44813 -0.163,-0.0407 c -0.084,-0.43313 -0.1524,-0.79239 -0.2444,-1.05921 l 0.4481,-1.62955 z m -7.2923,0.44813 c 0.2126,0.11967 0.3124,0.32245 0.2852,0.61108 l -0.2037,-0.12222 -0.082,-0.48886 z m 18.3325,0 0.041,0 c -0.01,0.0299 -0.034,0.0522 -0.041,0.0815 -0.03,0.13716 -0.06,0.28313 -0.082,0.40739 -0.092,0.0158 -0.1761,0.0407 -0.2851,0.0407 l 0,0.48887 -0.2445,0 0.082,-0.937 0.5296,0 0,-0.0815 z m -12.3846,0.0815 0.2852,0 0.1222,0.0407 0,0.40739 -0.2037,0 0,0.2037 0.082,0.36665 c -0.1679,-0.14918 -0.2705,-0.48918 -0.2852,-1.01848 z m 25.3396,0.0407 0.4481,0.12222 -0.1222,0.40739 -0.4481,-0.12222 0.1222,-0.40739 z m -33.935505,0.0407 c -0.044,0.0495 -0.077,0.10969 -0.1222,0.16296 l -0.041,-0.12222 0.163,-0.0407 z m -0.8962,0.0407 0.4481,0.93699 -0.2037,0.0407 -0.082,-0.0407 c 0.011,-0.0447 0.028,-0.075 0.041,-0.12221 l -0.2444,-0.0815 -0.2037,-0.69256 0.2444,-0.0407 z m 17.517705,0 0.4074,0.12222 -0.082,0.24443 -0.3667,-0.24443 0.041,-0.12222 z m 0.7333,0 0.2037,0.0815 -0.1223,0.40739 -0.2036,-0.0407 0.1222,-0.44813 z m 7.1293,0.0815 0.082,0.12222 0.2851,0.0815 0.081,-0.0407 -0.2037,1.34439 -0.6925,2.52581 -0.2444,0.48886 -0.082,-0.36665 0.2036,-0.28517 -0.2036,-0.20369 -0.2445,0.0815 -0.1629,-0.28517 0.2851,-0.12221 0.2037,0.0407 0.041,-1.05921 0.2852,-0.97773 0.4074,0.0815 0.1222,-0.52961 0.041,0 0,-0.0815 c -0.1251,-0.22969 -0.1809,-0.50833 -0.2037,-0.81478 z m 3.0554,0.0407 0.2444,0.0815 -0.082,0.24443 0,0.0407 -0.1629,0.5296 -0.2037,-0.0815 0.2037,-0.81477 z m -20.2472,0.20369 0.4074,0.12222 -0.1223,0.36665 -0.2851,-0.48887 z m -10.632905,0.32591 0.041,0.16296 -0.1222,0.0407 0,-0.16296 0.082,-0.0407 z m 5.5405,0.0407 0.2037,0.0815 -0.082,0.36665 0.2037,0.0407 -0.2444,0.12221 -0.1222,0.48887 -0.163,-0.61108 0.2037,-0.48887 z m 27.417305,0 0.3666,0.0815 c -0.05,0.18576 -0.024,0.33527 0,0.44813 l -0.3259,-0.0815 c 0.053,-0.20003 0.019,-0.33531 -0.041,-0.44813 z m -3.9517,0.0815 0.041,0 c -0.023,0.12023 -0.051,0.23874 -0.082,0.36665 l -0.041,0 0.082,-0.36665 z m -17.314,0.0407 0.2037,0.0407 -0.2445,0.81477 -0.2037,-0.0407 0.2445,-0.81478 z m 14.7475,0.0407 c 0.1067,0.0985 0.2579,0.168 0.4073,0.24443 l -0.1629,0.32591 -0.163,-0.0407 -0.041,-0.0407 c -0.048,-0.0401 -0.1096,-0.0903 -0.1629,-0.12221 l 0.1222,-0.36665 z m -21.917605,0.16295 0.082,0 c 0.01,0.0632 0,0.14342 0,0.2037 l -0.082,-0.2037 z m 32.468905,0 0.3259,0.52961 -0.4481,-0.12222 0.1222,-0.40739 z m -33.242905,0.36665 0.041,0.12222 -0.163,-0.0407 0,-0.0407 0.1223,-0.0407 z m 6.762705,0.16296 0.2036,0.0815 -0.7333,2.81098 -0.2036,-0.0815 0.7333,-2.81098 z m 9.4514,0 -0.2037,0.81478 0,0.0815 c -0.07,0.01 -0.1708,0.0316 -0.2445,0.0407 l 0.2445,-0.89625 0.2037,-0.0407 z m 1.5888,0.16295 c 0,0.0512 0,0.10831 0,0.16296 -0.1404,0.17119 -0.5033,0.28724 -1.0185,0.40739 l 0.082,-0.24444 0.937,-0.32591 z m 8.5959,0.12222 c 0.1067,0.18437 0.2374,0.33745 0.3666,0.48887 l 0,0.12221 0.163,0.0407 c 0.068,0.0685 0.1302,0.14364 0.2037,0.2037 l -0.163,0.65182 -0.2037,-0.0407 c 0.071,-0.26674 -0.1676,-0.49256 -0.611,-0.61108 l 0.2444,-0.85552 z m 1.0185,0.0407 0,0.12222 -0.082,-0.0815 0.082,-0.0407 z m 5.5812,0.0407 0.4481,0.12221 -0.041,0.2037 -0.4889,-0.12222 0.082,-0.20369 z m -24.1989,0.0407 0.1222,0.44812 0.2444,0.89626 -0.4481,0.7333 0.3259,-0.12222 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 -0.2037,-0.24443 -0.2444,-0.0815 -0.082,0.44813 -0.2444,-0.0407 0.6518,-2.40359 z m -1.2222,0.0815 0.2037,0.0815 -0.1222,0.52961 -0.2037,-0.0407 0.1222,-0.57035 z m 7.1293,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m 14.5438,0.0407 -0.082,0.24444 0.6926,0.16295 0.082,-0.20369 -0.6926,-0.2037 z m -28.680205,0.0815 c 0.026,-0.005 0.055,0.004 0.082,0 -0.1259,0.1796 -0.3023,0.32896 -0.5296,0.44813 l -0.041,-0.2037 c 0.1448,-0.11438 0.3062,-0.20677 0.4889,-0.24443 z m 13.362405,0.2037 c 0.1272,0.1138 0.2391,0.2232 0.2852,0.32591 l -0.2852,-0.0815 0,-0.24443 z m -12.955005,0.20369 0.041,0 0.3259,0.12222 c 0.029,0.10641 0.051,0.19751 0.082,0.28517 l -0.2037,0.77404 -0.2036,-0.0407 c 0.1426,-0.53338 0.01,-0.85798 -0.2852,-0.937 l -0.2037,0.0815 0.041,-0.16295 0.3259,-0.0815 0.081,0 0,-0.0407 z m -2.5665,0.0407 0.082,0.24443 -0.1222,-0.0407 0.041,-0.20369 z m 13.443805,0 0.2037,0 c -0.015,0.10051 -0.023,0.21901 -0.041,0.32591 l -0.1629,0.16295 0,-0.48886 z m 8.5552,0 0.3666,0 -0.041,0.16295 -0.4074,-0.12221 c 0.02,-0.0187 0.064,-0.0211 0.082,-0.0407 z m 1.0184,0 0.4074,0 0,0.20369 c -0.1951,4e-5 -0.3609,0.0365 -0.4888,0.0815 l 0.082,-0.28517 z m -19.432405,0.0815 0.163,0.0407 -0.082,0.32592 -0.082,-0.36665 z m 13.810505,0.12221 0,0.52961 -0.041,0.0407 -0.041,0.16295 -0.2444,0 0.2036,-0.69256 0.1223,-0.0407 z m 0.8555,0 0.937,0 -0.041,0.16296 0,0.12221 -0.2444,0 -0.2852,-0.0407 -0.082,0.0407 -0.2852,0 c 0,0.0149 0,0.026 0,0.0407 l -0.082,-0.0407 0.082,-0.28517 z m 3.0554,0.16296 -0.082,0.36665 -0.3666,0 -0.1222,-0.12222 0.041,-0.16295 c 0.2044,-0.0207 0.3677,-0.0344 0.5296,-0.0815 z m 9.044,0 c 0.6945,0.36416 0.9332,1.0147 0.6926,1.91472 l -0.4889,-0.12221 -0.1629,0.5296 0.3666,0.57035 -0.8555,1.2629 0.2037,0.0407 -0.2444,0.12222 -0.082,0.28517 0.1629,1.30364 -0.5703,0.24444 0.2037,0.0407 -0.3667,0.57034 c -0.1386,0.96298 0.1611,1.5036 0.937,1.71103 l -0.2444,0.16296 -0.082,0.24443 0.082,0.61108 -1.3444,-2.03694 -0.2037,-0.0407 0.163,-0.61108 0.4481,0.0815 0.041,-0.16296 c -0.2956,-0.079 -0.5344,-0.51722 -0.6518,-1.2629 l 0.1629,-0.61109 0.2037,0.0407 -0.082,0.44813 0.6926,0.20369 0.082,-0.44812 -0.4074,-0.12222 0.2444,-0.81478 0.4074,0.12222 0.2037,-0.81478 -0.4074,-0.12221 0.082,-0.36665 0.4482,0.12221 0.082,-0.36665 -0.4074,-0.12221 0.1629,-0.61109 c 0.3696,0.0988 0.5984,-0.13822 0.8148,-0.65182 0.1069,-0.4 -0.01,-0.61477 -0.4481,-0.7333 l 0.1629,-0.61108 z m -24.5248,0.0407 0.4889,0.12221 -0.4074,0.57035 -0.2444,-0.0815 0.1629,-0.61108 z m 23.3027,0 c 0.1376,0.0728 0.2979,0.11503 0.4481,0.16295 l -0.1222,0.40739 -0.3259,-0.5296 0,-0.0407 z m -16.703,0.0815 0.6519,0 0.2037,0.24444 0.1629,0 -0.1629,0.61108 -0.6111,0 -0.2445,-0.85552 z m 5.7035,0.2037 0.082,0 c -0.036,0.16125 -0.082,0.31655 -0.1222,0.44813 l -0.082,0 0.1222,-0.44813 z m 4.8886,0.0407 0,0.16295 -0.082,0.24444 -0.2036,0 0.041,-0.2037 0.2444,-0.20369 z m -7.7403,0.0815 0.2037,0.0407 -0.041,0.0815 -0.2037,0 0.041,-0.12221 z m -8.6367,0.0815 0.6518,0.36665 -0.2851,1.01847 -0.2037,-0.0815 -0.2445,-0.937 0.082,-0.36665 z m 20.8991,0 0.4888,0.12222 0.3667,1.14069 -0.1222,0.44813 -0.2037,-0.0407 0.1222,-0.44813 -0.4481,-0.12222 -0.041,0.2037 0.2444,0.7333 -0.2444,0.12221 c -0.1069,0.40004 0.086,0.69627 0.5296,0.81478 l -0.5704,0.24443 0.082,-0.36665 -0.4074,-0.12221 -0.3259,2.9332 -0.082,0.16295 -0.5703,-0.32591 0.082,-0.20369 0.4074,-0.77404 c 0.069,-0.55307 -0.1194,-0.87896 -0.4889,-0.97774 l 0.1222,-0.36665 0.4889,0.12222 0.041,-0.24443 -0.2037,-0.28517 0.3259,-0.0815 -0.041,-1.09995 0.4481,-1.58882 z m -18.9844,0.0407 0.4074,0.12222 -0.041,0.20369 -0.4073,-0.12221 0.041,-0.2037 z m 11.2032,0 0.163,0 c 0.066,0.0585 0.1536,0.11741 0.2444,0.16296 l -0.041,0.12221 -0.082,0.28518 -0.2851,-0.52961 0,-0.0407 z m -19.962005,0.0407 0.3259,0.48887 -0.2444,-0.24444 -0.2037,-0.0407 0.1222,-0.2037 z m 1.0999,0.0815 0.163,0.0407 0,0.16295 -0.163,0.65182 -0.2037,-0.0815 0.2037,-0.77404 z m 31.083805,0 c 0.044,0.10287 0.088,0.18377 0.163,0.20369 l 0.2036,0.0407 0,0.44813 -1.711,6.35526 -0.4889,-0.12221 0.2852,-0.12222 0.041,-0.20369 0.6926,-3.46281 0.2852,-0.12222 0.041,-1.05921 0.4888,-1.95546 z m 1.0185,0 0.2037,0.0407 -0.2037,0.65182 -0.2037,-0.0815 0.1629,-0.57034 0.041,-0.0407 z m -15.6438,0.12222 0.041,0.44812 -0.1222,0.0407 -0.082,-0.32591 0.163,-0.16295 z m 12.792,0 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -9.5736,0.0407 c 0.1347,0.0336 0.3237,0.0613 0.4889,0.0815 l -0.1222,0.48887 -0.4482,-0.16296 0.082,-0.40739 z m -20.980505,0.32592 0.4889,0.12221 -0.082,0.2037 -0.163,1.38512 c 0.01,-0.18442 -0.023,-0.3523 -0.082,-0.57035 l -0.2037,-0.81477 0.041,-0.32591 z m 3.2998,0.0407 0.4482,0.0815 c -0.1069,0.39999 -0.01,0.69501 0.2851,0.77404 l -0.041,0.20369 c -0.4433,-0.11854 -0.7027,-0.10371 -0.774,0.16296 l -0.2037,-0.0407 -0.082,-0.61108 0.3667,-0.57035 z m 16.825205,0.0407 0.2852,0 -0.082,0.24444 -0.2037,0 0,-0.24444 z m -13.7697,0.16296 0.2037,0.0407 -0.041,1.05921 -0.4074,-0.12222 0.2444,-0.97773 z m 20.125,0.20369 0.4481,0.16296 -0.041,0.16295 -0.4889,-0.12221 0.082,-0.2037 z m 3.0961,0 0.2037,0.0407 -0.4481,0.937 -0.2037,-0.0407 0.2037,-0.81478 0.2444,-0.12222 z m -19.5139,0.12222 0.937,0.0407 -0.1222,0.57034 -0.9778,0 0.163,-0.61108 z m 8.5959,0.16295 0.2037,0 0,0.0407 -0.2037,-0.0407 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3628,0 0.3259,0 0,0.2037 -0.3666,0 0,-0.12222 0.041,-0.0815 z m -19.5139,0.0407 0.3259,0.52961 -0.2851,0.12222 -0.2037,-0.0407 c 0.062,-0.23334 0.1326,-0.43446 0.1629,-0.61109 z m -4.318305,0.16296 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m 32.305905,0 0.2037,0.0407 c -0.1069,0.40001 -0.01,0.69504 0.2852,0.77404 l -1.4259,3.50354 0.2037,0.24443 -0.041,0.2037 -0.5296,0.89625 -0.2037,-0.0407 0.163,-1.42586 0.2444,-0.12221 0.1222,-0.44813 0.6926,-3.42207 0.2852,-0.20369 z m -35.361305,0.12222 0.1222,0.85551 0.2037,0.12222 c -0.012,0.0966 -0.014,0.18349 -0.041,0.28517 l 0,0.0815 -0.041,-0.0815 -0.2037,0.0815 c 0.022,0.0838 0.035,0.13719 0.041,0.20369 l -0.3667,0.1646 c -0.01,-0.0436 -0.032,-0.0797 -0.041,-0.12222 l 0.1222,-0.0407 0.041,-0.20369 0.163,-1.34438 z m 9.451405,0.0407 0.6111,0.16296 -0.041,0.20369 -0.6926,0.0815 0.1222,-0.44813 z m -4.807205,0.24444 0.2037,0.0815 -0.163,0.5296 -0.2036,-0.0407 0.1629,-0.57034 z m 28.965305,0 0.2037,0.0407 -0.2851,1.01847 -0.2037,-0.0815 0.2851,-0.97773 z m -20.4916,0.12221 0.3666,0.52961 -0.1629,0.61108 -0.2037,-0.32591 -0.4074,-0.12221 c -0.1069,0.40001 -0.4121,0.56665 -0.8555,0.44812 0.107,-0.40002 -0.01,-0.65551 -0.4481,-0.77404 l 0.041,-0.20369 0.4074,0.12222 0.1629,0.24443 c 0.08,-0.29997 0.4464,-0.45431 1.1,-0.52961 z m 10.8365,0.2037 0.1222,0 0,0.12222 -0.1222,-0.12222 z m 13.1179,0 0.8963,0.24443 -0.4481,1.75177 c -0.2956,-0.079 -0.3768,-0.54439 -0.163,-1.34438 l -0.4481,-0.0815 0.1629,-0.57034 z m -6.1515,0.0407 0.2851,0.5296 -0.041,0.2037 -0.2851,-0.57035 0.041,-0.16295 z m -28.558005,0.0815 -0.2037,1.62955 -0.8147,0.24443 0.2444,-0.89625 c 0.4491,-0.22295 0.7308,-0.54687 0.774,-0.97773 z m 0.6926,0 0.2444,0.0815 -0.082,0.36665 -0.2851,-0.0815 0.1222,-0.36665 z m 21.876805,0.0407 0.1629,0.0407 0,0.24444 -0.4074,0 0.2445,-0.28518 z m -9.5329,0.0407 0.2037,0 0.1629,0.24444 -0.2852,0 -0.082,0 0,-0.0407 0,-0.2037 z m -6.9664,0.24444 0.4889,0.12221 -0.082,0.24444 -0.5296,0.93699 -0.163,-0.24443 -0.2037,-0.0815 -0.5296,0.28517 0.041,0.65182 c -0.2956,-0.0791 -0.5041,0.0481 -0.6111,0.44813 l -0.1629,-0.24443 -0.2037,-0.0407 -0.244405,0.12221 0.203605,-1.62955 0.6111,0.16296 0.1222,-0.40739 c 0.7391,0.19754 1.1561,0.0741 1.263,-0.32591 z m 2.8517,0.12221 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m -7.862605,0.0407 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m 6.640505,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2445,-0.0407 0.1223,-0.44813 z m -9.288505,0.12222 0.2037,0.0815 -0.2444,0.0815 0.041,-0.16295 z m -0.041,0.28517 0.163,0.12222 0,0.0407 -0.2037,-0.0407 0.041,-0.12222 z m 15.725205,0.0815 c 0,0.20653 -0.1299,0.30826 -0.3259,0.36665 l -0.5296,0.0407 0,-0.16296 0,-0.0407 0.8555,-0.20369 z m 3.2591,0 c 0.013,0.005 0.029,-0.006 0.041,0 0.089,0.046 0.1749,0.11085 0.2037,0.20369 l -0.2444,0 0,-0.20369 z m 1.5481,0 0.4074,0 0.082,0.12221 -0.2037,0.81478 c -0.045,0.002 -0.075,0 -0.1222,0 l 0,0.2037 -0.2037,-0.2037 -0.4074,0 -0.163,-0.24443 0.1223,-0.44813 c 0.1892,0.0506 0.3495,-0.044 0.4888,-0.24443 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.0591 0,0.0815 -0.099,0.33787 -0.3274,0.59857 -0.6518,0.7333 l -0.1223,-0.0407 0.4482,-0.77404 z m 4.4405,0 -0.041,0.20369 -0.4889,0 0,-0.12222 c 0.2002,-0.0277 0.3723,-0.0507 0.5296,-0.0815 z m 8.8811,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m -26.8469,0.0815 0.4074,0.12222 -0.1223,0.44813 -0.4073,-0.12222 0.1222,-0.44813 z m 9.7366,0.12222 0.1629,0 -0.1629,0.57035 0,-0.57035 z m -11.9773,0.16296 -0.082,0.36665 0.4074,0.12221 0.1222,-0.36665 -0.4481,-0.12221 z m 4.9702,0.0407 0.6925,0.20369 -0.1222,0.36665 0.4481,0.12222 0.163,-0.61109 0.3259,0.36665 c -0.3477,0.17232 -0.5887,0.44677 -0.7333,0.81478 -0.062,0.0265 -0.089,0.0462 -0.1222,0.0815 l -0.2037,-0.0407 c 0.1402,-0.44387 -0.02,-0.72709 -0.4074,-0.81478 l -0.2037,-0.0407 c 0.072,-0.11464 0.1184,-0.28147 0.163,-0.44812 z m 16.9066,0 0.4074,0.12221 -0.082,0.24444 -0.4074,-0.12222 0.082,-0.24443 z m -14.4216,0.20369 0.1223,0.0407 c -0.043,2.1e-4 -0.081,-0.002 -0.1223,0 l 0,-0.0407 z m -13.729005,0.24443 0.4482,0.0815 -0.082,0.2037 -0.4074,-0.12222 0.041,-0.16296 z m 20.165805,0 0.1629,0.0815 -0.2037,0.0407 0.041,-0.12222 z m -10.4699,0.0407 0.163,0.24444 0.2036,0.0407 c 0.1186,0.0317 0.2233,0.0419 0.326,0.0407 -0.1474,0.0926 -0.2951,0.12532 -0.4889,0.0815 l -0.2037,0.65182 c 0.3876,0.0877 0.6345,0.21898 0.774,0.44813 l -0.4888,0.24443 0.4074,0.0815 0.082,-0.28517 c 0.122,0.22481 0.1522,0.50258 0.041,0.85552 l 0.6518,0.16295 -0.3667,1.09995 -0.6111,-0.12222 0,2.11839 -1.3443,1.1407 0.2037,0.3259 -1.7518,2.4036 0.4481,-0.1222 0.2444,0.082 -0.1222,0.4074 -0.2851,-0.041 -0.2852,-0.3259 -0.2852,-0.041 -0.1222,0.4889 -0.2852,-0.082 2.4851,-7.78118 0.2444,-0.0407 -0.2851,0.97774 0.6518,0.12221 0.4074,-1.30364 -0.4482,-0.0815 0.041,-0.12221 -0.2037,-0.0815 -0.2851,0 0.041,-0.12222 0.2851,-0.0407 0.082,-0.20369 -0.2444,-0.0815 0.163,-0.57034 -0.2037,-0.28518 0.082,-0.20369 0.2851,-0.0815 z m 6.6812,0.0407 0.2037,0.0407 -0.041,0.12222 -0.163,-0.16296 z m 7.8626,0 0.041,0.16296 -0.2852,-0.0815 0.2444,-0.0815 z m -20.043605,0.12222 0.4482,0.77404 -0.3259,0.16295 -0.163,-0.0407 0.041,-0.89625 z m -0.6925,0.0407 0.2037,0.0407 -0.1222,0.44812 -0.2037,-0.0407 0.1222,-0.44812 z m 19.880605,0.16295 -0.082,0.24443 -0.2037,-0.0407 0,-0.0815 0.2851,-0.12222 z m -1.3852,0.12222 0.082,0.12221 0,0.28518 -0.4481,-0.12222 0.163,0 0.2037,-0.28517 z m 3.8702,0.12221 0.2445,0.0815 0,0.28517 0,0.65183 0,0.12221 -0.326,0.12222 -0.4073,-0.0815 0.2851,-1.14069 0.041,0 c 0.064,-0.008 0.1028,-0.0322 0.163,-0.0407 z m -25.380305,0.12222 0.3667,0.48887 -0.4889,-0.12222 0.1222,-0.36665 z m 35.402105,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -11.4476,0.12222 -0.041,0.20369 -0.7741,0.0815 -0.2037,-0.0815 0,-0.0407 1.0185,-0.16295 z m 6.4367,0 -0.041,0.20369 0.4074,0.0815 0.041,-0.16296 -0.4074,-0.12221 z m -27.172805,0.24443 0,0.20369 -0.4074,0.2037 0.3259,0.32591 -0.1222,0.0815 -0.2852,-0.0815 0.082,-0.32591 -0.1222,-0.0407 0,-0.0407 0.5296,-0.32591 z m 3.136905,0 0.3666,0.0815 -0.2444,0.69256 -0.3259,-0.0815 0.2037,-0.69256 z m 8.3107,0 0.4074,0 0,0.0407 -0.4074,0 0,-0.0407 z m -13.606805,0.0815 0.2037,0.0407 -0.3666,1.34438 c -0.019,-0.29822 -0.091,-0.48679 -0.2445,-0.57034 l 0.041,-0.32592 0.3667,-0.48886 z m 10.307005,0.0815 0.2444,0.0815 -0.1222,0.44813 -0.2852,-0.0407 0.163,-0.48886 z m 2.1184,0.0407 0.2444,0.0407 -0.082,0.24444 0.041,0.16295 c -0.01,0.1969 0.032,0.3372 0.1222,0.44813 l 0,0.0815 -0.1629,0 -0.4074,0.44812 -0.2037,0 0.2444,-0.85551 0.163,-0.28517 -0.041,-0.0407 0.082,-0.24444 z m 1.3851,0.0407 0.2444,0.28518 0,0.28517 c -0.1625,-0.11746 -0.2809,-0.25347 -0.4074,-0.36665 l 0.163,-0.2037 z m -7.6996,0.2037 0.2851,0.0407 -0.1629,0.48886 -0.2445,-0.0815 0.1223,-0.44813 z m 13.9734,0.0815 0.2037,0.0407 0.3259,0.48887 -0.082,0.24443 -0.2037,-0.0815 -0.082,-0.0815 0,-0.16296 -0.2037,0 c 0.013,-0.15533 0.042,-0.32188 0.041,-0.44812 z m -16.540005,0.0815 -0.1222,0.36665 -0.041,1.42586 -0.6518,0.81478 0.3666,0.0815 -0.4481,0.1222 -0.082,0.2445 0.2852,0.3259 -0.041,0.2037 -0.5704,0.6111 0.082,0.9777 -0.8555,1.4259 0.2852,0.2851 -0.6111,-0.1222 0.4481,-1.5481 -1.5073,0.8555 0.2851,0.2852 -1.0184,0.4481 c -0.1112,-0.2192 -0.218,-0.4174 -0.3259,-0.6518 0,-0.011 0.01,-0.03 0,-0.041 l 0.1222,-0.774 0.2851,0.082 0.6926,0.4481 c -0.2006,-0.6795 -0.5592,-1.0906 -1.1407,-1.2222 l 0.2037,-0.6925 c 0.015,-0.046 0.027,-0.077 0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 -0.082,-0.041 c 0.068,-0.2257 0.108,-0.4498 0.163,-0.6518 l 0.1629,-0.1223 0.041,-0.20272 -0.041,-0.12221 c 0.059,-0.23984 0.045,-0.41042 0.082,-0.61109 0.2166,-0.0412 0.4501,-0.15496 0.6926,-0.36665 -0.087,0.52224 -0.036,0.8328 0.2444,0.89626 l -0.3259,0.20369 -0.041,0.0815 c -0.1805,0.1125 -0.3751,0.2435 -0.5296,0.3667 l -0.041,0.2444 0.4074,0.1222 -0.3259,1.6703 0.5703,0.1223 0.1222,-0.4074 0.4482,-0.2037 -0.2852,-0.2852 -0.2852,-0.082 0.082,-0.2037 1.5074,0.1222 0.2037,-0.6925 -0.5296,-0.1223 0.1222,-0.4074 0.5703,0.1223 0.3667,-1.14079 0.2444,-0.16295 -0.2037,-0.0407 0.4889,-1.54808 0.3259,-0.12222 z m -6.1108,0.0407 0.2444,0.0815 -0.1222,0.36665 -0.2037,-0.0407 0.082,-0.40739 z m 24.035905,0 0.163,0.24444 0.2037,0.0815 0.3259,-0.12221 -0.041,0.16295 c -0.3962,0.0368 -0.7257,0.11789 -0.9778,0.2037 l -0.041,0 -0.1629,-0.0407 0.2852,-0.44813 0.2444,-0.0815 z m -12.018,0.0815 0.6111,0.12222 -0.1222,0.40739 -0.4889,-0.52961 z m 3.9517,0.12222 0.3259,0.0815 -0.041,0.16296 -0.2852,0.0815 0,-0.0407 0,-0.28517 z m 4.8072,0.0407 0.2037,0.0407 0,0.0407 -0.2037,0 c 0,-0.0303 0,-0.052 0,-0.0815 z m -13.8105,0.0815 0.2852,0.0815 -0.082,0.61108 -0.366705,0.12222 0.041,-0.40739 0.122305,-0.40739 z m 29.5764,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -7.4552,0.32591 0.4074,0.12222 -0.082,0.44813 -0.4074,-0.24444 0.082,-0.32591 z m -26.358005,0.0407 0.4074,0.12222 -0.082,0.20369 -0.4074,-0.12221 0.082,-0.2037 z m 1.6703,0 0.2037,0.24443 -0.041,0.2037 -0.3259,-0.32591 0.1629,-0.12222 z m 18.169505,0.0407 c 0.1619,0.0875 0.2758,0.18387 0.4889,0.28517 -0.019,0.0576 -0.041,0.13961 -0.041,0.2037 l -0.5296,0 c 0.031,-0.17322 0.06,-0.33608 0.082,-0.48887 z m -3.2591,0.20369 0.163,0 0,0.0407 -0.163,-0.0407 z m -12.1402,0.2037 -0.082,0.57034 -0.041,0.24444 -0.285205,-0.0815 0.041,-0.61108 0.366705,-0.12222 z m -3.299805,0.0815 0.2444,0.0407 -0.1222,0.48886 -0.2852,-0.0407 0.163,-0.48886 z m 10.714305,0.0407 0.7333,0.16295 0,0.0815 -0.082,0.24443 -0.082,0.12222 0,0.16295 0,0.0407 -0.1222,0.28518 -0.082,0 -0.2037,-0.28518 c 0.017,-0.3233 -0.065,-0.59919 -0.163,-0.81477 z m 20.0028,0 c -0.1782,0.66667 0.096,1.38755 0.6925,2.11845 l 0.2445,-0.1222 0.1629,0.2444 -0.041,0.1629 c -0.2463,-0.066 -0.4957,0.012 -0.6925,0.163 -0.042,-0.016 -0.074,-0.03 -0.1223,-0.041 l -0.3666,0.1222 c 0.1402,-0.4439 0.062,-0.7271 -0.3259,-0.8148 l -0.4074,0.1222 -0.041,0.082 -0.2852,-0.2037 c 0.2165,-0.5135 0.4453,-0.70982 0.8148,-0.61104 l 0.1222,-0.40739 -0.6111,-0.16295 0.8556,-0.65182 z m 2.4036,0.0407 0.3259,0.48887 -0.1222,0.44813 -0.2852,-0.57035 0.082,-0.36665 z m -17.9659,0.0815 0.2852,0.0815 -0.1222,0.40739 -0.2445,-0.32591 0.082,-0.16296 z m -14.258605,0.0407 0.2852,0.0407 -0.082,0.20369 c -0.1131,0.033 -0.218,0.0873 -0.3259,0.12222 l 0.1222,-0.36665 z m 15.766005,0 0.7333,0 -0.082,0.2037 -0.6926,0.0815 c 0.022,-0.10671 0.02,-0.18393 0.041,-0.28517 z m -3.9924,0.0815 0.041,0 0,0.12222 -0.041,0 0,-0.12222 z m 19.6768,0 0.2037,0.0407 -0.2037,0.81478 -0.2037,-0.0407 0.2037,-0.81478 z m -28.4357,0.16295 0.5703,0.12222 -0.2444,0.69256 -0.3666,-0.61108 0.041,-0.2037 z m 2.1592,0.0407 -0.082,1.1407 0.611,0.163 0.082,-1.18148 -0.611,-0.12222 z m 19.5546,0.12222 0.163,0.0407 -0.1222,0.44813 -0.2037,-0.0407 0,-0.0407 0.041,0 0.1222,-0.40739 z m -13.4438,0.0407 0.1222,0 0.2852,0.73328 -0.1222,0.163 -0.163,0 -0.2037,-0.61111 c 0.01,-0.0113 0,-0.0293 0,-0.0407 l 0,-0.0407 c 0.026,-0.0655 0.056,-0.13405 0.082,-0.20369 z m 6.3145,0 0.4074,0 -0.082,0.48887 -0.3259,0 0,-0.48887 z m 4.0332,0 0.2444,0.0407 -0.041,0.16295 -0.2444,-0.0815 0.041,-0.12222 z m -25.706305,0.0815 0.082,0.0407 -0.041,0.20369 -0.082,-0.0407 0.041,-0.20369 z m 38.172405,0.0815 -0.041,0.16296 0.041,0.0407 0,-0.2037 z m -21.5509,0.0407 0.082,0 0,0.32591 -0.2037,-0.0407 0.1222,-0.28518 z m -10.918005,0.24444 c 0.2732,-0.0456 0.679405,-0.0134 1.181405,0.0407 l -0.1222,0.40734 c -0.3876,-0.088 -0.750105,0.1822 -0.937005,0.7741 l -0.5704,-0.8963 c 0.053,-0.16642 0.175,-0.28026 0.4482,-0.32588 z m 14.095605,0.0407 0.3259,0 -0.1222,0.20374 -0.2037,0 0,-0.20374 z m 0.7741,0 0.082,0 0,0.20374 -0.041,0 -0.041,-0.20374 z m 15.1548,0.0407 0.4889,0.12222 -0.2852,1.01852 -0.3666,-0.4889 0.1629,-0.65184 z m -17.9658,0.0407 0.2444,0.0407 -0.2852,0.0815 0.041,-0.12414 z m 10.8365,0 0.2037,0.0407 -0.041,0.12224 -0.2444,0.1222 0,0.082 -0.041,0 0.041,-0.082 0.082,-0.28518 z m 9.5737,0.12224 -0.1223,0.082 -0.082,0.1629 0.2037,0.2445 0,-0.4889 z m -13.8105,0.082 0.4074,0.082 -0.3259,0.4481 -0.326,-0.082 -0.041,-0.1629 0.2852,-0.2852 z m -10.4292,0.041 0.1222,0.082 0,0.2444 -0.1629,-0.041 c 0.032,-0.1024 0.017,-0.1886 0.041,-0.2851 z m 13.8512,0.041 0.6111,0.5296 0.041,0.041 -0.1222,0.6111 c -0.1738,-0.1302 -0.3351,-0.2839 -0.4889,-0.3667 -0.043,-0.2456 -0.071,-0.5151 -0.041,-0.8148 z m -8.5551,0.041 0.3666,0 0,0.2444 -0.3666,0 0,-0.2444 z m -16.458505,0.082 0.1629,0.041 -0.1222,0.4074 -0.2852,-0.082 0.082,-0.2852 0.163,-0.082 z m 4.196105,0.2037 0.5296,0.1222 0,1.1814 c -0.3391,-0.077 -0.521,-0.509 -0.5296,-1.3036 z m 1.7925,0.1629 -0.2444,0.6926 0.6518,0.163 0.2037,-0.6926 -0.6111,-0.163 z m 3.0147,0.2445 c 0.5369,0.1214 0.591,1.2374 0.1629,3.2998 -0.149,0.2487 -0.3559,0.7021 -0.5703,1.1407 l -0.5704,-0.1222 -0.5296,-1.3444 c 0.3877,0.088 0.5932,-0.086 0.7333,-0.5296 l 0.082,-1.1814 0.2037,0.2444 0.6518,0.163 -0.1629,-1.6703 z m 9.6958,0.041 0.1222,0.1222 -0.2444,0.2852 -0.1222,0.4481 -0.1222,0 -0.2852,-0.082 -0.041,-0.4481 0.082,-0.1223 0.2444,0.2445 0.3667,-0.4482 z m 5.3775,0 c 10e-5,0.306 -0.1563,0.4481 -0.5703,0.4481 l 0,0.2037 0.4074,0 -0.3667,0.6518 -0.4073,-0.081 0.082,-0.082 0,-0.2852 -0.041,-0.041 0.4073,-0.774 c 0.1596,-0.01 0.3126,-0.041 0.4889,-0.041 z m -13.4438,0.041 0.2852,0.041 -0.4481,1.2629 -0.082,0.3259 c 0.1979,0.081 0.3666,0.1667 0.5296,0.2444 l -0.2445,0.4481 -0.1222,-0.2037 -0.3259,0.163 -0.2444,-0.041 c 0.067,-0.1419 0.1305,-0.2725 0.2037,-0.4889 l -0.2037,0 0.1629,-0.4888 0.041,0.041 0.2852,0 0.163,-1.3037 z m -8.188505,0.082 0.5704,0.1222 -0.163,0.4074 -0.4074,-0.5296 z m 13.158705,0.082 0.082,0.082 -0.163,-0.041 0.082,-0.041 z m 4.359,0 0.3259,0 c -0.047,0.2542 -0.075,0.4486 -0.082,0.6518 l -0.611,0 0.082,-0.5704 0.2851,-0.082 z m -3.1369,0.082 0.082,0.4888 c -0.2042,-0.1067 -0.3488,-0.235 -0.4481,-0.4074 l 0.3666,-0.082 z m -1.7517,0.082 -0.1223,0.4888 -0.1629,0 0,-0.4074 0.2852,-0.082 z m 18.0065,0.041 0.2037,0.041 -0.1629,0.6518 -0.2037,-0.082 0.1629,-0.6111 z m 0.6519,0 0.4888,0.1222 -0.4074,1.4666 -0.1629,-0.041 c -0.083,-0.019 -0.171,0.021 -0.2445,0.041 l 0,-0.3667 0.326,-1.2221 z m -21.225,0.041 0.1222,0 0,0.041 -0.1222,-0.041 z m 3.5036,0.1222 c 0.081,0.036 0.1343,0.08 0.2036,0.1222 l -0.2444,0.041 0.041,-0.163 z m -12.181,0.082 0.2852,0.041 -0.2852,0.8962 -0.2851,-0.041 0.2851,-0.8962 z m 1.7925,0.1629 -0.1222,0.4482 0.6111,0.1222 -0.4889,-0.5704 z m 19.5954,0 c 0.045,0.041 0.1551,0.1195 0.2037,0.163 l -0.082,0.5296 -0.8962,2.8517 -0.5704,0.8148 0.3667,1.0592 -0.6518,-0.163 -0.3667,2.0777 -0.5296,-0.1222 0,-0.9777 0.3259,-0.1222 0.082,-0.2037 0.163,-1.4666 0.4888,-0.5704 -0.1222,-0.1222 c 0.028,-0.055 0.041,-0.1272 0.041,-0.2037 l 0.2037,-0.1222 -0.4074,-0.5703 0.3667,-0.1223 0.2444,0.041 0.082,-1.1406 0.3666,-1.1407 0.5296,0.1222 0.163,-0.6111 z m 1.2629,0.082 0.1223,0.163 -0.163,-0.041 0.041,-0.1222 z m 1.8333,0.1222 0.082,1.6296 0.4889,0.1222 0.2036,-0.2037 -0.2444,0.8148 c -0.1147,-0.1898 -0.1569,-0.2813 -0.2852,-0.4889 l -0.2037,0.081 c -0.022,-0.018 -0.055,-0.024 -0.082,-0.041 l -0.4073,-0.6518 0.4481,-1.2629 z m 0.5296,0 0.3666,0.082 0,0.082 -0.2444,0.3667 -0.2444,-0.082 0.1222,-0.4481 z m 3.7887,0.163 0.2037,0.041 -0.1222,0.4481 -0.2037,-0.082 0.1222,-0.4074 z m 1.7925,0.2444 0.2037,0.082 0,1.0592 0,0.041 c -0.05,0.036 -0.1167,0.064 -0.1629,0.1223 l -0.3667,-0.082 0.3259,-1.2222 z m -32.102205,0.041 0.2444,0.082 -0.9777,3.0962 -0.2444,-0.041 0.9777,-3.1369 z m 29.576405,0.163 0.082,0.041 -0.1629,0.6111 -0.2037,-0.041 0.1222,-0.4482 0.1629,-0.1629 z m -14.0142,0.1629 0.2037,0 0,0.4889 -0.2037,0 0,-0.4889 z m 11.6921,0.082 0.2037,0.082 0.041,0.2445 -0.2852,-0.2037 0.041,-0.1222 z m -24.2804,0.082 -0.1629,0.4482 0.6111,0.1629 0.1629,-0.4888 -0.6111,-0.1223 z m 27.1321,0.041 0.2037,0.041 0.041,0.6926 -0.4074,-0.1222 0.163,-0.6111 z m -29.046805,0.041 0.285205,0.041 -0.2037,0.6519 -0.244505,-0.082 0.163,-0.6111 z m 31.572605,0.2037 0.4074,0.1223 -0.082,1.0592 -0.082,0.3259 -0.2444,-0.081 0.082,-1.1407 c -0.055,-0.013 -0.1121,0 -0.163,0 l 0.082,-0.2852 z m -19.5546,0.2445 0.041,0 0,0.4481 -0.2037,0 0.1629,-0.4481 z m -5.5405,0.041 0.6925,0.1629 -0.5703,1.1815 -0.3259,0.4481 -0.082,0 0.2037,-0.6111 0,-1.0592 c 0.035,-0.028 0.048,-0.074 0.082,-0.1222 z m 5.9479,0.2037 0.4073,0 0,0.4888 0.2445,0 0.041,-0.041 -0.041,0.2852 -0.3259,0.082 -0.041,-0.1222 0.041,-0.2037 -0.3667,-0.082 -0.1629,0.041 c 0.1408,-0.1216 0.2037,-0.2569 0.2037,-0.4481 z m 13.8919,0 0.2444,0.041 0.1223,0.7333 -0.082,0.2444 -0.4074,-0.6111 0.1222,-0.4074 z m -11.8143,0.2037 0.082,0 -0.2037,0.8962 -0.082,0.041 -0.2036,-0.2037 c -0.1036,0 -0.1645,0.01 -0.2445,0.041 l 0.2037,-0.6518 0.4481,-0.1222 z m 0.7741,0 0.4888,0 0.163,0.041 -0.2444,0.774 -0.5296,0.3259 -0.2445,0 0.082,-0.2037 0.163,0 0,-0.2037 0.2852,-0.082 -0.2852,-0.2852 0.1222,-0.3666 z m 2.8517,0 0.6518,0 -0.082,0.2037 -0.6111,-0.1223 0.041,-0.082 z m -22.528605,0.1629 0.6518,0.163 -0.4888,0.6111 -0.3667,-0.082 0.2037,-0.6926 z m 14.951205,0.1222 0.2037,0 0.3666,0.082 -0.4074,0.2037 -0.041,0.2037 0.041,0.1222 -0.1629,0.041 -0.2037,0 0.2037,-0.6518 z m 20.0028,0.041 0.2036,0.041 -0.041,0.2037 -0.2036,-0.041 0.041,-0.2037 z m -18.8214,0.163 0.2444,0.041 -0.041,0.2037 -0.2852,0.041 0.082,-0.2852 z m 6.1923,0 0.2852,0.041 -0.041,0.081 -0.2445,-0.081 0,-0.041 z m 6.1516,0.2037 0.6518,0.1222 0.2852,0.8555 c 0.027,0.314 0.036,0.6162 -0.041,0.937 l -0.2037,-0.082 0.1629,-0.4481 -0.5703,-0.1222 -0.041,0.2037 0.3259,0.8147 -0.3259,0.1222 c -0.1051,0.333 -0.023,0.6073 0.2852,0.7741 -0.04,0.1099 -0.074,0.22 -0.1223,0.3259 l -0.2444,0.082 0.1222,-0.4074 -0.5703,-0.1222 -0.2445,1.7518 c -0.1707,0.1743 -0.3679,0.3712 -0.5703,0.5296 l 0.2037,-0.2852 c 0.09,-0.6138 -0.1266,-0.9904 -0.6111,-1.1 l 0.1222,-0.4074 0.6111,0.1223 0.1222,-0.2852 -0.3259,-0.2852 0.4481,-0.1222 0,-1.1814 0.5297,-1.7925 z m -27.376505,0.041 0.8147,0.4074 -0.3259,1.0999 -0.2852,-0.082 -0.3259,-1.0185 0.1223,-0.4073 z m 2.485,0.041 0.5704,0.1222 -0.082,0.2037 -0.5296,-0.1222 0.041,-0.2037 z m 32.020805,0.1222 0.2851,0.041 -0.2036,0.6926 -0.2852,-0.041 0.2037,-0.6926 z m -23.3027,0.041 0.2037,0 0,0.2037 -0.2444,-0.041 0.041,-0.163 z m 10.144,0 0,0.082 -0.041,0 0.041,-0.082 z m 11.8143,0.2852 -0.3667,1.3443 -0.041,0 0.4074,-1.3443 z m -11.4884,0.082 0.2445,0.081 -0.082,0.2037 -0.2852,0.1222 0.1222,-0.4074 z m 10.307,0 0.041,0 c 0.027,0.1987 0.01,0.418 -0.041,0.6518 l -0.163,-0.041 0.163,-0.6111 z m 1.5888,0 0.1222,0.041 0,0.2037 -0.163,-0.041 0.041,-0.2037 z m -16.3363,0.1222 0.163,0 -0.4482,0.4481 -0.2037,0 0.4889,-0.4481 z m 3.1369,0 0.2852,0 -0.082,0.4481 -0.326,0 0.1223,-0.4481 z m -22.447105,0.2037 0.082,0.1222 -0.041,0.082 c -0.011,-0.069 -0.041,-0.1361 -0.041,-0.2037 z m 20.165705,0 0.5296,0 0.082,0.082 -0.082,0.3259 -0.6111,-0.1222 0.082,-0.2852 z m -18.902805,0.082 0.2037,0.041 0,0.2444 c -0.066,-0.097 -0.1384,-0.184 -0.2037,-0.2852 z m 10.714305,0.2037 -0.082,0.2851 -0.041,0.082 -0.041,0.1222 -0.163,-0.2036 0.3259,-0.2852 z m 19.7176,0 0.2037,0.041 -0.082,0.1629 c -0.028,-0.054 -0.092,-0.1466 -0.1222,-0.2037 z m -4.1554,0.041 0.6111,0.1222 -0.082,0.2444 -0.6111,-0.1629 0.082,-0.2037 z m 7.9441,0 0.163,0.041 -0.2852,0.9777 -0.1222,-0.041 0.2444,-0.9777 z m -29.4542,0.082 1.2222,0.082 -0.2037,0.6111 -1.2629,0 0.2444,-0.6926 z m 10.918,0.041 0.6519,0 0,0.2037 -0.1223,0 -0.611,-0.163 c 0.029,-0.014 0.051,-0.027 0.082,-0.041 z m 14.2994,0.081 0.2852,0.4074 -0.2852,0.4481 -0.2445,-0.041 0.2445,-0.8148 z m 1.1407,0.3259 0.1222,0.6111 -0.2852,-0.082 0.163,-0.5296 z m 4.1553,0.041 0.1223,0 c -0.064,0.2039 -0.057,0.3921 0,0.5296 l -0.041,0 -0.1223,0.4074 0.041,0.8962 -0.4074,0.4889 -0.2036,-0.041 0.3259,-1.1814 -0.4482,-0.1223 0.2445,-0.8147 0.4074,0.1222 0.082,-0.2852 z m -17.2325,0.041 0.3666,0 0,0.2851 -0.2444,0.082 -0.1222,-0.041 0,-0.3259 z m 0.774,0 0.4074,0 -0.1629,0.5703 -0.2445,-0.041 -0.082,-0.082 0.082,0 0,-0.4481 z m 2.037,0 0.4074,0 -0.1223,0.6925 c -0.1459,0.1527 -0.3487,0.2497 -0.5703,0.3259 l -0.6111,-0.4481 c 0.097,0.029 0.2025,0.064 0.3259,0.082 0.4141,0 0.5704,-0.1928 0.5704,-0.6518 z m -22.447105,0.041 c 0.01,0.018 0.071,0.022 0.082,0.041 l -0.082,0 0,-0.041 z m 2.7702,0.041 0.8148,0.2037 -0.082,0.2037 -0.8148,0.082 c -0.02,-0.022 -0.021,-0.059 -0.041,-0.082 l 0.1222,-0.4074 z m 21.428605,0 0.2852,0.1629 -0.082,0.2037 -0.2851,-0.041 0.082,-0.3259 z m -2.3221,0.082 0.2852,0.082 -0.2852,0 0,-0.082 z m -14.2993,0.3666 0.4889,0.5296 -0.2037,0.6518 -0.041,0 -0.2445,-0.3259 -0.5296,-0.1222 c -0.048,0.151 -0.1391,0.2794 -0.2444,0.3667 l -0.8555,-0.2445 c -0.047,-0.2318 -0.222205,-0.4008 -0.611105,-0.4888 l 0.041,-0.2037 0.570305,0.1222 0.2037,0.2444 c 0.1053,-0.3329 0.569,-0.446 1.4259,-0.5296 z m 3.1776,0.3259 0.3667,0.4482 -0.6518,-0.1223 0.2851,-0.3259 z m 21.6731,0 0.1222,0.2037 c -0.02,0.075 -0.087,0.1637 -0.1222,0.2445 l -0.1222,-0.041 0.1222,-0.4074 z m -1.3444,0.1222 0.2037,0.3667 -0.041,0.2037 -0.2444,-0.3667 c 0.023,-0.07 0.061,-0.1319 0.082,-0.2037 z m -25.909905,0.4074 0.2444,0.041 -0.1222,0.4074 -0.2444,-0.041 0.1222,-0.4074 z m -1.5073,0.081 0.2037,0.041 -0.041,0.1222 c -0.061,-0.042 -0.1022,-0.1176 -0.163,-0.1629 z m -3.911,0.082 c 0.1984,0.045 0.3656,0.107 0.5296,0.1222 l 0.4889,0.6111 0,-0.4888 -0.1222,-0.1223 c 0.1736,-0.011 0.3316,-0.066 0.4481,-0.1222 0.1559,0.2002 0.3052,0.4271 0.4889,0.6519 l -0.3259,0.4481 -0.1222,-0.1222 -0.082,-0.163 -0.2852,-0.041 -0.6518,0.2852 0.041,0.6111 c -0.1698,-0.1506 -0.3285,-0.3246 -0.4889,-0.4889 l 0.082,-0.2037 -0.3667,-0.082 c -0.1551,-0.1722 -0.3025,-0.3448 -0.4481,-0.5296 l 0.6518,0.1222 0.163,-0.4889 z m 11.732805,0.2445 0.4481,0 0,0.4888 -0.4481,0 0,-0.4888 z m 11.6921,0 0.1629,0 0,0.1222 -0.1629,-0.1222 z m -4.4406,0.041 0.163,0.2851 -0.041,0.163 -0.9777,0 -0.2852,0 0,-0.041 c 0.097,0.022 0.1955,0.061 0.2852,0.041 0.1794,-0.041 0.3596,-0.1964 0.4888,-0.4074 l 0.3667,-0.041 z m -0.7333,0.041 0,0.041 -0.5296,0 0.5296,-0.041 z m 2.1999,0.041 c 0.1,0.077 0.157,0.2267 0.163,0.3666 l -0.6926,0 0.163,-0.2852 0.3666,-0.082 z m 17.1104,0.041 0.1629,0.041 -0.041,0.1629 -0.1629,-0.082 0.041,-0.1222 z m -21.1435,0.041 0.1222,0 c 0.1262,0.063 0.2198,0.1547 0.2444,0.2851 l -0.3666,0 0,-0.2851 z m 11.692,0.4481 0.5297,0.1222 -0.082,0.2444 -0.5297,-0.1222 0.082,-0.2444 z m -13.0364,0.082 0.163,0.1222 -0.082,0.2037 -0.082,-0.041 0,-0.2852 z m -4.1146,0.082 0.2444,0.041 0.1222,0.082 0.163,0 -0.082,0.2444 -0.3667,0.2037 -0.1222,0.041 0,-0.082 0.1222,0.041 0.041,-0.2037 -0.1222,-0.2851 0,-0.082 z m 25.421,0.041 0.1223,0.4481 -0.1223,0.2852 0,-0.7333 z m -16.1733,0.1629 -0.041,0.2037 -0.041,0.4889 -0.937,-0.1222 -0.082,-0.082 0.7741,-0.3667 -0.3667,-0.082 0.6926,-0.041 z m -3.5035,0.041 -0.041,0.1223 -0.2852,-0.082 0.3259,-0.041 z m 4.7664,0 0.4481,0.082 0,0.041 0,0.2037 c -0.1904,0 -0.2989,0.048 -0.4074,0.1223 l -0.041,-0.4482 z m -2.5665,0.041 -0.1223,0.4482 -0.611,-0.082 -0.2445,-0.2445 -0.082,0.2037 -0.2852,-0.041 0.082,-0.2444 0.082,0 0.2037,0.082 -0.041,-0.082 0.2852,0 0.7333,-0.041 z m 3.7887,0 0.1222,0.041 -0.1222,0 0,-0.041 z m -15.2771,0.041 0.163,0.2445 0.2851,0 0.163,-0.1222 0.2852,0.2851 -0.326,0.3667 c -0.7618,0.018 -1.1993,0.1247 -1.2629,0.3259 l -0.082,0.2037 0.2852,0.082 0.5296,0 -0.2444,0.2852 c -0.3068,0 -0.7246,-0.1575 -1.1814,-0.3667 l 0.1222,-0.3259 -0.366705,-0.082 -0.3259,0.163 c -0.3253,-0.184 -0.6735,-0.4253 -1.0592,-0.6926 0.53,0.1199 0.9408,0.021 1.2222,-0.2852 0.452005,0.097 0.896405,0.163 1.385105,0.163 l 0.082,0 0.1629,0.041 0.041,-0.163 0.1223,-0.1222 z m 1.9147,0.082 c 0.012,0.2782 0.1751,0.4717 0.6111,0.5704 l -0.041,0.1222 -0.1629,0.082 c -0.4017,-0.033 -0.7787,-0.07 -1.1,-0.082 0.1875,-0.1742 0.4654,-0.4655 0.6926,-0.6926 z m 25.1766,0 0.1223,0.041 -0.2445,1.0185 -0.1222,-0.041 0.2444,-1.0185 z m -10.9587,0.082 0.2444,0.082 -0.082,0.2852 -0.1629,0 0,-0.3666 z m -20.817605,0.1223 c 0.2965,0.3446 0.6324,0.7122 0.9778,1.0999 l -0.7333,-0.1629 c -0.294,-0.2508 -0.5828,-0.5253 -0.8556,-0.8148 l 0.6111,-0.1222 z m -1.0592,0.2444 0.4481,0.7333 -0.3259,0 c -0.2313,-0.1353 -0.4738,-0.2499 -0.6925,-0.4074 0.047,-0.067 0.091,-0.1468 0.1222,-0.2444 l 0.4481,-0.082 z m 23.221205,0.163 0.5703,0.1222 0,1.1814 -0.4481,0.1222 -0.5296,-0.1222 0.4074,-1.3036 z m 11.2846,0.1222 -0.2037,0.4074 0.082,-0.326 0.1223,-0.082 z m -16.2955,0.1222 0.2444,0 0,0.082 -0.2444,-0.041 0,-0.041 z m -19.676905,0.1222 c 0.029,0.01 0.054,0 0.082,0 l 0.082,0.082 -0.3666,0 0.2037,-0.082 z m 29.169105,0.041 -0.041,0.3667 -0.2852,-0.082 c 0.1195,-0.087 0.2148,-0.1918 0.3259,-0.2852 z m 3.8294,0 0,0.082 -0.041,0 0.041,-0.082 z m -0.9777,0.041 0.2037,0.082 c -0.072,0.065 -0.1697,0.1008 -0.2445,0.163 -0.1919,0.1594 -0.368,0.3385 -0.5703,0.4888 -0.078,-0.08 -0.1398,-0.2017 -0.2037,-0.3259 0.1573,-0.079 0.2843,-0.1614 0.4481,-0.2444 l 0.3259,0.082 0.041,-0.2037 c 0.01,0 -0.01,-0.038 0,-0.041 z m -23.5471,0.2037 -1.0999,0.5296 -0.163,0 0,-0.2037 c 0.1087,0 0.2966,-0.111 0.5296,-0.2852 l 0.7333,-0.041 z m -4.929405,0.1222 c 0.1297,0.1453 0.2302,0.2561 0.3667,0.4074 l 0,0.2037 c -0.065,-0.043 -0.139,-0.078 -0.2037,-0.1222 l 0.041,-0.082 -0.163,-0.041 c -0.08,-0.056 -0.166,-0.1047 -0.2444,-0.163 l 0.1629,-0.041 0.041,-0.1629 z m 10.021805,0.082 0.3666,0.2444 -0.082,0.082 -0.2037,0 c 0,-0.1207 -0.037,-0.2282 -0.082,-0.3259 z m -2.037,0.3259 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 6.6405,0 0.4073,0 0,0.082 -0.2444,0.1222 -0.1629,0 0,-0.2036 z m -3.0962,0.1222 0.4074,0.082 -0.4074,0 0,-0.082 z m 5.8257,0 0.2444,0.041 0.2444,0.2852 0.081,0 0,0.4074 c -0.3615,0.031 -0.758,0.061 -1.1407,0.082 l 0.3259,-0.4889 c 0.079,0 0.1558,0 0.2445,0 l 0,-0.3259 z m -6.4775,0.3259 0.6518,0 0,0.4889 -1.0185,0 0.3667,-0.4889 z m 8.1885,0.041 0.2852,0.082 -0.041,0.1223 c -0.1063,0.015 -0.2176,0.027 -0.3259,0.041 l 0.082,-0.2445 z m 9.4107,0.041 c -0.02,0.2877 -0.042,0.5617 0.041,0.7741 l -0.163,0.082 -0.1222,0.4074 -0.3259,-0.4482 0.5703,-0.8147 z m -12.0587,0.041 c 0.01,0 0.03,0 0.041,0 l 0.041,0.041 -0.082,0.2445 -0.2445,-0.041 c 0.043,-0.093 0.1038,-0.1842 0.2445,-0.2445 z m -8.6367,0.163 0.6518,0 0,0.2037 -0.6518,0.2037 0,-0.4074 z m 1.0185,0 0.4889,0 0,0.2037 -0.4889,0 0,-0.2037 z m 3.585,0 0.3667,0 -0.3667,0.4074 -0.4888,0 0.4888,-0.4074 z m -15.154805,0.2037 0.041,0 0,0.2037 -0.4482,0 0,-0.041 0.4074,-0.163 z m 3.3405,0 0.6111,0 0,0.2037 -0.6111,0 0,-0.2037 z m 4.970205,0 0.6111,0 0,0.2037 -0.6111,0 0,-0.2037 z m 3.9109,0 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 18.0473,0.041 0.082,0 0,0.041 -0.082,-0.041 z m -2.7295,0.082 0.041,0 -0.1629,0.4889 -0.5296,-0.1223 0.041,-0.082 c 0.1755,-0.071 0.4149,-0.2008 0.6111,-0.2851 z m 5.2961,0 c 0.072,0.09 0.1611,0.1484 0.2444,0.2444 l 0,0.041 -0.4074,-0.082 c -0.029,-0.024 -0.055,-0.058 -0.082,-0.082 l 0.2445,-0.1222 z m -32.631805,0.2852 0.6518,0 0,0.2444 -0.6518,0 0,-0.2444 z m 2.9332,0 0.3666,0 -0.3666,0.5296 0,-0.5296 z m -3.5443,0.2444 0.4481,0 0,0.2852 -0.4481,0 0,-0.2852 z m 9.329205,0 0.6111,0 1.0184,0.2852 1.2222,-0.2852 1.3036,0 0,0.4889 -5.1738,0 0,-0.2037 1.0185,-0.2852 z m 4.522,0 4.6035,0 -0.4481,0.4889 -0.2037,-0.2037 -1.0185,0.2037 -2.4851,0 -0.4481,-0.4889 z m 5.459,0 0.5703,0 0,0.2852 -0.5703,0 0,-0.2852 z m 15.3178,0 c -0.021,0.067 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.163 0.041,-0.041 z m -30.513405,0.2852 1.0185,0 0,0.2037 -1.0185,0 0,-0.2037 z"
+           id="path6192"
+           transform="matrix(0.61596339,0,0,0.61596335,-151.19575,407.39447)" />
+        <g
+           inkscape:export-ydpi="600"
+           inkscape:export-xdpi="600"
+           inkscape:export-filename="/Volumes/partage/private/marketing/Design/ChartesGraphiques/ModelWriter/png/logo_modelwriter_HD.png"
+           id="g4593"
+           transform="matrix(0.39217453,0,0,0.39217453,-362.40312,1081.9433)">
+          <g
+             id="g4324"
+             transform="matrix(1.0083233,0,0,1.0083233,11.632425,-451.09721)">
+            <text
+               sodipodi:linespacing="125%"
+               id="text4326"
+               y="108.4253"
+               x="102.82677"
+               style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:47.02912903px;line-height:125%;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:0px;word-spacing:0px;fill:#5a5a5a;fill-opacity:1;stroke:none"
+               xml:space="preserve"><tspan
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:52.10993958px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.36148632px;fill:#5a5a5a;fill-opacity:1"
+                 y="108.4253"
+                 x="102.82677"
+                 id="tspan4328"
+                 sodipodi:role="line"><tspan
+                   id="tspan4330"
+                   style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:52.10993958px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.36148632px;fill:#5a5a5a;fill-opacity:1">M</tspan><tspan
+                   id="tspan4332"
+                   style="font-size:43.5675621px;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:-1.36148632px;fill:#5a5a5a;fill-opacity:1">ODEL</tspan></tspan></text>
+            <text
+               xml:space="preserve"
+               style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:47.02912903px;line-height:125%;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
+               x="240.09686"
+               y="124.76314"
+               id="text4334"
+               sodipodi:linespacing="125%"><tspan
+                 sodipodi:role="line"
+                 id="tspan4336"
+                 x="240.09686"
+                 y="124.76314"
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:52.10993958px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.36148632px"><tspan
+                   style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:52.10993958px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.36148632px;fill:#faa542;fill-opacity:1"
+                   id="tspan4338">W</tspan><tspan
+                   style="font-size:43.5675621px;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:-1.36148632px;fill:#faa542;fill-opacity:1"
+                   id="tspan4340">RITER</tspan></tspan></text>
+          </g>
+          <g
+             id="g4400"
+             transform="translate(24.224454,-101.5825)">
+            <g
+               transform="matrix(0.62138123,0.05946504,-0.05946504,0.62138123,93.923956,-868.76894)"
+               id="g4376">
+              <path
+                 d="m 353.76798,912.84277 c 0.31366,-0.42982 0.46098,-0.98102 0.44194,-1.65363 -5.04243,-14.72576 -9.38414,-30.88636 -16.84097,-44.34698 -1.02954,-1.85847 -1.62482,1.6687 -1.54396,2.60599 1.20755,8.12703 6.20172,30.20172 3.44674,33.9138 -2.60067,3.50433 -23.74398,6.82552 -33.41569,8.55038 -0.91725,0.2089 -4.05999,2.11778 -2.11516,2.40873 15.1165,2.26136 32.6588,0.12757 48.42072,-0.67442 0.81271,-0.0656 1.29274,-0.37405 1.50184,-0.66059 l 0.10452,-0.14329"
+                 id="path4378"
+                 inkscape:connector-curvature="0"
+                 sodipodi:nodetypes="ccscscscsc"
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#5a5a5a;fill-opacity:1;stroke:none" />
+              <path
+                 d="m 332.28429,899.14379 c -0.44809,0.59109 -1.09318,1.03281 -1.93535,1.3252 -15.83787,-10.26458 -37.79549,-16.07602 -71.04317,0.78365 -0.6928,0.0953 -0.74044,-0.25108 -0.78811,-0.59743 21.48247,-15.37477 37.15247,-19.80437 54.84276,-17.61836 9.28662,1.14756 22.17176,8.81004 19.07325,15.90992 l -0.14929,0.19702"
+                 id="path4380"
+                 inkscape:connector-curvature="0"
+                 sodipodi:nodetypes="ccccscc"
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#5a5a5a;fill-opacity:1;stroke:none" />
+            </g>
+            <g
+               style="fill:#faa542;fill-opacity:1"
+               id="g4394"
+               transform="matrix(-0.62138123,-0.05946504,0.05946504,-0.62138123,366.91998,366.23079)">
+              <path
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#faa542;fill-opacity:1;stroke:none"
+                 sodipodi:nodetypes="ccscscscsc"
+                 inkscape:connector-curvature="0"
+                 id="path4396"
+                 d="m 353.76798,912.84277 c 0.31366,-0.42982 0.46098,-0.98102 0.44194,-1.65363 -5.04243,-14.72576 -9.38414,-30.88636 -16.84097,-44.34698 -1.02954,-1.85847 -1.62482,1.6687 -1.54396,2.60599 1.20755,8.12703 6.20172,30.20172 3.44674,33.9138 -2.60067,3.50433 -23.74398,6.82552 -33.41569,8.55038 -0.91725,0.2089 -4.05999,2.11778 -2.11516,2.40873 15.1165,2.26136 32.6588,0.12757 48.42072,-0.67442 0.81271,-0.0656 1.29274,-0.37405 1.50184,-0.66059 l 0.10452,-0.14329" />
+              <path
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#faa542;fill-opacity:1;stroke:none"
+                 sodipodi:nodetypes="ccccscc"
+                 inkscape:connector-curvature="0"
+                 id="path4398"
+                 d="m 332.28429,899.14379 c -0.44809,0.59109 -1.09318,1.03281 -1.93535,1.3252 -15.83787,-10.26458 -37.79549,-16.07602 -71.04317,0.78365 -0.6928,0.0953 -0.74044,-0.25108 -0.78811,-0.59743 21.48247,-15.37477 37.15247,-19.80437 54.84276,-17.61836 9.28662,1.14756 22.17176,8.81004 19.07325,15.90992 l -0.14929,0.19702" />
+            </g>
+          </g>
+        </g>
+        <g
+           inkscape:export-ydpi="93.669357"
+           inkscape:export-xdpi="93.669357"
+           inkscape:export-filename="/Volumes/partage/private/marketing/Design/ChartesGraphiques/ModelWriter/png/icon_128.png"
+           id="g3818"
+           transform="matrix(0.58553362,0,0,0.58553362,-418.33156,1069.921)">
+          <rect
+             style="fill:none;stroke:none"
+             id="rect3816"
+             width="122.98579"
+             height="122.98579"
+             x="273.0769"
+             y="-419.00171" />
+          <g
+             id="g3801"
+             transform="translate(1.3533681e-6,0)">
+            <g
+               transform="matrix(0.90875687,0,0,0.90875687,-253.10201,-1142.0467)"
+               id="g4342">
+              <text
+                 sodipodi:linespacing="125%"
+                 id="text4344"
+                 y="875.41772"
+                 x="587.49329"
+                 style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:51.81373978px;line-height:125%;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
+                 xml:space="preserve"><tspan
+                   style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:57.41145706px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.5px"
+                   y="875.41772"
+                   x="587.49329"
+                   id="tspan4346"
+                   sodipodi:role="line"><tspan
+                     id="tspan4348"
+                     style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:57.41145706px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.5px;fill:#5a5a5a;fill-opacity:1">M</tspan><tspan
+                     id="tspan4350"
+                     style="font-size:49.33833313px;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:-1.5px;fill:#5a5a5a;fill-opacity:1" /></tspan></text>
+              <text
+                 xml:space="preserve"
+                 style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:51.81373978px;line-height:125%;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
+                 x="648.72882"
+                 y="893.41772"
+                 id="text4352"
+                 sodipodi:linespacing="125%"><tspan
+                   sodipodi:role="line"
+                   id="tspan4354"
+                   x="648.72882"
+                   y="893.41772"
+                   style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:57.41145706px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.5px"><tspan
+                     style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:57.41145706px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.5px;fill:#faa542;fill-opacity:1"
+                     id="tspan4356">W</tspan><tspan
+                     style="font-size:49.33833313px;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:-1.5px;fill:#faa542;fill-opacity:1"
+                     id="tspan4358" /></tspan></text>
+            </g>
+            <path
+               d="m 363.53356,-386.66715 c 0.21985,-0.24774 0.34382,-0.58056 0.37191,-0.99847 -2.25132,-9.42388 -3.98336,-19.6953 -7.8058,-28.4784 -0.52775,-1.21266 -1.10577,0.93766 -1.11125,1.52325 0.26633,5.10755 2.05196,19.08234 0.12471,21.21918 -1.81932,2.01724 -15.11778,2.82144 -21.21317,3.31672 -0.58076,0.0751 -2.64136,1.07154 -1.4535,1.36715 9.23289,2.29766 20.22956,2.01571 30.04403,2.45343 0.50749,0.008 0.82323,-0.15512 0.9698,-0.32028 l 0.0733,-0.0826"
+               id="path4412"
+               inkscape:connector-curvature="0"
+               sodipodi:nodetypes="ccscscscsc"
+               style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#5a5a5a;fill-opacity:1;stroke:none" />
+            <path
+               d="m 351.03347,-396.42974 c -0.31271,0.3397 -0.73863,0.57516 -1.27782,0.7064 -9.2053,-7.29966 -22.46679,-12.20281 -44.06858,-3.72725 -0.43495,0.018 -0.44393,-0.19949 -0.45293,-0.41693 14.2234,-8.25312 24.19603,-10.06871 35.02824,-7.66511 5.68643,1.26178 13.21636,6.77394 10.87534,10.98966 l -0.10419,0.11323"
+               id="path4414"
+               inkscape:connector-curvature="0"
+               sodipodi:nodetypes="ccccscc"
+               style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#5a5a5a;fill-opacity:1;stroke:none" />
+            <path
+               style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#faa542;fill-opacity:1;stroke:none"
+               sodipodi:nodetypes="ccscscscsc"
+               inkscape:connector-curvature="0"
+               id="path4418"
+               d="m 305.60606,-328.35047 c -0.21985,0.24774 -0.34382,0.58056 -0.37191,0.99847 2.25132,9.42388 3.98336,19.6953 7.8058,28.4784 0.52775,1.21266 1.10577,-0.93766 1.11125,-1.52325 -0.26633,-5.10755 -2.05196,-19.08234 -0.12471,-21.21918 1.81932,-2.01724 15.11778,-2.82144 21.21317,-3.31672 0.58076,-0.0751 2.64136,-1.07154 1.4535,-1.36715 -9.23289,-2.29766 -20.22956,-2.01571 -30.04403,-2.45343 -0.50749,-0.008 -0.82323,0.15512 -0.9698,0.32028 l -0.0733,0.0826" />
+            <path
+               style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#faa542;fill-opacity:1;stroke:none"
+               sodipodi:nodetypes="ccccscc"
+               inkscape:connector-curvature="0"
+               id="path4420"
+               d="m 318.10615,-318.58788 c 0.31271,-0.3397 0.73863,-0.57516 1.27782,-0.7064 9.2053,7.29966 22.46679,12.20281 44.06858,3.72725 0.43495,-0.018 0.44393,0.19949 0.45293,0.41693 -14.2234,8.25312 -24.19603,10.06871 -35.02824,7.66511 -5.68643,-1.26178 -13.21636,-6.77394 -10.87534,-10.98966 l 0.10419,-0.11323" />
+          </g>
+        </g>
+      </g>
+      <g
+         id="g5598"
+         inkscape:export-filename="/home/development/git/ModelWriter/Source/releng/eu.modelwriter.product/icons/about.png"
+         inkscape:export-xdpi="204"
+         inkscape:export-ydpi="204">
+        <rect
+           transform="scale(-1,1)"
+           y="827.34698"
+           x="439.36868"
+           height="192.37003"
+           width="150"
+           id="rect3860-2"
+           style="fill:url(#linearGradient5557);fill-opacity:1;fill-rule:evenodd;stroke:none"
+           inkscape:export-filename="Z:\private\marketing\Design\Produits\UMLDesigner\aboutscreen\png\aboutscreen_UML.png"
+           inkscape:export-xdpi="90"
+           inkscape:export-ydpi="90" />
+        <rect
+           inkscape:export-ydpi="90"
+           inkscape:export-xdpi="90"
+           inkscape:export-filename="Z:\private\général\illustrations\Charte graphique\OD\OD 5.0\aboutpage\png\aboutpage_OD5.0.png"
+           style="display:inline;overflow:visible;visibility:visible;opacity:0.99142857;fill:#cccccc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;filter:url(#filter3614-7);enable-background:accumulate"
+           id="rect6106-9"
+           width="39.10931"
+           height="39.10931"
+           x="-223.4366"
+           y="1050.7064"
+           transform="matrix(0.61596339,0,0,0.61596335,-404.11482,325.55658)" />
+        <path
+           inkscape:connector-curvature="0"
+           inkscape:export-ydpi="90"
+           inkscape:export-xdpi="90"
+           inkscape:export-filename="Z:\private\général\illustrations\Charte graphique\OD\OD 5.0\aboutpage\png\aboutpage_OD5.0.png"
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:51.30051804px;line-height:125%;font-family:'karabinE.';-inkscape-font-specification:'karabinE.';text-align:start;writing-mode:lr-tb;text-anchor:start;display:inline;opacity:0.49142857;fill:#ef2929;fill-opacity:1;stroke:none;filter:url(#filter3558-1)"
+           d="m -92.403025,1026.3635 -2.5665,0.4889 0,1.3444 0.5703,-0.6111 0.6519,0 0,0.2037 -1.2222,0.4074 0,2.0777 0.2037,0 -0.2037,0.2851 0,0.8556 c -0.1242,0.1133 -0.1889,0.1892 -0.2852,0.2851 l 0,0.4889 c 0.096,-0.046 0.1848,-0.06 0.2852,-0.1222 l 0,0.7333 -0.2852,0.2444 0,8.5552 0.6111,2.2406 0.082,0.5704 c -0.028,0.081 -0.061,0.1677 -0.082,0.2444 0.066,0.049 0.108,0.1082 0.163,0.1629 l 0,0.163 -0.2445,-0.082 c -0.024,-0.01 -0.057,-10e-4 -0.082,0 0.036,-0.1266 0.062,-0.2569 0.1222,-0.3666 l -0.1629,-0.6111 -0.4074,0.082 0,3.8702 c 0.014,0 0.027,0 0.041,0 l 0.2037,-0.041 0.041,-0.041 0,0.8555 c -0.09,0.2617 -0.1903,0.5021 -0.2852,0.6925 l 0,0.9778 0.2444,0.082 -0.041,0.1629 -0.2037,-0.082 0,11.1217 0.163,-1.1814 0.1222,0.041 0,1.0185 0.2037,0 0.4889,0.5296 c -0.1,0.082 -0.1897,0.1934 -0.2445,0.3667 l -0.2036,-0.2445 -0.082,0 -0.163,-0.6518 0,0.5703 -0.041,0 -0.2444,0.1223 0,0.8962 0.2851,-0.1222 0,0.3259 -0.1222,-0.041 -0.1222,0.4074 0.2444,0.041 0.3667,-0.1222 0,0.2444 -0.3667,0 0,0.8555 -0.2851,0.082 0,0.2037 0.2851,-0.082 0,0.082 c 0.4141,10e-5 0.5704,-0.1421 0.5704,-0.4481 l -0.2037,-0.2037 0.5296,0 -0.12221,0.082 -0.082,0.2444 0.1222,0 0,0.082 0.2037,0.2445 0,0.2851 -1.0185,0 0,0.2445 3.3813,0 c 0.2347,-0.6384 0.527,-0.9778 0.937,-0.9778 l 0,-0.4074 -0.5703,0 -0.2852,0.2037 -0.1629,0 -0.24451,-0.3259 0.082,-0.2444 -0.2444,0.082 -0.6518,0 -0.32591,0.1222 0,-0.041 -0.3667,-0.082 -0.28521,0.2037 -0.44809,-0.2037 0,-0.2444 1.05921,0 0,-0.2037 -0.20371,-0.2037 0,-0.2444 0.48889,0.1629 -0.082,0.2037 0.57029,0.1222 0.28521,-0.041 0.61109,0.2037 -0.082,0.2445 0.2852,0.082 0.5703,-0.041 0.65179,0.2444 0,0.2037 c -0.3219,0 -0.81629,0.3865 -1.38509,1.1814 l 18.5769,0 c 0.082,-0.08 0.16341,-0.163 0.24451,-0.2444 0.212,0.076 0.504,0.1649 0.73329,0.2444 l 1.4666,0 -0.2445,-0.4074 1.1407,0.082 0.20371,0.082 -0.041,0.163 -0.52958,0.082 0.73329,0 7.86261,0 0.041,-0.163 c 0.061,0.031 0.13559,0.056 0.2037,0.082 l -0.041,0.082 1.30359,0 0.36671,-0.2444 -0.041,0.2444 2.5665,0 0.082,-0.2444 0.2445,0.041 -0.082,0.2037 0.44809,0 0,-1.3444 -0.082,0.2444 -0.24441,-0.041 0.12221,-0.4074 0.20371,0.082 0,-9.044 -0.12221,-0.041 0.12221,-0.5703 0,-1.7111 -0.28522,0.082 -0.041,0.2037 0.2037,0.3259 -0.61109,1.1 -0.20371,-0.041 0.937,-3.5036 0,-1.5888 -0.2852,0.1222 -0.041,1.0593 -0.6518,2.3628 -0.5703,0.2852 1.18141,-4.3998 0.36671,0.5703 0,-1.3443 -0.163,-0.041 0.163,-0.5704 0,-1.8332 c -0.25982,-0.3921 -0.52391,-0.7828 -0.8148,-1.1407 l 0.8148,0.041 0,-1.2222 -0.20371,0.8555 -0.24451,-0.082 0.32592,-1.1814 0.1223,0.041 0,-3.5443 -0.082,0.2852 -0.44821,-0.1222 0.52959,-2.037 0,-7.9848 -0.041,0.1222 -0.8147,0 -0.6519,-0.3666 -0.8147,0 0.041,-0.2037 -0.326,-0.5296 0.082,-0.2852 0.2037,0.041 0.8556,0.774 0.28511,-0.1629 0.082,-0.2852 c -0.3162,-0.3875 -1.75491,-1.0888 -4.31831,-2.0777 l -1.0999,0 2.811,1.1815 -0.1223,0.4073 0.28521,-0.1629 0.69259,0.2037 -0.48888,0.8148 -0.20371,-0.041 -0.16291,-0.2852 -0.2445,-0.041 -0.36659,0.1222 0.12221,-0.4074 0.36658,-0.1629 0,-0.041 -0.2444,-0.2852 -0.2444,-0.082 -0.2852,0.2037 -0.2444,-0.041 -0.6926,-0.4889 -0.5703,0.3667 -1.5481,-1.2629 -1.8333,0 -0.082,0.3259 -0.2444,-0.041 0.082,-0.2852 -3.2998,0 1.0184,1.5481 0.2037,0.041 -0.1629,0.6925 -0.4482,-0.1222 -0.082,0.2037 c 0.3277,0.088 0.5625,0.5585 0.6926,1.3851 l -0.1629,0.6926 -0.2445,-0.082 0.1222,-0.4481 -0.7333,-0.2037 -0.1629,0.4481 0.4888,0.1222 -0.2444,0.8963 -0.4889,-0.1222 -0.2036,0.937 0.4481,0.1222 -0.1222,0.4074 -0.4482,-0.1223 -0.1222,0.4074 0.4481,0.1222 -0.1629,0.6926 c -0.4097,-0.1095 -0.6971,0.1232 -0.937,0.6926 -0.022,0.084 -0.038,0.1751 -0.041,0.2444 l -0.2444,-0.2852 -0.2037,0.2852 c -0.01,-0.09 -0.01,-0.1889 0,-0.2852 l 0.2037,0 0,-0.2037 -0.163,-0.1629 c 0.014,-0.071 0.021,-0.1297 0.041,-0.2037 l 0.5296,0.1629 0.163,-0.6518 -0.4074,-0.6111 0.937,-1.3851 -0.2037,-0.041 0.2852,-0.1629 0.082,-0.2852 -0.2037,-1.4666 0.6518,-0.2444 -0.2444,-0.082 0.4481,-0.6111 c 0.1537,-1.0675 -0.199,-1.6848 -1.0592,-1.9148 l 0.2851,-0.1629 0.082,-0.2444 -1.5888,0 0,0.082 0.6926,0.1629 -0.937,0.7333 c 0.085,-0.3163 0.049,-0.6402 -0.041,-0.9777 l -1.5888,0 -0.2037,0.6925 -0.2445,-0.041 0.163,-0.6518 -0.937,0 0.2444,0.4889 -0.082,0.4481 -0.3666,-0.5703 0.082,-0.3667 -0.4481,0 -0.8555,3.0962 c -0.097,-0.045 -0.1796,-0.077 -0.2852,-0.1222 l -0.041,0 -0.163,-0.2445 0.2852,-0.1222 0.082,-1.1814 0.3666,-1.4259 -0.4888,0 -0.6111,2.3629 -0.2444,0 0.611,-2.3629 -2.6072,0 -0.041,0.163 0.4481,0.1222 -0.2852,1.0592 c -0.9988,-0.3794 -1.8221,-0.6518 -2.4443,-0.6518 -0.1476,0.3742 -0.4355,0.625 -0.7741,0.774 -0.016,-0.069 -0.022,-0.1337 -0.041,-0.2037 l -0.041,-0.2037 0.5704,-0.082 0,-0.2851 c 0,-0.2009 -0.2546,-0.367 -0.774,-0.4889 l -0.041,-0.2037 -0.9778,0 c 10e-4,0.014 0,0.027 0,0.041 l 0,0.2444 c -0.2787,-0.1373 -0.624,-0.216 -1.0185,-0.2852 l -1.711,0 0,0.163 -0.2444,0.082 -0.081,-0.2444 -0.5296,0 0.041,0.1222 -0.163,0.1629 -0.082,-0.2851 -2.7295,0 -0.2037,0.9777 -0.3259,0 0,-0.4889 c 0.085,-0.1761 0.1553,-0.3574 0.2037,-0.4888 l -2.4036,0 z m 36.2576,12.8328 0,-0.937 -0.041,0.041 -0.1629,0.6111 0.2037,0.2851 z m -34.3428,-12.7513 -0.2852,0.4481 -0.4889,0.082 0.082,-0.2851 0,-0.1222 0.6926,-0.1223 z m 13.4845,0.041 0.4482,0.1222 -0.041,0.2445 -0.4482,-0.1223 0.041,-0.2444 z m -16.2955,0.3667 0,0.4888 -0.4481,0 0.4481,-0.4888 z m 7.8218,0 0.082,0.041 0.2037,0.8962 c -0.2224,-0.02 -0.4372,-0.045 -0.611,-0.082 l 0.2036,-0.6518 -0.041,-0.163 0.163,-0.041 z m 1.4666,0 0.4074,0.4888 -0.4074,0 0,-0.4888 z m -2.5665,0.1629 0.082,0.2852 -0.1222,0.041 c -0.071,-0.079 -0.082,-0.1896 -0.082,-0.2852 l 0.1222,-0.041 z m -6.1516,0.041 0.4482,0 0,0.2852 -0.4482,0 0,-0.2852 z m 5.2146,0 0.2037,0 0,0.2852 -0.2037,0 0,-0.2852 z m -2.9739,0.2852 c 0,0 0.038,0 0.041,0 l 0,0.2444 -0.163,0 c 0.038,-0.069 0.088,-0.1795 0.1222,-0.2444 z m 13.0364,0 0.2037,0.082 -0.163,0.6518 -0.3259,-0.5703 0.2852,-0.163 z m 11.8143,0.041 0.4481,0.1222 -0.1222,0.4889 -0.4889,-0.1222 0.163,-0.4889 z m -5.8257,0.1629 0.2444,0.041 -0.1629,1.5889 -0.2852,0.1629 -0.1222,0.4889 -0.5296,2.5258 -0.6518,-0.6518 1.0999,-2.6481 -0.2444,-0.2851 0.082,-0.2037 0.5703,-1.0185 z m 0.9777,0.041 0.5704,0.1223 -0.2852,0.1629 -0.082,0.2037 -0.774,3.8702 -0.2852,0.163 -0.082,1.1406 -0.2037,0.7741 -0.5703,0 0.1629,-0.5704 c 0.2449,-0.096 0.4481,-0.2128 0.4481,-0.3666 l -0.2851,-0.2852 1.3851,-5.2146 z m -17.7214,0.2037 0.2445,0 0.041,0.163 -0.082,0.041 -0.1222,0 -0.082,-0.2037 z m 14.5438,0.1223 0.2037,0.041 -0.082,0.4481 -0.2444,-0.082 0.1222,-0.4074 z m 12.6291,0.041 0.2037,0.082 -0.082,0.4073 -0.2445,-0.082 0.1222,-0.4073 z m -29.8209,0.041 0.6518,0 0,0.2036 -0.6518,0 0,-0.2036 z m -2.0777,0.2036 1.0592,0 c -0.029,0.098 -0.082,0.1887 -0.1222,0.2852 l -0.937,0 0,-0.2852 z m 11.855,0 0,0.5297 -0.4888,0 0.4888,-0.5297 z m 24.3619,0.163 c -0.074,0.2764 0.1417,0.5131 0.5703,0.6518 l 0,-0.5296 -0.5703,-0.1222 z m -6.0701,0.3259 0.4481,0.1222 -0.3666,1.3037 -0.4482,-0.1222 0,-1.1815 0.3667,-0.1222 z m -17.0696,0.4481 0,0.4889 -0.2037,0 -1.6703,0.2444 c 0.035,-0.1863 0.075,-0.3749 0.082,-0.5703 l 1.7925,-0.163 z m 0.3667,0 0.6518,0.2037 0,0.2852 -0.8555,0 0.2037,-0.2852 0,-0.2037 z m 1.0184,0 0.041,0 0.2852,0.4482 -0.041,0.041 -0.2852,0 0,-0.4889 z m 1.8333,0 -0.082,0.326 -0.2852,0.041 0.1222,-0.326 c 0.073,-0.01 0.1596,-0.036 0.2444,-0.041 z m 10.2662,0 0.6518,0.3667 -0.082,0.2037 -0.4481,0.8555 c -0.076,0.6131 0.1199,0.9905 0.5296,1.1 l -0.1222,0.4073 -0.5296,-0.1222 -0.082,0.2852 0.2444,0.2852 -0.3667,0.1222 0.041,1.1814 -0.4888,1.7925 -0.5296,-0.1222 -0.4074,-1.3036 0.1222,-0.4889 0.2444,0.041 -0.1222,0.4889 0.4481,0.1222 0.041,-0.2037 -0.2851,-0.8148 0.2851,-0.1222 c 0.1186,-0.4435 -0.079,-0.7649 -0.5703,-0.8963 l 0.6518,-0.2851 -0.1222,0.4074 0.4889,0.1222 0.3666,-3.2184 0.041,-0.2037 z m -20.4917,0.1223 0.2445,0.041 0.1222,0.4888 -0.3259,-0.082 0,-0.3666 -0.041,-0.082 z m -7.7404,0.082 0.4482,0 -0.4482,0.5296 0,-0.5296 z m 1.3037,0 0.8148,0 c -0.013,0.016 -0.028,0.025 -0.041,0.041 -0.2573,0.2054 -0.343,0.304 -0.5704,0.4888 l -0.2037,-0.2444 0,-0.2852 z m 1.3036,0 0.3667,0 0.4074,0 0,0.2037 -0.082,-0.082 -0.4889,0.1222 0,0.2444 -0.082,0.041 -0.2037,-0.2444 -0.082,0 0.1629,-0.2852 z m 1.1407,0 0.6111,0 -0.041,0.2851 -0.5703,0 0,-0.2851 z m 7.2923,0 0.6518,0 -0.082,0.2444 0.1222,0.4481 -0.2852,0.041 -0.4073,-0.6518 0,-0.082 z m 1.2629,0 0.2037,0 0.082,0.2444 -0.2037,0.041 -0.082,-0.2852 z m 21.1434,0 0.8148,0 0.2445,0.041 -0.082,0.2036 -1.1,0.163 0.1222,-0.4074 z m -12.9142,0.082 0.2037,0.082 -0.082,0.4073 -0.2444,-0.082 0.1222,-0.4073 z m 5.2553,0 -0.082,0.2036 0.4889,0.1223 0.041,-0.2037 -0.4481,-0.1222 z m 10.144,0.3666 0.4889,0.1222 0.4074,0.5704 -0.6518,0.3259 0.2851,0.082 -0.6111,1.0184 c -0.3276,-0.088 -0.3629,-0.3713 -0.2444,-0.8147 l 0.2852,-0.163 0.041,-0.2037 0,-0.937 z m -1.3851,0.2852 0.2444,0.081 0.041,0.7333 -0.4481,-0.1222 0.163,-0.6926 z m -25.5025,0.041 0,0.4074 -0.2852,0 -0.082,-0.3259 0.3666,-0.082 z m 23.9137,0.041 0.2444,0.082 -0.1222,0.4074 -0.2037,-0.041 0.082,-0.4482 z m -24.7285,0.082 0.082,0.2851 -0.2444,0 0,-0.2444 0.1629,-0.041 z m -8.2293,0.041 1.0185,0 c -0.101,0.084 -0.1917,0.1658 -0.2852,0.2444 l -0.7333,0 0,-0.2444 z m 2.0777,0 0.4481,0 0,0.2444 -0.611,0 0.1629,-0.2444 z m 7.8626,0 0,0.2444 -0.2037,0 -0.041,-0.163 0.2445,-0.082 z m 3.748,0 0.4074,0 0,0.2444 -0.4074,0 0,-0.2444 z m 1.0592,0 0.8148,0 0,0.2444 -0.8148,0 0,-0.2444 z m 22.3656,0.041 0.4482,0.1222 0.2851,0.2852 0.081,-0.4074 0.2445,0.041 -0.1222,0.4481 -0.2037,-0.082 0.1629,0.2852 -0.1222,0.4888 c -0.3277,-0.088 -0.616,0.1421 -0.774,0.7333 l -0.3667,-0.611 0.3667,-1.3037 z m -31.0022,0.041 0.2851,0.2037 -0.2037,0.082 -0.082,-0.2852 z m -4.7257,0.082 0.041,0.082 -0.1223,0 c 0.027,-0.031 0.054,-0.05 0.082,-0.082 z m 31.98,0.041 0.5296,0.1629 -0.041,0.2037 -0.5296,-0.1222 0.041,-0.2444 z m -20.4917,0.041 0.3667,0 0,0.2851 -0.3667,0 0,-0.2851 z m 3.5443,0 0.2037,0 c 0.2933,0.1 0.5027,0.2543 0.6518,0.4888 l -0.082,0.1223 c 0.049,0.098 0.1129,0.1884 0.163,0.2851 l -0.3667,0 0,0.2445 0.5296,0.082 c 0.074,0.1378 0.168,0.2723 0.2445,0.4074 l -1.7925,0 0,-0.2037 c 0.5521,10e-5 0.8147,-0.2236 0.8147,-0.5296 l -0.3666,-0.4074 0,-0.4889 z m -9.2885,0.041 0.1223,0.4481 -0.2037,0.041 -0.082,-0.3259 0.1629,-0.163 z m -3.5035,0.082 0.082,0.4481 -0.4481,0.1222 -0.041,-0.1629 0.3259,-0.041 0,-0.326 0.082,-0.041 z m 1.6296,0.041 c 0.2851,1.0667 0.7124,1.5431 1.3036,1.3851 l 0.082,0.163 -0.163,0.2444 -0.2444,-0.1222 c -0.5964,0.7308 -0.8708,1.4517 -0.6926,2.1184 l -0.8555,-0.6518 0.6111,-0.163 -0.1222,-0.4074 c -0.3695,0.099 -0.5984,-0.098 -0.8148,-0.6111 l 0.9777,-0.7333 -0.4481,-0.9369 -0.041,-0.163 0.4074,-0.1222 z m 23.5878,0.2444 0.4481,0.1222 -0.082,0.2445 -0.4481,-0.1223 0.082,-0.2444 z m -14.9512,0.082 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 4.6035,0 0,0.082 -0.041,0.163 -0.2037,-0.041 0.2444,-0.2037 z m -10.5514,0.041 c 0.1566,0.1293 0.3291,0.2464 0.5704,0.3667 l 0,-0.163 0.082,0.3667 0,0.082 -0.4482,0.1222 -0.2037,-0.7741 z m 23.2212,0.041 0.4481,0.1222 0,0.9778 -0.2852,0.1222 -0.041,0.2037 -0.1629,1.4666 -0.4074,0.5703 0.2037,0.2445 -0.3259,0.2036 0.3666,0.5704 -0.2852,0.1222 -0.2444,-0.041 -0.041,1.1407 -0.3259,1.1407 -0.4481,-0.163 -0.2037,0.6926 c 0.013,0.024 0.029,0.057 0.041,0.082 l -0.1222,0.082 0.1629,0.041 c 0.083,0.2038 0.1422,0.4408 0.163,0.6925 l -0.041,0.2037 -0.163,-0.2444 -0.2852,-0.082 -0.041,0.041 0.2445,-1.5481 0.774,-2.8517 0.4481,-0.8148 -0.2851,-1.0592 0.52959,0.163 0.32591,-2.0777 z m -28.4358,0.041 -0.041,0.4481 -0.2851,0.082 -0.2852,-0.1629 -0.2037,0.081 0.3667,0.4889 -0.4889,0.611 -0.3259,-0.4888 c 0.071,-0.017 0.1278,-0.041 0.2037,-0.041 l 0,-0.4889 -0.163,0 -0.2037,0.2852 -0.2037,0 0.3667,-0.6111 1.2629,-0.2037 z m 4.8072,0 0.163,0.6518 -0.2037,0.041 -0.2037,-0.611 0.2444,-0.082 z m -7.0885,0.2852 0.2037,0 0,0.2852 -0.2037,0.2444 -0.2445,0 0,-0.3259 c 0.078,-0.065 0.1634,-0.1301 0.2445,-0.2037 z m 32.5911,0.4074 1.5073,1.3444 -0.1222,0.4481 -0.5296,-0.163 -0.4889,1.7925 -0.2037,-0.041 0.4074,-2.485 -0.2852,0.1222 -0.3259,-0.082 0.041,-0.937 z m 4.4812,0 0.7741,0 -0.1222,0.4074 -0.6926,-0.2037 0.041,-0.2037 z m -27.4172,0.1222 0.041,0 0.2037,0.2037 -0.163,0.041 -0.082,-0.2444 z m 3.422,0 0.5704,0 0,0.2037 -0.5704,0 0,-0.2037 z m 5.4998,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.1629 c -0.014,0.06 -0.024,0.099 -0.041,0.163 l 0.4074,0.1222 c -0.1395,0.1292 -0.3455,0.163 -0.6518,0.163 l -0.2037,0 0,-0.2037 0.4888,-0.2445 z m -4.6442,0.041 0.6518,0.2037 0,0.4482 c -0.414,0 -0.6518,0.1829 -0.6518,0.4888 l -0.163,0 c 0,-0.4589 -0.1313,-0.7332 -0.4074,-0.7333 l 0,-0.2037 0.5704,-0.2037 z m 11.4476,0.041 0.3259,0.6111 -0.041,0.2037 -0.3259,-0.6111 0.041,-0.2037 z m -18.0881,0.041 0.5704,0.2852 0.6518,2.3629 0,0.082 -0.3667,-0.5296 -0.2037,0 0.5704,0.8555 0.041,0.6518 0.2852,0.1222 -0.3667,0.5704 -1.1814,-4.3998 z m 15.4401,0 0.2444,0.041 -0.2852,1.1 -0.2444,-0.041 0.2852,-1.1 z m -7.0886,0.1223 0.5703,0.2037 0,0.2444 -0.774,0 0.2037,-0.2444 0,-0.2037 z m -9.2885,0.2037 0.4889,0.4888 0.041,0.163 -0.4889,0.1222 -0.1629,-0.6518 0.1222,-0.1222 z m 1.9962,0.1222 0.3259,0.3259 0,0.082 0.082,0.041 0.2037,0.2444 -0.1629,0.163 0.6518,2.3628 -0.2852,-0.1629 -0.8147,-3.0554 z m -7.8218,0.082 0.082,0.3666 -0.2037,0.041 -0.082,-0.3666 0.2037,-0.041 z m 2.4443,0.2037 -0.082,0.611 0.082,0.2445 0.2444,0.1629 c -0.7759,0.2075 -1.0756,0.7481 -0.937,1.7111 l 0.3667,0.5703 -0.2037,0.041 0.5703,0.2444 -0.1629,1.3037 0.082,0.2852 0.2444,0.1222 -0.2037,0.041 0.5704,0.8555 c -0.141,0.1125 -0.2864,0.2395 -0.4481,0.4074 l -0.082,-0.2037 -0.4074,0.1222 -0.082,-0.3666 0.4073,-0.1223 -0.2036,-0.8147 -0.4482,0.1222 -0.2037,-0.8148 0.4074,-0.1222 -0.1222,-0.4481 -0.6518,0.2036 0.082,0.4482 -0.2037,0.041 -0.163,-0.6111 c 0.1174,-0.7457 0.3563,-1.1839 0.6519,-1.2629 l -0.082,-0.163 -0.4074,0.082 -0.163,-0.6111 0.2037,-0.041 1.3444,-2.0369 z m 31.3282,0.2037 0.2444,0.041 0.2445,0.2851 0.2851,-0.1222 0.6926,0.163 0.4481,2.2813 -0.041,0.2037 0.2852,0.082 0.2852,-0.1222 0.2444,0.041 -0.6926,2.6481 c -0.6158,-0.323 -0.8481,-0.9057 -0.611,-1.7926 l -0.2037,-0.082 0.2851,-0.1222 0.1223,-0.4888 0.082,-1.1815 -0.5704,-0.1222 -0.6925,2.6888 0.2444,0.2852 -0.3667,0.1222 -0.041,0.2037 0.2037,2.1999 -0.8147,0 c -0.1161,0.5673 -0.1894,1.0843 -0.2445,1.5073 -0.1694,0.1076 -0.2849,0.3972 -0.4074,0.8555 l -0.3259,0.1222 -0.4481,-0.1222 -0.163,-0.937 0.5704,-0.4888 0,-0.1223 c 0.055,0.088 0.1486,0.1672 0.2852,0.2037 l 0.2037,0.041 0.082,-0.2036 0.2444,-1.874 0.3666,-0.5296 0.7333,-3.6258 0.2445,-0.8963 -0.4482,-0.1222 -0.3666,1.3444 -0.3667,0.1222 0.2445,0.2852 -0.1222,0.4889 -0.5296,-0.163 0.8147,-3.0961 z m -9.207,0.1222 0.2037,0.041 -0.2444,0.8962 -0.2852,0.163 -0.2037,-0.082 0.5296,-1.0185 z m 6.0701,0 0.2037,0.041 -0.082,0.4074 -0.2444,-0.041 0.1222,-0.4074 z m -24.9729,0.082 0.2037,0.8148 -0.2037,0.041 -0.2445,-0.7741 0.2445,-0.082 z m -6.7219,0.041 0.041,0 0.1222,0.4481 -0.2037,0.041 -0.041,-0.1222 c 0.028,-0.1061 0.05,-0.2304 0.082,-0.3259 0,-0.013 0,-0.028 0,-0.041 z m 34.2614,0.041 0.2444,0.041 -0.2037,0.6925 -0.2037,-0.041 0.163,-0.6925 z m -26.5618,0.041 0.1222,0.4481 -0.3259,0.4889 -0.082,-0.3667 0.2852,-0.5703 z m 13.892,0.082 0,0.041 -0.3259,0.2037 -0.2037,-0.041 c 0.011,-0.041 -0.01,-0.084 0,-0.1222 0.1891,-0.018 0.3782,-0.056 0.5296,-0.082 z m -11.7328,0.2444 0.1222,0.1222 -0.2037,0.082 -0.041,-0.1629 0.1222,-0.041 z m 27.1321,0.1222 0.774,0.2037 -0.041,0.2445 -0.774,-0.2037 0.041,-0.2445 z m -8.7182,0.041 0.5704,0.163 -0.082,0.2037 -0.5296,-0.1222 0.041,-0.2445 z m -15.4807,0.041 0,0.6111 0.4481,0 c 0,0.3379 0.036,0.6266 0.1222,0.8148 -0.2101,0.043 -0.4005,0.095 -0.5703,0.1629 l 0,-0.041 -0.3667,-0.4073 -0.6518,0.2036 c 0,-0.1101 -0.034,-0.2077 -0.082,-0.2851 l -0.2444,-0.8963 1.3443,-0.1629 z m 2.8924,0 0.2852,0.2037 0.2037,0 1.874,-0.2037 0,0.2037 -0.2852,0.6518 c 0.3992,-0.2211 0.701,-0.4734 0.8148,-0.774 0.071,0.093 0.1312,0.1937 0.2037,0.2852 l -0.3667,0.041 0,0.4481 0.4074,0 0.2445,0.2852 0.1629,-0.2445 c 0.093,0.1068 0.1891,0.2221 0.2852,0.326 l 0.041,0.1629 -0.2037,-0.2037 -0.2444,0.1222 0.041,0.6926 -0.2445,0.1222 -0.081,0.163 -0.6518,-0.1223 c -0.065,-0.1287 -0.1069,-0.2443 -0.1222,-0.3666 l 0.3259,0 0.3666,0.082 0.041,-0.2037 -0.2851,-0.5296 c -0.2712,-0.072 -0.5058,-0.065 -0.7333,-0.082 l -0.2037,-0.2037 -0.082,0.163 c -0.064,0 -0.1437,-0.01 -0.2037,0 l -0.5296,-0.6111 -1.0592,0.2037 -0.7741,-0.2037 -0.4481,0.4481 -0.163,-0.2444 0,-0.2037 c 0.2416,0 0.4327,0.016 0.6111,0 0.5354,-0.049 0.7741,-0.1779 0.7741,-0.4074 z m 16.2956,0 0.2444,0.082 -0.2444,0.8963 -0.2445,-0.082 0.2445,-0.8963 z m -19.9621,0.4074 0,0.4481 0.4074,0 0,-0.4481 -0.4074,0 z m -1.548,0.082 0.2444,0.2852 -0.2037,0.3666 -0.163,-0.5296 0,-0.082 0.1223,-0.041 z m -10.5107,0.1222 0.041,0.3259 -0.1629,0.041 0.1222,-0.3666 z m 21.8361,0 0.1629,0 0,0.2445 -0.1629,0 0,-0.2445 z m -16.6622,0.041 0.5296,0.937 0.041,0.163 -0.2037,0.2851 0.774,1.8333 -0.5296,0.3259 -0.2852,-1.5073 -0.1222,-0.4482 -0.2444,-0.1222 -0.163,-1.4258 0.2037,-0.041 z m -0.8963,0.041 1.1407,4.2369 -0.3259,-0.082 0,-0.082 -0.2852,-0.163 -0.6925,-3.4628 -0.041,-0.2037 -0.2852,-0.1222 0.4888,-0.1222 z m 19.8806,0.082 0.2444,0.082 -0.1222,0.4074 -0.2037,-0.041 0.082,-0.4481 z m -7.7811,0.082 0.6518,0 0,0.2037 c -0.1266,0.036 -0.2233,0.098 -0.3259,0.163 l -0.3259,-0.082 0,-0.2852 z m -9.207,0.1222 0.1222,0.3667 -0.2037,0.041 -0.1222,-0.3667 0.2037,-0.041 z m 15.1141,0.041 0,0.1223 -0.082,0 0.082,-0.1223 z m 9.981,0.2445 0.2444,0.041 -0.1629,0.4888 -0.2037,-0.041 0.1222,-0.4888 z m 5.2553,0 0.2445,0.041 -0.163,0.4888 -0.2037,-0.041 0.1222,-0.4888 z m -22.8137,0.082 0.3666,0 c -0.096,0.1753 -0.2074,0.2729 -0.3666,0.2852 l 0,-0.2852 z m 7.1293,0 0.1629,0 0,0.2037 -0.1629,0 0,-0.2037 z m -1.5074,0.041 0.2852,0.082 -0.2852,0 0,-0.082 z m 4.7257,0.082 0.3259,0.6111 -0.1222,0.4073 -0.4481,-0.1222 0.2444,-0.8962 z m 1.0185,0.2851 0.2037,0.041 c -0.079,0.2957 0.1603,0.5612 0.6518,0.6926 l -0.2444,0.8963 c -0.1374,-0.1603 -0.2848,-0.29 -0.4481,-0.4074 l 0.041,-0.2037 -0.4482,-0.1222 0.2445,-0.8963 z m -5.8664,0.041 0.1222,0 0.082,0.041 -0.1222,0.4482 -0.1629,-0.082 0.082,-0.4074 z m 3.3813,0 0.5704,0 -0.082,0.2037 -0.2445,0 c -0.09,-0.065 -0.1747,-0.1266 -0.2444,-0.2037 z m -7.4144,0.1223 c -0.014,0.04 -0.029,0.079 -0.041,0.1222 l -0.1223,-0.041 0.163,-0.081 z m -15.603,0.1629 0.082,0.163 0.3259,2.9332 0.4074,-0.1222 -0.1222,-0.3667 0.611,0.2444 c -0.4434,0.1186 -0.6364,0.4148 -0.5296,0.8148 l 0.2445,0.1222 -0.2445,0.7333 0.041,0.2037 0.4482,-0.1222 -0.1223,-0.4481 0.2037,-0.041 0.1223,0.4481 -0.3667,1.1407 -0.3666,-0.082 c -0.056,0.071 -0.069,0.1343 -0.1223,0.2037 l -0.4481,-1.5888 0.041,-1.1 -0.3259,-0.081 0.2037,-0.2851 -0.041,-0.2445 -0.4889,0.1222 -0.082,-0.1629 0,-0.082 0,-0.163 c 0.3324,-0.117 0.5134,-0.4115 0.4482,-0.937 l -0.4482,-0.774 -0.041,-0.163 0.5704,-0.3666 z m 31.1652,0 0.5296,0.1222 -0.2037,0.6926 -0.5296,-0.1222 0.2037,-0.6926 z m -28.9246,0.2852 -0.4074,0.082 0.041,0.2037 0.4074,-0.1222 -0.041,-0.163 z m 4.7257,0 0.1222,0.3666 -0.2037,0.041 -0.1222,-0.3666 0.2037,-0.041 z m 8.5144,0.041 0.2037,0.082 -0.2444,0 0.041,-0.082 z m 16.9067,0 0.5296,0.1222 -0.1222,0.4889 0.4481,0.1222 0.1629,-0.6926 0.4482,0.5704 -0.5704,0.8148 -0.1629,1.8739 -0.4482,0.5297 -0.2444,-0.041 c 0.5137,-1.9216 0.411,-2.921 -0.2444,-3.0962 l 0.2037,-0.6926 z m -20.0436,0.082 0.2037,0 -0.1222,0.4481 -0.1629,0 0,-0.2037 0.082,-0.2444 z m 1.7926,0 0.2037,0 c 0.1368,0.1613 0.1865,0.3854 0.1629,0.6518 l -0.1222,0 -0.2444,-0.6518 z m -2.5666,0.1222 0.2037,0.3667 -0.2852,-0.082 0.082,-0.2852 z m 12.5476,0.163 0.2444,0.082 0.2852,0.2037 -0.163,0.2444 c -0.1007,-0.099 -0.2133,-0.1792 -0.3259,-0.2444 l -0.041,-0.2852 z m -7.1701,0.1629 0.2852,0 c 0,0.072 0.024,0.1466 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.7333,0.082 0.4074,0.1222 -0.3259,0 -0.082,-0.1222 z m -6.7219,0.1222 0.2037,0.082 -0.082,1.2222 -0.082,0.2037 -0.2037,-0.082 0.041,-0.4889 0.2037,0 0,-0.6518 -0.082,-0.2852 z m 14.6253,0.041 0.3259,0.082 -0.163,0.6519 -0.2037,-0.082 -0.041,-0.5296 0.082,-0.1223 z m -15.3586,0.041 0,0.2037 -0.1222,0 0.1222,-0.2037 z m -1.4666,0.163 0.1222,0 0.1223,0.1629 0.082,0.2852 -0.3259,-0.4074 0,-0.041 z m 4.522,0.041 0.2037,0 -0.082,0.2037 -0.1629,0 0.041,-0.2037 z m -5.2553,0.1629 -0.041,0.2445 c -0.1412,0.6766 -0.1364,1.0308 0.1222,1.0999 l -0.2444,0.2037 -0.082,0.163 -0.041,0.2444 -0.1222,0.041 -0.163,-0.5703 0.4482,-0.081 c -0.206,-0.7706 -0.1475,-1.243 0.1222,-1.3444 z m 1.874,0 0.041,0.1223 0.082,-0.082 0.163,0.6518 0,0.1222 -0.4889,0.7333 0.2852,0.082 -0.3259,0.1222 -0.082,0.2445 0.2444,0.2851 -0.082,0.163 -0.4074,0.5703 0.041,0.8555 -0.6518,1.3037 0.2444,0.2852 -0.4888,-0.163 0.3666,-1.3444 -1.1814,0.7333 0.2444,0.2852 -0.8555,0.4481 -0.082,1.0185 -0.4074,0.6925 c 0.08,-0.4994 0.011,-0.798 -0.2037,-0.8555 l 0.2852,-0.1629 0.041,-0.2037 0.2037,-1.3037 c 0.1374,-0.1299 0.2764,-0.2714 0.4074,-0.4074 l 0.4481,0.326 c -0.053,-0.2116 -0.1577,-0.3754 -0.2444,-0.5296 0.051,-0.055 0.1128,-0.1065 0.1629,-0.163 l 0.2445,0.041 0.082,-0.3667 0.3666,-0.1629 -0.1629,-0.163 c 0.072,-0.092 0.1339,-0.1912 0.2036,-0.2851 l 0.7333,0.041 0.163,-0.6111 -0.4074,-0.1222 c 0.071,-0.1075 0.1351,-0.2161 0.2037,-0.3259 l 0.2852,0.082 0.2852,-1.0593 c 0.1084,-0.1999 0.2226,-0.4049 0.3259,-0.611 l -0.1223,-0.163 0.041,-0.1222 z m 11.7328,0.041 0.2037,0.4074 0,0.041 -0.4889,0 c 0.012,-0.071 0.03,-0.1354 0.041,-0.2037 l 0.2445,-0.2444 z m -22.1619,0.041 0.082,0.2852 -0.082,0 0,-0.2852 z m 30.4319,0.2037 0.4889,0.1223 -0.4074,0.9369 c -0.091,-0.1361 -0.2088,-0.2648 -0.3667,-0.3666 l 0.2852,-0.6926 z m -10.8773,0.163 0.2037,0.041 -0.2037,0 0,-0.041 z m 0.9778,0.041 0.4073,0.1222 -0.041,0.163 -0.2037,0.041 -0.1629,-0.2852 c 0.01,0 -0.01,-0.038 0,-0.041 z m -8.3923,0.3259 0.4074,0.082 -0.1629,0.6518 -0.2852,-0.5703 0.041,-0.163 z m 23.9138,0.041 c 0.4519,0.2792 0.6049,0.7683 0.4074,1.5073 l -0.5297,1.0593 c -0.1997,1.1223 -0.2914,1.891 -0.2851,2.4035 l -0.163,-0.041 0.041,-0.774 0.1222,-0.4889 -0.3666,-0.774 0.8962,-2.1184 -0.1222,-0.7741 z m -21.8361,0.1222 0.2445,0 0,0.2037 -0.2445,0 0,-0.2037 z m 12.0995,0 0.041,0 -0.163,0.5704 c -0.02,0.077 -0.028,0.1306 -0.041,0.2037 l -0.041,0 0.2037,-0.7741 z m -19.9621,0.041 0.2037,0.041 0.1222,0.2444 -0.3666,-0.1222 0.041,-0.1629 z m -4.1146,0.2037 0.041,0.2037 -0.2852,0.5296 -0.041,-0.1629 0.2852,-0.5704 z m 3.6258,0 c 0.1217,0.056 0.2252,0.1143 0.4074,0.163 l -0.082,0.3666 -0.163,-0.2444 -0.082,-0.041 -0.082,-0.2444 z m 31.1245,0.082 0.2444,0.082 -0.1222,0.4889 -0.2445,-0.082 0.1223,-0.4889 z m -25.4618,0.082 c 0.1305,0.01 0.2859,0.02 0.4481,0.041 l -0.1222,0.3667 c -0.2956,-0.079 -0.55,0.1592 -0.6926,0.6925 l -0.4481,-0.774 c 0.047,-0.1747 0.2132,-0.256 0.4889,-0.2852 l 0.3666,0 -0.041,-0.041 z m 14.0141,0 0.082,0 0.1222,0.041 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.2444 z m -8.1477,0.041 0.2851,0 -0.1222,0.5296 -0.2444,-0.082 c 0.037,-0.1539 0.063,-0.3101 0.082,-0.4481 z m 0.8555,0 0.5703,0 0,0.082 -0.3666,0.5704 0.1222,0.1629 -0.6111,-0.1629 c 0.107,-0.1606 0.1904,-0.4143 0.2852,-0.6519 z m 1.0592,0 0.2444,0 -0.041,0.082 -0.2037,-0.041 0,-0.041 z m 2.2406,0 0.4889,0 -0.1222,0.3667 -0.2037,0.041 0,0.4481 0,0.041 -0.082,0.1629 0.041,0.4482 -0.163,0.041 c -0.1808,-0.2054 -0.2427,-0.4948 -0.2037,-0.8555 0,-0.026 0,-0.055 0,-0.082 0.012,-0.083 0.016,-0.1538 0.041,-0.2445 l 0.2037,-0.3666 z m 0.8555,0 0.7333,0 0.326,0 -0.041,0.2037 -0.2445,0 0,0.4889 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.2852 -0.4889,0.1222 -0.041,-0.5296 0.2445,-0.041 0,-0.4888 -0.2852,0.041 -0.041,-0.2445 z m -7.6996,0.082 0,0.7741 c -0.2652,-0.083 -0.4074,-0.289 -0.4074,-0.6519 0.1827,1e-4 0.3,-0.043 0.4074,-0.1222 z m 5.5405,0 0.4074,0.1222 -0.082,0.3667 -0.4482,-0.1222 0,-0.041 0.163,-0.2037 -0.082,0 0.041,-0.1222 z m 11.9365,0 0.1222,0.6518 c -0.026,-0.012 -0.051,-0.033 -0.082,-0.041 l -0.3259,0.082 -0.041,0.2445 0,0.2851 -0.041,0.082 -0.2037,-0.041 0.041,-0.2036 0.2444,-0.3667 0.163,-0.2852 -0.4482,-0.1222 0.5704,-0.2852 z m -18.8214,0.082 c 0.092,0.016 0.1762,0.041 0.2852,0.041 l 0,0.6518 -0.2444,-0.082 -0.041,0.1223 -0.1223,0 0,0.4481 0,0.082 0.4482,0.1222 0.041,-0.2037 0.1629,0 -0.5296,0.774 -0.2444,-0.3259 -0.082,0.3667 0.2444,0.082 -0.041,0.041 0.5296,0.1222 0.082,0.2444 -0.1222,0.2037 c -0.155,0.076 -0.2587,0.227 -0.2852,0.4481 l -0.041,0.1223 -0.1629,0 c 0,-0.03 0.01,-0.052 0,-0.082 l 0.082,-0.4482 -0.163,-0.041 c -0.084,-0.4331 -0.1524,-0.7924 -0.2444,-1.0592 l 0.4481,-1.6295 z m -7.2922,0.4481 c 0.2126,0.1197 0.3123,0.3225 0.2851,0.6111 l -0.2037,-0.1222 -0.082,-0.4889 z m 18.3324,0 0.041,0 c -0.01,0.03 -0.034,0.052 -0.041,0.082 -0.03,0.1372 -0.06,0.2832 -0.082,0.4074 -0.092,0.016 -0.1761,0.041 -0.2851,0.041 l 0,0.4889 -0.2445,0 0.082,-0.937 0.5296,0 0,-0.082 z m -12.3846,0.082 0.2852,0 0.1222,0.041 0,0.4074 -0.2037,0 0,0.2037 0.082,0.3667 c -0.1678,-0.1492 -0.2705,-0.4892 -0.2851,-1.0185 z m 25.3396,0.041 0.4481,0.1223 -0.1222,0.4073 -0.4481,-0.1222 0.1222,-0.4074 z m -33.9355,0.041 c -0.044,0.049 -0.077,0.1097 -0.1222,0.163 l -0.041,-0.1222 0.163,-0.041 z m -0.8962,0.041 0.4481,0.937 -0.2037,0.041 -0.082,-0.041 c 0.011,-0.045 0.028,-0.075 0.041,-0.1222 l -0.2444,-0.082 -0.2037,-0.6925 0.2444,-0.041 z m 17.5177,0 0.4074,0.1223 -0.082,0.2444 -0.3667,-0.2444 0.041,-0.1223 z m 0.7333,0 0.2037,0.082 -0.1222,0.4074 -0.2037,-0.041 0.1222,-0.4481 z m 7.1293,0.082 0.082,0.1222 0.2852,0.082 0.082,-0.041 -0.2037,1.3444 -0.6926,2.5258 -0.2444,0.4889 -0.082,-0.3666 0.2037,-0.2852 -0.2037,-0.2037 -0.2445,0.082 -0.1629,-0.2852 0.2851,-0.1222 0.2037,0.041 0.041,-1.0592 0.2852,-0.9777 0.4074,0.082 0.1222,-0.5297 0.041,0 0,-0.082 c -0.1251,-0.2296 -0.1809,-0.5083 -0.2037,-0.8147 z m 3.0554,0.041 0.2444,0.082 -0.082,0.2445 0,0.041 -0.1629,0.5296 -0.2037,-0.082 0.2037,-0.8148 z m -20.2472,0.2037 0.4074,0.1222 -0.1222,0.3667 -0.2852,-0.4889 z m -10.6329,0.3259 0.041,0.163 -0.1222,0.041 0,-0.163 0.082,-0.041 z m 5.5405,0.041 0.2037,0.082 -0.082,0.3667 0.2037,0.041 -0.2444,0.1222 -0.1222,0.4889 -0.163,-0.6111 0.2037,-0.4889 z m 27.4173,0 0.3666,0.082 c -0.05,0.1858 -0.025,0.3353 0,0.4482 l -0.3259,-0.082 c 0.053,-0.2001 0.019,-0.3354 -0.041,-0.4482 z m -3.9517,0.082 0.041,0 c -0.023,0.1203 -0.051,0.2388 -0.082,0.3667 l -0.041,0 0.082,-0.3667 z m -17.314,0.041 0.2037,0.041 -0.2444,0.8148 -0.2037,-0.041 0.2444,-0.8148 z m 14.7475,0.041 c 0.1067,0.099 0.2579,0.168 0.4074,0.2445 l -0.163,0.3259 -0.163,-0.041 -0.041,-0.041 c -0.048,-0.04 -0.1096,-0.09 -0.1629,-0.1222 l 0.1222,-0.3667 z m -21.9175,0.163 0.082,0 c 0.01,0.063 0,0.1434 0,0.2037 l -0.082,-0.2037 z m 32.4688,0 0.3259,0.5296 -0.4481,-0.1222 0.1222,-0.4074 z m -33.2429,0.3666 0.041,0.1223 -0.1629,-0.041 0,-0.041 0.1222,-0.041 z m 6.7627,0.163 0.2037,0.082 -0.7333,2.811 -0.2037,-0.082 0.7333,-2.811 z m 9.4514,0 -0.2037,0.8148 0,0.082 c -0.07,0.01 -0.1708,0.032 -0.2444,0.041 l 0.2444,-0.8963 0.2037,-0.041 z m 1.5888,0.1629 c 0,0.051 0,0.1084 0,0.163 -0.1404,0.1712 -0.5033,0.2872 -1.0185,0.4074 l 0.082,-0.2444 0.937,-0.326 z m 8.5959,0.1223 c 0.1067,0.1843 0.2375,0.3374 0.3667,0.4888 l 0,0.1222 0.1629,0.041 c 0.068,0.069 0.1302,0.1437 0.2037,0.2037 l -0.163,0.6519 -0.2036,-0.041 c 0.071,-0.2668 -0.1677,-0.4926 -0.6111,-0.6111 l 0.2444,-0.8555 z m 1.0185,0.041 0,0.1222 -0.082,-0.082 0.082,-0.041 z m 5.5812,0.041 0.4481,0.1222 -0.041,0.2037 -0.4888,-0.1222 0.082,-0.2037 z m -24.1989,0.041 0.1222,0.4481 0.2445,0.8963 -0.4482,0.7333 0.3259,-0.1223 0.2037,0.041 -0.1222,0.3667 -0.2037,-0.041 -0.2037,-0.2444 -0.2444,-0.082 -0.082,0.4481 -0.2444,-0.041 0.6518,-2.4036 z m -1.2222,0.082 0.2037,0.082 -0.1222,0.5296 -0.2037,-0.041 0.1222,-0.5704 z m 7.1293,0 0.2037,0.041 -0.082,0.3666 -0.2036,-0.041 0.082,-0.3666 z m 14.5438,0.041 -0.082,0.2444 0.6926,0.163 0.082,-0.2037 -0.6926,-0.2037 z m -28.6801,0.082 c 0.026,0 0.055,0 0.082,0 -0.126,0.1796 -0.3024,0.3289 -0.5296,0.4481 l -0.041,-0.2037 c 0.1447,-0.1144 0.3061,-0.2068 0.4888,-0.2444 z m 13.3623,0.2037 c 0.1273,0.1138 0.2392,0.2232 0.2852,0.3259 l -0.2852,-0.082 0,-0.2445 z m -12.9549,0.2037 0.041,0 0.3259,0.1222 c 0.028,0.1064 0.051,0.1975 0.082,0.2851 l -0.2037,0.7741 -0.2037,-0.041 c 0.1426,-0.5334 0.011,-0.858 -0.2852,-0.937 l -0.2037,0.082 0.041,-0.163 0.3259,-0.082 0.082,0 0,-0.041 z m -2.5666,0.041 0.082,0.2444 -0.1222,-0.041 0.041,-0.2037 z m 13.4438,0 0.2037,0 c -0.015,0.1005 -0.023,0.219 -0.041,0.3259 l -0.1629,0.1629 0,-0.4888 z m 8.5552,0 0.3666,0 -0.041,0.1629 -0.4073,-0.1222 c 0.02,-0.019 0.064,-0.021 0.082,-0.041 z m 1.0185,0 0.4074,0 0,0.2036 c -0.1952,10e-5 -0.3609,0.036 -0.4889,0.082 l 0.082,-0.2851 z m -19.4325,0.082 0.163,0.041 -0.082,0.3259 -0.082,-0.3667 z m 13.8105,0.1222 0,0.5296 -0.041,0.041 -0.041,0.1629 -0.2444,0 0.2037,-0.6925 0.1222,-0.041 z m 0.8555,0 0.937,0 -0.041,0.1629 0,0.1222 -0.2444,0 -0.2852,-0.041 -0.082,0.041 -0.2852,0 c 0,0.015 0,0.026 0,0.041 l -0.082,-0.041 0.082,-0.2851 z m 3.0554,0.1629 -0.082,0.3667 -0.3666,0 -0.1222,-0.1222 0.041,-0.163 c 0.2044,-0.021 0.3677,-0.034 0.5296,-0.082 z m 9.0441,0 c 0.6944,0.3642 0.9331,1.0147 0.6925,1.9148 l -0.4888,-0.1223 -0.163,0.5296 0.3666,0.5704 -0.8555,1.2629 0.2037,0.041 -0.2444,0.1222 -0.082,0.2852 0.1629,1.3036 -0.5703,0.2445 0.2037,0.041 -0.3667,0.5703 c -0.1386,0.963 0.1611,1.5036 0.937,1.711 l -0.2444,0.163 -0.082,0.2444 0.082,0.6111 -1.3444,-2.0369 -0.2037,-0.041 0.163,-0.6111 0.4481,0.082 0.041,-0.163 c -0.2956,-0.079 -0.5344,-0.5172 -0.6518,-1.2629 l 0.1629,-0.6111 0.2037,0.041 -0.082,0.4482 0.6926,0.2037 0.082,-0.4482 -0.4074,-0.1222 0.2444,-0.8148 0.4074,0.1223 0.2037,-0.8148 -0.4074,-0.1222 0.082,-0.3667 0.4482,0.1222 0.082,-0.3666 -0.4074,-0.1222 0.1629,-0.6111 c 0.3696,0.099 0.5984,-0.1382 0.8148,-0.6518 0.1069,-0.4 0,-0.6148 -0.4481,-0.7333 l 0.1629,-0.6111 z m -24.5248,0.041 0.4888,0.1223 -0.4074,0.5703 -0.2444,-0.082 0.163,-0.6111 z m 23.3026,0 c 0.1376,0.073 0.2979,0.1151 0.4481,0.163 l -0.1222,0.4074 -0.3259,-0.5296 0,-0.041 z m -16.7029,0.082 0.6518,0 0.2037,0.2445 0.1629,0 -0.1629,0.6111 -0.6111,0 -0.2444,-0.8556 z m 5.7034,0.2037 0.082,0 c -0.036,0.1613 -0.082,0.3166 -0.1222,0.4482 l -0.082,0 0.1222,-0.4482 z m 4.8887,0.041 0,0.163 -0.082,0.2444 -0.2037,0 0.041,-0.2037 0.2444,-0.2037 z m -7.7404,0.082 0.2037,0.041 -0.041,0.082 -0.2037,0 0.041,-0.1222 z m -8.6367,0.082 0.6519,0.3667 -0.2852,1.0185 -0.2037,-0.082 -0.2444,-0.937 0.082,-0.3667 z m 20.8991,0 0.4888,0.1223 0.3667,1.1406 -0.1222,0.4482 -0.2037,-0.041 0.1222,-0.4482 -0.4481,-0.1222 -0.041,0.2037 0.2444,0.7333 -0.2444,0.1222 c -0.1069,0.4001 0.086,0.6963 0.5296,0.8148 l -0.5704,0.2444 0.082,-0.3666 -0.4074,-0.1222 -0.3259,2.9332 -0.082,0.1629 -0.5703,-0.3259 0.082,-0.2037 0.4074,-0.774 c 0.069,-0.5531 -0.1194,-0.879 -0.4889,-0.9777 l 0.1222,-0.3667 0.4889,0.1222 0.041,-0.2444 -0.2037,-0.2852 0.3259,-0.082 -0.041,-1.0999 0.4481,-1.5889 z m -18.9843,0.041 0.4074,0.1223 -0.041,0.2036 -0.4074,-0.1222 0.041,-0.2037 z m 11.2032,0 0.1629,0 c 0.066,0.059 0.1536,0.1174 0.2444,0.163 l -0.041,0.1222 -0.082,0.2852 -0.2851,-0.5296 0,-0.041 z m -19.9621,0.041 0.3259,0.4889 -0.2444,-0.2444 -0.2037,-0.041 0.1222,-0.2037 z m 1.1,0.082 0.1629,0.041 0,0.163 -0.1629,0.6518 -0.2037,-0.082 0.2037,-0.774 z m 31.0837,0 c 0.044,0.1029 0.088,0.1838 0.163,0.2037 l 0.2037,0.041 0,0.4482 -1.7111,6.3552 -0.4888,-0.1222 0.2851,-0.1222 0.041,-0.2037 0.6926,-3.4628 0.2852,-0.1222 0.041,-1.0592 0.4888,-1.9555 z m 1.0185,0 0.2037,0.041 -0.2037,0.6519 -0.2037,-0.082 0.1629,-0.5704 0.041,-0.041 z m -15.6437,0.1222 0.041,0.4482 -0.1222,0.041 -0.082,-0.3259 0.1629,-0.163 z m 12.792,0 0.2037,0.041 -0.1223,0.3667 -0.2037,-0.041 0.1223,-0.3667 z m -9.5737,0.041 c 0.1347,0.034 0.3237,0.061 0.4889,0.082 l -0.1222,0.4889 -0.4481,-0.1629 0.082,-0.4074 z m -20.9805,0.326 0.4889,0.1222 -0.082,0.2037 -0.163,1.3851 c 0.01,-0.1844 -0.023,-0.3523 -0.082,-0.5704 l -0.2037,-0.8147 0.041,-0.3259 z m 3.2999,0.041 0.4481,0.082 c -0.1069,0.3999 -0.01,0.695 0.2852,0.774 l -0.041,0.2037 c -0.4434,-0.1186 -0.7027,-0.1037 -0.7741,0.1629 l -0.2037,-0.041 -0.082,-0.611 0.3667,-0.5704 z m 16.8251,0.041 0.2852,0 -0.082,0.2444 -0.2037,0 0,-0.2444 z m -13.7697,0.1629 0.2037,0.041 -0.041,1.0592 -0.4074,-0.1222 0.2444,-0.9777 z m 20.125,0.2037 0.4481,0.163 -0.041,0.1629 -0.4889,-0.1222 0.082,-0.2037 z m 3.0961,0 0.2037,0.041 -0.4481,0.937 -0.2037,-0.041 0.2037,-0.8148 0.2444,-0.1222 z m -19.5139,0.1222 0.937,0.041 -0.1222,0.5704 -0.9777,0 0.1629,-0.6111 z m 8.5959,0.163 0.2037,0 0,0.041 -0.2037,-0.041 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3628,0 0.326,0 0,0.2037 -0.3667,0 0,-0.1222 0.041,-0.082 z m -19.5139,0.041 0.3259,0.5296 -0.2851,0.1222 -0.2037,-0.041 c 0.062,-0.2333 0.1326,-0.4345 0.1629,-0.6111 z m -4.3183,0.1629 0.2037,0.041 -0.1222,0.3667 -0.2037,-0.041 0.1222,-0.3667 z m 32.3059,0 0.2037,0.041 c -0.1069,0.4 -0.01,0.6951 0.2852,0.7741 l -1.4259,3.5035 0.2037,0.2444 -0.041,0.2037 -0.5296,0.8963 -0.2037,-0.041 0.163,-1.4259 0.2444,-0.1222 0.1222,-0.4481 0.6926,-3.4221 0.2852,-0.2037 z m -35.3613,0.1222 0.1222,0.8556 0.2037,0.1222 c -0.012,0.096 -0.014,0.1835 -0.041,0.2852 l 0,0.082 -0.041,-0.082 -0.2037,0.082 c 0.022,0.084 0.035,0.1371 0.041,0.2036 l -0.3666,0.163 c -0.01,-0.044 -0.031,-0.08 -0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 0.1629,-1.3444 z m 9.4514,0.041 0.6111,0.163 -0.041,0.2037 -0.6926,0.082 0.1223,-0.4481 z m -4.8072,0.2445 0.2037,0.082 -0.1629,0.5296 -0.2037,-0.041 0.1629,-0.5703 z m 28.9654,0 0.2037,0.041 -0.2852,1.0185 -0.2037,-0.082 0.2852,-0.9778 z m -20.4917,0.1222 0.3667,0.5296 -0.163,0.6111 -0.2037,-0.3259 -0.4074,-0.1222 c -0.1069,0.4 -0.412,0.5666 -0.8555,0.4481 0.107,-0.4 -0.01,-0.6555 -0.4481,-0.7741 l 0.041,-0.2036 0.4074,0.1222 0.1629,0.2444 c 0.08,-0.3 0.4464,-0.4543 1.1,-0.5296 z m 10.8365,0.2037 0.1223,0 0,0.1222 -0.1223,-0.1222 z m 13.118,0 0.8962,0.2444 -0.4481,1.7518 c -0.2956,-0.079 -0.3768,-0.5444 -0.163,-1.3444 l -0.4481,-0.082 0.163,-0.5703 z m -6.1516,0.041 0.2852,0.5296 -0.041,0.2037 -0.2852,-0.5704 0.041,-0.1629 z m -28.558,0.082 -0.2036,1.6296 -0.8148,0.2444 0.2444,-0.8963 c 0.4491,-0.2229 0.7308,-0.5468 0.774,-0.9777 z m 0.6926,0 0.2444,0.082 -0.082,0.3666 -0.2851,-0.082 0.1222,-0.3666 z m 21.8768,0.041 0.1629,0.041 0,0.2444 -0.4074,0 0.2445,-0.2851 z m -9.5329,0.041 0.2037,0 0.1629,0.2444 -0.2851,0 -0.082,0 0,-0.041 0,-0.2037 z m -6.9664,0.2444 0.4889,0.1222 -0.082,0.2445 -0.5296,0.937 -0.163,-0.2445 -0.2036,-0.082 -0.5297,0.2852 0.041,0.6518 c -0.2956,-0.079 -0.5041,0.048 -0.611,0.4482 l -0.163,-0.2445 -0.2037,-0.041 -0.2444,0.1222 0.2037,-1.6295 0.6111,0.1629 0.1222,-0.4073 c 0.739,0.1975 1.156,0.074 1.2629,-0.326 z m 2.8518,0.1222 0.2037,0.082 -0.082,0.3667 -0.2445,-0.041 0.1222,-0.4074 z m -7.8626,0.041 0.2037,0.082 -0.082,0.3667 -0.2445,-0.041 0.1222,-0.4074 z m 6.6404,0.041 0.2037,0.082 -0.082,0.4074 -0.2445,-0.041 0.1223,-0.4481 z m -9.2885,0.1223 0.2037,0.082 -0.2444,0.082 0.041,-0.163 z m -0.041,0.2851 0.163,0.1222 0,0.041 -0.2037,-0.041 0.041,-0.1222 z m 15.7252,0.082 c 0,0.2066 -0.1299,0.3083 -0.3259,0.3667 l -0.5296,0.041 0,-0.163 0,-0.041 0.8555,-0.2037 z m 3.2591,0 c 0.013,0 0.029,-0.01 0.041,0 0.089,0.046 0.1749,0.1109 0.2037,0.2037 l -0.2444,0 0,-0.2037 z m 1.5481,0 0.4074,0 0.082,0.1223 -0.2037,0.8147 c -0.045,0 -0.075,0 -0.1222,0 l 0,0.2037 -0.2037,-0.2037 -0.4074,0 -0.1629,-0.2444 0.1222,-0.4481 c 0.1892,0.051 0.3495,-0.044 0.4889,-0.2445 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.059 0,0.082 -0.098,0.3379 -0.3274,0.5986 -0.6518,0.7333 l -0.1222,-0.041 0.4481,-0.774 z m 4.4405,0 -0.041,0.2037 -0.4888,0 0,-0.1222 c 0.2001,-0.028 0.3723,-0.051 0.5296,-0.082 z m 8.8811,0 0.2037,0.041 -0.082,0.3667 -0.2037,-0.041 0.082,-0.3667 z m -26.8469,0.082 0.4074,0.1223 -0.1222,0.4481 -0.4074,-0.1222 0.1222,-0.4482 z m 9.7366,0.1223 0.1629,0 -0.1629,0.5703 0,-0.5703 z m -11.9773,0.1629 -0.082,0.3667 0.4074,0.1222 0.1223,-0.3667 -0.4482,-0.1222 z m 4.9702,0.041 0.6925,0.2037 -0.1222,0.3667 0.4482,0.1222 0.1629,-0.6111 0.3259,0.3666 c -0.3477,0.1724 -0.5886,0.4468 -0.7333,0.8148 -0.062,0.026 -0.089,0.046 -0.1222,0.082 l -0.2037,-0.041 c 0.1402,-0.4439 -0.02,-0.7271 -0.4074,-0.8148 l -0.2037,-0.041 c 0.071,-0.1146 0.1184,-0.2814 0.163,-0.4481 z m 16.9066,0 0.4074,0.1222 -0.082,0.2445 -0.4074,-0.1223 0.082,-0.2444 z m -14.4215,0.2037 0.1222,0.041 c -0.043,2e-4 -0.081,0 -0.1222,0 l 0,-0.041 z m -13.729,0.2444 0.4481,0.082 -0.082,0.2037 -0.4074,-0.1222 0.041,-0.1629 z m 20.1657,0 0.163,0.082 -0.2037,0.041 0.041,-0.1222 z m -10.4699,0.041 0.163,0.2445 0.2037,0.041 c 0.1185,0.032 0.2232,0.042 0.3259,0.041 -0.1474,0.093 -0.2951,0.1253 -0.4889,0.082 l -0.2037,0.6518 c 0.3876,0.088 0.6345,0.219 0.774,0.4481 l -0.4888,0.2444 0.4074,0.082 0.082,-0.2851 c 0.1221,0.2248 0.1522,0.5026 0.041,0.8555 l 0.6518,0.1629 -0.3666,1.1 -0.6111,-0.1222 0,2.1184 -1.3444,1.1407 0.2037,0.3259 -1.7518,2.4036 0.4481,-0.1222 0.2445,0.082 -0.1222,0.4074 -0.2852,-0.041 -0.2852,-0.326 -0.2852,-0.041 -0.1222,0.4889 -0.2852,-0.082 2.4851,-7.7811 0.2445,-0.041 -0.2852,0.9777 0.6518,0.1222 0.4074,-1.3036 -0.4481,-0.082 0.041,-0.1222 -0.2037,-0.082 -0.2852,0 0.041,-0.1223 0.2852,-0.041 0.082,-0.2036 -0.2445,-0.082 0.163,-0.5704 -0.2037,-0.2852 0.082,-0.2037 0.2852,-0.082 z m 6.6812,0.041 0.2037,0.041 -0.041,0.1222 -0.163,-0.1629 z m 7.8626,0 0.041,0.163 -0.2852,-0.082 0.2444,-0.082 z m -20.0435,0.1223 0.4481,0.774 -0.3259,0.1629 -0.163,-0.041 0.041,-0.8962 z m -0.6926,0.041 0.2037,0.041 -0.1222,0.4481 -0.2037,-0.041 0.1222,-0.4481 z m 19.8806,0.1629 -0.082,0.2444 -0.2037,-0.041 0,-0.082 0.2852,-0.1222 z m -1.3852,0.1222 0.082,0.1222 0,0.2852 -0.4481,-0.1222 0.163,0 0.2037,-0.2852 z m 3.8702,0.1222 0.2445,0.082 0,0.2852 0,0.6518 0,0.1223 -0.3259,0.1222 -0.4074,-0.082 0.2851,-1.1407 0.041,0 c 0.064,-0.01 0.1028,-0.032 0.163,-0.041 z m -25.3803,0.1223 0.3667,0.4888 -0.4889,-0.1222 0.1222,-0.3666 z m 35.4021,0.041 0.2037,0.041 -0.1222,0.3666 -0.2037,-0.041 0.1222,-0.3666 z m -11.4476,0.1222 -0.041,0.2037 -0.7741,0.081 -0.2037,-0.081 0,-0.041 1.0185,-0.163 z m 6.4367,0 -0.041,0.2037 0.4074,0.081 0.041,-0.163 -0.4074,-0.1222 z m -27.1728,0.2444 0,0.2037 -0.4074,0.2037 0.3259,0.3259 -0.1222,0.082 -0.2852,-0.082 0.082,-0.3259 -0.1222,-0.041 0,-0.041 0.5296,-0.3259 z m 3.1369,0 0.3666,0.082 -0.2444,0.6926 -0.3259,-0.082 0.2037,-0.6926 z m 8.3107,0 0.4074,0 0,0.041 -0.4074,0 0,-0.041 z m -13.6068,0.082 0.2037,0.041 -0.3666,1.3444 c -0.019,-0.2982 -0.091,-0.4868 -0.2445,-0.5703 l 0.041,-0.326 0.3667,-0.4888 z m 10.307,0.082 0.2444,0.082 -0.1222,0.4481 -0.2852,-0.041 0.163,-0.4888 z m 2.1184,0.041 0.2444,0.041 -0.082,0.2444 0.041,0.163 c -0.01,0.1969 0.032,0.3372 0.1222,0.4481 l 0,0.082 -0.1629,0 -0.4074,0.4482 -0.2037,0 0.2444,-0.8556 0.163,-0.2851 -0.041,-0.041 0.081,-0.2445 z m 1.3851,0.041 0.2444,0.2852 0,0.2852 c -0.1625,-0.1175 -0.2809,-0.2535 -0.4073,-0.3667 l 0.1629,-0.2037 z m -7.6996,0.2037 0.2851,0.041 -0.1629,0.4889 -0.2444,-0.082 0.1222,-0.4481 z m 13.9734,0.082 0.2037,0.041 0.3259,0.4889 -0.082,0.2444 -0.2037,-0.082 -0.082,-0.082 0,-0.1629 -0.2037,0 c 0.013,-0.1554 0.042,-0.3219 0.041,-0.4482 z m -16.54,0.082 -0.1222,0.3667 -0.041,1.4258 -0.65179,0.8148 0.36659,0.082 -0.44809,0.1222 -0.082,0.2445 0.2852,0.3259 -0.041,0.2037 -0.57039,0.611 0.082,0.9778 -0.8555,1.4258 0.2852,0.2852 -0.6111,-0.1222 0.4481,-1.5481 -1.5073,0.8555 0.2852,0.2852 -1.0185,0.4481 c -0.1112,-0.2192 -0.218,-0.4175 -0.3259,-0.6518 -0.01,-0.011 0,-0.03 0,-0.041 l 0.1222,-0.774 0.2852,0.082 0.6925,0.4481 c -0.2005,-0.6795 -0.5592,-1.0906 -1.1407,-1.2222 l 0.2037,-0.6925 c 0.015,-0.046 0.027,-0.077 0.041,-0.1223 l 0.1223,-0.041 0.041,-0.2037 -0.082,-0.041 c 0.068,-0.2257 0.1079,-0.4497 0.1629,-0.6518 l 0.163,-0.1222 0.041,-0.2037 -0.041,-0.1222 c 0.059,-0.2398 0.045,-0.4104 0.082,-0.6111 0.2165,-0.041 0.45,-0.1549 0.6925,-0.3666 -0.087,0.5222 -0.036,0.8328 0.2445,0.8962 l -0.3259,0.2037 -0.041,0.082 c -0.1806,0.1124 -0.3752,0.2435 -0.5297,0.3667 l -0.041,0.2444 0.4074,0.1222 -0.3259,1.6703 0.57039,0.1222 0.12221,-0.4074 0.44808,-0.2037 -0.2852,-0.2851 -0.28511,-0.082 0.082,-0.2037 1.5073,0.1222 0.2037,-0.6926 -0.52959,-0.1222 0.1222,-0.4074 0.57039,0.1222 0.3666,-1.1406 0.2444,-0.163 -0.2037,-0.041 0.4889,-1.5481 0.3259,-0.1222 z m -6.1108,0.041 0.2444,0.082 -0.1222,0.3667 -0.2037,-0.041 0.082,-0.4074 z m 24.0359,0 0.163,0.2444 0.2037,0.082 0.3259,-0.1222 -0.041,0.163 c -0.3962,0.037 -0.7257,0.1179 -0.9778,0.2037 l -0.041,0 -0.16291,-0.041 0.28521,-0.4482 0.24441,-0.082 z m -12.01791,0.082 0.611,0.1222 -0.12221,0.4074 -0.48879,-0.5296 z m 3.9516,0.1222 0.3259,0.082 -0.041,0.163 -0.2851,0.082 0,-0.041 0,-0.2852 z m 4.80719,0.041 0.2037,0.041 0,0.041 -0.2037,0 c 0,-0.03 0,-0.052 0,-0.082 z m -13.8105,0.082 0.2852,0.082 -0.082,0.6111 -0.36659,0.1222 0.041,-0.4074 0.12221,-0.4074 z m 29.5765,0.041 0.2036,0.041 -0.1222,0.3667 -0.2037,-0.041 0.1223,-0.3667 z m -7.4553,0.3259 0.40741,0.1223 -0.082,0.4481 -0.40741,-0.2445 0.082,-0.3259 z m -26.35799,0.041 0.4074,0.1223 -0.082,0.2036 -0.40741,-0.1222 0.082,-0.2037 z m 1.6703,0 0.2037,0.2445 -0.041,0.2037 -0.3259,-0.3259 0.1629,-0.1223 z m 18.16949,0.041 c 0.1619,0.088 0.2758,0.1839 0.4889,0.2852 -0.019,0.058 -0.041,0.1396 -0.041,0.2037 l -0.52959,0 c 0.031,-0.1732 0.06,-0.3361 0.082,-0.4889 z m -3.2591,0.2037 0.16301,0 0,0.041 -0.16301,-0.041 z m -12.1402,0.2037 -0.082,0.5704 -0.041,0.2444 -0.2851,-0.082 0.041,-0.6111 0.3666,-0.1222 z m -3.2998,0.082 0.2444,0.041 -0.1222,0.4889 -0.2852,-0.041 0.163,-0.4889 z m 10.7143,0.041 0.73329,0.163 0,0.082 -0.082,0.2444 -0.082,0.1222 0,0.163 0,0.041 -0.12221,0.2852 -0.082,0 -0.2037,-0.2852 c 0.017,-0.3233 -0.065,-0.5992 -0.163,-0.8148 z m 20.00279,0 c -0.17819,0.6667 0.096,1.3876 0.6925,2.1184 l 0.24451,-0.1222 0.1629,0.2445 -0.041,0.1629 c -0.2463,-0.066 -0.4957,0.012 -0.6925,0.163 -0.042,-0.016 -0.074,-0.03 -0.1222,-0.041 l -0.3667,0.1222 c 0.1402,-0.4439 0.062,-0.7271 -0.32591,-0.8148 l -0.4074,0.1222 -0.041,0.082 -0.2852,-0.2037 c 0.2165,-0.5135 0.4453,-0.7098 0.8148,-0.611 l 0.1222,-0.4074 -0.611,-0.163 0.8555,-0.6518 z m 2.4036,0.041 0.32591,0.4889 -0.1222,0.4481 -0.28521,-0.5703 0.082,-0.3667 z m -17.9659,0.082 0.2852,0.082 -0.1222,0.4074 -0.2444,-0.3259 0.082,-0.163 z m -14.2586,0.041 0.2852,0.041 -0.082,0.2037 c -0.1131,0.033 -0.21799,0.087 -0.3259,0.1222 l 0.1222,-0.3666 z m 15.76599,0 0.7333,0 -0.082,0.2037 -0.69259,0.082 c 0.022,-0.1067 0.02,-0.1839 0.041,-0.2852 z m -3.99239,0.082 0.041,0 0,0.1222 -0.041,0 0,-0.1222 z m 19.67679,0 0.20371,0.041 -0.20371,0.8148 -0.2037,-0.041 0.2037,-0.8148 z m -28.4357,0.163 0.5704,0.1222 -0.2445,0.6926 -0.3666,-0.6111 0.041,-0.2037 z m 2.15921,0.041 -0.082,1.1407 0.6111,0.1629 0.082,-1.1814 -0.6111,-0.1222 z m 19.5546,0.1222 0.16301,0.041 -0.12221,0.4481 -0.2037,-0.041 0,-0.041 0.041,0 0.1222,-0.4074 z m -13.4438,0.041 0.12221,0 0.2852,0.7333 -0.1222,0.1629 -0.163,0 -0.20371,-0.611 c 0,-0.011 -0.01,-0.029 0,-0.041 l 0,-0.041 c 0.026,-0.066 0.056,-0.1341 0.082,-0.2037 z m 6.3145,0 0.4074,0 -0.082,0.4889 -0.3259,0 0,-0.4889 z m 4.03319,0 0.24441,0.041 -0.041,0.1629 -0.2444,-0.082 0.041,-0.1222 z m -25.70619,0.082 0.082,0.041 -0.041,0.2037 -0.082,-0.041 0.041,-0.2037 z m 38.17229,0.082 -0.041,0.163 0.041,0.041 0,-0.2037 z m -21.55089,0.041 0.082,0 0,0.3259 -0.20371,-0.041 0.12221,-0.2852 z m -10.918,0.2444 c 0.27319,-0.046 0.6794,-0.013 1.1814,0.041 l -0.1222,0.4074 c -0.3876,-0.088 -0.75,0.1822 -0.937,0.7741 l -0.5704,-0.8939 c 0.053,-0.1665 0.1749,-0.2803 0.44821,-0.3259 z m 14.0956,0.041 0.3259,0 -0.1222,0.2037 -0.2037,0 0,-0.2037 z m 0.77409,0 0.082,0 0,0.2037 -0.041,0 -0.041,-0.2037 z m 15.15481,0.041 0.48889,0.1222 -0.2852,1.0185 -0.3666,-0.4889 0.16291,-0.6518 z m -17.9658,0.041 0.24441,0.041 -0.28511,0.082 0.041,-0.1222 z m 10.8365,0 0.2037,0.041 -0.041,0.1222 -0.24441,0.1223 0,0.082 -0.041,0 0.041,-0.082 0.082,-0.2852 z m 9.5737,0.1222 -0.1222,0.082 -0.082,0.163 0.20361,0.2444 0,-0.4888 z m -13.8105,0.082 0.40741,0.082 -0.32591,0.4482 -0.3259,-0.082 -0.041,-0.163 0.28511,-0.2851 z m -10.4292,0.041 0.1223,0.082 0,0.2445 -0.16301,-0.041 c 0.032,-0.1025 0.017,-0.1886 0.041,-0.2852 z m 13.8513,0.041 0.611,0.5297 0.041,0.041 -0.1222,0.611 c -0.1738,-0.1301 -0.3351,-0.2838 -0.48879,-0.3666 -0.043,-0.2456 -0.071,-0.5152 -0.041,-0.8148 z m -8.5552,0.041 0.36659,0 0,0.2445 -0.36659,0 0,-0.2445 z m -16.4585,0.082 0.16291,0.041 -0.12221,0.4074 -0.2851,-0.082 0.082,-0.2851 0.1629,-0.082 z m 4.1961,0.2037 0.5296,0.1223 0,1.1814 c -0.3391,-0.077 -0.521,-0.5091 -0.5296,-1.3037 z m 1.79251,0.163 -0.24441,0.6926 0.6518,0.1629 0.2037,-0.6926 -0.61109,-0.1629 z m 3.01469,0.2444 c 0.53689,0.1214 0.591,1.2375 0.1629,3.2999 -0.149,0.2487 -0.3558,0.702 -0.57029,1.1407 l -0.5704,-0.1223 -0.52959,-1.3443 c 0.3877,0.088 0.5932,-0.086 0.73329,-0.5296 l 0.082,-1.1815 0.20371,0.2445 0.65189,0.1629 -0.163,-1.6703 z m 9.6958,0.041 0.1222,0.1222 -0.24441,0.2852 -0.1222,0.4481 -0.1222,0 -0.2852,-0.082 -0.041,-0.4481 0.082,-0.1222 0.2445,0.2444 0.3666,-0.4481 z m 5.3776,0 c 0,0.306 -0.1563,0.4482 -0.5704,0.4482 l 0,0.2036 0.40741,0 -0.36659,0.6519 -0.40741,-0.082 0.082,-0.082 0,-0.2852 -0.041,-0.041 0.40741,-0.774 c 0.1595,-0.01 0.3126,-0.041 0.4888,-0.041 z m -13.4439,0.041 0.2852,0.041 -0.44809,1.2629 -0.082,0.3259 c 0.198,0.081 0.36659,0.1667 0.52959,0.2445 l -0.2444,0.4481 -0.1223,-0.2037 -0.3259,0.163 -0.24441,-0.041 c 0.067,-0.1419 0.1305,-0.2725 0.2037,-0.4889 l -0.2037,0 0.163,-0.4889 0.041,0.041 0.2851,0 0.16301,-1.3036 z m -8.1885,0.082 0.5704,0.1222 -0.163,0.4074 -0.40741,-0.5296 z m 13.1587,0.082 0.082,0.082 -0.163,-0.041 0.082,-0.041 z m 4.359,0 0.32591,0 c -0.046,0.2543 -0.075,0.4487 -0.082,0.6518 l -0.611,0 0.082,-0.5703 0.2851,-0.082 z m -3.13689,0.082 0.082,0.4889 c -0.2042,-0.1068 -0.34879,-0.235 -0.44809,-0.4074 l 0.3667,-0.082 z m -1.75171,0.082 -0.1222,0.4889 -0.163,0 0,-0.4074 0.2852,-0.082 z m 18.00661,0.041 0.2036,0.041 -0.1629,0.6518 -0.2037,-0.082 0.163,-0.611 z m 0.6518,0 0.48879,0.1222 -0.40729,1.4666 -0.16301,-0.041 c -0.083,-0.019 -0.171,0.021 -0.2444,0.041 l 0,-0.3666 0.32591,-1.2222 z m -21.22501,0.041 0.1222,0 0,0.041 -0.1222,-0.041 z m 3.5036,0.1222 c 0.081,0.036 0.13431,0.08 0.20371,0.1223 l -0.24451,0.041 0.041,-0.163 z m -12.181,0.082 0.2852,0.041 -0.2852,0.8963 -0.28511,-0.041 0.28511,-0.8963 z m 1.7926,0.163 -0.1223,0.4481 0.6111,0.1222 -0.4888,-0.5703 z m 19.5954,0 c 0.045,0.041 0.155,0.1195 0.20361,0.163 l -0.082,0.5296 -0.8962,2.8517 -0.5704,0.8148 0.36671,1.0592 -0.6518,-0.163 -0.36671,2.0777 -0.52959,-0.1222 0,-0.9777 0.32591,-0.1223 0.082,-0.2037 0.163,-1.4666 0.48889,-0.5703 -0.1223,-0.1222 c 0.028,-0.055 0.041,-0.1272 0.041,-0.2037 l 0.2037,-0.1222 -0.40741,-0.5704 0.36671,-0.1222 0.2444,0.041 0.082,-1.1407 0.3667,-1.1407 0.5296,0.1222 0.1629,-0.611 z m 1.2629,0.082 0.1222,0.163 -0.163,-0.041 0.041,-0.1223 z m 1.8332,0.1222 0.082,1.6296 0.48889,0.1222 0.20371,-0.2037 -0.2445,0.8148 c -0.1147,-0.1898 -0.1569,-0.2814 -0.28511,-0.4889 l -0.2037,0.082 c -0.022,-0.018 -0.056,-0.024 -0.082,-0.041 l -0.4074,-0.6518 0.4481,-1.2629 z m 0.5296,0 0.3667,0.082 0,0.082 -0.2445,0.3667 -0.24441,-0.082 0.12221,-0.4482 z m 3.78869,0.163 0.2037,0.041 -0.1222,0.4481 -0.2037,-0.082 0.1222,-0.4074 z m 1.7925,0.2444 0.20371,0.082 0,1.0592 0,0.041 c -0.05,0.036 -0.11671,0.064 -0.16291,0.1222 l -0.3667,-0.082 0.3259,-1.2221 z m -32.1022,0.041 0.2444,0.081 -0.9777,3.0962 -0.2444,-0.041 0.9777,-3.1369 z m 29.5764,0.163 0.082,0.041 -0.1629,0.6111 -0.2037,-0.041 0.1222,-0.4482 0.1629,-0.1629 z m -14.0141,0.1629 0.20361,0 0,0.4889 -0.20361,0 0,-0.4889 z m 11.692,0.082 0.20371,0.082 0.041,0.2444 -0.2852,-0.2036 0.041,-0.1223 z m -24.28039,0.082 -0.16291,0.4481 0.6111,0.163 0.1629,-0.4889 -0.61109,-0.1222 z m 27.1321,0.041 0.2037,0.041 0.041,0.6926 -0.40741,-0.1222 0.163,-0.6111 z m -29.0468,0.041 0.28521,0.041 -0.20371,0.6518 -0.2444,-0.082 0.1629,-0.611 z m 31.5726,0.2037 0.40741,0.1222 -0.082,1.0592 -0.082,0.326 -0.24441,-0.082 0.082,-1.1407 c -0.055,-0.013 -0.1121,-0.01 -0.163,0 l 0.082,-0.2852 z m -19.5546,0.2444 0.041,0 0,0.4482 -0.2037,0 0.1629,-0.4482 z m -5.5405,0.041 0.6926,0.163 -0.5704,1.1814 -0.3259,0.4482 -0.082,0 0.2037,-0.6111 0,-1.0592 c 0.035,-0.028 0.048,-0.074 0.081,-0.1223 z m 5.9479,0.2037 0.40741,0 0,0.4889 0.2444,0 0.041,-0.041 -0.041,0.2852 -0.3259,0.082 -0.041,-0.1222 0.041,-0.2037 -0.36671,-0.082 -0.1629,0.041 c 0.1408,-0.1216 0.2037,-0.2569 0.2037,-0.4482 z m 13.8919,0 0.2445,0.041 0.1222,0.7333 -0.082,0.2445 -0.4074,-0.6111 0.1222,-0.4074 z m -11.81421,0.2037 0.082,0 -0.2037,0.8963 -0.082,0.041 -0.2037,-0.2037 c -0.1036,0 -0.1645,0.01 -0.2445,0.041 l 0.2037,-0.6518 0.4481,-0.1222 z m 0.774,0 0.4889,0 0.1629,0.041 -0.2444,0.7741 -0.5296,0.3259 -0.2445,0 0.082,-0.2037 0.163,0 0,-0.2037 0.2852,-0.082 -0.2852,-0.2852 0.1222,-0.3666 z m 2.85171,0 0.6518,0 -0.082,0.2037 -0.611,-0.1222 0.041,-0.082 z m -22.5286,0.163 0.6518,0.1629 -0.4888,0.6111 -0.3667,-0.082 0.2037,-0.6925 z m 14.9512,0.1222 0.2037,0 0.3666,0.082 -0.40741,0.2037 -0.041,0.2037 0.041,0.1222 -0.1629,0.041 -0.2037,0 0.2037,-0.6518 z m 20.0028,0.041 0.2037,0.041 -0.041,0.2037 -0.2037,-0.041 0.041,-0.2037 z m -18.82141,0.163 0.24441,0.041 -0.041,0.2037 -0.2851,0.041 0.082,-0.2852 z m 6.19231,0 0.2852,0.041 -0.041,0.082 -0.2444,-0.082 0,-0.041 z m 6.1516,0.2037 0.6518,0.1222 0.2852,0.8555 c 0.027,0.314 0.036,0.6162 -0.041,0.937 l -0.20371,-0.082 0.16291,-0.4481 -0.5703,-0.1223 -0.041,0.2037 0.32591,0.8148 -0.32591,0.1222 c -0.1051,0.333 -0.023,0.6072 0.28521,0.7741 -0.041,0.1099 -0.074,0.22 -0.12221,0.3259 l -0.2445,0.082 0.12221,-0.4074 -0.5703,-0.1222 -0.24441,1.7517 c -0.1708,0.1744 -0.368,0.3713 -0.57039,0.5296 l 0.2037,-0.2851 c 0.09,-0.6138 -0.12649,-0.9904 -0.61109,-1.1 l 0.1222,-0.4074 0.61109,0.1223 0.12221,-0.2852 -0.32591,-0.2852 0.44821,-0.1222 0,-1.1814 0.52959,-1.7925 z m -27.3765,0.041 0.81471,0.4073 -0.32591,1.1 -0.28511,-0.082 -0.3259,-1.0185 0.1222,-0.4074 z m 2.485,0.041 0.5704,0.1222 -0.081,0.2037 -0.5296,-0.1223 0.041,-0.2036 z m 32.02081,0.1222 0.2852,0.041 -0.2037,0.6925 -0.28521,-0.041 0.20371,-0.6925 z m -23.3026,0.041 0.2037,0 0,0.2037 -0.2445,-0.041 0.041,-0.163 z m 10.1439,0 0,0.082 -0.041,0 0.041,-0.082 z m 11.8143,0.2851 -0.36659,1.3444 -0.041,0 0.4073,-1.3444 z m -11.48839,0.082 0.2445,0.082 -0.082,0.2037 -0.2852,0.1223 0.1222,-0.4074 z m 10.307,0 0.041,0 c 0.027,0.1988 0.01,0.4181 -0.041,0.6519 l -0.163,-0.041 0.163,-0.6111 z m 1.5888,0 0.1222,0.041 0,0.2037 -0.1629,-0.041 0.041,-0.2037 z m -16.33631,0.1223 0.163,0 -0.4482,0.4481 -0.2037,0 0.48889,-0.4481 z m 3.1369,0 0.2852,0 -0.082,0.4481 -0.3259,0 0.1222,-0.4481 z m -22.4471,0.2037 0.082,0.1222 -0.041,0.082 c -0.011,-0.069 -0.041,-0.1361 -0.041,-0.2037 z m 20.1657,0 0.5296,0 0.082,0.081 -0.082,0.3259 -0.6111,-0.1222 0.081,-0.2852 z m -18.90279,0.081 0.2037,0.041 0,0.2444 c -0.066,-0.097 -0.13829,-0.184 -0.2037,-0.2852 z m 10.71429,0.2037 -0.082,0.2851 -0.041,0.082 -0.041,0.1222 -0.1629,-0.2037 0.3259,-0.2851 z m 19.7176,0 0.2037,0.041 -0.082,0.1629 c -0.028,-0.054 -0.092,-0.1467 -0.1222,-0.2037 z m -4.1553,0.041 0.611,0.1222 -0.082,0.2444 -0.611,-0.163 0.082,-0.2036 z m 7.94399,0 0.163,0.041 -0.2852,0.9777 -0.1222,-0.041 0.2444,-0.9777 z m -29.4542,0.082 1.22221,0.082 -0.20371,0.611 -1.26289,0 0.2444,-0.6925 z m 10.9181,0.041 0.6518,0 0,0.2037 -0.1222,0 -0.6111,-0.163 c 0.029,-0.014 0.051,-0.027 0.081,-0.041 z m 14.2993,0.082 0.28521,0.4073 -0.28521,0.4482 -0.2444,-0.041 0.2444,-0.8148 z m 1.14071,0.3259 0.1222,0.611 -0.28521,-0.082 0.16301,-0.5296 z m 4.15539,0.041 0.12221,0 c -0.064,0.2039 -0.057,0.392 0,0.5296 l -0.041,0 -0.1222,0.4074 0.041,0.8962 -0.4074,0.4889 -0.20371,-0.041 0.32591,-1.1815 -0.44809,-0.1222 0.2444,-0.8148 0.4074,0.1223 0.082,-0.2852 z m -17.2326,0.041 0.3667,0 0,0.2851 -0.2445,0.082 -0.1222,-0.041 0,-0.3259 z m 0.774,0 0.4074,0 -0.1629,0.5703 -0.2445,-0.041 -0.082,-0.082 0.082,0 0,-0.4481 z m 2.037,0 0.40741,0 -0.1222,0.6925 c -0.146,0.1527 -0.3488,0.2497 -0.5704,0.3259 l -0.61109,-0.4481 c 0.097,0.029 0.20249,0.064 0.3259,0.082 0.4141,0 0.5704,-0.1928 0.5704,-0.6518 z m -22.44709,0.041 c 0.01,0.018 0.071,0.022 0.082,0.041 l -0.082,0 0,-0.041 z m 2.7702,0.041 0.8148,0.2037 -0.082,0.2036 -0.8148,0.082 c -0.02,-0.022 -0.021,-0.059 -0.041,-0.082 l 0.1222,-0.4073 z m 21.42871,0 0.2851,0.1629 -0.082,0.2037 -0.2851,-0.041 0.082,-0.3259 z m -2.3222,0.082 0.28521,0.082 -0.28521,0 0,-0.082 z m -14.2993,0.3666 0.48889,0.5296 -0.2037,0.6518 -0.041,0 -0.2445,-0.3259 -0.52959,-0.1222 c -0.048,0.151 -0.1391,0.2794 -0.24441,0.3667 l -0.8555,-0.2445 c -0.047,-0.2318 -0.22209,-0.4008 -0.61109,-0.4888 l 0.041,-0.2037 0.5704,0.1222 0.2036,0.2444 c 0.1053,-0.3329 0.569,-0.446 1.4259,-0.5296 z m 3.1776,0.3259 0.3667,0.4482 -0.65179,-0.1223 0.2851,-0.3259 z m 21.67309,0 0.12221,0.2037 c -0.02,0.075 -0.087,0.1637 -0.12221,0.2445 l -0.1222,-0.041 0.1222,-0.4074 z m -1.34439,0.1222 0.20371,0.3667 -0.041,0.2037 -0.2444,-0.3667 c 0.023,-0.07 0.061,-0.1319 0.082,-0.2037 z m -25.9099,0.4074 0.24441,0.041 -0.1222,0.4074 -0.24441,-0.041 0.1222,-0.4074 z m -1.5073,0.082 0.20371,0.041 -0.041,0.1222 c -0.061,-0.042 -0.10221,-0.1176 -0.163,-0.1629 z m -3.91099,0.082 c 0.1984,0.045 0.3656,0.107 0.5296,0.1222 l 0.48889,0.6111 0,-0.4888 -0.1222,-0.1223 c 0.17359,-0.011 0.33159,-0.066 0.44809,-0.1222 0.1559,0.2002 0.3052,0.4271 0.48889,0.6519 l -0.3259,0.4481 -0.1222,-0.1222 -0.082,-0.163 -0.28521,-0.041 -0.65179,0.2852 0.041,0.6111 c -0.1697,-0.1506 -0.3284,-0.3246 -0.48889,-0.4889 l 0.082,-0.2037 -0.3666,-0.082 c -0.1552,-0.1722 -0.30259,-0.3448 -0.4482,-0.5296 l 0.6518,0.1222 0.163,-0.4888 z m 11.7328,0.2445 0.4482,0 0,0.4888 -0.4482,0 0,-0.4888 z m 11.6921,0 0.1629,0 0,0.1222 -0.1629,-0.1222 z m -4.44051,0.041 0.16291,0.2851 -0.041,0.163 -0.97771,0 -0.2852,0 0,-0.041 c 0.097,0.022 0.1955,0.061 0.2852,0.041 0.1794,-0.041 0.3596,-0.1964 0.4888,-0.4074 l 0.3667,-0.041 z m -0.73329,0.041 0,0.041 -0.5296,0 0.5296,-0.041 z m 2.19989,0.041 c 0.1,0.077 0.15689,0.2268 0.1629,0.3666 l -0.69259,0 0.163,-0.2852 0.3667,-0.082 z m 17.11031,0.041 0.1629,0.041 -0.041,0.1629 -0.1629,-0.082 0.041,-0.1222 z m -21.14351,0.041 0.12221,0 c 0.1262,0.063 0.21979,0.1547 0.2445,0.2851 l -0.36671,0 0,-0.2851 z m 11.6921,0.4481 0.5296,0.1222 -0.082,0.2444 -0.5296,-0.1222 0.082,-0.2444 z m -13.0365,0.082 0.163,0.1222 -0.082,0.2037 -0.082,-0.041 0,-0.2852 z m -4.1146,0.082 0.2444,0.041 0.1222,0.082 0.16301,0 -0.082,0.2444 -0.3666,0.2037 -0.1223,0.041 0,-0.082 0.1223,0.041 0.041,-0.2037 -0.1223,-0.2851 0,-0.082 z m 25.4211,0.041 0.1222,0.4481 -0.1222,0.2852 0,-0.7333 z m -16.1734,0.163 -0.041,0.2036 -0.041,0.4889 -0.937,-0.1222 -0.081,-0.082 0.77409,-0.3667 -0.3667,-0.082 0.6926,-0.041 z m -3.50351,0.041 -0.041,0.1222 -0.28521,-0.082 0.32591,-0.041 z m 4.7664,0 0.44821,0.082 0,0.041 0,0.2036 c -0.19051,0 -0.299,0.048 -0.40741,0.1223 l -0.041,-0.4482 z m -2.5665,0.041 -0.1222,0.4481 -0.6111,-0.082 -0.2445,-0.2445 -0.082,0.2037 -0.28511,-0.041 0.082,-0.2444 0.082,0 0.2037,0.082 -0.041,-0.082 0.2851,0 0.7333,-0.041 z m 3.78869,0 0.12221,0.041 -0.12221,0 0,-0.041 z m -15.2771,0.041 0.163,0.2444 0.28511,0 0.163,-0.1222 0.2852,0.2851 -0.3259,0.3667 c -0.7619,0.018 -1.1994,0.1247 -1.2629,0.3259 l -0.082,0.2037 0.28511,0.082 0.5296,0 -0.24441,0.2852 c -0.3067,0 -0.7246,-0.1575 -1.1814,-0.3667 l 0.1222,-0.3259 -0.36671,-0.082 -0.3259,0.163 c -0.3253,-0.1839 -0.6735,-0.4253 -1.0592,-0.6926 0.52999,0.1199 0.94079,0.021 1.2222,-0.2852 0.452,0.097 0.8964,0.163 1.3851,0.163 l 0.082,0 0.163,0.041 0.041,-0.163 0.12221,-0.1222 z m 1.91471,0.082 c 0.012,0.2781 0.1751,0.4716 0.61109,0.5703 l -0.041,0.1222 -0.16291,0.082 c -0.4016,-0.033 -0.77869,-0.07 -1.1,-0.082 0.1876,-0.1742 0.4654,-0.4655 0.6926,-0.6925 z m 25.17669,0 0.12221,0.041 -0.24451,1.0184 -0.1222,-0.041 0.2445,-1.0185 z m -10.9588,0.082 0.24441,0.082 -0.082,0.2851 -0.16291,0 0,-0.3666 z m -20.81759,0.1222 c 0.2965,0.3446 0.63239,0.7122 0.9778,1.0999 l -0.7333,-0.1629 c -0.294,-0.2508 -0.5828,-0.5253 -0.8555,-0.8148 l 0.611,-0.1222 z m -1.05921,0.2444 0.44821,0.7333 -0.32591,0 c -0.2314,-0.1353 -0.4738,-0.2499 -0.69259,-0.4074 0.047,-0.067 0.091,-0.1468 0.1222,-0.2444 l 0.44809,-0.082 z m 23.2212,0.163 0.5703,0.1222 0,1.1814 -0.4481,0.1222 -0.5296,-0.1222 0.40741,-1.3036 z m 11.2847,0.1222 -0.2037,0.4074 0.082,-0.3259 0.1222,-0.082 z m -16.2956,0.1222 0.2444,0 0,0.082 -0.2444,-0.041 0,-0.041 z m -19.67691,0.1222 c 0.029,0.01 0.054,0 0.082,0 l 0.082,0.082 -0.36659,0 0.2037,-0.082 z m 29.1691,0.041 -0.041,0.3667 -0.2852,-0.082 c 0.1195,-0.087 0.2148,-0.1918 0.3259,-0.2852 z m 3.8294,0 0,0.082 -0.041,0 0.041,-0.082 z m -0.9777,0.041 0.2037,0.082 c -0.072,0.065 -0.1696,0.1008 -0.2445,0.163 -0.1919,0.1594 -0.368,0.3385 -0.5703,0.4888 -0.078,-0.08 -0.1398,-0.2016 -0.2037,-0.3259 0.1573,-0.079 0.2843,-0.1614 0.4481,-0.2444 l 0.3259,0.082 0.041,-0.2037 c 0.01,0 -0.01,-0.038 0,-0.041 z m -23.5471,0.2037 -1.0999,0.5296 -0.163,0 0,-0.2037 c 0.1087,0 0.2966,-0.111 0.5296,-0.2851 l 0.7333,-0.041 z m -4.9294,0.1222 c 0.1297,0.1454 0.2302,0.2561 0.3667,0.4074 l 0,0.2037 c -0.065,-0.042 -0.139,-0.078 -0.2037,-0.1222 l 0.041,-0.082 -0.163,-0.041 c -0.08,-0.056 -0.166,-0.1047 -0.2444,-0.163 l 0.1629,-0.041 0.041,-0.1629 z m 10.0218,0.082 0.3666,0.2445 -0.082,0.082 -0.2037,0 c 0,-0.1207 -0.037,-0.2282 -0.082,-0.3259 z m -2.037,0.3259 0.6519,0 0,0.2037 -0.6519,0 0,-0.2037 z m 6.6405,0 0.4074,0 0,0.082 -0.2445,0.1223 -0.1629,0 0,-0.2037 z m -3.0962,0.1223 0.4074,0.082 -0.4074,0 0,-0.082 z m 5.8257,0 0.2444,0.041 0.2444,0.2851 0.082,0 0,0.4074 c -0.3615,0.031 -0.7579,0.061 -1.1406,0.082 l 0.32591,-0.4888 c 0.079,0 0.1557,0 0.2444,0 l 0,-0.326 z m -6.4775,0.3259 0.6518,0 0,0.4888 -1.0185,0 0.3667,-0.4888 z m 8.1885,0.041 0.2852,0.082 -0.041,0.1222 c -0.1063,0.015 -0.2175,0.027 -0.3259,0.041 l 0.082,-0.2444 z m 9.4107,0.041 c -0.02,0.2876 -0.042,0.5616 0.041,0.774 l -0.163,0.082 -0.1222,0.4074 -0.3259,-0.4481 0.5703,-0.8148 z m -12.0587,0.041 c 0.01,0 0.03,0 0.041,0 l 0.041,0.041 -0.082,0.2444 -0.2445,-0.041 c 0.043,-0.093 0.1038,-0.1842 0.2445,-0.2444 z m -8.6367,0.1629 0.6519,0 0,0.2037 -0.6519,0.2037 0,-0.4074 z m 1.0185,0 0.4889,0 0,0.2037 -0.4889,0 0,-0.2037 z m 3.585,0 0.3667,0 -0.3667,0.4074 -0.4888,0 0.4888,-0.4074 z m -15.1548,0.2037 0.041,0 0,0.2037 -0.4482,0 0,-0.041 0.4074,-0.1629 z m 3.3406,0 0.611,0 0,0.2037 -0.611,0 0,-0.2037 z m 4.9701,0 0.6111,0 0,0.2037 -0.6111,0 0,-0.2037 z m 3.9109,0 0.6519,0 0,0.2037 -0.6519,0 0,-0.2037 z m 18.0474,0.041 0.082,0 0,0.041 -0.082,-0.041 z m -2.7295,0.082 0.041,0 -0.163,0.4889 -0.5296,-0.1222 0.041,-0.082 c 0.17551,-0.071 0.415,-0.2009 0.6111,-0.2852 z m 5.296,0 c 0.072,0.09 0.1611,0.1484 0.2444,0.2445 l 0,0.041 -0.4074,-0.082 c -0.029,-0.024 -0.055,-0.058 -0.082,-0.082 l 0.2445,-0.1223 z m -32.6318,0.2852 0.6518,0 0,0.2444 -0.6518,0 0,-0.2444 z m 2.9332,0 0.3666,0 -0.3666,0.5296 0,-0.5296 z m -3.5443,0.2444 0.4481,0 0,0.2852 -0.4481,0 0,-0.2852 z m 9.3292,0 0.6111,0 1.0184,0.2852 1.2222,-0.2852 1.30371,0 0,0.4889 -5.1739,0 0,-0.2037 1.0185,-0.2852 z m 4.522,0 4.60351,0 -0.4481,0.4889 -0.2037,-0.2037 -1.0185,0.2037 -2.4851,0 -0.4481,-0.4889 z m 5.459,0 0.5704,0 0,0.2852 -0.5704,0 0,-0.2852 z m 15.3178,0 c -0.021,0.067 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.1629 0.041,-0.041 z m -30.5134,0.2852 1.0185,0 0,0.2037 -1.0185,0 0,-0.2037 z"
+           id="path6112-3"
+           transform="matrix(0.61596339,0,0,0.61596335,-415.27667,325.5369)" />
+        <path
+           inkscape:connector-curvature="0"
+           inkscape:export-ydpi="90"
+           inkscape:export-xdpi="90"
+           inkscape:export-filename="Z:\private\général\illustrations\Charte graphique\OD\OD 5.0\aboutpage\png\aboutpage_OD5.0.png"
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:51.30051804px;line-height:125%;font-family:'karabinE.';-inkscape-font-specification:'karabinE.';text-align:start;writing-mode:lr-tb;text-anchor:start;display:inline;opacity:0.49142857;fill:#fce94f;fill-opacity:1;stroke:none;filter:url(#filter3544-0)"
+           d="m -152.38187,1050.7059 -2.5666,0.4889 0,1.3444 0.5704,-0.6111 0.6518,0 0,0.2037 -1.2222,0.4074 0,2.0777 0.2037,0 -0.2037,0.2851 0,0.8555 c -0.1242,0.1134 -0.1888,0.1893 -0.2852,0.2852 l 0,0.4889 c 0.096,-0.046 0.1848,-0.06 0.2852,-0.1222 l 0,0.7333 -0.2852,0.2444 0,8.5552 0.6111,2.2406 0.082,0.5703 c -0.028,0.081 -0.061,0.1678 -0.082,0.2445 0.066,0.049 0.108,0.1082 0.163,0.1629 l 0,0.163 -0.2445,-0.082 c -0.024,-0.01 -0.057,-10e-4 -0.082,0 0.036,-0.1267 0.062,-0.2569 0.1223,-0.3667 l -0.163,-0.6111 -0.4074,0.082 0,3.8702 c 0.014,0 0.027,0 0.041,0 l 0.2037,-0.041 0.041,-0.041 0,0.8555 c -0.09,0.2618 -0.1903,0.5021 -0.2852,0.6926 l 0,0.9777 0.2445,0.082 -0.041,0.163 -0.2037,-0.082 0,11.1217 0.1629,-1.1814 0.1222,0.041 0,1.0184 0.2037,0 0.4889,0.5297 c -0.1,0.082 -0.1897,0.1934 -0.2444,0.3666 l -0.2037,-0.2444 -0.082,0 -0.163,-0.6519 0,0.5704 -0.041,0 -0.2444,0.1222 0,0.8963 0.2852,-0.1223 0,0.326 -0.1223,-0.041 -0.1222,0.4073 0.2445,0.041 0.3666,-0.1222 0,0.2445 -0.3666,0 0,0.8555 -0.2852,0.082 0,0.2037 0.2852,-0.082 0,0.082 c 0.414,0 0.5703,-0.1422 0.5703,-0.4482 l -0.2037,-0.2036 0.5296,0 -0.1222,0.082 -0.082,0.2444 0.1222,0 0,0.082 0.2037,0.2444 0,0.2852 -1.0185,0 0,0.2444 3.3814,0 c 0.2346,-0.6383 0.5269,-0.9777 0.937,-0.9777 l 0,-0.4074 -0.5704,0 -0.2852,0.2037 -0.1629,0 -0.2444,-0.3259 0.082,-0.2444 -0.2445,0.082 -0.6518,0 -0.3259,0.1222 0,-0.041 -0.3667,-0.082 -0.2851,0.2037 -0.4482,-0.2037 0,-0.2444 1.0593,0 0,-0.2037 -0.2037,-0.2037 0,-0.2445 0.4888,0.163 -0.082,0.2037 0.5704,0.1222 0.2851,-0.041 0.6111,0.2037 -0.082,0.2444 0.2852,0.082 0.5703,-0.041 0.6519,0.2445 0,0.2037 c -0.3219,0 -0.8163,0.3865 -1.3852,1.1814 l 18.577,0 c 0.082,-0.08 0.1634,-0.1631 0.2444,-0.2445 0.2121,0.076 0.504,0.165 0.7333,0.2445 l 1.4666,0 -0.2444,-0.4074 1.1407,0.082 0.2037,0.082 -0.041,0.1629 -0.5297,0.082 0.7333,0 7.8626,0 0.041,-0.1629 c 0.061,0.031 0.1356,0.056 0.2037,0.082 l -0.041,0.082 1.3037,0 0.3666,-0.2444 -0.041,0.2444 2.5666,0 0.082,-0.2444 0.2444,0.041 -0.082,0.2037 0.4481,0 0,-1.3444 -0.082,0.2444 -0.2444,-0.041 0.1222,-0.4074 0.2037,0.082 0,-9.044 -0.1222,-0.041 0.1222,-0.5703 0,-1.7111 -0.2851,0.082 -0.041,0.2037 0.2036,0.3259 -0.611,1.1 -0.2037,-0.041 0.937,-3.5036 0,-1.5888 -0.2852,0.1222 -0.041,1.0592 -0.6518,2.3629 -0.5704,0.2852 1.1815,-4.3998 0.3666,0.5703 0,-1.3444 -0.163,-0.041 0.163,-0.5703 0,-1.8333 c -0.2597,-0.392 -0.5239,-0.7827 -0.8148,-1.1406 l 0.8148,0.041 0,-1.2222 -0.2037,0.8555 -0.2444,-0.082 0.3259,-1.1814 0.1222,0.041 0,-3.5443 -0.082,0.2852 -0.4481,-0.1222 0.5296,-2.037 0,-7.9848 -0.041,0.1222 -0.8148,0 -0.6518,-0.3666 -0.8148,0 0.041,-0.2037 -0.3259,-0.5296 0.082,-0.2852 0.2037,0.041 0.8555,0.774 0.2852,-0.1629 0.082,-0.2852 c -0.3163,-0.3876 -1.755,-1.0888 -4.3183,-2.0777 l -1.1,0 2.811,1.1814 -0.1222,0.4074 0.2851,-0.1629 0.6926,0.2037 -0.4889,0.8147 -0.2037,-0.041 -0.1629,-0.2851 -0.2444,-0.041 -0.3667,0.1222 0.1222,-0.4074 0.3667,-0.1629 0,-0.041 -0.2445,-0.2852 -0.2444,-0.082 -0.2852,0.2037 -0.2444,-0.041 -0.6926,-0.4889 -0.5703,0.3667 -1.5481,-1.2629 -1.8332,0 -0.082,0.3259 -0.2445,-0.041 0.082,-0.2852 -3.2998,0 1.0184,1.5481 0.2037,0.041 -0.1629,0.6925 -0.4481,-0.1222 -0.082,0.2037 c 0.3276,0.088 0.5624,0.5585 0.6925,1.3851 l -0.1629,0.6926 -0.2445,-0.082 0.1223,-0.4481 -0.7333,-0.2037 -0.163,0.4481 0.4889,0.1222 -0.2445,0.8963 -0.4888,-0.1222 -0.2037,0.937 0.4481,0.1222 -0.1222,0.4074 -0.4481,-0.1223 -0.1223,0.4074 0.4482,0.1222 -0.163,0.6926 c -0.4096,-0.1095 -0.6971,0.1232 -0.937,0.6926 -0.022,0.084 -0.038,0.1751 -0.041,0.2444 l -0.2444,-0.2852 -0.2037,0.2852 c -0.01,-0.089 -0.01,-0.1889 0,-0.2852 l 0.2037,0 0,-0.2037 -0.163,-0.1629 c 0.014,-0.071 0.021,-0.1297 0.041,-0.2037 l 0.5296,0.1629 0.163,-0.6518 -0.4074,-0.6111 0.937,-1.3851 -0.2037,-0.041 0.2852,-0.1629 0.082,-0.2852 -0.2037,-1.4666 0.6518,-0.2444 -0.2444,-0.082 0.4481,-0.6111 c 0.1537,-1.0675 -0.199,-1.6848 -1.0592,-1.9148 l 0.2852,-0.1629 0.082,-0.2444 -1.5889,0 0,0.082 0.6926,0.1629 -0.937,0.7333 c 0.085,-0.3163 0.049,-0.6402 -0.041,-0.9777 l -1.5888,0 -0.2037,0.6925 -0.2444,-0.041 0.1629,-0.6518 -0.937,0 0.2445,0.4889 -0.082,0.4481 -0.3667,-0.5703 0.082,-0.3667 -0.4481,0 -0.8555,3.0962 c -0.097,-0.045 -0.1796,-0.077 -0.2852,-0.1222 l -0.041,0 -0.163,-0.2445 0.2852,-0.1222 0.082,-1.1814 0.3667,-1.4259 -0.4889,0 -0.6111,2.3629 -0.2444,0 0.6111,-2.3629 -2.6073,0 -0.041,0.163 0.4481,0.1222 -0.2852,1.0592 c -0.9988,-0.3794 -1.8221,-0.6518 -2.4443,-0.6518 -0.1476,0.3741 -0.4355,0.625 -0.774,0.774 -0.017,-0.069 -0.022,-0.1337 -0.041,-0.2037 l -0.041,-0.2037 0.5703,-0.082 0,-0.2851 c 0,-0.2009 -0.2546,-0.367 -0.774,-0.4889 l -0.041,-0.2037 -0.9778,0 c 0.001,0.014 0,0.027 0,0.041 l 0,0.2444 c -0.2787,-0.1372 -0.624,-0.216 -1.0184,-0.2851 l -1.7111,0 0,0.1629 -0.2444,0.082 -0.082,-0.2444 -0.5296,0 0.041,0.1222 -0.163,0.163 -0.081,-0.2852 -2.7295,0 -0.2037,0.9777 -0.3259,0 0,-0.4888 c 0.085,-0.1762 0.1553,-0.3575 0.2037,-0.4889 l -2.4036,0 z m 36.2576,12.8328 0,-0.937 -0.041,0.041 -0.163,0.6111 0.2037,0.2851 z m -34.3429,-12.7513 -0.2852,0.4481 -0.4888,0.082 0.082,-0.2851 0,-0.1222 0.6925,-0.1223 z m 13.4846,0.041 0.4481,0.1222 -0.041,0.2445 -0.4481,-0.1223 0.041,-0.2444 z m -16.2956,0.3667 0,0.4888 -0.4481,0 0.4481,-0.4888 z m 7.8219,0 0.082,0.041 0.2037,0.8962 c -0.2225,-0.02 -0.4372,-0.045 -0.6111,-0.082 l 0.2037,-0.6518 -0.041,-0.163 0.1629,-0.041 z m 1.4666,0 0.4074,0.4888 -0.4074,0 0,-0.4888 z m -2.5666,0.1629 0.082,0.2852 -0.1222,0.041 c -0.071,-0.079 -0.082,-0.1896 -0.082,-0.2852 l 0.1222,-0.041 z m -6.1515,0.041 0.4481,0 0,0.2852 -0.4481,0 0,-0.2852 z m 5.2145,0 0.2037,0 0,0.2852 -0.2037,0 0,-0.2852 z m -2.9739,0.2852 c 0,-0.01 0.038,0 0.041,0 l 0,0.2444 -0.163,0 c 0.038,-0.069 0.088,-0.1795 0.1223,-0.2444 z m 13.0364,0 0.2037,0.081 -0.1629,0.6518 -0.3259,-0.5703 0.2851,-0.163 z m 11.8143,0.041 0.4481,0.1222 -0.1222,0.4889 -0.4889,-0.1223 0.163,-0.4888 z m -5.8257,0.1629 0.2445,0.041 -0.163,1.5888 -0.2852,0.163 -0.1222,0.4889 -0.5296,2.5258 -0.6518,-0.6518 1.1,-2.6481 -0.2445,-0.2851 0.082,-0.2037 0.5704,-1.0185 z m 0.9778,0.041 0.5703,0.1222 -0.2852,0.163 -0.082,0.2037 -0.774,3.8702 -0.2852,0.1629 -0.082,1.1407 -0.2037,0.7741 -0.5703,0 0.1629,-0.5704 c 0.245,-0.096 0.4482,-0.2129 0.4482,-0.3666 l -0.2852,-0.2852 1.3851,-5.2146 z m -17.7214,0.2037 0.2444,0 0.041,0.163 -0.082,0.041 -0.1222,0 -0.082,-0.2037 z m 14.5437,0.1222 0.2037,0.041 -0.082,0.4482 -0.2444,-0.082 0.1222,-0.4074 z m 12.6291,0.041 0.2037,0.082 -0.082,0.4074 -0.2444,-0.082 0.1222,-0.4074 z m -29.8209,0.041 0.6519,0 0,0.2037 -0.6519,0 0,-0.2037 z m -2.0776,0.2037 1.0592,0 c -0.029,0.098 -0.082,0.1887 -0.1222,0.2852 l -0.937,0 0,-0.2852 z m 11.855,0 0,0.5296 -0.4889,0 0.4889,-0.5296 z m 24.3618,0.163 c -0.074,0.2764 0.1417,0.5131 0.5704,0.6518 l 0,-0.5296 -0.5704,-0.1222 z m -6.0701,0.3259 0.4481,0.1222 -0.3666,1.3037 -0.4481,-0.1223 0,-1.1814 0.3666,-0.1222 z m -17.0696,0.4481 0,0.4889 -0.2037,0 -1.6703,0.2444 c 0.035,-0.1864 0.074,-0.3749 0.082,-0.5703 l 1.7926,-0.163 z m 0.3667,0 0.6518,0.2037 0,0.2852 -0.8555,0 0.2037,-0.2852 0,-0.2037 z m 1.0185,0 0.041,0 0.2851,0.4482 -0.041,0.041 -0.2851,0 0,-0.4889 z m 1.8332,0 -0.082,0.3259 -0.2852,0.041 0.1223,-0.3259 c 0.073,-0.01 0.1596,-0.036 0.2444,-0.041 z m 10.2662,0 0.6518,0.3667 -0.082,0.2037 -0.4481,0.8555 c -0.076,0.6131 0.1199,0.9904 0.5296,1.0999 l -0.1222,0.4074 -0.5296,-0.1222 -0.082,0.2852 0.2444,0.2852 -0.3666,0.1222 0.041,1.1814 -0.4889,1.7925 -0.5296,-0.1222 -0.4074,-1.3037 0.1222,-0.4888 0.2444,0.041 -0.1222,0.4888 0.4482,0.1223 0.041,-0.2037 -0.2852,-0.8148 0.2852,-0.1222 c 0.1185,-0.4435 -0.079,-0.7649 -0.5704,-0.8963 l 0.6518,-0.2852 -0.1222,0.4074 0.4889,0.1223 0.3666,-3.2184 0.041,-0.2037 z m -20.4916,0.1222 0.2444,0.041 0.1222,0.4889 -0.3259,-0.082 0,-0.3666 -0.041,-0.082 z m -7.7404,0.082 0.4481,0 -0.4481,0.5296 0,-0.5296 z m 1.3036,0 0.8148,0 c -0.013,0.016 -0.028,0.025 -0.041,0.041 -0.2572,0.2055 -0.3429,0.3041 -0.5704,0.4889 l -0.2037,-0.2444 0,-0.2852 z m 1.3037,0 0.3666,0 0.4074,0 0,0.2037 -0.082,-0.082 -0.4889,0.1222 0,0.2445 -0.082,0.041 -0.2037,-0.2444 -0.082,0 0.163,-0.2852 z m 1.1406,0 0.6111,0 -0.041,0.2852 -0.5703,0 0,-0.2852 z m 7.2923,0 0.6518,0 -0.082,0.2445 0.1222,0.4481 -0.2851,0.041 -0.4074,-0.6518 0,-0.082 z m 1.2629,0 0.2037,0 0.082,0.2445 -0.2037,0.041 -0.082,-0.2852 z m 21.1435,0 0.8148,0 0.2444,0.041 -0.082,0.2037 -1.1,0.163 0.1223,-0.4074 z m -12.9142,0.082 0.2036,0.082 -0.082,0.4074 -0.2444,-0.082 0.1222,-0.4074 z m 5.2553,0 -0.081,0.2037 0.4888,0.1223 0.041,-0.2037 -0.4481,-0.1223 z m 10.1439,0.3667 0.4889,0.1222 0.4074,0.5704 -0.6518,0.3259 0.2852,0.082 -0.6111,1.0184 c -0.3277,-0.088 -0.363,-0.3713 -0.2445,-0.8147 l 0.2852,-0.163 0.041,-0.2037 0,-0.937 z m -1.3851,0.2852 0.2445,0.082 0.041,0.7333 -0.4482,-0.1223 0.163,-0.6925 z m -25.5025,0.041 0,0.4074 -0.2852,0 -0.082,-0.326 0.3667,-0.082 z m 23.9137,0.041 0.2444,0.082 -0.1222,0.4074 -0.2037,-0.041 0.082,-0.4482 z m -24.7285,0.082 0.082,0.2851 -0.2444,0 0,-0.2444 0.1629,-0.041 z m -8.2292,0.041 1.0184,0 c -0.1009,0.084 -0.1917,0.1658 -0.2851,0.2444 l -0.7333,0 0,-0.2444 z m 2.0776,0 0.4482,0 0,0.2444 -0.6111,0 0.1629,-0.2444 z m 7.8626,0 0,0.2444 -0.2036,0 -0.041,-0.163 0.2444,-0.082 z m 3.748,0 0.4074,0 0,0.2444 -0.4074,0 0,-0.2444 z m 1.0592,0 0.8148,0 0,0.2444 -0.8148,0 0,-0.2444 z m 22.3657,0.041 0.4481,0.1222 0.2852,0.2852 0.082,-0.4074 0.2444,0.041 -0.1222,0.4481 -0.2037,-0.082 0.163,0.2852 -0.1223,0.4888 c -0.3277,-0.088 -0.616,0.1421 -0.774,0.7333 l -0.3666,-0.611 0.3666,-1.3037 z m -31.0023,0.041 0.2852,0.2037 -0.2037,0.082 -0.082,-0.2852 z m -4.7257,0.082 0.041,0.082 -0.1222,0 c 0.027,-0.031 0.054,-0.05 0.082,-0.082 z m 31.98,0.041 0.5296,0.1629 -0.041,0.2037 -0.5296,-0.1222 0.041,-0.2444 z m -20.4917,0.041 0.3667,0 0,0.2851 -0.3667,0 0,-0.2851 z m 3.5443,0 0.2037,0 c 0.2933,0.1 0.5027,0.2543 0.6518,0.4888 l -0.081,0.1222 c 0.049,0.098 0.1129,0.1885 0.163,0.2852 l -0.3666,0 0,0.2444 0.5296,0.082 c 0.074,0.1379 0.1679,0.2724 0.2444,0.4074 l -1.7925,0 0,-0.2037 c 0.5521,10e-5 0.8148,-0.2235 0.8148,-0.5296 l -0.3667,-0.4074 0,-0.4888 z m -9.2884,0.041 0.1222,0.4481 -0.2037,0.041 -0.082,-0.3259 0.1629,-0.163 z m -3.5036,0.082 0.082,0.4481 -0.4481,0.1222 -0.041,-0.1629 0.3259,-0.041 0,-0.326 0.082,-0.041 z m 1.6296,0.041 c 0.2851,1.0667 0.7124,1.5431 1.3036,1.3851 l 0.082,0.1629 -0.1629,0.2445 -0.2445,-0.1222 c -0.5964,0.7308 -0.8708,1.4517 -0.6925,2.1184 l -0.8555,-0.6518 0.611,-0.163 -0.1222,-0.4074 c -0.3695,0.099 -0.5984,-0.098 -0.8148,-0.6111 l 0.9778,-0.7333 -0.4482,-0.937 -0.041,-0.1629 0.4074,-0.1222 z m 23.5878,0.2444 0.4481,0.1222 -0.082,0.2444 -0.4481,-0.1222 0.082,-0.2444 z m -14.9512,0.082 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 4.6035,0 0,0.082 -0.041,0.163 -0.2037,-0.041 0.2445,-0.2037 z m -10.5514,0.041 c 0.1566,0.1293 0.3292,0.2463 0.5704,0.3666 l 0,-0.1629 0.082,0.3666 0,0.082 -0.4481,0.1223 -0.2037,-0.7741 z m 23.2212,0.041 0.4481,0.1222 0,0.9777 -0.2851,0.1223 -0.041,0.2037 -0.163,1.4666 -0.4074,0.5703 0.2037,0.2444 -0.3259,0.2037 0.3666,0.5704 -0.2851,0.1222 -0.2445,-0.041 -0.041,1.1407 -0.3259,1.1407 -0.4481,-0.163 -0.2037,0.6926 c 0.013,0.024 0.029,0.057 0.041,0.082 l -0.1222,0.082 0.1629,0.041 c 0.083,0.2037 0.1422,0.4408 0.163,0.6925 l -0.041,0.2037 -0.163,-0.2444 -0.2851,-0.082 -0.041,0.041 0.2444,-1.5481 0.774,-2.8517 0.4482,-0.8148 -0.2852,-1.0592 0.5296,0.163 0.3259,-2.0777 z m -28.4357,0.041 -0.041,0.4481 -0.2852,0.082 -0.2852,-0.1629 -0.2037,0.082 0.3667,0.4888 -0.4889,0.6111 -0.3259,-0.4888 c 0.071,-0.017 0.1278,-0.041 0.2037,-0.041 l 0,-0.4889 -0.163,0 -0.2037,0.2852 -0.2037,0 0.3667,-0.6111 1.2629,-0.2037 z m 4.8072,0 0.1629,0.6518 -0.2037,0.041 -0.2037,-0.6111 0.2445,-0.082 z m -7.0886,0.2852 0.2037,0 0,0.2851 -0.2037,0.2445 -0.2444,0 0,-0.3259 c 0.078,-0.065 0.1633,-0.1301 0.2444,-0.2037 z m 32.5911,0.4074 1.5073,1.3443 -0.1222,0.4482 -0.5296,-0.163 -0.4889,1.7925 -0.2037,-0.041 0.4074,-2.4851 -0.2851,0.1223 -0.326,-0.082 0.041,-0.937 z m 4.4813,0 0.774,0 -0.1222,0.4073 -0.6926,-0.2037 0.041,-0.2036 z m -27.4173,0.1222 0.041,0 0.2037,0.2037 -0.163,0.041 -0.082,-0.2445 z m 3.4221,0 0.5703,0 0,0.2037 -0.5703,0 0,-0.2037 z m 5.4997,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.1629 c -0.014,0.06 -0.024,0.099 -0.041,0.163 l 0.4074,0.1222 c -0.1394,0.1292 -0.3455,0.163 -0.6518,0.163 l -0.2037,0 0,-0.2037 0.4889,-0.2445 z m -4.6442,0.041 0.6518,0.2037 0,0.4481 c -0.414,0 -0.6518,0.1829 -0.6518,0.4889 l -0.163,0 c 0,-0.4589 -0.1313,-0.7332 -0.4074,-0.7333 l 0,-0.2037 0.5704,-0.2037 z m 11.4476,0.041 0.3259,0.6111 -0.041,0.2037 -0.3259,-0.6111 0.041,-0.2037 z m -18.088,0.041 0.5703,0.2852 0.6518,2.3628 0,0.082 -0.3666,-0.5296 -0.2037,0 0.5703,0.8556 0.041,0.6518 0.2852,0.1222 -0.3667,0.5703 -1.1814,-4.3998 z m 15.44,0 0.2444,0.041 -0.2852,1.1 -0.2444,-0.041 0.2852,-1.1 z m -7.0886,0.1222 0.5704,0.2037 0,0.2445 -0.7741,0 0.2037,-0.2445 0,-0.2037 z m -9.2884,0.2037 0.4888,0.4889 0.041,0.163 -0.4888,0.1222 -0.163,-0.6518 0.1222,-0.1223 z m 1.9962,0.1223 0.3259,0.3259 0,0.082 0.082,0.041 0.2037,0.2444 -0.163,0.163 0.6518,2.3628 -0.2851,-0.1629 -0.8148,-3.0555 z m -7.8219,0.082 0.082,0.3666 -0.2037,0.041 -0.082,-0.3666 0.2037,-0.041 z m 2.4443,0.2037 -0.082,0.611 0.082,0.2445 0.2445,0.1629 c -0.776,0.2075 -1.0756,0.7481 -0.937,1.7111 l 0.3666,0.5703 -0.2037,0.041 0.5704,0.2444 -0.163,1.3037 0.082,0.2852 0.2445,0.1222 -0.2037,0.041 0.5703,0.8555 c -0.1409,0.1125 -0.2864,0.2395 -0.4481,0.4074 l -0.082,-0.2037 -0.4074,0.1222 -0.082,-0.3666 0.4074,-0.1223 -0.2037,-0.8147 -0.4481,0.1222 -0.2037,-0.8148 0.4073,-0.1222 -0.1222,-0.4481 -0.6518,0.2036 0.082,0.4482 -0.2037,0.041 -0.1629,-0.6111 c 0.1174,-0.7457 0.3562,-1.1839 0.6518,-1.2629 l -0.082,-0.163 -0.4074,0.082 -0.163,-0.611 0.2037,-0.041 1.3444,-2.037 z m 31.3282,0.2036 0.2445,0.041 0.2444,0.2852 0.2852,-0.1222 0.6925,0.163 0.4482,2.2813 -0.041,0.2037 0.2851,0.082 0.2852,-0.1222 0.2444,0.041 -0.6925,2.648 c -0.6159,-0.3229 -0.8482,-0.9056 -0.6111,-1.7925 l -0.2037,-0.082 0.2852,-0.1222 0.1222,-0.4889 0.082,-1.1814 -0.5704,-0.1222 -0.6925,2.6888 0.2444,0.2851 -0.3666,0.1223 -0.041,0.2036 0.2037,2.1999 -0.8148,0 c -0.1161,0.5674 -0.1894,1.0843 -0.2445,1.5074 -0.1694,0.1075 -0.2848,0.3972 -0.4073,0.8555 l -0.326,0.1222 -0.4481,-0.1222 -0.1629,-0.937 0.5703,-0.4889 0,-0.1222 c 0.055,0.088 0.1486,0.1672 0.2852,0.2037 l 0.2037,0.041 0.082,-0.2037 0.2444,-1.874 0.3666,-0.5296 0.7333,-3.6257 0.2445,-0.8963 -0.4481,-0.1222 -0.3667,1.3444 -0.3666,0.1222 0.2444,0.2852 -0.1222,0.4888 -0.5296,-0.1629 0.8147,-3.0962 z m -9.207,0.1223 0.2037,0.041 -0.2444,0.8962 -0.2852,0.163 -0.2037,-0.082 0.5296,-1.0185 z m 6.0701,0 0.2037,0.041 -0.082,0.4074 -0.2444,-0.041 0.1222,-0.4074 z m -24.9729,0.082 0.2037,0.8147 -0.2037,0.041 -0.2444,-0.774 0.2444,-0.082 z m -6.7219,0.041 0.041,0 0.1222,0.4481 -0.2037,0.041 -0.041,-0.1222 c 0.028,-0.1062 0.05,-0.2305 0.082,-0.3259 0,-0.013 0,-0.028 0,-0.041 z m 34.2614,0.041 0.2444,0.041 -0.2037,0.6925 -0.2037,-0.041 0.163,-0.6925 z m -26.5618,0.041 0.1223,0.4481 -0.326,0.4889 -0.082,-0.3667 0.2852,-0.5703 z m 13.892,0.082 0,0.041 -0.3259,0.2037 -0.2037,-0.041 c 0.011,-0.041 -0.01,-0.084 0,-0.1223 0.1891,-0.018 0.3782,-0.056 0.5296,-0.082 z m -11.7328,0.2444 0.1222,0.1222 -0.2037,0.082 -0.041,-0.1629 0.1222,-0.041 z m 27.1321,0.1222 0.774,0.2037 -0.041,0.2444 -0.774,-0.2037 0.041,-0.2444 z m -8.7181,0.041 0.5703,0.163 -0.082,0.2037 -0.5296,-0.1223 0.041,-0.2444 z m -15.4808,0.041 0,0.6111 0.4481,0 c 0,0.3378 0.036,0.6266 0.1222,0.8148 -0.2101,0.043 -0.4005,0.095 -0.5703,0.1629 l 0,-0.041 -0.3667,-0.4074 -0.6518,0.2037 c 0,-0.1101 -0.034,-0.2077 -0.082,-0.2851 l -0.2444,-0.8963 1.3444,-0.163 z m 2.8925,0 0.2851,0.2037 0.2037,0 1.874,-0.2037 0,0.2037 -0.2852,0.6518 c 0.3993,-0.2212 0.701,-0.4734 0.8148,-0.774 0.071,0.093 0.1313,0.1937 0.2037,0.2852 l -0.3666,0.041 0,0.4481 0.4073,0 0.2445,0.2852 0.1629,-0.2445 c 0.093,0.1068 0.1891,0.2221 0.2852,0.3259 l 0.041,0.163 -0.2037,-0.2037 -0.2444,0.1222 0.041,0.6926 -0.2444,0.1222 -0.082,0.1629 -0.6519,-0.1222 c -0.065,-0.1287 -0.1069,-0.2443 -0.1222,-0.3666 l 0.3259,0 0.3667,0.082 0.041,-0.2037 -0.2852,-0.5296 c -0.2712,-0.072 -0.5058,-0.065 -0.7333,-0.082 l -0.2037,-0.2037 -0.082,0.1629 c -0.064,0 -0.1436,-0.01 -0.2037,0 l -0.5296,-0.611 -1.0592,0.2037 -0.774,-0.2037 -0.4482,0.4481 -0.1629,-0.2444 0,-0.2037 c 0.2415,0 0.4326,0.016 0.6111,0 0.5353,-0.049 0.774,-0.1779 0.774,-0.4074 z m 16.2955,0 0.2444,0.082 -0.2444,0.8963 -0.2444,-0.082 0.2444,-0.8963 z m -19.962,0.4074 0,0.4481 0.4073,0 0,-0.4481 -0.4073,0 z m -1.5481,0.082 0.2444,0.2852 -0.2037,0.3666 -0.1629,-0.5296 0,-0.082 0.1222,-0.041 z m -10.5106,0.1222 0.041,0.3259 -0.163,0.041 0.1222,-0.3666 z m 21.836,0 0.1629,0 0,0.2445 -0.1629,0 0,-0.2445 z m -16.6622,0.041 0.5296,0.937 0.041,0.163 -0.2037,0.2851 0.774,1.8333 -0.5296,0.3259 -0.2851,-1.5073 -0.1223,-0.4482 -0.2444,-0.1222 -0.1629,-1.4258 0.2037,-0.041 z m -0.8963,0.041 1.1407,4.2369 -0.3259,-0.082 0,-0.082 -0.2852,-0.163 -0.6925,-3.4628 -0.041,-0.2037 -0.2852,-0.1222 0.4889,-0.1222 z m 19.8806,0.082 0.2444,0.082 -0.1222,0.4074 -0.2037,-0.041 0.082,-0.4481 z m -7.7811,0.082 0.6518,0 0,0.2037 c -0.1266,0.036 -0.2233,0.098 -0.3259,0.163 l -0.3259,-0.082 0,-0.2852 z m -9.207,0.1222 0.1222,0.3667 -0.2037,0.041 -0.1222,-0.3667 0.2037,-0.041 z m 15.1141,0.041 0,0.1223 -0.082,0 0.082,-0.1223 z m 9.981,0.2445 0.2445,0.041 -0.163,0.4888 -0.2037,-0.041 0.1222,-0.4888 z m 5.2553,0 0.2445,0.041 -0.163,0.4888 -0.2037,-0.041 0.1222,-0.4888 z m -22.8137,0.082 0.3666,0 c -0.096,0.1753 -0.2074,0.2729 -0.3666,0.2851 l 0,-0.2851 z m 7.1293,0 0.1629,0 0,0.2037 -0.1629,0 0,-0.2037 z m -1.5074,0.041 0.2852,0.082 -0.2852,0 0,-0.082 z m 4.7258,0.082 0.3259,0.6111 -0.1222,0.4073 -0.4482,-0.1222 0.2445,-0.8962 z m 1.0184,0.2851 0.2037,0.041 c -0.079,0.2957 0.1603,0.5612 0.6518,0.6926 l -0.2444,0.8963 c -0.1373,-0.1603 -0.2848,-0.29 -0.4481,-0.4074 l 0.041,-0.2037 -0.4481,-0.1222 0.2444,-0.8963 z m -5.8664,0.041 0.1222,0 0.082,0.041 -0.1222,0.4482 -0.1629,-0.082 0.082,-0.4074 z m 3.3814,0 0.5703,0 -0.082,0.2037 -0.2444,0 c -0.089,-0.065 -0.1748,-0.1266 -0.2445,-0.2037 z m -7.4145,0.1223 c -0.014,0.04 -0.029,0.079 -0.041,0.1222 l -0.1222,-0.041 0.1629,-0.081 z m -15.603,0.1629 0.082,0.163 0.3259,2.9332 0.4074,-0.1222 -0.1222,-0.3667 0.6111,0.2444 c -0.4434,0.1186 -0.6365,0.4148 -0.5296,0.8148 l 0.2444,0.1222 -0.2444,0.7333 0.041,0.2037 0.4481,-0.1222 -0.1222,-0.4481 0.2037,-0.041 0.1222,0.4481 -0.3667,1.1407 -0.3666,-0.082 c -0.056,0.071 -0.069,0.1343 -0.1222,0.2037 l -0.4482,-1.5888 0.041,-1.1 -0.3259,-0.081 0.2037,-0.2852 -0.041,-0.2444 -0.4888,0.1222 -0.082,-0.1629 0,-0.082 0,-0.163 c 0.3323,-0.117 0.5134,-0.4115 0.4481,-0.937 l -0.4481,-0.774 -0.041,-0.163 0.5703,-0.3666 z m 31.1652,0 0.5296,0.1222 -0.2037,0.6926 -0.5296,-0.1222 0.2037,-0.6926 z m -28.9246,0.2852 -0.4074,0.082 0.041,0.2037 0.4074,-0.1222 -0.041,-0.163 z m 4.7257,0 0.1223,0.3666 -0.2037,0.041 -0.1222,-0.3666 0.2036,-0.041 z m 8.5145,0.041 0.2037,0.082 -0.2445,0 0.041,-0.082 z m 16.9066,0 0.5296,0.1222 -0.1222,0.4889 0.4481,0.1222 0.163,-0.6926 0.4481,0.5704 -0.5703,0.8147 -0.163,1.874 -0.4481,0.5296 -0.2445,-0.041 c 0.5137,-1.9215 0.411,-2.9209 -0.2444,-3.0961 l 0.2037,-0.6926 z m -20.0435,0.082 0.2037,0 -0.1222,0.4481 -0.163,0 0,-0.2037 0.082,-0.2444 z m 1.7925,0 0.2037,0 c 0.1368,0.1613 0.1865,0.3854 0.1629,0.6518 l -0.1222,0 -0.2444,-0.6518 z m -2.5666,0.1222 0.2037,0.3667 -0.2851,-0.082 0.082,-0.2852 z m 12.5476,0.163 0.2444,0.082 0.2852,0.2036 -0.1629,0.2445 c -0.1007,-0.099 -0.2134,-0.1792 -0.326,-0.2445 l -0.041,-0.2851 z m -7.17,0.1629 0.2851,0 c 0,0.072 0.024,0.1466 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.7333,0.082 0.4074,0.1222 -0.326,0 -0.082,-0.1222 z m -6.7219,0.1222 0.2036,0.082 -0.082,1.2222 -0.082,0.2037 -0.2037,-0.082 0.041,-0.4889 0.2037,0 0,-0.6518 -0.082,-0.2852 z m 14.6252,0.041 0.3259,0.082 -0.1629,0.6519 -0.2037,-0.082 -0.041,-0.5296 0.082,-0.1223 z m -15.3585,0.041 0,0.2037 -0.1223,0 0.1223,-0.2037 z m -1.4666,0.163 0.1222,0 0.1222,0.1629 0.082,0.2852 -0.3259,-0.4074 0,-0.041 z m 4.522,0.041 0.2037,0 -0.082,0.2037 -0.163,0 0.041,-0.2037 z m -5.2553,0.1629 -0.041,0.2445 c -0.1413,0.6766 -0.1365,1.0308 0.1222,1.0999 l -0.2445,0.2037 -0.082,0.163 -0.041,0.2444 -0.1222,0.041 -0.1629,-0.5703 0.4481,-0.081 c -0.206,-0.7706 -0.1475,-1.243 0.1222,-1.3444 z m 1.8739,0 0.041,0.1223 0.082,-0.082 0.163,0.6518 0,0.1222 -0.4889,0.7333 0.2852,0.082 -0.3259,0.1222 -0.081,0.2445 0.2444,0.2851 -0.082,0.163 -0.4074,0.5703 0.041,0.8555 -0.6518,1.3037 0.2444,0.2852 -0.4888,-0.163 0.3666,-1.3444 -1.1814,0.7333 0.2444,0.2852 -0.8555,0.4481 -0.082,1.0185 -0.4074,0.6926 c 0.08,-0.4995 0.011,-0.7981 -0.2037,-0.8556 l 0.2852,-0.1629 0.041,-0.2037 0.2037,-1.3037 c 0.1374,-0.1298 0.2764,-0.2714 0.4074,-0.4073 l 0.4481,0.3259 c -0.053,-0.2116 -0.1577,-0.3754 -0.2444,-0.5296 0.051,-0.055 0.1128,-0.1065 0.1629,-0.163 l 0.2445,0.041 0.082,-0.3666 0.3666,-0.163 -0.1629,-0.163 c 0.072,-0.092 0.1339,-0.1912 0.2037,-0.2851 l 0.7333,0.041 0.1629,-0.6111 -0.4074,-0.1222 c 0.071,-0.1075 0.1351,-0.2161 0.2037,-0.3259 l 0.2852,0.082 0.2852,-1.0592 c 0.1084,-0.2 0.2226,-0.4049 0.3259,-0.6111 l -0.1222,-0.163 0.041,-0.1222 z m 11.7328,0.041 0.2037,0.4074 0,0.041 -0.4888,0 c 0.012,-0.071 0.03,-0.1354 0.041,-0.2037 l 0.2444,-0.2444 z m -22.1619,0.041 0.082,0.2852 -0.082,0 0,-0.2852 z m 30.4319,0.2037 0.4889,0.1223 -0.4074,0.9369 c -0.091,-0.1361 -0.2088,-0.2648 -0.3666,-0.3666 l 0.2851,-0.6926 z m -10.8773,0.163 0.2037,0.041 -0.2037,0 0,-0.041 z m 0.9778,0.041 0.4074,0.1222 -0.041,0.163 -0.2037,0.041 -0.163,-0.2852 c 0.01,0 -0.01,-0.038 0,-0.041 z m -8.3922,0.3259 0.4074,0.082 -0.163,0.6518 -0.2852,-0.5703 0.041,-0.163 z m 23.9137,0.041 c 0.4519,0.2793 0.6049,0.7683 0.4074,1.5073 l -0.5296,1.0593 c -0.1998,1.1223 -0.2915,1.891 -0.2852,2.4036 l -0.163,-0.041 0.041,-0.7741 0.1223,-0.4889 -0.3667,-0.774 0.8963,-2.1184 -0.1223,-0.7741 z m -21.836,0.1222 0.2444,0 0,0.2037 -0.2444,0 0,-0.2037 z m 12.0994,0 0.041,0 -0.1629,0.5704 c -0.021,0.077 -0.028,0.1306 -0.041,0.2037 l -0.041,0 0.2037,-0.7741 z m -19.962,0.041 0.2037,0.041 0.1222,0.2445 -0.3667,-0.1223 0.041,-0.1629 z m -4.1147,0.2037 0.041,0.2037 -0.2851,0.5296 -0.041,-0.1629 0.2851,-0.5704 z m 3.6258,0 c 0.1218,0.056 0.2252,0.1143 0.4074,0.163 l -0.082,0.3666 -0.163,-0.2444 -0.082,-0.041 -0.082,-0.2444 z m 31.1245,0.082 0.2444,0.082 -0.1222,0.4889 -0.2444,-0.082 0.1222,-0.4889 z m -25.4618,0.082 c 0.1305,0.01 0.286,0.02 0.4481,0.041 l -0.1222,0.3667 c -0.2956,-0.079 -0.55,0.1592 -0.6926,0.6925 l -0.4481,-0.774 c 0.047,-0.1747 0.2133,-0.256 0.4889,-0.2852 l 0.3666,0 -0.041,-0.041 z m 14.0142,0 0.082,0 0.1222,0.041 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.2444 z m -8.1478,0.041 0.2852,0 -0.1223,0.5296 -0.2444,-0.082 c 0.037,-0.1539 0.063,-0.3101 0.082,-0.4481 z m 0.8555,0 0.5703,0 0,0.082 -0.3666,0.5704 0.1222,0.1629 -0.6111,-0.1629 c 0.1071,-0.1606 0.1904,-0.4143 0.2852,-0.6519 z m 1.0592,0 0.2444,0 -0.041,0.082 -0.2037,-0.041 0,-0.041 z m 2.2407,0 0.4888,0 -0.1222,0.3667 -0.2037,0.041 0,0.4481 0,0.041 -0.082,0.163 0.041,0.4481 -0.163,0.041 c -0.1808,-0.2054 -0.2426,-0.4948 -0.2036,-0.8555 0,-0.026 0,-0.055 0,-0.082 0.012,-0.083 0.016,-0.1538 0.041,-0.2445 l 0.2037,-0.3666 z m 0.8555,0 0.7333,0 0.3259,0 -0.041,0.2037 -0.2445,0 0,0.4889 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.2852 -0.4888,0.1222 -0.041,-0.5296 0.2444,-0.041 0,-0.4889 -0.2852,0.041 -0.041,-0.2444 z m -7.6997,0.082 0,0.7741 c -0.2652,-0.083 -0.4074,-0.289 -0.4074,-0.6519 0.1827,1e-4 0.3,-0.043 0.4074,-0.1222 z m 5.5405,0 0.4074,0.1222 -0.082,0.3667 -0.4481,-0.1222 0,-0.041 0.1629,-0.2037 -0.082,0 0.041,-0.1222 z m 11.9365,0 0.1222,0.6518 c -0.026,-0.012 -0.051,-0.033 -0.082,-0.041 l -0.3259,0.082 -0.041,0.2445 0,0.2851 -0.041,0.082 -0.2037,-0.041 0.041,-0.2037 0.2444,-0.3666 0.163,-0.2852 -0.4481,-0.1222 0.5703,-0.2852 z m -18.8214,0.082 c 0.092,0.016 0.1762,0.041 0.2852,0.041 l 0,0.6518 -0.2444,-0.082 -0.041,0.1223 -0.1222,0 0,0.4481 0,0.082 0.4481,0.1222 0.041,-0.2037 0.1629,0 -0.5296,0.774 -0.2444,-0.3259 -0.082,0.3667 0.2444,0.082 -0.041,0.041 0.5296,0.1222 0.082,0.2444 -0.1222,0.2037 c -0.1549,0.076 -0.2587,0.2271 -0.2851,0.4482 l -0.041,0.1222 -0.163,0 c -0.01,-0.03 0,-0.052 0,-0.082 l 0.082,-0.4482 -0.163,-0.041 c -0.084,-0.4331 -0.1523,-0.7924 -0.2444,-1.0592 l 0.4481,-1.6295 z m -7.2922,0.4481 c 0.2126,0.1197 0.3124,0.3225 0.2852,0.6111 l -0.2037,-0.1222 -0.082,-0.4889 z m 18.3325,0 0.041,0 c -0.01,0.03 -0.034,0.052 -0.041,0.082 -0.03,0.1372 -0.06,0.2832 -0.082,0.4074 -0.092,0.016 -0.1762,0.041 -0.2852,0.041 l 0,0.4889 -0.2444,0 0.082,-0.937 0.5296,0 0,-0.082 z m -12.3846,0.082 0.2851,0 0.1222,0.041 0,0.4074 -0.2036,0 0,0.2037 0.082,0.3667 c -0.1679,-0.1492 -0.2705,-0.4892 -0.2852,-1.0185 z m 25.3395,0.041 0.4482,0.1223 -0.1223,0.4073 -0.4481,-0.1222 0.1222,-0.4074 z m -33.9354,0.041 c -0.044,0.049 -0.077,0.1097 -0.1223,0.163 l -0.041,-0.1222 0.163,-0.041 z m -0.8963,0.041 0.4481,0.937 -0.2037,0.041 -0.082,-0.041 c 0.01,-0.045 0.028,-0.075 0.041,-0.1222 l -0.2444,-0.082 -0.2037,-0.6925 0.2444,-0.041 z m 17.5177,0 0.4074,0.1223 -0.082,0.2444 -0.3666,-0.2444 0.041,-0.1223 z m 0.7333,0 0.2037,0.082 -0.1222,0.4074 -0.2037,-0.041 0.1222,-0.4481 z m 7.1293,0.082 0.082,0.1223 0.2852,0.082 0.082,-0.041 -0.2037,1.3443 -0.6926,2.5259 -0.2444,0.4888 -0.082,-0.3666 0.2037,-0.2852 -0.2037,-0.2037 -0.2444,0.082 -0.163,-0.2852 0.2852,-0.1222 0.2037,0.041 0.041,-1.0592 0.2851,-0.9777 0.4074,0.082 0.1223,-0.5296 0.041,0 0,-0.082 c -0.1251,-0.2297 -0.181,-0.5084 -0.2037,-0.8148 z m 3.0554,0.041 0.2445,0.082 -0.082,0.2445 0,0.041 -0.163,0.5296 -0.2037,-0.082 0.2037,-0.8148 z m -20.2472,0.2037 0.4074,0.1223 -0.1222,0.3666 -0.2852,-0.4889 z m -10.6328,0.326 0.041,0.1629 -0.1222,0.041 0,-0.1629 0.082,-0.041 z m 5.5405,0.041 0.2037,0.082 -0.082,0.3666 0.2036,0.041 -0.2444,0.1222 -0.1222,0.4889 -0.163,-0.6111 0.2037,-0.4889 z m 27.4172,0 0.3667,0.082 c -0.05,0.1857 -0.025,0.3352 0,0.4481 l -0.3259,-0.082 c 0.053,-0.2 0.019,-0.3353 -0.041,-0.4481 z m -3.9517,0.082 0.041,0 c -0.023,0.1202 -0.051,0.2387 -0.082,0.3666 l -0.041,0 0.082,-0.3666 z m -17.314,0.041 0.2037,0.041 -0.2444,0.8147 -0.2037,-0.041 0.2444,-0.8147 z m 14.7475,0.041 c 0.1067,0.099 0.2579,0.168 0.4074,0.2444 l -0.163,0.3259 -0.1629,-0.041 -0.041,-0.041 c -0.048,-0.04 -0.1097,-0.09 -0.163,-0.1222 l 0.1222,-0.3667 z m -21.9175,0.1629 0.082,0 c 0.01,0.063 0,0.1434 0,0.2037 l -0.082,-0.2037 z m 32.4689,0 0.3259,0.5296 -0.4482,-0.1222 0.1223,-0.4074 z m -33.243,0.3667 0.041,0.1222 -0.1629,-0.041 0,-0.041 0.1222,-0.041 z m 6.7627,0.1629 0.2037,0.082 -0.7333,2.811 -0.2037,-0.082 0.7333,-2.811 z m 9.4514,0 -0.2037,0.8148 0,0.082 c -0.07,0.01 -0.1707,0.032 -0.2444,0.041 l 0.2444,-0.8963 0.2037,-0.041 z m 1.5888,0.163 c 0,0.051 0,0.1083 0,0.1629 -0.1403,0.1712 -0.5032,0.2873 -1.0184,0.4074 l 0.082,-0.2444 0.937,-0.3259 z m 8.5959,0.1222 c 0.1067,0.1844 0.2375,0.3374 0.3667,0.4889 l 0,0.1222 0.1629,0.041 c 0.068,0.069 0.1302,0.1436 0.2037,0.2037 l -0.1629,0.6518 -0.2037,-0.041 c 0.071,-0.2667 -0.1677,-0.4926 -0.6111,-0.6111 l 0.2444,-0.8555 z m 1.0185,0.041 0,0.1222 -0.082,-0.082 0.082,-0.041 z m 5.5812,0.041 0.4482,0.1222 -0.041,0.2037 -0.4889,-0.1222 0.082,-0.2037 z m -24.1989,0.041 0.1223,0.4481 0.2444,0.8963 -0.4481,0.7333 0.3259,-0.1222 0.2037,0.041 -0.1222,0.3666 -0.2037,-0.041 -0.2037,-0.2444 -0.2445,-0.082 -0.082,0.4481 -0.2444,-0.041 0.6518,-2.4036 z m -1.2221,0.082 0.2037,0.082 -0.1222,0.5296 -0.2037,-0.041 0.1222,-0.5703 z m 7.1293,0 0.2037,0.041 -0.082,0.3666 -0.2037,-0.041 0.082,-0.3666 z m 14.5438,0.041 -0.082,0.2444 0.6925,0.163 0.082,-0.2037 -0.6925,-0.2037 z m -28.6802,0.082 c 0.026,0 0.055,0 0.082,0 -0.126,0.1796 -0.3024,0.329 -0.5296,0.4481 l -0.041,-0.2037 c 0.1448,-0.1144 0.3062,-0.2067 0.4889,-0.2444 z m 13.3623,0.2037 c 0.1273,0.1138 0.2392,0.2232 0.2852,0.3259 l -0.2852,-0.082 0,-0.2444 z m -12.9549,0.2037 0.041,0 0.3259,0.1222 c 0.029,0.1064 0.051,0.1975 0.082,0.2852 l -0.2037,0.774 -0.2037,-0.041 c 0.1427,-0.5334 0.01,-0.858 -0.2852,-0.937 l -0.2037,0.082 0.041,-0.1629 0.3259,-0.082 0.082,0 0,-0.041 z m -2.5666,0.041 0.082,0.2444 -0.1222,-0.041 0.041,-0.2037 z m 13.4439,0 0.2037,0 c -0.015,0.1005 -0.023,0.219 -0.041,0.3259 l -0.163,0.1629 0,-0.4888 z m 8.5551,0 0.3667,0 -0.041,0.1629 -0.4074,-0.1222 c 0.02,-0.019 0.064,-0.021 0.082,-0.041 z m 1.0185,0 0.4074,0 0,0.2037 c -0.1951,0 -0.3609,0.036 -0.4889,0.082 l 0.082,-0.2852 z m -19.4324,0.082 0.1629,0.041 -0.082,0.3259 -0.082,-0.3667 z m 13.8104,0.1222 0,0.5296 -0.041,0.041 -0.041,0.163 -0.2444,0 0.2037,-0.6926 0.1222,-0.041 z m 0.8555,0 0.937,0 -0.041,0.1629 0,0.1223 -0.2444,0 -0.2852,-0.041 -0.082,0.041 -0.2851,0 c 0,0.015 0,0.026 0,0.041 l -0.082,-0.041 0.082,-0.2852 z m 3.0555,0.1629 -0.082,0.3667 -0.3667,0 -0.1222,-0.1222 0.041,-0.163 c 0.2044,-0.021 0.3677,-0.034 0.5296,-0.082 z m 9.044,0 c 0.6945,0.3642 0.9331,1.0148 0.6925,1.9148 l -0.4888,-0.1222 -0.163,0.5296 0.3667,0.5703 -0.8555,1.2629 0.2037,0.041 -0.2445,0.1222 -0.082,0.2852 0.163,1.3036 -0.5704,0.2445 0.2037,0.041 -0.3666,0.5703 c -0.1387,0.963 0.161,1.5036 0.937,1.7111 l -0.2445,0.1629 -0.082,0.2444 0.082,0.6111 -1.3444,-2.0369 -0.2036,-0.041 0.1629,-0.6111 0.4481,0.082 0.041,-0.163 c -0.2956,-0.079 -0.5344,-0.5172 -0.6518,-1.2629 l 0.163,-0.611 0.2037,0.041 -0.082,0.4481 0.6925,0.2037 0.082,-0.4482 -0.4074,-0.1222 0.2445,-0.8147 0.4074,0.1222 0.2036,-0.8148 -0.4073,-0.1222 0.082,-0.3667 0.4481,0.1222 0.082,-0.3666 -0.4074,-0.1222 0.163,-0.6111 c 0.3695,0.099 0.5983,-0.1382 0.8147,-0.6518 0.1069,-0.4 -0.01,-0.6148 -0.4481,-0.7333 l 0.163,-0.6111 z m -24.5248,0.041 0.4889,0.1223 -0.4074,0.5703 -0.2445,-0.082 0.163,-0.6111 z m 23.3026,0 c 0.1377,0.073 0.2979,0.1151 0.4481,0.163 l -0.1222,0.4074 -0.3259,-0.5296 0,-0.041 z m -16.7029,0.082 0.6518,0 0.2037,0.2445 0.163,0 -0.163,0.6111 -0.6111,0 -0.2444,-0.8556 z m 5.7034,0.2037 0.082,0 c -0.036,0.1613 -0.082,0.3166 -0.1222,0.4482 l -0.082,0 0.1222,-0.4482 z m 4.8887,0.041 0,0.163 -0.082,0.2444 -0.2037,0 0.041,-0.2037 0.2444,-0.2037 z m -7.7404,0.082 0.2037,0.041 -0.041,0.082 -0.2037,0 0.041,-0.1222 z m -8.6366,0.082 0.6518,0.3667 -0.2852,1.0185 -0.2037,-0.082 -0.2444,-0.937 0.082,-0.3667 z m 20.899,0 0.4889,0.1223 0.3666,1.1406 -0.1222,0.4482 -0.2037,-0.041 0.1222,-0.4482 -0.4481,-0.1222 -0.041,0.2037 0.2444,0.7333 -0.2444,0.1222 c -0.1069,0.4001 0.086,0.6963 0.5296,0.8148 l -0.5703,0.2444 0.082,-0.3666 -0.4074,-0.1222 -0.3259,2.9332 -0.082,0.1629 -0.5704,-0.3259 0.082,-0.2037 0.4074,-0.774 c 0.069,-0.5531 -0.1193,-0.879 -0.4889,-0.9777 l 0.1223,-0.3667 0.4888,0.1222 0.041,-0.2444 -0.2037,-0.2852 0.3259,-0.082 -0.041,-1.0999 0.4482,-1.5888 z m -18.9843,0.041 0.4074,0.1222 -0.041,0.2037 -0.4074,-0.1222 0.041,-0.2037 z m 11.2032,0 0.1629,0 c 0.066,0.058 0.1536,0.1174 0.2445,0.163 l -0.041,0.1222 -0.082,0.2852 -0.2852,-0.5296 0,-0.041 z m -19.9621,0.041 0.3259,0.4889 -0.2444,-0.2444 -0.2037,-0.041 0.1222,-0.2037 z m 1.1,0.082 0.1629,0.041 0,0.163 -0.1629,0.6518 -0.2037,-0.082 0.2037,-0.774 z m 31.0837,0 c 0.044,0.1029 0.088,0.1838 0.163,0.2037 l 0.2037,0.041 0,0.4482 -1.711,6.3552 -0.4889,-0.1222 0.2852,-0.1222 0.041,-0.2037 0.6925,-3.4628 0.2852,-0.1222 0.041,-1.0592 0.4889,-1.9555 z m 1.0185,0 0.2037,0.041 -0.2037,0.6519 -0.2037,-0.082 0.163,-0.5704 0.041,-0.041 z m -15.6437,0.1223 0.041,0.4481 -0.1222,0.041 -0.082,-0.3259 0.1629,-0.163 z m 12.792,0 0.2037,0.041 -0.1222,0.3666 -0.2037,-0.041 0.1222,-0.3666 z m -9.5736,0.041 c 0.1346,0.034 0.3236,0.061 0.4888,0.082 l -0.1222,0.4888 -0.4481,-0.1629 0.082,-0.4074 z m -20.9806,0.3259 0.4889,0.1222 -0.082,0.2037 -0.163,1.3851 c 0.01,-0.1844 -0.023,-0.3523 -0.082,-0.5703 l -0.2036,-0.8148 0.041,-0.3259 z m 3.2999,0.041 0.4481,0.082 c -0.1069,0.3999 -0.01,0.695 0.2852,0.774 l -0.041,0.2037 c -0.4434,-0.1185 -0.7027,-0.1037 -0.774,0.163 l -0.2037,-0.041 -0.082,-0.6111 0.3666,-0.5704 z m 16.8251,0.041 0.2852,0 -0.082,0.2444 -0.2037,0 0,-0.2444 z m -13.7697,0.1629 0.2037,0.041 -0.041,1.0592 -0.4074,-0.1222 0.2444,-0.9777 z m 20.125,0.2037 0.4481,0.163 -0.041,0.1629 -0.4888,-0.1222 0.082,-0.2037 z m 3.0962,0 0.2037,0.041 -0.4482,0.937 -0.2037,-0.041 0.2037,-0.8148 0.2445,-0.1222 z m -19.514,0.1222 0.937,0.041 -0.1222,0.5704 -0.9777,0 0.1629,-0.6111 z m 8.5959,0.163 0.2037,0 0,0.041 -0.2037,-0.041 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3629,0 0.3259,0 0,0.2037 -0.3667,0 0,-0.1222 0.041,-0.082 z m -19.5139,0.041 0.3259,0.5296 -0.2852,0.1222 -0.2037,-0.041 c 0.062,-0.2333 0.1327,-0.4344 0.163,-0.6111 z m -4.3184,0.1629 0.2037,0.041 -0.1222,0.3667 -0.2037,-0.041 0.1222,-0.3667 z m 32.306,0 0.2037,0.041 c -0.107,0.4 -0.01,0.6951 0.2851,0.7741 l -1.4258,3.5035 0.2037,0.2445 -0.041,0.2036 -0.5296,0.8963 -0.2037,-0.041 0.1629,-1.4259 0.2444,-0.1222 0.1223,-0.4481 0.6925,-3.4221 0.2852,-0.2037 z m -35.3614,0.1223 0.1222,0.8555 0.2037,0.1222 c -0.012,0.096 -0.014,0.1835 -0.041,0.2852 l 0,0.082 -0.041,-0.082 -0.2037,0.082 c 0.022,0.084 0.035,0.1372 0.041,0.2037 l -0.3666,0.1629 c -0.01,-0.043 -0.032,-0.08 -0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 0.163,-1.3444 z m 9.4514,0.041 0.6111,0.1629 -0.041,0.2037 -0.6925,0.082 0.1222,-0.4481 z m -4.8071,0.2444 0.2036,0.082 -0.1629,0.5296 -0.2037,-0.041 0.163,-0.5704 z m 28.9653,0 0.2037,0.041 -0.2852,1.0185 -0.2037,-0.082 0.2852,-0.9778 z m -20.4917,0.1222 0.3667,0.5296 -0.163,0.6111 -0.2037,-0.3259 -0.4074,-0.1222 c -0.1069,0.4 -0.412,0.5666 -0.8555,0.4481 0.107,-0.4 -0.01,-0.6555 -0.4481,-0.774 l 0.041,-0.2037 0.4074,0.1222 0.1629,0.2444 c 0.08,-0.3 0.4464,-0.4543 1.1,-0.5296 z m 10.8366,0.2037 0.1222,0 0,0.1222 -0.1222,-0.1222 z m 13.1179,0 0.8962,0.2444 -0.4481,1.7518 c -0.2955,-0.079 -0.3768,-0.5444 -0.1629,-1.3444 l -0.4482,-0.082 0.163,-0.5703 z m -6.1516,0.041 0.2852,0.5296 -0.041,0.2037 -0.2852,-0.5703 0.041,-0.163 z m -28.5579,0.082 -0.2037,1.6296 -0.8148,0.2444 0.2444,-0.8963 c 0.4491,-0.2229 0.7309,-0.5468 0.7741,-0.9777 z m 0.6925,0 0.2445,0.082 -0.082,0.3666 -0.2852,-0.082 0.1222,-0.3666 z m 21.8768,0.041 0.163,0.041 0,0.2444 -0.4074,0 0.2444,-0.2851 z m -9.5329,0.041 0.2037,0 0.163,0.2444 -0.2852,0 -0.082,0 0,-0.041 0,-0.2037 z m -6.9663,0.2444 0.4888,0.1222 -0.082,0.2445 -0.5296,0.937 -0.1629,-0.2445 -0.2037,-0.082 -0.5296,0.2852 0.041,0.6518 c -0.2956,-0.079 -0.5041,0.048 -0.6111,0.4482 l -0.163,-0.2445 -0.2037,-0.041 -0.2444,0.1222 0.2037,-1.6295 0.6111,0.1629 0.1222,-0.4073 c 0.739,0.1975 1.156,0.074 1.2629,-0.326 z m 2.8517,0.1222 0.2037,0.082 -0.082,0.3667 -0.2444,-0.041 0.1222,-0.4074 z m -7.8626,0.041 0.2037,0.082 -0.082,0.3667 -0.2445,-0.041 0.1223,-0.4074 z m 6.6404,0.041 0.2037,0.082 -0.082,0.4074 -0.2444,-0.041 0.1222,-0.4481 z m -9.2884,0.1223 0.2037,0.082 -0.2445,0.082 0.041,-0.163 z m -0.041,0.2851 0.1629,0.1222 0,0.041 -0.2037,-0.041 0.041,-0.1222 z m 15.7252,0.082 c 0,0.2066 -0.13,0.3083 -0.326,0.3667 l -0.5296,0.041 0,-0.163 0,-0.041 0.8556,-0.2037 z m 3.2591,0 c 0.013,0 0.029,-0.01 0.041,0 0.089,0.046 0.1748,0.1109 0.2037,0.2037 l -0.2445,0 0,-0.2037 z m 1.548,0 0.4074,0 0.082,0.1222 -0.2037,0.8148 c -0.045,0 -0.075,0 -0.1222,0 l 0,0.2037 -0.2037,-0.2037 -0.4074,0 -0.1629,-0.2444 0.1222,-0.4481 c 0.1892,0.051 0.3495,-0.044 0.4889,-0.2445 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.059 0,0.082 -0.099,0.3379 -0.3273,0.5986 -0.6518,0.7333 l -0.1222,-0.041 0.4481,-0.774 z m 4.4405,0 -0.041,0.2037 -0.4888,0 0,-0.1222 c 0.2001,-0.028 0.3723,-0.051 0.5296,-0.082 z m 8.8811,0 0.2037,0.041 -0.082,0.3667 -0.2037,-0.041 0.082,-0.3667 z m -26.8469,0.082 0.4074,0.1222 -0.1222,0.4482 -0.4074,-0.1222 0.1222,-0.4482 z m 9.7366,0.1222 0.1629,0 -0.1629,0.5704 0,-0.5704 z m -11.9772,0.163 -0.082,0.3666 0.4074,0.1223 0.1222,-0.3667 -0.4482,-0.1222 z m 4.9701,0.041 0.6926,0.2037 -0.1223,0.3666 0.4482,0.1223 0.1629,-0.6111 0.3259,0.3666 c -0.3477,0.1723 -0.5886,0.4468 -0.7333,0.8148 -0.062,0.026 -0.088,0.046 -0.1222,0.082 l -0.2037,-0.041 c 0.1402,-0.4439 -0.02,-0.7271 -0.4074,-0.8148 l -0.2036,-0.041 c 0.071,-0.1146 0.1184,-0.2814 0.1629,-0.4481 z m 16.9066,0 0.4074,0.1222 -0.082,0.2444 -0.4074,-0.1222 0.082,-0.2444 z m -14.4215,0.2037 0.1222,0.041 c -0.043,2e-4 -0.081,0 -0.1222,0 l 0,-0.041 z m -13.729,0.2444 0.4481,0.082 -0.082,0.2037 -0.4074,-0.1222 0.041,-0.163 z m 20.1657,0 0.163,0.082 -0.2037,0.041 0.041,-0.1222 z m -10.4699,0.041 0.163,0.2445 0.2037,0.041 c 0.1185,0.032 0.2232,0.042 0.3259,0.041 -0.1474,0.093 -0.295,0.1253 -0.4889,0.082 l -0.2037,0.6518 c 0.3877,0.088 0.6346,0.2189 0.7741,0.4481 l -0.4889,0.2444 0.4074,0.082 0.082,-0.2851 c 0.1221,0.2248 0.1522,0.5025 0.041,0.8555 l 0.6518,0.1629 -0.3666,1.1 -0.6111,-0.1222 0,2.1184 -1.3444,1.1407 0.2037,0.3259 -1.7518,2.4036 0.4481,-0.1222 0.2445,0.082 -0.1222,0.4074 -0.2852,-0.041 -0.2852,-0.326 -0.2852,-0.041 -0.1222,0.4889 -0.2851,-0.082 2.485,-7.7811 0.2445,-0.041 -0.2852,0.9777 0.6518,0.1222 0.4074,-1.3036 -0.4481,-0.082 0.041,-0.1222 -0.2037,-0.082 -0.2852,0 0.041,-0.1222 0.2852,-0.041 0.082,-0.2037 -0.2445,-0.082 0.163,-0.5704 -0.2037,-0.2851 0.082,-0.2037 0.2852,-0.082 z m 6.6812,0.041 0.2037,0.041 -0.041,0.1222 -0.163,-0.1629 z m 7.8626,0 0.041,0.163 -0.2852,-0.082 0.2445,-0.082 z m -20.0435,0.1222 0.4481,0.7741 -0.3259,0.1629 -0.163,-0.041 0.041,-0.8962 z m -0.6926,0.041 0.2037,0.041 -0.1222,0.4482 -0.2037,-0.041 0.1222,-0.4482 z m 19.8806,0.163 -0.082,0.2444 -0.2037,-0.041 0,-0.082 0.2852,-0.1222 z m -1.3851,0.1222 0.082,0.1222 0,0.2852 -0.4482,-0.1222 0.163,0 0.2037,-0.2852 z m 3.8702,0.1222 0.2444,0.082 0,0.2852 0,0.6518 0,0.1222 -0.3259,0.1223 -0.4074,-0.082 0.2852,-1.1407 0.041,0 c 0.064,-0.01 0.1027,-0.032 0.1629,-0.041 z m -25.3804,0.1222 0.3667,0.4889 -0.4889,-0.1222 0.1222,-0.3667 z m 35.4021,0.041 0.2037,0.041 -0.1222,0.3667 -0.2037,-0.041 0.1222,-0.3667 z m -11.4476,0.1223 -0.041,0.2037 -0.774,0.082 -0.2037,-0.082 0,-0.041 1.0184,-0.163 z m 6.4367,0 -0.041,0.2037 0.4074,0.082 0.041,-0.163 -0.4074,-0.1222 z m -27.1728,0.2444 0,0.2037 -0.4074,0.2037 0.3259,0.3259 -0.1222,0.082 -0.2852,-0.082 0.082,-0.3259 -0.1222,-0.041 0,-0.041 0.5296,-0.3259 z m 3.1369,0 0.3667,0.082 -0.2445,0.6926 -0.3259,-0.082 0.2037,-0.6926 z m 8.3107,0 0.4074,0 0,0.041 -0.4074,0 0,-0.041 z m -13.6067,0.082 0.2037,0.041 -0.3667,1.3444 c -0.019,-0.2982 -0.091,-0.4868 -0.2444,-0.5704 l 0.041,-0.3259 0.3666,-0.4888 z m 10.3069,0.082 0.2444,0.082 -0.1222,0.4481 -0.2852,-0.041 0.163,-0.4888 z m 2.1184,0.041 0.2444,0.041 -0.082,0.2444 0.041,0.163 c -0.01,0.1969 0.032,0.3372 0.1223,0.4481 l 0,0.082 -0.163,0 -0.4074,0.4481 -0.2037,0 0.2445,-0.8555 0.1629,-0.2852 -0.041,-0.041 0.082,-0.2444 z m 1.3851,0.041 0.2445,0.2852 0,0.2851 c -0.1626,-0.1174 -0.281,-0.2534 -0.4074,-0.3666 l 0.1629,-0.2037 z m -7.6996,0.2037 0.2852,0.041 -0.163,0.4889 -0.2444,-0.082 0.1222,-0.4482 z m 13.9734,0.082 0.2037,0.041 0.3259,0.4889 -0.082,0.2444 -0.2037,-0.082 -0.082,-0.082 0,-0.163 -0.2037,0 c 0.013,-0.1553 0.042,-0.3218 0.041,-0.4481 z m -16.54,0.082 -0.1222,0.3666 -0.041,1.4259 -0.6518,0.8148 0.3666,0.082 -0.4481,0.1222 -0.082,0.2444 0.2852,0.3259 -0.041,0.2037 -0.5703,0.6111 0.082,0.9777 -0.8556,1.4259 0.2852,0.2852 -0.6111,-0.1222 0.4482,-1.5481 -1.5074,0.8555 0.2852,0.2852 -1.0185,0.4481 c -0.1111,-0.2193 -0.218,-0.4175 -0.3259,-0.6518 0,-0.011 0.01,-0.03 0,-0.041 l 0.1222,-0.7741 0.2852,0.082 0.6926,0.4482 c -0.2006,-0.6795 -0.5593,-1.0906 -1.1407,-1.2222 l 0.2037,-0.6926 c 0.015,-0.046 0.027,-0.077 0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 -0.082,-0.041 c 0.068,-0.2257 0.1079,-0.4497 0.1629,-0.6518 l 0.163,-0.1222 0.041,-0.2037 -0.041,-0.1222 c 0.059,-0.2398 0.045,-0.4104 0.082,-0.6111 0.2165,-0.041 0.45,-0.155 0.6925,-0.3666 -0.087,0.5222 -0.036,0.8327 0.2445,0.8962 l -0.3259,0.2037 -0.041,0.082 c -0.1805,0.1124 -0.3752,0.2435 -0.5296,0.3667 l -0.041,0.2444 0.4074,0.1222 -0.326,1.6703 0.5704,0.1222 0.1222,-0.4074 0.4481,-0.2037 -0.2851,-0.2851 -0.2852,-0.082 0.082,-0.2037 1.5073,0.1222 0.2037,-0.6926 -0.5296,-0.1222 0.1222,-0.4074 0.5704,0.1222 0.3666,-1.1406 0.2445,-0.163 -0.2037,-0.041 0.4888,-1.5481 0.3259,-0.1222 z m -6.1108,0.041 0.2444,0.082 -0.1222,0.3666 -0.2037,-0.041 0.082,-0.4074 z m 24.0359,0 0.163,0.2444 0.2037,0.082 0.3259,-0.1222 -0.041,0.163 c -0.3962,0.037 -0.7256,0.1178 -0.9777,0.2036 l -0.041,0 -0.163,-0.041 0.2852,-0.4481 0.2444,-0.082 z m -12.0179,0.082 0.6111,0.1222 -0.1223,0.4074 -0.4888,-0.5296 z m 3.9516,0.1222 0.326,0.082 -0.041,0.1629 -0.2852,0.082 0,-0.041 0,-0.2851 z m 4.8072,0.041 0.2037,0.041 0,0.041 -0.2037,0 c 0,-0.03 0,-0.052 0,-0.082 z m -13.8104,0.082 0.2851,0.082 -0.082,0.6111 -0.3666,0.1222 0.041,-0.4074 0.1222,-0.4074 z m 29.5764,0.041 0.2037,0.041 -0.1223,0.3666 -0.2036,-0.041 0.1222,-0.3666 z m -7.4552,0.3259 0.4073,0.1222 -0.082,0.4481 -0.4073,-0.2444 0.082,-0.3259 z m -26.3581,0.041 0.4074,0.1222 -0.082,0.2037 -0.4074,-0.1222 0.082,-0.2037 z m 1.6703,0 0.2037,0.2444 -0.041,0.2037 -0.3259,-0.3259 0.1629,-0.1222 z m 18.1695,0.041 c 0.1619,0.088 0.2758,0.1839 0.4889,0.2852 -0.019,0.058 -0.041,0.1396 -0.041,0.2037 l -0.5296,0 c 0.031,-0.1732 0.06,-0.3361 0.082,-0.4889 z m -3.2591,0.2037 0.163,0 0,0.041 -0.163,-0.041 z m -12.1402,0.2037 -0.082,0.5703 -0.041,0.2445 -0.2851,-0.082 0.041,-0.6111 0.3666,-0.1222 z m -3.2998,0.082 0.2444,0.041 -0.1222,0.4889 -0.2852,-0.041 0.163,-0.4889 z m 10.7143,0.041 0.7333,0.1629 0,0.082 -0.082,0.2445 -0.082,0.1222 0,0.163 0,0.041 -0.1222,0.2851 -0.082,0 -0.2037,-0.2851 c 0.017,-0.3234 -0.065,-0.5992 -0.1629,-0.8148 z m 20.0028,0 c -0.1782,0.6667 0.096,1.3875 0.6926,2.1184 l 0.2444,-0.1222 0.163,0.2444 -0.041,0.163 c -0.2464,-0.066 -0.4958,0.012 -0.6926,0.1629 -0.042,-0.016 -0.074,-0.03 -0.1222,-0.041 l -0.3667,0.1223 c 0.1402,-0.4439 0.062,-0.7271 -0.3259,-0.8148 l -0.4074,0.1222 -0.041,0.082 -0.2851,-0.2037 c 0.2164,-0.5136 0.4452,-0.7099 0.8147,-0.6111 l 0.1223,-0.4074 -0.6111,-0.1629 0.8555,-0.6518 z m 2.4036,0.041 0.3259,0.4889 -0.1222,0.4481 -0.2852,-0.5704 0.082,-0.3666 z m -17.9658,0.082 0.2851,0.082 -0.1222,0.4074 -0.2444,-0.3259 0.082,-0.163 z m -14.2586,0.041 0.2851,0.041 -0.082,0.2037 c -0.113,0.033 -0.218,0.087 -0.3259,0.1222 l 0.1222,-0.3667 z m 15.7659,0 0.7333,0 -0.082,0.2037 -0.6926,0.082 c 0.022,-0.1067 0.02,-0.184 0.041,-0.2852 z m -3.9924,0.082 0.041,0 0,0.1222 -0.041,0 0,-0.1222 z m 19.6769,0 0.2037,0.041 -0.2037,0.8148 -0.2037,-0.041 0.2037,-0.8148 z m -28.4358,0.1629 0.5704,0.1223 -0.2445,0.6925 -0.3666,-0.6111 0.041,-0.2037 z m 2.1592,0.041 -0.082,1.1407 0.6111,0.163 0.082,-1.1814 -0.6111,-0.1223 z m 19.5546,0.1223 0.163,0.041 -0.1222,0.4481 -0.2037,-0.041 0,-0.041 0.041,0 0.1222,-0.4074 z m -13.4438,0.041 0.1222,0 0.2852,0.7333 -0.1222,0.1629 -0.163,0 -0.2037,-0.6111 c 0,-0.011 -0.01,-0.029 0,-0.041 l 0,-0.041 c 0.026,-0.066 0.056,-0.134 0.082,-0.2037 z m 6.3145,0 0.4074,0 -0.081,0.4888 -0.3259,0 0,-0.4888 z m 4.0332,0 0.2444,0.041 -0.041,0.1629 -0.2444,-0.082 0.041,-0.1222 z m -25.7062,0.082 0.082,0.041 -0.041,0.2037 -0.082,-0.041 0.041,-0.2037 z m 38.1723,0.082 -0.041,0.1629 0.041,0.041 0,-0.2037 z m -21.5509,0.041 0.082,0 0,0.3259 -0.2037,-0.041 0.1222,-0.2852 z m -10.918,0.2444 c 0.2732,-0.046 0.6795,-0.013 1.1814,0.041 l -0.1222,0.4074 c -0.3875,-0.088 -0.75,0.1822 -0.937,0.774 l -0.5703,-0.8962 c 0.053,-0.1665 0.1749,-0.2803 0.4481,-0.3259 z m 14.0957,0.041 0.3259,0 -0.1222,0.2037 -0.2037,0 0,-0.2037 z m 0.774,0 0.082,0 0,0.2037 -0.041,0 -0.041,-0.2037 z m 15.1549,0.041 0.4888,0.1222 -0.2852,1.0185 -0.3666,-0.4889 0.163,-0.6518 z m -17.9659,0.041 0.2444,0.041 -0.2851,0.082 0.041,-0.1222 z m 10.8366,0 0.2036,0.041 -0.041,0.1222 -0.2444,0.1222 0,0.082 -0.041,0 0.041,-0.082 0.082,-0.2851 z m 9.5736,0.1222 -0.1222,0.082 -0.082,0.163 0.2037,0.2444 0,-0.4889 z m -13.8105,0.082 0.4074,0.082 -0.3259,0.4481 -0.3259,-0.082 -0.041,-0.1629 0.2851,-0.2852 z m -10.4291,0.041 0.1222,0.082 0,0.2444 -0.163,-0.041 c 0.032,-0.1024 0.017,-0.1885 0.041,-0.2851 z m 13.8512,0.041 0.6111,0.5296 0.041,0.041 -0.1223,0.6111 c -0.1737,-0.1302 -0.3351,-0.2839 -0.4888,-0.3666 -0.043,-0.2456 -0.071,-0.5152 -0.041,-0.8148 z m -8.5552,0.041 0.3667,0 0,0.2444 -0.3667,0 0,-0.2444 z m -16.4585,0.082 0.163,0.041 -0.1223,0.4074 -0.2851,-0.082 0.082,-0.2852 0.1629,-0.082 z m 4.1961,0.2037 0.5296,0.1222 0,1.1814 c -0.3391,-0.077 -0.5209,-0.509 -0.5296,-1.3036 z m 1.7925,0.163 -0.2444,0.6925 0.6518,0.163 0.2037,-0.6926 -0.6111,-0.1629 z m 3.0147,0.2444 c 0.5369,0.1214 0.591,1.2374 0.163,3.2998 -0.1491,0.2487 -0.3559,0.7021 -0.5704,1.1407 l -0.5703,-0.1222 -0.5296,-1.3444 c 0.3877,0.088 0.5931,-0.086 0.7333,-0.5296 l 0.082,-1.1814 0.2037,0.2444 0.6518,0.163 -0.163,-1.6703 z m 9.6959,0.041 0.1222,0.1222 -0.2445,0.2852 -0.1222,0.4481 -0.1222,0 -0.2852,-0.082 -0.041,-0.4481 0.082,-0.1223 0.2445,0.2445 0.3666,-0.4481 z m 5.3775,0 c 0,0.306 -0.1563,0.4481 -0.5704,0.4481 l 0,0.2037 0.4074,0 -0.3666,0.6518 -0.4074,-0.082 0.082,-0.082 0,-0.2852 -0.041,-0.041 0.4074,-0.774 c 0.1595,-0.01 0.3126,-0.041 0.4888,-0.041 z m -13.4438,0.041 0.2851,0.041 -0.4481,1.2629 -0.082,0.3259 c 0.198,0.081 0.3666,0.1667 0.5296,0.2444 l -0.2444,0.4482 -0.1223,-0.2037 -0.3259,0.1629 -0.2444,-0.041 c 0.067,-0.1419 0.1305,-0.2725 0.2037,-0.4889 l -0.2037,0 0.163,-0.4888 0.041,0.041 0.2851,0 0.163,-1.3037 z m -8.1886,0.082 0.5704,0.1222 -0.163,0.4074 -0.4074,-0.5296 z m 13.1587,0.082 0.082,0.082 -0.163,-0.041 0.082,-0.041 z m 4.3591,0 0.3259,0 c -0.046,0.2543 -0.075,0.4486 -0.082,0.6518 l -0.6111,0 0.082,-0.5703 0.2852,-0.082 z m -3.1369,0.082 0.082,0.4889 c -0.2043,-0.1068 -0.3489,-0.235 -0.4482,-0.4074 l 0.3667,-0.082 z m -1.7518,0.082 -0.1222,0.4888 -0.163,0 0,-0.4073 0.2852,-0.082 z m 18.0066,0.041 0.2037,0.041 -0.163,0.6518 -0.2037,-0.082 0.163,-0.6111 z m 0.6518,0 0.4889,0.1222 -0.4074,1.4666 -0.163,-0.041 c -0.083,-0.019 -0.171,0.021 -0.2444,0.041 l 0,-0.3667 0.3259,-1.2221 z m -21.225,0.041 0.1223,0 0,0.041 -0.1223,-0.041 z m 3.5036,0.1222 c 0.081,0.036 0.1343,0.08 0.2037,0.1222 l -0.2445,0.041 0.041,-0.1629 z m -12.1809,0.082 0.2851,0.041 -0.2851,0.8962 -0.2852,-0.041 0.2852,-0.8962 z m 1.7925,0.163 -0.1222,0.4481 0.611,0.1222 -0.4888,-0.5703 z m 19.5954,0 c 0.045,0.041 0.1551,0.1194 0.2037,0.1629 l -0.082,0.5296 -0.8963,2.8517 -0.5703,0.8148 0.3666,1.0592 -0.6518,-0.1629 -0.3667,2.0776 -0.5296,-0.1222 0,-0.9777 0.3259,-0.1222 0.082,-0.2037 0.163,-1.4666 0.4889,-0.5704 -0.1222,-0.1222 c 0.028,-0.055 0.041,-0.1272 0.041,-0.2037 l 0.2036,-0.1222 -0.4073,-0.5703 0.3666,-0.1222 0.2444,0.041 0.082,-1.1407 0.3667,-1.1407 0.5296,0.1222 0.163,-0.6111 z m 1.2629,0.082 0.1222,0.1629 -0.163,-0.041 0.041,-0.1222 z m 1.8332,0.1222 0.082,1.6295 0.4889,0.1222 0.2037,-0.2036 -0.2445,0.8147 c -0.1146,-0.1897 -0.1569,-0.2813 -0.2851,-0.4888 l -0.2037,0.082 c -0.022,-0.018 -0.055,-0.024 -0.082,-0.041 l -0.4074,-0.6519 0.4481,-1.2629 z m 0.5296,0 0.3667,0.082 0,0.082 -0.2445,0.3666 -0.2444,-0.082 0.1222,-0.4481 z m 3.7887,0.1629 0.2037,0.041 -0.1222,0.4482 -0.2037,-0.082 0.1222,-0.4074 z m 1.7926,0.2445 0.2036,0.082 0,1.0592 0,0.041 c -0.05,0.036 -0.1167,0.064 -0.1629,0.1222 l -0.3667,-0.082 0.326,-1.2222 z m -32.1023,0.041 0.2445,0.082 -0.9778,3.0961 -0.2444,-0.041 0.9777,-3.1369 z m 29.5764,0.1629 0.082,0.041 -0.1629,0.6111 -0.2037,-0.041 0.1222,-0.4481 0.163,-0.163 z m -14.0141,0.163 0.2037,0 0,0.4888 -0.2037,0 0,-0.4888 z m 11.692,0.082 0.2037,0.082 0.041,0.2444 -0.2852,-0.2037 0.041,-0.1222 z m -24.2803,0.082 -0.163,0.4481 0.6111,0.163 0.1629,-0.4889 -0.611,-0.1222 z m 27.132,0.041 0.2037,0.041 0.041,0.6925 -0.4073,-0.1222 0.1629,-0.6111 z m -29.0468,0.041 0.2852,0.041 -0.2037,0.6518 -0.2444,-0.082 0.1629,-0.6111 z m 31.5727,0.2037 0.4073,0.1222 -0.082,1.0592 -0.082,0.3259 -0.2444,-0.082 0.082,-1.1407 c -0.055,-0.013 -0.1121,-0.01 -0.163,0 l 0.082,-0.2852 z m -19.5547,0.2444 0.041,0 0,0.4481 -0.2037,0 0.163,-0.4481 z m -5.5405,0.041 0.6926,0.163 -0.5704,1.1814 -0.3259,0.4481 -0.082,0 0.2037,-0.6111 0,-1.0592 c 0.035,-0.028 0.048,-0.074 0.082,-0.1222 z m 5.9479,0.2037 0.4074,0 0,0.4889 0.2444,0 0.041,-0.041 -0.041,0.2851 -0.3259,0.082 -0.041,-0.1222 0.041,-0.2037 -0.3666,-0.082 -0.163,0.041 c 0.1408,-0.1215 0.2037,-0.2569 0.2037,-0.4481 z m 13.8919,0 0.2445,0.041 0.1222,0.7333 -0.082,0.2444 -0.4074,-0.6111 0.1222,-0.4073 z m -11.8142,0.2037 0.082,0 -0.2037,0.8962 -0.082,0.041 -0.2037,-0.2036 c -0.1035,0 -0.1645,0.01 -0.2444,0.041 l 0.2036,-0.6519 0.4482,-0.1222 z m 0.774,0 0.4889,0 0.1629,0.041 -0.2444,0.774 -0.5296,0.3259 -0.2444,0 0.082,-0.2037 0.1629,0 0,-0.2036 0.2852,-0.082 -0.2852,-0.2852 0.1222,-0.3667 z m 2.8517,0 0.6519,0 -0.082,0.2037 -0.6111,-0.1222 0.041,-0.082 z m -22.5286,0.1629 0.6519,0.163 -0.4889,0.6111 -0.3667,-0.082 0.2037,-0.6926 z m 14.9512,0.1223 0.2037,0 0.3666,0.082 -0.4073,0.2037 -0.041,0.2037 0.041,0.1222 -0.163,0.041 -0.2037,0 0.2037,-0.6519 z m 20.0028,0.041 0.2037,0.041 -0.041,0.2037 -0.2037,-0.041 0.041,-0.2037 z m -18.8214,0.1629 0.2445,0.041 -0.041,0.2037 -0.2852,0.041 0.082,-0.2852 z m 6.1923,0 0.2852,0.041 -0.041,0.082 -0.2444,-0.082 0,-0.041 z m 6.1516,0.2037 0.6518,0.1222 0.2852,0.8555 c 0.027,0.314 0.036,0.6162 -0.041,0.937 l -0.2037,-0.082 0.163,-0.4481 -0.5704,-0.1222 -0.041,0.2037 0.3259,0.8148 -0.3259,0.1222 c -0.1051,0.3329 -0.023,0.6072 0.2852,0.774 -0.04,0.1099 -0.074,0.22 -0.1222,0.3259 l -0.2445,0.082 0.1223,-0.4074 -0.5704,-0.1222 -0.2444,1.7518 c -0.1708,0.1743 -0.368,0.3712 -0.5704,0.5296 l 0.2037,-0.2852 c 0.09,-0.6137 -0.1265,-0.9903 -0.6111,-1.0999 l 0.1223,-0.4074 0.611,0.1222 0.1223,-0.2852 -0.3259,-0.2851 0.4481,-0.1223 0,-1.1814 0.5296,-1.7925 z m -27.3765,0.041 0.8148,0.4074 -0.3259,1.0999 -0.2852,-0.082 -0.3259,-1.0184 0.1222,-0.4074 z m 2.4851,0.041 0.5703,0.1222 -0.082,0.2037 -0.5296,-0.1222 0.041,-0.2037 z m 32.0207,0.1222 0.2852,0.041 -0.2037,0.6926 -0.2852,-0.041 0.2037,-0.6926 z m -23.3026,0.041 0.2037,0 0,0.2037 -0.2445,-0.041 0.041,-0.1629 z m 10.144,0 0,0.082 -0.041,0 0.041,-0.082 z m 11.8142,0.2852 -0.3666,1.3444 -0.041,0 0.4074,-1.3444 z m -11.4883,0.082 0.2444,0.082 -0.082,0.2037 -0.2852,0.1222 0.1222,-0.4074 z m 10.3069,0 0.041,0 c 0.027,0.1987 0.01,0.4181 -0.041,0.6518 l -0.163,-0.041 0.163,-0.6111 z m 1.5888,0 0.1222,0.041 0,0.2037 -0.1629,-0.041 0.041,-0.2037 z m -16.3363,0.1222 0.163,0 -0.4481,0.4481 -0.2037,0 0.4888,-0.4481 z m 3.1369,0 0.2852,0 -0.082,0.4481 -0.3259,0 0.1222,-0.4481 z m -22.4471,0.2037 0.082,0.1222 -0.041,0.082 c -0.011,-0.069 -0.041,-0.1361 -0.041,-0.2037 z m 20.1657,0 0.5297,0 0.082,0.082 -0.082,0.3259 -0.6111,-0.1222 0.082,-0.2852 z m -18.9028,0.082 0.2037,0.041 0,0.2444 c -0.066,-0.097 -0.1383,-0.184 -0.2037,-0.2851 z m 10.7143,0.2037 -0.082,0.2852 -0.041,0.082 -0.041,0.1222 -0.1629,-0.2037 0.3259,-0.2852 z m 19.7176,0 0.2037,0.041 -0.082,0.163 c -0.028,-0.054 -0.092,-0.1467 -0.1222,-0.2037 z m -4.1553,0.041 0.6111,0.1222 -0.081,0.2444 -0.6111,-0.1629 0.082,-0.2037 z m 7.9441,0 0.1629,0.041 -0.2852,0.9777 -0.1222,-0.041 0.2445,-0.9777 z m -29.4542,0.082 1.2221,0.082 -0.2037,0.6111 -1.2629,0 0.2445,-0.6926 z m 10.918,0.041 0.6518,0 0,0.2037 -0.1222,0 -0.6111,-0.163 c 0.029,-0.014 0.051,-0.027 0.082,-0.041 z m 14.2993,0.082 0.2852,0.4074 -0.2852,0.4481 -0.2444,-0.041 0.2444,-0.8148 z m 1.1407,0.3259 0.1222,0.6111 -0.2852,-0.082 0.163,-0.5296 z m 4.1554,0.041 0.1222,0 c -0.064,0.204 -0.057,0.3921 0,0.5296 l -0.041,0 -0.1222,0.4074 0.041,0.8963 -0.4074,0.4888 -0.2037,-0.041 0.3259,-1.1814 -0.4481,-0.1222 0.2444,-0.8148 0.4074,0.1222 0.081,-0.2852 z m -17.2326,0.041 0.3667,0 0,0.2852 -0.2445,0.082 -0.1222,-0.041 0,-0.3259 z m 0.7741,0 0.4074,0 -0.163,0.5703 -0.2444,-0.041 -0.082,-0.082 0.082,0 0,-0.4481 z m 2.0369,0 0.4074,0 -0.1222,0.6926 c -0.146,0.1526 -0.3488,0.2496 -0.5704,0.3259 l -0.611,-0.4482 c 0.097,0.029 0.2025,0.064 0.3259,0.082 0.414,0 0.5703,-0.1928 0.5703,-0.6518 z m -22.4471,0.041 c 0.01,0.018 0.071,0.022 0.082,0.041 l -0.082,0 0,-0.041 z m 2.7702,0.041 0.8148,0.2037 -0.082,0.2037 -0.8148,0.082 c -0.02,-0.022 -0.021,-0.059 -0.041,-0.082 l 0.1223,-0.4074 z m 21.4287,0 0.2852,0.163 -0.082,0.2037 -0.2852,-0.041 0.082,-0.326 z m -2.3221,0.082 0.2851,0.082 -0.2851,0 0,-0.082 z m -14.2994,0.3667 0.4889,0.5296 -0.2037,0.6518 -0.041,0 -0.2444,-0.3259 -0.5296,-0.1222 c -0.048,0.151 -0.1392,0.2794 -0.2445,0.3666 l -0.8555,-0.2444 c -0.047,-0.2318 -0.2221,-0.4009 -0.6111,-0.4889 l 0.041,-0.2037 0.5704,0.1222 0.2037,0.2445 c 0.1052,-0.3329 0.5689,-0.4461 1.4258,-0.5296 z m 3.1777,0.3259 0.3666,0.4481 -0.6518,-0.1222 0.2852,-0.3259 z m 21.673,0 0.1222,0.2037 c -0.02,0.075 -0.087,0.1636 -0.1222,0.2444 l -0.1222,-0.041 0.1222,-0.4074 z m -1.3443,0.1222 0.2036,0.3666 -0.041,0.2037 -0.2444,-0.3666 c 0.023,-0.07 0.061,-0.132 0.082,-0.2037 z m -25.91,0.4074 0.2445,0.041 -0.1223,0.4074 -0.2444,-0.041 0.1222,-0.4074 z m -1.5073,0.082 0.2037,0.041 -0.041,0.1222 c -0.061,-0.042 -0.1022,-0.1177 -0.163,-0.163 z m -3.9109,0.082 c 0.1983,0.045 0.3656,0.1069 0.5296,0.1222 l 0.4888,0.6111 0,-0.4889 -0.1222,-0.1222 c 0.1736,-0.011 0.3316,-0.066 0.4481,-0.1222 0.1559,0.2001 0.3052,0.427 0.4889,0.6518 l -0.3259,0.4481 -0.1222,-0.1222 -0.082,-0.1629 -0.2852,-0.041 -0.6518,0.2851 0.041,0.6111 c -0.1697,-0.1506 -0.3284,-0.3246 -0.4889,-0.4889 l 0.082,-0.2036 -0.3666,-0.082 c -0.1552,-0.1722 -0.3026,-0.3448 -0.4482,-0.5297 l 0.6519,0.1223 0.1629,-0.4889 z m 11.7328,0.2444 0.4481,0 0,0.4889 -0.4481,0 0,-0.4889 z m 11.692,0 0.163,0 0,0.1222 -0.163,-0.1222 z m -4.4405,0.041 0.1629,0.2852 -0.041,0.1629 -0.9777,0 -0.2852,0 0,-0.041 c 0.097,0.022 0.1955,0.061 0.2852,0.041 0.1794,-0.041 0.3596,-0.1963 0.4889,-0.4073 l 0.3666,-0.041 z m -0.7333,0.041 0,0.041 -0.5296,0 0.5296,-0.041 z m 2.1999,0.041 c 0.1,0.077 0.1569,0.2268 0.1629,0.3667 l -0.6925,0 0.1629,-0.2852 0.3667,-0.082 z m 17.1103,0.041 0.163,0.041 -0.041,0.163 -0.163,-0.082 0.041,-0.1222 z m -21.1435,0.041 0.1222,0 c 0.1262,0.063 0.2198,0.1547 0.2445,0.2852 l -0.3667,0 0,-0.2852 z m 11.6921,0.4481 0.5296,0.1223 -0.082,0.2444 -0.5296,-0.1222 0.082,-0.2445 z m -13.0365,0.082 0.163,0.1223 -0.081,0.2037 -0.082,-0.041 0,-0.2852 z m -4.1146,0.082 0.2445,0.041 0.1222,0.082 0.1629,0 -0.082,0.2445 -0.3666,0.2037 -0.1222,0.041 0,-0.082 0.1222,0.041 0.041,-0.2037 -0.1222,-0.2852 0,-0.082 z m 25.4211,0.041 0.1222,0.4482 -0.1222,0.2851 0,-0.7333 z m -16.1734,0.163 -0.041,0.2037 -0.041,0.4889 -0.937,-0.1223 -0.082,-0.081 0.7741,-0.3666 -0.3667,-0.082 0.6926,-0.041 z m -3.5035,0.041 -0.041,0.1222 -0.2852,-0.082 0.3259,-0.041 z m 4.7664,0 0.4482,0.082 0,0.041 0,0.2037 c -0.1905,0 -0.299,0.048 -0.4074,0.1222 l -0.041,-0.4481 z m -2.5665,0.041 -0.1222,0.4481 -0.6111,-0.082 -0.2444,-0.2444 -0.082,0.2037 -0.2852,-0.041 0.082,-0.2444 0.082,0 0.2037,0.082 -0.041,-0.082 0.2852,0 0.7333,-0.041 z m 3.7887,0 0.1222,0.041 -0.1222,0 0,-0.041 z m -15.2771,0.041 0.163,0.2444 0.2852,0 0.1629,-0.1222 0.2852,0.2852 -0.3259,0.3666 c -0.7619,0.018 -1.1994,0.1248 -1.2629,0.326 l -0.082,0.2037 0.2851,0.082 0.5297,0 -0.2445,0.2851 c -0.3067,0 -0.7246,-0.1575 -1.1814,-0.3666 l 0.1222,-0.3259 -0.3666,-0.082 -0.3259,0.1629 c -0.3254,-0.1839 -0.6736,-0.4252 -1.0593,-0.6925 0.53,0.1198 0.9409,0.021 1.2222,-0.2852 0.452,0.097 0.8964,0.1629 1.3851,0.1629 l 0.082,0 0.163,0.041 0.041,-0.1629 0.1222,-0.1222 z m 1.9148,0.082 c 0.012,0.2782 0.175,0.4717 0.611,0.5704 l -0.041,0.1222 -0.1629,0.082 c -0.4016,-0.033 -0.7787,-0.07 -1.1,-0.082 0.1876,-0.1742 0.4654,-0.4656 0.6926,-0.6926 z m 25.1766,0 0.1222,0.041 -0.2444,1.0185 -0.1223,-0.041 0.2445,-1.0185 z m -10.9588,0.082 0.2445,0.082 -0.082,0.2852 -0.163,0 0,-0.3667 z m -20.8175,0.1222 c 0.2965,0.3446 0.6323,0.7123 0.9777,1.1 l -0.7333,-0.163 c -0.294,-0.2508 -0.5827,-0.5252 -0.8555,-0.8148 l 0.6111,-0.1222 z m -1.0592,0.2445 0.4481,0.7333 -0.3259,0 c -0.2314,-0.1354 -0.4738,-0.25 -0.6926,-0.4074 0.047,-0.067 0.091,-0.1469 0.1222,-0.2445 l 0.4482,-0.082 z m 23.2211,0.1629 0.5704,0.1222 0,1.1815 -0.4482,0.1222 -0.5296,-0.1222 0.4074,-1.3037 z m 11.2847,0.1222 -0.2037,0.4074 0.082,-0.3259 0.1222,-0.082 z m -16.2956,0.1222 0.2445,0 0,0.082 -0.2445,-0.041 0,-0.041 z m -19.6768,0.1223 c 0.029,0.01 0.054,0 0.081,0 l 0.082,0.082 -0.3667,0 0.2037,-0.082 z m 29.169,0.041 -0.041,0.3666 -0.2852,-0.082 c 0.1196,-0.087 0.2148,-0.1918 0.3259,-0.2852 z m 3.8294,0 0,0.082 -0.041,0 0.041,-0.082 z m -0.9777,0.041 0.2037,0.082 c -0.072,0.065 -0.1696,0.1008 -0.2444,0.1629 -0.192,0.1594 -0.3681,0.3385 -0.5704,0.4889 -0.078,-0.08 -0.1397,-0.2017 -0.2037,-0.3259 0.1573,-0.079 0.2844,-0.1615 0.4482,-0.2445 l 0.3259,0.082 0.041,-0.2037 c 0.01,0 -0.01,-0.038 0,-0.041 z m -23.5471,0.2037 -1.0999,0.5296 -0.163,0 0,-0.2037 c 0.1087,0 0.2967,-0.1111 0.5296,-0.2852 l 0.7333,-0.041 z m -4.9294,0.1222 c 0.1298,0.1453 0.2302,0.2561 0.3667,0.4074 l 0,0.2037 c -0.065,-0.042 -0.139,-0.078 -0.2037,-0.1223 l 0.041,-0.082 -0.163,-0.041 c -0.08,-0.056 -0.1659,-0.1046 -0.2444,-0.1629 l 0.163,-0.041 0.041,-0.163 z m 10.0218,0.082 0.3666,0.2444 -0.082,0.082 -0.2037,0 c 0,-0.1207 -0.037,-0.2282 -0.082,-0.3259 z m -2.0369,0.3259 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 6.6404,0 0.4074,0 0,0.082 -0.2445,0.1222 -0.1629,0 0,-0.2037 z m -3.0962,0.1222 0.4074,0.082 -0.4074,0 0,-0.082 z m 5.8257,0 0.2444,0.041 0.2445,0.2852 0.082,0 0,0.4074 c -0.3616,0.031 -0.758,0.061 -1.1407,0.082 l 0.3259,-0.4889 c 0.079,0 0.1557,0 0.2444,0 l 0,-0.3259 z m -6.4775,0.3259 0.6518,0 0,0.4889 -1.0184,0 0.3666,-0.4889 z m 8.1885,0.041 0.2852,0.082 -0.041,0.1222 c -0.1062,0.015 -0.2175,0.027 -0.3259,0.041 l 0.082,-0.2444 z m 9.4107,0.041 c -0.02,0.2876 -0.041,0.5616 0.041,0.774 l -0.163,0.082 -0.1222,0.4074 -0.3259,-0.4481 0.5704,-0.8148 z m -12.0587,0.041 c 0.01,0 0.03,0 0.041,0 l 0.041,0.041 -0.082,0.2444 -0.2444,-0.041 c 0.043,-0.093 0.1037,-0.1841 0.2444,-0.2444 z m -8.6366,0.163 0.6518,0 0,0.2037 -0.6518,0.2036 0,-0.4073 z m 1.0184,0 0.4889,0 0,0.2037 -0.4889,0 0,-0.2037 z m 3.5851,0 0.3666,0 -0.3666,0.4073 -0.4889,0 0.4889,-0.4073 z m -15.1549,0.2037 0.041,0 0,0.2036 -0.4481,0 0,-0.041 0.4074,-0.1629 z m 3.3406,0 0.6111,0 0,0.2036 -0.6111,0 0,-0.2036 z m 4.9701,0 0.6111,0 0,0.2036 -0.6111,0 0,-0.2036 z m 3.911,0 0.6518,0 0,0.2036 -0.6518,0 0,-0.2036 z m 18.0473,0.041 0.082,0 0,0.041 -0.082,-0.041 z m -2.7295,0.082 0.041,0 -0.163,0.4888 -0.5296,-0.1222 0.041,-0.082 c 0.1755,-0.071 0.415,-0.2008 0.6111,-0.2852 z m 5.296,0 c 0.072,0.09 0.1611,0.1484 0.2445,0.2444 l 0,0.041 -0.4074,-0.082 c -0.029,-0.024 -0.055,-0.058 -0.082,-0.082 l 0.2444,-0.1222 z m -32.6318,0.2851 0.6518,0 0,0.2445 -0.6518,0 0,-0.2445 z m 2.9332,0 0.3666,0 -0.3666,0.5296 0,-0.5296 z m -3.5443,0.2445 0.4481,0 0,0.2851 -0.4481,0 0,-0.2851 z m 9.3292,0 0.6111,0 1.0185,0.2851 1.2221,-0.2851 1.3037,0 0,0.4888 -5.1739,0 0,-0.2037 1.0185,-0.2851 z m 4.522,0 4.6035,0 -0.4481,0.4888 -0.2037,-0.2037 -1.0185,0.2037 -2.4851,0 -0.4481,-0.4888 z m 5.459,0 0.5704,0 0,0.2851 -0.5704,0 0,-0.2851 z m 15.3178,0 c -0.021,0.067 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.163 0.041,-0.041 z m -30.5134,0.2851 1.0185,0 0,0.2037 -1.0185,0 0,-0.2037 z"
+           id="path6114-1"
+           transform="matrix(0.61596339,0,0,0.61596335,-406.90169,325.5369)" />
+        <path
+           inkscape:connector-curvature="0"
+           inkscape:export-ydpi="90"
+           inkscape:export-xdpi="90"
+           inkscape:export-filename="Z:\private\général\illustrations\Charte graphique\OD\OD 5.0\aboutpage\png\aboutpage_OD5.0.png"
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:51.30051804px;line-height:125%;font-family:'karabinE.';-inkscape-font-specification:'karabinE.';text-align:start;writing-mode:lr-tb;text-anchor:start;display:inline;fill:#cccccc;fill-opacity:1;stroke:none;filter:url(#filter3530-9)"
+           d="m -163.14137,992.23552 -2.5665,0.48886 0,1.34439 0.5703,-0.61109 0.6518,0 0,0.2037 -1.2221,0.40739 0,2.07768 0.2036,0 -0.2036,0.28517 0,0.85552 c -0.1243,0.11339 -0.1889,0.18925 -0.2852,0.28517 l 0,0.48886 c 0.096,-0.0462 0.1847,-0.0603 0.2852,-0.12221 l 0,0.7333 -0.2852,0.24443 0,8.55511 0.6111,2.2407 0.082,0.5703 c -0.028,0.081 -0.061,0.1678 -0.082,0.2445 0.066,0.049 0.1079,0.1081 0.1629,0.1629 l 0,0.163 -0.2444,-0.082 c -0.024,-0.01 -0.057,0 -0.081,0 0.036,-0.1267 0.062,-0.2569 0.1222,-0.3667 l -0.163,-0.6111 -0.4073,0.082 0,3.8702 c 0.014,0 0.027,0 0.041,0 l 0.2037,-0.041 0.041,-0.041 0,0.8556 c -0.09,0.2617 -0.1903,0.502 -0.2852,0.6925 l 0,0.9777 0.2444,0.082 -0.041,0.163 -0.2037,-0.082 0,11.1217 0.163,-1.1814 0.1222,0.041 0,1.0185 0.2037,0 0.4889,0.5296 c -0.1,0.082 -0.1897,0.1934 -0.2445,0.3666 l -0.2037,-0.2444 -0.082,0 -0.1629,-0.6518 0,0.5703 -0.041,0 -0.2445,0.1222 0,0.8963 0.2852,-0.1222 0,0.3259 -0.1222,-0.041 -0.1222,0.4074 0.2444,0.041 0.3667,-0.1223 0,0.2445 -0.3667,0 0,0.8555 -0.2852,0.082 0,0.2037 0.2852,-0.082 0,0.082 c 0.4141,0 0.5704,-0.1422 0.5704,-0.4482 l -0.2037,-0.2036 0.5296,0 -0.1223,0.081 -0.082,0.2444 0.1223,0 0,0.082 0.2037,0.2444 0,0.2852 -1.0185,0 0,0.2444 3.3813,0 c 0.2347,-0.6383 0.527,-0.9777 0.937,-0.9777 l 0,-0.4074 -0.5703,0 -0.2852,0.2037 -0.163,0 -0.2444,-0.3259 0.082,-0.2444 -0.2444,0.082 -0.6519,0 -0.3259,0.1222 0,-0.041 -0.3666,-0.082 -0.2852,0.2037 -0.4481,-0.2037 0,-0.2445 1.0592,0 0,-0.2036 -0.2037,-0.2037 0,-0.2445 0.4889,0.163 -0.082,0.2037 0.5703,0.1222 0.2852,-0.041 0.6111,0.2037 -0.082,0.2444 0.2851,0.082 0.5704,-0.041 0.6518,0.2445 0,0.2036 c -0.3219,1e-4 -0.8163,0.3866 -1.3851,1.1815 l 18.5769,0 c 0.082,-0.08 0.1634,-0.1631 0.2444,-0.2445 0.2121,0.076 0.5041,0.165 0.7333,0.2445 l 1.4666,0 -0.2444,-0.4074 1.1407,0.082 0.2037,0.082 -0.041,0.1629 -0.5296,0.082 0.7333,0 7.8626,0 0.041,-0.1629 c 0.061,0.031 0.1355,0.056 0.2037,0.082 l -0.041,0.082 1.3036,0 0.3667,-0.2445 -0.041,0.2445 2.5665,0 0.082,-0.2445 0.2444,0.041 -0.082,0.2037 0.4482,0 0,-1.3443 -0.082,0.2444 -0.2445,-0.041 0.1223,-0.4074 0.2037,0.082 0,-9.044 -0.1223,-0.041 0.1223,-0.5704 0,-1.711 -0.2852,0.082 -0.041,0.2037 0.2037,0.3259 -0.6111,1.1 -0.2037,-0.041 0.937,-3.5036 0,-1.5888 -0.2852,0.1222 -0.041,1.0592 -0.6518,2.3629 -0.5703,0.2851 1.1814,-4.3997 0.3666,0.5703 0,-1.3444 -0.1629,-0.041 0.1629,-0.5703 0,-1.8333 c -0.2597,-0.3921 -0.5238,-0.7828 -0.8147,-1.1407 l 0.8147,0.041 0,-1.2221 -0.2037,0.8555 -0.2444,-0.082 0.3259,-1.1814 0.1222,0.041 0,-3.5443 -0.082,0.2852 -0.4481,-0.1223 0.5296,-2.0369 0,-7.98483 -0.041,0.12222 -0.8148,0 -0.6518,-0.36665 -0.8148,0 0.041,-0.20369 -0.3259,-0.52961 0.082,-0.28517 0.2037,0.0407 0.8555,0.77404 0.2852,-0.16296 0.082,-0.28517 c -0.3163,-0.38756 -1.7549,-1.08882 -4.3183,-2.07768 l -1.1,0 2.811,1.18142 -0.1222,0.40739 0.2852,-0.16295 0.6925,0.20369 -0.4888,0.81478 -0.2037,-0.0407 -0.163,-0.28517 -0.2444,-0.0407 -0.3667,0.12222 0.1222,-0.40739 0.3667,-0.16296 0,-0.0407 -0.2444,-0.28517 -0.2445,-0.0815 -0.2851,0.2037 -0.2445,-0.0407 -0.6925,-0.48887 -0.5704,0.36665 -1.5481,-1.2629 -1.8332,0 -0.082,0.32591 -0.2444,-0.0407 0.082,-0.28517 -3.2999,0 1.0185,1.54807 0.2037,0.0407 -0.163,0.69256 -0.4481,-0.12221 -0.082,0.20369 c 0.3276,0.0876 0.5624,0.55849 0.6926,1.38512 l -0.163,0.69256 -0.2444,-0.0815 0.1222,-0.44813 -0.7333,-0.2037 -0.163,0.44813 0.4889,0.12222 -0.2444,0.89625 -0.4889,-0.12221 -0.2037,0.93699 0.4481,0.12222 -0.1222,0.40739 -0.4481,-0.12222 -0.1222,0.40739 0.4481,0.12221 -0.163,0.69256 c -0.4096,-0.10951 -0.697,0.12321 -0.937,0.69253 -0.022,0.084 -0.038,0.1752 -0.041,0.2445 l -0.2444,-0.2852 -0.2037,0.2852 c -0.01,-0.089 -0.01,-0.189 0,-0.2852 l 0.2037,0 0,-0.2037 -0.1629,-0.1629 c 0.014,-0.071 0.021,-0.1297 0.041,-0.20375 l 0.5296,0.16295 0.1629,-0.65181 -0.4074,-0.61109 0.937,-1.38512 -0.2037,-0.0407 0.2852,-0.16295 0.081,-0.28518 -0.2037,-1.46659 0.6518,-0.24444 -0.2444,-0.0815 0.4481,-0.61108 c 0.1537,-1.06751 -0.199,-1.68478 -1.0592,-1.91472 l 0.2852,-0.16296 0.082,-0.24443 -1.5888,0 0,0.0815 0.6925,0.16296 -0.937,0.7333 c 0.085,-0.31634 0.048,-0.64018 -0.041,-0.97773 l -1.5888,0 -0.2037,0.69256 -0.2444,-0.0407 0.1629,-0.65182 -0.937,0 0.2445,0.48886 -0.082,0.44813 -0.3667,-0.57034 0.082,-0.36665 -0.4481,0 -0.8555,3.09615 c -0.097,-0.0451 -0.1796,-0.0767 -0.2852,-0.12222 l -0.041,0 -0.1629,-0.24443 0.2851,-0.12222 0.082,-1.18142 0.3667,-1.42586 -0.4889,0 -0.6111,2.36285 -0.2444,0 0.6111,-2.36285 -2.6073,0 -0.041,0.16295 0.4481,0.12222 -0.2852,1.05921 c -0.9987,-0.37944 -1.8221,-0.65178 -2.4443,-0.65182 -0.1476,0.37417 -0.4354,0.62502 -0.774,0.77404 -0.016,-0.069 -0.022,-0.13369 -0.041,-0.2037 l -0.041,-0.20369 0.5703,-0.0815 0,-0.28517 c 1e-4,-0.20089 -0.2546,-0.36699 -0.774,-0.48887 l -0.041,-0.20369 -0.9778,0 c 0.001,0.0136 0,0.0271 0,0.0407 l 0,0.24443 c -0.2786,-0.13728 -0.624,-0.21604 -1.0184,-0.28517 l -1.7111,0 0,0.16295 -0.2444,0.0815 -0.082,-0.24443 -0.5296,0 0.041,0.12221 -0.163,0.16296 -0.082,-0.28517 -2.7295,0 -0.2037,0.97773 -0.3259,0 0,-0.48887 c 0.085,-0.17617 0.1553,-0.35747 0.2037,-0.48886 l -2.4036,0 z m 36.2576,12.83278 0,-0.937 -0.041,0.041 -0.163,0.6111 0.2037,0.2851 z m -34.3429,-12.75131 -0.2851,0.44813 -0.4889,0.0815 0.082,-0.28517 0,-0.12222 0.6925,-0.12222 z m 13.4846,0.0407 0.4481,0.12222 -0.041,0.24443 -0.4481,-0.12221 0.041,-0.24444 z m -16.2956,0.36665 0,0.48887 -0.4481,0 0.4481,-0.48887 z m 7.8219,0 0.082,0.0407 0.2037,0.89626 c -0.2224,-0.0204 -0.4372,-0.0455 -0.6111,-0.0815 l 0.2037,-0.65182 -0.041,-0.16296 0.163,-0.0407 z m 1.4666,0 0.4074,0.48887 -0.4074,0 0,-0.48887 z m -2.5665,0.16296 0.082,0.28517 -0.1223,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.1516,0.0407 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 5.2146,0 0.2037,0 0,0.28517 -0.2037,0 0,-0.28517 z m -2.974,0.28517 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24443 -0.1629,0 c 0.038,-0.0691 0.088,-0.17948 0.1222,-0.24443 z m 13.0365,0 0.2037,0.0815 -0.163,0.65182 -0.3259,-0.57035 0.2852,-0.16295 z m 11.8142,0.0407 0.4482,0.1222 -0.1223,0.48888 -0.4888,-0.12223 0.1629,-0.48885 z m -5.8256,0.16295 0.2444,0.0407 -0.1629,1.58882 -0.2852,0.16295 -0.1222,0.48887 -0.5296,2.52581 -0.6519,-0.65182 1.1,-2.64803 -0.2444,-0.28517 0.082,-0.20369 0.5703,-1.01848 z m 0.9777,0.0407 0.5704,0.12222 -0.2852,0.16295 -0.082,0.2037 -0.7741,3.87019 -0.2851,0.16296 -0.082,1.14068 -0.2037,0.77404 -0.5704,0 0.163,-0.57034 c 0.2449,-0.0957 0.4481,-0.21289 0.4481,-0.36665 l -0.2852,-0.28517 1.3852,-5.21458 z m -17.7214,0.2037 0.2444,0 0.041,0.16295 -0.082,0.0407 -0.1222,0 -0.082,-0.20369 z m 14.5438,0.12221 0.2037,0.0407 -0.082,0.44813 -0.2445,-0.0815 0.1223,-0.40739 z m 12.629,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m -29.8208,0.0407 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m -2.0777,0.2037 1.0592,0 c -0.029,0.0977 -0.082,0.18868 -0.1222,0.28517 l -0.937,0 0,-0.28517 z m 11.855,0 0,0.5296 -0.4889,0 0.4889,-0.5296 z m 24.3618,0.16295 c -0.074,0.27639 0.1418,0.51308 0.5704,0.65182 l 0,-0.5296 -0.5704,-0.12222 z m -6.07,0.32591 0.4481,0.12222 -0.3667,1.30364 -0.4481,-0.12221 0,-1.18143 0.3667,-0.12222 z m -17.0696,0.44813 0,0.48887 -0.2037,0 -1.6703,0.24443 c 0.035,-0.18638 0.074,-0.3749 0.082,-0.57035 l 1.7925,-0.16295 z m 0.3666,0 0.6518,0.20369 0,0.28518 -0.8555,0 0.2037,-0.28518 0,-0.20369 z m 1.0185,0 0.041,0 0.2852,0.44813 -0.041,0.0407 -0.2852,0 0,-0.48887 z m 1.8332,0 -0.082,0.32591 -0.2851,0.0407 0.1222,-0.32591 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.2662,0 0.6519,0.36665 -0.082,0.20369 -0.4482,0.85552 c -0.076,0.61312 0.12,0.99046 0.5296,1.09995 l -0.1222,0.40739 -0.5296,-0.12222 -0.082,0.28517 0.2445,0.28518 -0.3667,0.12221 0.041,1.18143 -0.4889,1.79251 -0.5296,-0.1222 -0.4074,-1.3037 0.1223,-0.48883 0.2444,0.0407 -0.1222,0.48883 0.4481,0.1223 0.041,-0.2037 -0.2852,-0.81482 0.2852,-0.12221 c 0.1185,-0.44346 -0.079,-0.76489 -0.5703,-0.89626 l 0.6518,-0.28517 -0.1222,0.40739 0.4888,0.12221 0.3667,-3.21837 0.041,-0.20369 z m -20.4916,0.12222 0.2444,0.0407 0.1222,0.48887 -0.3259,-0.0815 0,-0.36665 -0.041,-0.0815 z m -7.7404,0.0815 0.4481,0 -0.4481,0.52961 0,-0.52961 z m 1.3036,0 0.8148,0 c -0.013,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2572,0.20542 -0.3429,0.30401 -0.5703,0.48887 l -0.2037,-0.24443 0,-0.28518 z m 1.3037,0 0.3666,0 0.4074,0 0,0.2037 -0.082,-0.0815 -0.4888,0.12222 0,0.24443 -0.082,0.0407 -0.2037,-0.24443 -0.082,0 0.1629,-0.28518 z m 1.1407,0 0.6111,0 -0.041,0.28518 -0.5704,0 0,-0.28518 z m 7.2922,0 0.6519,0 -0.082,0.24444 0.1222,0.44812 -0.2852,0.0407 -0.4074,-0.65182 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24444 -0.2037,0.0407 -0.082,-0.28518 z m 21.1435,0 0.8148,0 0.2444,0.0407 -0.082,0.2037 -1.0999,0.16295 0.1222,-0.40739 z m -12.9142,0.0815 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m 5.2553,0 -0.082,0.2037 0.4889,0.12221 0.041,-0.20369 -0.4482,-0.12222 z m 10.144,0.36665 0.4888,0.12222 0.4074,0.57034 -0.6518,0.32591 0.2852,0.0815 -0.6111,1.01847 c -0.3277,-0.0876 -0.363,-0.37134 -0.2444,-0.81478 l 0.2851,-0.16295 0.041,-0.20369 0,-0.937 z m -1.3851,0.28517 0.2444,0.0815 0.041,0.7333 -0.4481,-0.12222 0.1629,-0.69256 z m -25.5026,0.0407 0,0.40739 -0.2851,0 -0.082,-0.32591 0.3666,-0.0815 z m 23.9137,0.0407 0.2445,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -24.7284,0.0815 0.082,0.28517 -0.2445,0 0,-0.24443 0.163,-0.0407 z m -8.2293,0.0407 1.0185,0 c -0.101,0.0837 -0.1918,0.16587 -0.2852,0.24443 l -0.7333,0 0,-0.24443 z m 2.0777,0 0.4481,0 0,0.24443 -0.6111,0 0.163,-0.24443 z m 7.8626,0 0,0.24443 -0.2037,0 -0.041,-0.16295 0.2444,-0.0815 z m 3.748,0 0.4073,0 0,0.24443 -0.4073,0 0,-0.24443 z m 1.0592,0 0.8147,0 0,0.24443 -0.8147,0 0,-0.24443 z m 22.3656,0.0407 0.4481,0.12221 0.2852,0.28518 0.082,-0.40739 0.2444,0.0407 -0.1222,0.44812 -0.2037,-0.0815 0.163,0.28517 -0.1222,0.48886 c -0.3277,-0.0875 -0.6161,0.14207 -0.7741,0.7333 l -0.3666,-0.61108 0.3666,-1.30364 z m -31.0023,0.0407 0.2852,0.20369 -0.2037,0.0815 -0.082,-0.28517 z m -4.7257,0.0815 0.041,0.0815 -0.1222,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.98,0.0407 0.5296,0.16296 -0.041,0.20369 -0.5296,-0.12221 0.041,-0.24444 z m -20.4916,0.0407 0.3666,0 0,0.28517 -0.3666,0 0,-0.28517 z m 3.5443,0 0.2037,0 c 0.2933,0.10004 0.5027,0.25432 0.6518,0.48887 l -0.082,0.12221 c 0.049,0.098 0.1128,0.18842 0.1629,0.28518 l -0.3666,0 0,0.24443 0.5296,0.0815 c 0.074,0.1378 0.1679,0.27231 0.2444,0.40739 l -1.7925,0 0,-0.2037 c 0.5521,1.1e-4 0.8148,-0.22357 0.8148,-0.5296 l -0.3667,-0.40739 0,-0.48887 z m -9.2885,0.0407 0.1222,0.44813 -0.2037,0.0407 -0.082,-0.32591 0.163,-0.16296 z m -3.5035,0.0815 0.082,0.44812 -0.4482,0.12222 -0.041,-0.16295 0.326,-0.0407 0,-0.32591 0.082,-0.0407 z m 1.6295,0.0407 c 0.2851,1.0667 0.7124,1.54315 1.3037,1.38512 l 0.081,0.16295 -0.163,0.24444 -0.2444,-0.12222 c -0.5965,0.73087 -0.8709,1.45178 -0.6926,2.11845 l -0.8555,-0.65185 0.6111,-0.16296 -0.1222,-0.40739 c -0.3696,0.0988 -0.5984,-0.0975 -0.8148,-0.61108 l 0.9777,-0.7333 -0.4481,-0.93699 -0.041,-0.16296 0.4074,-0.12221 z m 23.5878,0.24443 0.4481,0.12222 -0.082,0.24443 -0.4481,-0.12222 0.082,-0.24443 z m -14.9511,0.0815 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 4.6034,0 0,0.0815 -0.041,0.16296 -0.2036,-0.0407 0.2444,-0.20369 z m -10.5513,0.0407 c 0.1566,0.1293 0.3291,0.24633 0.5703,0.36665 l 0,-0.16296 0.082,0.36665 0,0.0815 -0.4481,0.12221 -0.2037,-0.77403 z m 23.2211,0.0407 0.4482,0.12222 0,0.97773 -0.2852,0.12222 -0.041,0.2037 -0.163,1.46659 -0.4074,0.57035 0.2037,0.2444 -0.3259,0.2037 0.3667,0.5704 -0.2852,0.1222 -0.2444,-0.041 -0.041,1.1407 -0.3259,1.1407 -0.4482,-0.163 -0.2037,0.6926 c 0.013,0.024 0.029,0.056 0.041,0.082 l -0.1222,0.081 0.163,0.041 c 0.083,0.2038 0.1422,0.4408 0.1629,0.6925 l -0.041,0.2037 -0.1629,-0.2444 -0.2852,-0.082 -0.041,0.041 0.2444,-1.5481 0.7741,-2.8517 0.4481,-0.81478 -0.2852,-1.05921 0.5296,0.16296 0.326,-2.07769 z m -28.4357,0.0407 -0.041,0.44813 -0.2852,0.0815 -0.2851,-0.16296 -0.2037,0.0815 0.3666,0.48887 -0.4888,0.61108 -0.326,-0.48887 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48887 -0.1629,0 -0.2037,0.28517 -0.2037,0 0.3666,-0.61108 1.2629,-0.2037 z m 4.8072,0 0.1629,0.65183 -0.2036,0.0407 -0.2037,-0.61108 0.2444,-0.0815 z m -7.0886,0.28518 0.2037,0 0,0.28517 -0.2037,0.24443 -0.2444,0 0,-0.32591 c 0.078,-0.065 0.1633,-0.13004 0.2444,-0.20369 z m 32.5911,0.40738 1.5074,1.34439 -0.1223,0.44812 -0.5296,-0.16295 -0.4888,1.79249 -0.2037,-0.041 0.4074,-2.48505 -0.2852,0.12222 -0.3259,-0.0815 0.041,-0.937 z m 4.4813,0 0.774,0 -0.1222,0.40739 -0.6925,-0.20369 0.041,-0.2037 z m -27.4173,0.12222 0.041,0 0.2037,0.2037 -0.1629,0.0407 -0.082,-0.24443 z m 3.4221,0 0.5703,0 0,0.2037 -0.5703,0 0,-0.2037 z m 5.4998,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.16296 c -0.014,0.0596 -0.024,0.0991 -0.041,0.16295 l 0.4073,0.12222 c -0.1394,0.12918 -0.3454,0.16298 -0.6518,0.16295 l -0.2037,0 0,-0.20369 0.4889,-0.24443 z m -4.6443,0.0407 0.6518,0.20369 0,0.44813 c -0.414,0 -0.6518,0.1829 -0.6518,0.48886 l -0.1629,0 c 0,-0.45892 -0.1314,-0.73324 -0.4074,-0.7333 l 0,-0.20369 0.5703,-0.20369 z m 11.4476,0.0407 0.326,0.61109 -0.041,0.20369 -0.326,-0.61108 0.041,-0.2037 z m -18.088,0.0407 0.5703,0.28518 0.6519,2.36289 0,0.082 -0.3667,-0.5296 -0.2037,0 0.5704,0.8555 0.041,0.6518 0.2851,0.1222 -0.3666,0.5704 -1.1814,-4.39985 z m 15.44,0 0.2445,0.0407 -0.2852,1.09995 -0.2445,-0.0407 0.2852,-1.09995 z m -7.0885,0.12222 0.5703,0.20369 0,0.24444 -0.774,0 0.2037,-0.24444 0,-0.20369 z m -9.2885,0.20369 0.4889,0.48887 0.041,0.16296 -0.4889,0.12221 -0.163,-0.65182 0.1223,-0.12222 z m 1.9962,0.12222 0.3259,0.32591 0,0.0815 0.082,0.0407 0.2037,0.24443 -0.1629,0.16296 0.6518,2.36284 -0.2852,-0.1629 -0.8148,-3.05546 z m -7.8219,0.0815 0.082,0.36665 -0.2037,0.0407 -0.082,-0.36665 0.2037,-0.0407 z m 2.4444,0.20369 -0.082,0.61109 0.082,0.24443 0.2444,0.16295 c -0.776,0.20748 -1.0756,0.74808 -0.937,1.71108 l 0.3667,0.5703 -0.2037,0.041 0.5703,0.2444 -0.1629,1.3037 0.082,0.2852 0.2444,0.1222 -0.2037,0.041 0.5703,0.8555 c -0.1409,0.1125 -0.2863,0.2395 -0.4481,0.4074 l -0.082,-0.2037 -0.4074,0.1222 -0.082,-0.3666 0.4074,-0.1223 -0.2037,-0.8147 -0.4481,0.1222 -0.2037,-0.8148 0.4074,-0.1222 -0.1222,-0.4481 -0.6519,0.2037 0.082,0.4481 -0.2037,0.041 -0.1629,-0.6111 c 0.1174,-0.7457 0.3563,-1.1839 0.6518,-1.2629 l -0.082,-0.163 -0.4074,0.082 -0.1629,-0.6111 0.2037,-0.041 1.3444,-2.03691 z m 31.3282,0.2037 0.2444,0.0407 0.2444,0.28517 0.2852,-0.12222 0.6926,0.16296 0.4481,2.28134 -0.041,0.2037 0.2852,0.082 0.2851,-0.1222 0.2445,0.041 -0.6926,2.648 c -0.6159,-0.3229 -0.8481,-0.9056 -0.6111,-1.7925 l -0.2037,-0.082 0.2852,-0.1222 0.1222,-0.4889 0.082,-1.1814 -0.5703,-0.1222 -0.6926,2.6888 0.2444,0.2851 -0.3666,0.1222 -0.041,0.2037 0.2037,2.1999 -0.8148,0 c -0.1161,0.5674 -0.1894,1.0843 -0.2444,1.5074 -0.1694,0.1075 -0.2849,0.3971 -0.4074,0.8555 l -0.3259,0.1222 -0.4482,-0.1222 -0.1629,-0.937 0.5703,-0.4889 0,-0.1222 c 0.055,0.088 0.1487,0.1672 0.2852,0.2037 l 0.2037,0.041 0.082,-0.2037 0.2444,-1.874 0.3667,-0.5296 0.7333,-3.6257 0.2444,-0.8963 -0.4481,-0.1222 -0.3667,1.3444 -0.3666,0.1222 0.2444,0.2852 -0.1222,0.4888 -0.5296,-0.1629 0.8148,-3.09618 z m -9.207,0.12221 0.2037,0.0407 -0.2445,0.89624 -0.2851,0.163 -0.2037,-0.082 0.5296,-1.01851 z m 6.0701,0 0.2037,0.0407 -0.082,0.40739 -0.2445,-0.0407 0.1222,-0.40739 z m -24.973,0.0815 0.2037,0.81474 -0.2037,0.041 -0.2444,-0.774 0.2444,-0.0815 z m -6.7219,0.0407 0.041,0 0.1222,0.44813 -0.2037,0.0407 -0.041,-0.12222 c 0.028,-0.10614 0.05,-0.23043 0.082,-0.32591 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.2614,0.0407 0.2444,0.0407 -0.2036,0.69254 -0.2037,-0.041 0.1629,-0.69254 z m -26.5617,0.0407 0.1222,0.44813 -0.3259,0.48891 -0.082,-0.3667 0.2851,-0.57034 z m 13.8919,0.0815 0,0.0407 -0.3259,0.2037 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1891,-0.0178 0.3782,-0.0562 0.5296,-0.0815 z m -11.7328,0.24443 0.1223,0.12222 -0.2037,0.0815 -0.041,-0.16295 0.1222,-0.0407 z m 27.1321,0.12222 0.7741,0.20369 -0.041,0.2444 -0.7741,-0.2037 0.041,-0.24439 z m -8.7181,0.0407 0.5703,0.16299 -0.082,0.2037 -0.5296,-0.1222 0.041,-0.24449 z m -15.4808,0.0407 0,0.61109 0.4482,0 c 0,0.3379 0.036,0.6266 0.1222,0.8148 -0.2102,0.043 -0.4006,0.095 -0.5704,0.1629 l 0,-0.041 -0.3666,-0.4074 -0.6518,0.2037 c 0,-0.1101 -0.034,-0.2077 -0.082,-0.2851 l -0.2445,-0.8963 1.3444,-0.16295 z m 2.8925,0 0.2852,0.20369 0.2037,0 1.8739,-0.20369 0,0.20369 -0.2851,0.6518 c 0.3992,-0.2212 0.7009,-0.4734 0.8148,-0.77401 0.071,0.0934 0.1312,0.19371 0.2036,0.28521 l -0.3666,0.041 0,0.4481 0.4074,0 0.2444,0.2852 0.163,-0.2445 c 0.093,0.1068 0.1891,0.2221 0.2851,0.3259 l 0.041,0.163 -0.2037,-0.2037 -0.2444,0.1222 0.041,0.6926 -0.2444,0.1222 -0.082,0.163 -0.6518,-0.1223 c -0.065,-0.1287 -0.107,-0.2443 -0.1223,-0.3666 l 0.326,0 0.3666,0.082 0.041,-0.2037 -0.2852,-0.5296 c -0.2711,-0.072 -0.5057,-0.065 -0.7333,-0.082 l -0.2037,-0.2037 -0.082,0.1629 c -0.064,0 -0.1436,-0.01 -0.2037,0 l -0.5296,-0.611 -1.0592,0.2037 -0.774,-0.2037 -0.4481,0.4481 -0.163,-0.2444 0,-0.2037 c 0.2415,0 0.4326,0.016 0.6111,0 0.5354,-0.049 0.774,-0.1779 0.774,-0.40743 z m 16.2955,0 0.2445,0.0815 -0.2445,0.89629 -0.2444,-0.082 0.2444,-0.89629 z m -19.962,0.40739 0,0.4481 0.4074,0 0,-0.4481 -0.4074,0 z m -1.5481,0.082 0.2445,0.2852 -0.2037,0.3666 -0.163,-0.5296 0,-0.082 0.1222,-0.041 z m -10.5106,0.1222 0.041,0.3259 -0.163,0.041 0.1222,-0.3666 z m 21.836,0 0.163,0 0,0.2445 -0.163,0 0,-0.2445 z m -16.6622,0.041 0.5296,0.937 0.041,0.163 -0.2037,0.2851 0.7741,1.8333 -0.5296,0.3259 -0.2852,-1.5073 -0.1222,-0.4482 -0.2444,-0.1222 -0.163,-1.4258 0.2037,-0.041 z m -0.8962,0.041 1.1407,4.2369 -0.326,-0.082 0,-0.082 -0.2851,-0.163 -0.6926,-3.4628 -0.041,-0.2037 -0.2852,-0.1222 0.4889,-0.1222 z m 19.8805,0.082 0.2445,0.082 -0.1222,0.4074 -0.2037,-0.041 0.082,-0.4481 z m -7.7811,0.082 0.6518,0 0,0.2037 c -0.1266,0.036 -0.2232,0.098 -0.3259,0.163 l -0.3259,-0.082 0,-0.2852 z m -9.207,0.1222 0.1222,0.3667 -0.2036,0.041 -0.1223,-0.3667 0.2037,-0.041 z m 15.1141,0.041 0,0.1223 -0.082,0 0.082,-0.1223 z m 9.9811,0.2445 0.2444,0.041 -0.163,0.4888 -0.2036,-0.041 0.1222,-0.4888 z m 5.2553,0 0.2444,0.041 -0.1629,0.4888 -0.2037,-0.041 0.1222,-0.4888 z m -22.8138,0.082 0.3667,0 c -0.095,0.1753 -0.2075,0.273 -0.3667,0.2852 l 0,-0.2852 z m 7.1293,0 0.163,0 0,0.2037 -0.163,0 0,-0.2037 z m -1.5073,0.041 0.2852,0.082 -0.2852,0 0,-0.082 z m 4.7257,0.082 0.3259,0.6111 -0.1222,0.4074 -0.4481,-0.1223 0.2444,-0.8962 z m 1.0185,0.2852 0.2037,0.041 c -0.079,0.2957 0.1602,0.5611 0.6518,0.6925 l -0.2445,0.8963 c -0.1373,-0.1603 -0.2847,-0.29 -0.4481,-0.4074 l 0.041,-0.2037 -0.4481,-0.1222 0.2444,-0.8963 z m -5.8664,0.041 0.1222,0 0.082,0.041 -0.1222,0.4481 -0.163,-0.082 0.082,-0.4074 z m 3.3813,0 0.5703,0 -0.082,0.2037 -0.2444,0 c -0.09,-0.065 -0.1747,-0.1267 -0.2444,-0.2037 z m -7.4145,0.1222 c -0.014,0.04 -0.029,0.079 -0.041,0.1222 l -0.1222,-0.041 0.1629,-0.082 z m -15.603,0.1629 0.082,0.163 0.3259,2.9332 0.4074,-0.1222 -0.1222,-0.3667 0.6111,0.2445 c -0.4434,0.1185 -0.6365,0.4147 -0.5296,0.8147 l 0.2444,0.1222 -0.2444,0.7333 0.041,0.2037 0.4481,-0.1222 -0.1222,-0.4481 0.2037,-0.041 0.1222,0.4481 -0.3666,1.1407 -0.3667,-0.082 c -0.056,0.071 -0.068,0.1343 -0.1222,0.2037 l -0.4481,-1.5888 0.041,-1.1 -0.3259,-0.082 0.2037,-0.2851 -0.041,-0.2445 -0.4889,0.1223 -0.082,-0.163 0,-0.082 0,-0.163 c 0.3324,-0.117 0.5134,-0.4115 0.4481,-0.9369 l -0.4481,-0.7741 -0.041,-0.1629 0.5703,-0.3667 z m 31.1653,0 0.5296,0.1222 -0.2037,0.6926 -0.5296,-0.1222 0.2037,-0.6926 z m -28.9246,0.2852 -0.4074,0.082 0.041,0.2037 0.4074,-0.1222 -0.041,-0.163 z m 4.7257,0 0.1222,0.3667 -0.2037,0.041 -0.1222,-0.3667 0.2037,-0.041 z m 8.5144,0.041 0.2037,0.082 -0.2444,0 0.041,-0.082 z m 16.9066,0 0.5296,0.1222 -0.1222,0.4889 0.4481,0.1222 0.163,-0.6926 0.4481,0.5704 -0.5703,0.8148 -0.163,1.8739 -0.4481,0.5297 -0.2444,-0.041 c 0.5137,-1.9216 0.4109,-2.921 -0.2445,-3.0962 l 0.2037,-0.6926 z m -20.0435,0.082 0.2037,0 -0.1222,0.4481 -0.163,0 0,-0.2037 0.082,-0.2444 z m 1.7925,0 0.2037,0 c 0.1368,0.1613 0.1866,0.3854 0.163,0.6518 l -0.1222,0 -0.2445,-0.6518 z m -2.5665,0.1222 0.2037,0.3667 -0.2852,-0.082 0.082,-0.2852 z m 12.5475,0.163 0.2445,0.082 0.2851,0.2037 -0.1629,0.2444 c -0.1007,-0.099 -0.2134,-0.1792 -0.3259,-0.2444 l -0.041,-0.2852 z m -7.17,0.1629 0.2852,0 c 0,0.072 0.024,0.1467 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.7333,0.082 0.4074,0.1223 -0.3259,0 -0.082,-0.1223 z m -6.7219,0.1223 0.2037,0.082 -0.082,1.2221 -0.082,0.2037 -0.2037,-0.081 0.041,-0.4889 0.2037,0 0,-0.6518 -0.082,-0.2851 z m 14.6252,0.041 0.326,0.082 -0.163,0.6518 -0.2037,-0.082 -0.041,-0.5296 0.082,-0.1223 z m -15.3585,0.041 0,0.2037 -0.1222,0 0.1222,-0.2037 z m -1.4666,0.1629 0.1222,0 0.1222,0.163 0.082,0.2851 -0.3259,-0.4073 0,-0.041 z m 4.522,0.041 0.2037,0 -0.082,0.2037 -0.163,0 0.041,-0.2037 z m -5.2553,0.163 -0.041,0.2444 c -0.1412,0.6766 -0.1364,1.0308 0.1222,1.1 l -0.2444,0.2036 -0.082,0.163 -0.041,0.2444 -0.1222,0.041 -0.163,-0.5703 0.4481,-0.082 c -0.2059,-0.7706 -0.1474,-1.243 0.1223,-1.3444 z m 1.874,0 0.041,0.1222 0.082,-0.082 0.1629,0.6518 0,0.1222 -0.4888,0.7333 0.2851,0.081 -0.3259,0.1222 -0.082,0.2445 0.2445,0.2851 -0.082,0.163 -0.4074,0.5703 0.041,0.8556 -0.6518,1.3036 0.2444,0.2852 -0.4889,-0.163 0.3667,-1.3444 -1.1815,0.7333 0.2445,0.2852 -0.8555,0.4481 -0.082,1.0185 -0.4074,0.6926 c 0.08,-0.4995 0.011,-0.7981 -0.2037,-0.8556 l 0.2851,-0.1629 0.041,-0.2037 0.2037,-1.3036 c 0.1375,-0.1299 0.2765,-0.2715 0.4074,-0.4074 l 0.4482,0.3259 c -0.053,-0.2116 -0.1577,-0.3754 -0.2445,-0.5296 0.051,-0.055 0.1128,-0.1065 0.163,-0.163 l 0.2444,0.041 0.082,-0.3666 0.3667,-0.163 -0.163,-0.163 c 0.072,-0.092 0.134,-0.1912 0.2037,-0.2851 l 0.7333,0.041 0.163,-0.6111 -0.4074,-0.1222 c 0.071,-0.1075 0.135,-0.2161 0.2037,-0.3259 l 0.2851,0.082 0.2852,-1.0592 c 0.1084,-0.2 0.2227,-0.4049 0.3259,-0.6111 l -0.1222,-0.163 0.041,-0.1222 z m 11.7328,0.041 0.2037,0.4074 0,0.041 -0.4889,0 c 0.012,-0.071 0.03,-0.1355 0.041,-0.2037 l 0.2444,-0.2445 z m -22.162,0.041 0.082,0.2851 -0.082,0 0,-0.2851 z m 30.432,0.2037 0.4888,0.1222 -0.4074,0.937 c -0.091,-0.1361 -0.2088,-0.2648 -0.3666,-0.3667 l 0.2852,-0.6925 z m -10.8773,0.1629 0.2037,0.041 -0.2037,0 0,-0.041 z m 0.9777,0.041 0.4074,0.1222 -0.041,0.163 -0.2037,0.041 -0.1629,-0.2852 c 0.01,0 -0.01,-0.037 0,-0.041 z m -8.3922,0.3259 0.4074,0.082 -0.163,0.6518 -0.2851,-0.5703 0.041,-0.163 z m 23.9137,0.041 c 0.452,0.2793 0.6049,0.7683 0.4074,1.5074 l -0.5296,1.0592 c -0.1997,1.1223 -0.2914,1.891 -0.2852,2.4036 l -0.1629,-0.041 0.041,-0.7741 0.1222,-0.4888 -0.3666,-0.7741 0.8962,-2.1184 -0.1222,-0.774 z m -21.836,0.1222 0.2444,0 0,0.2037 -0.2444,0 0,-0.2037 z m 12.0994,0 0.041,0 -0.1629,0.5704 c -0.02,0.077 -0.028,0.1306 -0.041,0.2037 l -0.041,0 0.2037,-0.7741 z m -19.962,0.041 0.2037,0.041 0.1222,0.2445 -0.3666,-0.1222 0.041,-0.163 z m -4.1146,0.2037 0.041,0.2037 -0.2852,0.5296 -0.041,-0.1629 0.2852,-0.5704 z m 3.6257,0 c 0.1218,0.056 0.2252,0.1143 0.4074,0.163 l -0.082,0.3666 -0.1629,-0.2444 -0.082,-0.041 -0.082,-0.2444 z m 31.1245,0.082 0.2445,0.082 -0.1223,0.4889 -0.2444,-0.082 0.1222,-0.4889 z m -25.4618,0.082 c 0.1306,0.01 0.286,0.02 0.4482,0.041 l -0.1223,0.3667 c -0.2956,-0.079 -0.5499,0.1592 -0.6925,0.6925 l -0.4481,-0.774 c 0.047,-0.1747 0.2132,-0.256 0.4888,-0.2852 l 0.3667,0 -0.041,-0.041 z m 14.0142,0 0.082,0 0.1222,0.041 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.2444 z m -8.1478,0.041 0.2852,0 -0.1222,0.5296 -0.2445,-0.082 c 0.037,-0.1539 0.063,-0.3101 0.082,-0.4481 z m 0.8555,0 0.5704,0 0,0.082 -0.3667,0.5704 0.1223,0.1629 -0.6111,-0.1629 c 0.107,-0.1606 0.1904,-0.4143 0.2851,-0.6518 z m 1.0593,0 0.2444,0 -0.041,0.082 -0.2037,-0.041 0,-0.041 z m 2.2406,0 0.4889,0 -0.1223,0.3667 -0.2037,0.041 0,0.4481 0,0.041 -0.082,0.163 0.041,0.4481 -0.1629,0.041 c -0.1809,-0.2054 -0.2427,-0.4948 -0.2037,-0.8555 0,-0.026 0,-0.055 0,-0.082 0.012,-0.083 0.017,-0.1538 0.041,-0.2445 l 0.2037,-0.3666 z m 0.8555,0 0.7333,0 0.3259,0 -0.041,0.2037 -0.2444,0 0,0.4889 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.2852 -0.4889,0.1222 -0.041,-0.5296 0.2444,-0.041 0,-0.4888 -0.2851,0.041 -0.041,-0.2445 z m -7.6996,0.082 0,0.7741 c -0.2653,-0.083 -0.4074,-0.289 -0.4074,-0.6518 0.1826,0 0.2999,-0.043 0.4074,-0.1223 z m 5.5404,0 0.4074,0.1223 -0.082,0.3666 -0.4481,-0.1222 0,-0.041 0.163,-0.2037 -0.082,0 0.041,-0.1222 z m 11.9365,0 0.1222,0.6519 c -0.026,-0.012 -0.051,-0.033 -0.082,-0.041 l -0.3259,0.082 -0.041,0.2444 0,0.2852 -0.041,0.082 -0.2037,-0.041 0.041,-0.2037 0.2445,-0.3667 0.1629,-0.2852 -0.4481,-0.1222 0.5703,-0.2851 z m -18.8213,0.082 c 0.092,0.016 0.1761,0.041 0.2851,0.041 l 0,0.6519 -0.2444,-0.082 -0.041,0.1222 -0.1222,0 0,0.4481 0,0.082 0.4481,0.1222 0.041,-0.2037 0.163,0 -0.5296,0.7741 -0.2445,-0.326 -0.082,0.3667 0.2445,0.082 -0.041,0.041 0.5296,0.1222 0.082,0.2444 -0.1222,0.2037 c -0.155,0.076 -0.2588,0.2271 -0.2852,0.4482 l -0.041,0.1222 -0.163,0 c 0,-0.03 0.01,-0.052 0,-0.082 l 0.082,-0.4481 -0.1629,-0.041 c -0.084,-0.4332 -0.1524,-0.7924 -0.2445,-1.0593 l 0.4482,-1.6295 z m -7.2923,0.4482 c 0.2126,0.1196 0.3124,0.3224 0.2852,0.611 l -0.2037,-0.1222 -0.082,-0.4888 z m 18.3325,0 0.041,0 c -0.01,0.03 -0.034,0.052 -0.041,0.082 -0.03,0.1371 -0.06,0.2831 -0.082,0.4074 -0.092,0.016 -0.1761,0.041 -0.2852,0.041 l 0,0.4888 -0.2444,0 0.082,-0.937 0.5296,0 0,-0.082 z m -12.3846,0.082 0.2852,0 0.1222,0.041 0,0.4074 -0.2037,0 0,0.2036 0.082,0.3667 c -0.1679,-0.1492 -0.2705,-0.4892 -0.2852,-1.0185 z m 25.3396,0.041 0.4481,0.1222 -0.1222,0.4074 -0.4481,-0.1222 0.1222,-0.4074 z m -33.9355,0.041 c -0.044,0.05 -0.077,0.1097 -0.1222,0.1629 l -0.041,-0.1222 0.1629,-0.041 z m -0.8963,0.041 0.4482,0.9369 -0.2037,0.041 -0.081,-0.041 c 0.011,-0.045 0.028,-0.075 0.041,-0.1222 l -0.2445,-0.082 -0.2037,-0.6925 0.2445,-0.041 z m 17.5178,0 0.4073,0.1222 -0.082,0.2444 -0.3666,-0.2444 0.041,-0.1222 z m 0.7332,0 0.2037,0.082 -0.1222,0.4073 -0.2037,-0.041 0.1222,-0.4481 z m 7.1294,0.082 0.082,0.1222 0.2851,0.082 0.082,-0.041 -0.2037,1.3444 -0.6925,2.5258 -0.2444,0.4888 -0.082,-0.3666 0.2036,-0.2852 -0.2036,-0.2037 -0.2445,0.082 -0.1629,-0.2851 0.2851,-0.1223 0.2037,0.041 0.041,-1.0592 0.2852,-0.9777 0.4074,0.082 0.1222,-0.5296 0.041,0 0,-0.082 c -0.1251,-0.2297 -0.1809,-0.5083 -0.2037,-0.8148 z m 3.0554,0.041 0.2444,0.082 -0.082,0.2444 0,0.041 -0.163,0.5296 -0.2037,-0.082 0.2037,-0.8148 z m -20.2472,0.2037 0.4073,0.1222 -0.1222,0.3666 -0.2851,-0.4888 z m -10.6329,0.3259 0.041,0.1629 -0.1222,0.041 0,-0.1629 0.082,-0.041 z m 5.5405,0.041 0.2037,0.082 -0.082,0.3666 0.2037,0.041 -0.2445,0.1222 -0.1222,0.4889 -0.1629,-0.6111 0.2037,-0.4889 z m 27.4172,0 0.3667,0.082 c -0.05,0.1857 -0.024,0.3352 0,0.4481 l -0.3259,-0.082 c 0.053,-0.2 0.019,-0.3353 -0.041,-0.4481 z m -3.9516,0.082 0.041,0 c -0.023,0.1202 -0.051,0.2387 -0.082,0.3666 l -0.041,0 0.082,-0.3666 z m -17.314,0.041 0.2037,0.041 -0.2445,0.8147 -0.2037,-0.041 0.2445,-0.8148 z m 14.7474,0.041 c 0.1068,0.098 0.258,0.168 0.4074,0.2444 l -0.1629,0.3259 -0.163,-0.041 -0.041,-0.041 c -0.048,-0.04 -0.1096,-0.09 -0.1629,-0.1222 l 0.1222,-0.3667 z m -21.9175,0.1629 0.082,0 c 0.01,0.063 0,0.1434 0,0.2037 l -0.082,-0.2037 z m 32.4689,0 0.3259,0.5296 -0.4481,-0.1222 0.1222,-0.4074 z m -33.2429,0.3667 0.041,0.1222 -0.163,-0.041 0,-0.041 0.1222,-0.041 z m 6.7626,0.1629 0.2037,0.082 -0.7333,2.811 -0.2037,-0.082 0.7333,-2.811 z m 9.4515,0 -0.2037,0.8148 0,0.082 c -0.07,0.01 -0.1708,0.032 -0.2445,0.041 l 0.2445,-0.8963 0.2037,-0.041 z m 1.5888,0.163 c 0,0.051 0,0.1083 0,0.1629 -0.1404,0.1712 -0.5033,0.2873 -1.0185,0.4074 l 0.082,-0.2444 0.937,-0.3259 z m 8.5959,0.1222 c 0.1067,0.1844 0.2374,0.3374 0.3666,0.4889 l 0,0.1222 0.163,0.041 c 0.068,0.068 0.1301,0.1436 0.2037,0.2037 l -0.163,0.6518 -0.2037,-0.041 c 0.071,-0.2668 -0.1676,-0.4926 -0.6111,-0.6111 l 0.2445,-0.8555 z m 1.0184,0.041 0,0.1222 -0.082,-0.082 0.082,-0.041 z m 5.5813,0.041 0.4481,0.1222 -0.041,0.2037 -0.4889,-0.1222 0.082,-0.2037 z m -24.1989,0.041 0.1222,0.4481 0.2444,0.8963 -0.4481,0.7333 0.3259,-0.1223 0.2037,0.041 -0.1222,0.3667 -0.2037,-0.041 -0.2037,-0.2444 -0.2444,-0.082 -0.082,0.4481 -0.2445,-0.041 0.6519,-2.4036 z m -1.2222,0.082 0.2037,0.082 -0.1222,0.5296 -0.2037,-0.041 0.1222,-0.5704 z m 7.1293,0 0.2037,0.041 -0.082,0.3666 -0.2037,-0.041 0.082,-0.3666 z m 14.5438,0.041 -0.082,0.2444 0.6926,0.163 0.082,-0.2037 -0.6926,-0.2037 z m -28.6802,0.082 c 0.026,0 0.055,0 0.082,0 -0.1259,0.1796 -0.3023,0.3289 -0.5296,0.4481 l -0.041,-0.2037 c 0.1448,-0.1144 0.3062,-0.2068 0.4889,-0.2444 z m 13.3624,0.2037 c 0.1272,0.1138 0.2391,0.2232 0.2851,0.3259 l -0.2851,-0.082 0,-0.2444 z m -12.955,0.2037 0.041,0 0.3259,0.1222 c 0.028,0.1064 0.051,0.1975 0.082,0.2852 l -0.2037,0.774 -0.2037,-0.041 c 0.1427,-0.5334 0.011,-0.858 -0.2851,-0.937 l -0.2037,0.082 0.041,-0.1629 0.3259,-0.082 0.082,0 0,-0.041 z m -2.5665,0.041 0.082,0.2444 -0.1223,-0.041 0.041,-0.2037 z m 13.4438,0 0.2037,0 c -0.015,0.1005 -0.023,0.219 -0.041,0.3259 l -0.163,0.1629 0,-0.4888 z m 8.5552,0 0.3666,0 -0.041,0.1629 -0.4074,-0.1222 c 0.02,-0.019 0.064,-0.021 0.082,-0.041 z m 1.0184,0 0.4074,0 0,0.2037 c -0.1951,0 -0.3609,0.037 -0.4889,0.082 l 0.082,-0.2852 z m -19.4324,0.082 0.1629,0.041 -0.082,0.3259 -0.082,-0.3667 z m 13.8105,0.1222 0,0.5296 -0.041,0.041 -0.041,0.1629 -0.2445,0 0.2037,-0.6925 0.1222,-0.041 z m 0.8555,0 0.937,0 -0.041,0.1629 0,0.1223 -0.2445,0 -0.2851,-0.041 -0.082,0.041 -0.2852,0 c 0,0.015 0,0.026 0,0.041 l -0.082,-0.041 0.082,-0.2852 z m 3.0554,0.1629 -0.082,0.3667 -0.3667,0 -0.1222,-0.1222 0.041,-0.163 c 0.2044,-0.021 0.3677,-0.034 0.5296,-0.082 z m 9.044,0 c 0.6945,0.3642 0.9331,1.0147 0.6926,1.9148 l -0.4889,-0.1222 -0.1629,0.5296 0.3666,0.5703 -0.8555,1.2629 0.2037,0.041 -0.2444,0.1222 -0.082,0.2852 0.1629,1.3036 -0.5703,0.2445 0.2037,0.041 -0.3667,0.5703 c -0.1386,0.963 0.1611,1.5036 0.937,1.711 l -0.2444,0.163 -0.082,0.2444 0.082,0.6111 -1.3444,-2.0369 -0.2037,-0.041 0.163,-0.6111 0.4481,0.082 0.041,-0.163 c -0.2956,-0.079 -0.5344,-0.5172 -0.6518,-1.2629 l 0.1629,-0.6111 0.2037,0.041 -0.082,0.4482 0.6926,0.2037 0.082,-0.4482 -0.4074,-0.1222 0.2444,-0.8148 0.4074,0.1223 0.2037,-0.8148 -0.4074,-0.1222 0.082,-0.3667 0.4481,0.1222 0.082,-0.3666 -0.4073,-0.1222 0.1629,-0.6111 c 0.3695,0.099 0.5984,-0.1382 0.8148,-0.6518 0.1069,-0.4 -0.01,-0.6148 -0.4481,-0.7333 l 0.1629,-0.6111 z m -24.5248,0.041 0.4889,0.1223 -0.4074,0.5703 -0.2444,-0.082 0.1629,-0.6111 z m 23.3027,0 c 0.1376,0.073 0.2979,0.1151 0.4481,0.163 l -0.1222,0.4074 -0.3259,-0.5296 0,-0.041 z m -16.703,0.082 0.6518,0 0.2037,0.2445 0.163,0 -0.163,0.6111 -0.611,0 -0.2445,-0.8556 z m 5.7035,0.2037 0.082,0 c -0.036,0.1613 -0.082,0.3166 -0.1222,0.4482 l -0.082,0 0.1222,-0.4482 z m 4.8886,0.041 0,0.163 -0.082,0.2444 -0.2037,0 0.041,-0.2037 0.2445,-0.2037 z m -7.7404,0.082 0.2037,0.041 -0.041,0.082 -0.2037,0 0.041,-0.1222 z m -8.6366,0.082 0.6518,0.3667 -0.2851,1.0185 -0.2037,-0.082 -0.2445,-0.937 0.082,-0.3667 z m 20.899,0 0.4889,0.1223 0.3667,1.1407 -0.1223,0.4481 -0.2037,-0.041 0.1223,-0.4481 -0.4482,-0.1223 -0.041,0.2037 0.2445,0.7333 -0.2445,0.1222 c -0.1069,0.4001 0.086,0.6963 0.5296,0.8148 l -0.5703,0.2445 0.082,-0.3667 -0.4074,-0.1222 -0.3259,2.9332 -0.082,0.1629 -0.5703,-0.3259 0.082,-0.2037 0.4073,-0.774 c 0.069,-0.5531 -0.1193,-0.879 -0.4888,-0.9777 l 0.1222,-0.3667 0.4889,0.1222 0.041,-0.2444 -0.2037,-0.2852 0.3259,-0.082 -0.041,-1.0999 0.4481,-1.5888 z m -18.9843,0.041 0.4074,0.1223 -0.041,0.2037 -0.4074,-0.1223 0.041,-0.2037 z m 11.2032,0 0.163,0 c 0.066,0.058 0.1536,0.1175 0.2444,0.163 l -0.041,0.1222 -0.082,0.2852 -0.2852,-0.5296 0,-0.041 z m -19.962,0.041 0.3259,0.4889 -0.2445,-0.2444 -0.2036,-0.041 0.1222,-0.2037 z m 1.0999,0.082 0.163,0.041 0,0.163 -0.163,0.6518 -0.2037,-0.082 0.2037,-0.774 z m 31.0838,0 c 0.044,0.1029 0.088,0.1838 0.1629,0.2037 l 0.2037,0.041 0,0.4482 -1.711,6.3552 -0.4889,-0.1222 0.2852,-0.1222 0.041,-0.2037 0.6926,-3.4628 0.2851,-0.1222 0.041,-1.0592 0.4889,-1.9555 z m 1.0184,0 0.2037,0.041 -0.2037,0.6519 -0.2036,-0.082 0.1629,-0.5704 0.041,-0.041 z m -15.6437,0.1223 0.041,0.4481 -0.1222,0.041 -0.082,-0.3259 0.163,-0.163 z m 12.792,0 0.2037,0.041 -0.1222,0.3666 -0.2037,-0.041 0.1222,-0.3666 z m -9.5736,0.041 c 0.1346,0.034 0.3237,0.061 0.4889,0.082 l -0.1223,0.4888 -0.4481,-0.1629 0.082,-0.4074 z m -20.9805,0.3259 0.4888,0.1222 -0.082,0.2037 -0.1629,1.3851 c 0.01,-0.1844 -0.023,-0.3523 -0.082,-0.5703 l -0.2037,-0.8148 0.041,-0.3259 z m 3.2998,0.041 0.4482,0.082 c -0.1069,0.4 -0.01,0.695 0.2851,0.774 l -0.041,0.2037 c -0.4433,-0.1185 -0.7027,-0.1037 -0.774,0.163 l -0.2037,-0.041 -0.082,-0.6111 0.3666,-0.5704 z m 16.8252,0.041 0.2851,0 -0.082,0.2444 -0.2037,0 0,-0.2444 z m -13.7698,0.1629 0.2037,0.041 -0.041,1.0593 -0.4074,-0.1223 0.2445,-0.9777 z m 20.125,0.2037 0.4482,0.163 -0.041,0.1629 -0.4889,-0.1222 0.082,-0.2037 z m 3.0962,0 0.2037,0.041 -0.4481,0.937 -0.2037,-0.041 0.2037,-0.8147 0.2444,-0.1223 z m -19.5139,0.1223 0.937,0.041 -0.1222,0.5703 -0.9778,0 0.163,-0.6111 z m 8.5959,0.1629 0.2037,0 0,0.041 -0.2037,-0.041 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3628,0 0.3259,0 0,0.2037 -0.3666,0 0,-0.1222 0.041,-0.082 z m -19.5139,0.041 0.3259,0.5296 -0.2852,0.1222 -0.2037,-0.041 c 0.062,-0.2333 0.1327,-0.4344 0.163,-0.6111 z m -4.3183,0.163 0.2037,0.041 -0.1223,0.3666 -0.2036,-0.041 0.1222,-0.3666 z m 32.3059,0 0.2037,0.041 c -0.107,0.4 -0.01,0.695 0.2852,0.774 l -1.4259,3.5035 0.2037,0.2445 -0.041,0.2037 -0.5296,0.8962 -0.2037,-0.041 0.1629,-1.4258 0.2445,-0.1222 0.1222,-0.4482 0.6926,-3.422 0.2851,-0.2037 z m -35.3613,0.1222 0.1222,0.8555 0.2037,0.1222 c -0.012,0.097 -0.014,0.1835 -0.041,0.2852 l 0,0.082 -0.041,-0.082 -0.2037,0.082 c 0.022,0.084 0.035,0.1372 0.041,0.2037 l -0.3667,0.1629 c -0.01,-0.044 -0.031,-0.08 -0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 0.163,-1.3444 z m 9.4514,0.041 0.6111,0.1629 -0.041,0.2037 -0.6926,0.082 0.1222,-0.4481 z m -4.8072,0.2444 0.2037,0.082 -0.163,0.5296 -0.2037,-0.041 0.163,-0.5703 z m 28.9653,0 0.2037,0.041 -0.2852,1.0185 -0.2037,-0.082 0.2852,-0.9777 z m -20.4916,0.1222 0.3666,0.5296 -0.1629,0.6111 -0.2037,-0.3259 -0.4074,-0.1222 c -0.1069,0.4 -0.4121,0.5667 -0.8555,0.4481 0.1069,-0.4 0,-0.6555 -0.4482,-0.774 l 0.041,-0.2037 0.4074,0.1222 0.163,0.2444 c 0.08,-0.2999 0.4464,-0.4543 1.0999,-0.5296 z m 10.8365,0.2037 0.1222,0 0,0.1223 -0.1222,-0.1223 z m 13.1179,0 0.8963,0.2445 -0.4481,1.7517 c -0.2956,-0.079 -0.3768,-0.5444 -0.163,-1.3443 l -0.4481,-0.082 0.1629,-0.5704 z m -6.1515,0.041 0.2851,0.5296 -0.041,0.2037 -0.2851,-0.5703 0.041,-0.163 z m -28.558,0.082 -0.2037,1.6296 -0.8148,0.2444 0.2445,-0.8962 c 0.449,-0.223 0.7308,-0.5469 0.774,-0.9778 z m 0.6926,0 0.2444,0.082 -0.082,0.3667 -0.2852,-0.082 0.1223,-0.3667 z m 21.8767,0.041 0.163,0.041 0,0.2445 -0.4074,0 0.2444,-0.2852 z m -9.5329,0.041 0.2037,0 0.163,0.2445 -0.2852,0 -0.082,0 0,-0.041 0,-0.2037 z m -6.9663,0.2445 0.4889,0.1222 -0.082,0.2444 -0.5296,0.937 -0.163,-0.2444 -0.2037,-0.082 -0.5296,0.2852 0.041,0.6518 c -0.2956,-0.079 -0.5041,0.048 -0.6111,0.4481 l -0.1629,-0.2444 -0.2037,-0.041 -0.2445,0.1222 0.2037,-1.6296 0.6111,0.163 0.1222,-0.4074 c 0.7391,0.1975 1.1561,0.074 1.2629,-0.3259 z m 2.8517,0.1222 0.2037,0.082 -0.082,0.3666 -0.2444,-0.041 0.1222,-0.4074 z m -7.8626,0.041 0.2037,0.082 -0.082,0.3666 -0.2444,-0.041 0.1222,-0.4074 z m 6.6405,0.041 0.2037,0.082 -0.082,0.4074 -0.2445,-0.041 0.1222,-0.4482 z m -9.2885,0.1222 0.2037,0.082 -0.2444,0.081 0.041,-0.1629 z m -0.041,0.2852 0.163,0.1222 0,0.041 -0.2037,-0.041 0.041,-0.1222 z m 15.7252,0.082 c 0,0.2065 -0.13,0.3082 -0.3259,0.3666 l -0.5296,0.041 0,-0.1629 0,-0.041 0.8555,-0.2037 z m 3.2591,0 c 0.013,0 0.029,-0.01 0.041,0 0.089,0.046 0.1749,0.1108 0.2037,0.2037 l -0.2444,0 0,-0.2037 z m 1.5481,0 0.4074,0 0.082,0.1222 -0.2037,0.8148 c -0.045,0 -0.075,0 -0.1222,0 l 0,0.2037 -0.2037,-0.2037 -0.4074,0 -0.163,-0.2445 0.1222,-0.4481 c 0.1893,0.051 0.3495,-0.044 0.4889,-0.2444 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.059 0,0.082 -0.099,0.3378 -0.3274,0.5985 -0.6519,0.7333 l -0.1222,-0.041 0.4482,-0.7741 z m 4.4405,0 -0.041,0.2037 -0.4889,0 0,-0.1223 c 0.2002,-0.028 0.3723,-0.051 0.5296,-0.082 z m 8.8811,0 0.2037,0.041 -0.082,0.3666 -0.2037,-0.041 0.082,-0.3666 z m -26.847,0.082 0.4074,0.1222 -0.1222,0.4481 -0.4074,-0.1222 0.1222,-0.4481 z m 9.7366,0.1222 0.163,0 -0.163,0.5703 0,-0.5703 z m -11.9772,0.163 -0.082,0.3666 0.4074,0.1222 0.1222,-0.3666 -0.4481,-0.1222 z m 4.9702,0.041 0.6925,0.2036 -0.1222,0.3667 0.4481,0.1222 0.163,-0.6111 0.3259,0.3667 c -0.3478,0.1723 -0.5887,0.4467 -0.7333,0.8148 -0.062,0.027 -0.089,0.046 -0.1222,0.082 l -0.2037,-0.041 c 0.1401,-0.4439 -0.02,-0.7271 -0.4074,-0.8148 l -0.2037,-0.041 c 0.072,-0.1147 0.1184,-0.2815 0.163,-0.4481 z m 16.9066,0 0.4074,0.1222 -0.082,0.2444 -0.4074,-0.1222 0.082,-0.2444 z m -14.4216,0.2036 0.1222,0.041 c -0.043,3e-4 -0.081,0 -0.1222,0 l 0,-0.041 z m -13.729,0.2445 0.4482,0.082 -0.082,0.2037 -0.4074,-0.1222 0.041,-0.163 z m 20.1658,0 0.1629,0.082 -0.2037,0.041 0.041,-0.1222 z m -10.4699,0.041 0.1629,0.2444 0.2037,0.041 c 0.1186,0.032 0.2233,0.042 0.3259,0.041 -0.1473,0.093 -0.295,0.1253 -0.4888,0.082 l -0.2037,0.6518 c 0.3876,0.088 0.6345,0.219 0.774,0.4482 l -0.4889,0.2444 0.4074,0.082 0.082,-0.2852 c 0.1221,0.2248 0.1522,0.5026 0.041,0.8555 l 0.6519,0.163 -0.3667,1.0999 -0.6111,-0.1222 0,2.1184 -1.3444,1.1407 0.2037,0.3259 -1.7517,2.4036 0.4481,-0.1222 0.2444,0.082 -0.1222,0.4074 -0.2852,-0.041 -0.2851,-0.3259 -0.2852,-0.041 -0.1222,0.4889 -0.2852,-0.082 2.4851,-7.7812 0.2444,-0.041 -0.2852,0.9778 0.6519,0.1222 0.4073,-1.3037 -0.4481,-0.082 0.041,-0.1222 -0.2037,-0.082 -0.2852,0 0.041,-0.1222 0.2852,-0.041 0.082,-0.2037 -0.2444,-0.082 0.1629,-0.5703 -0.2037,-0.2852 0.082,-0.2037 0.2852,-0.082 z m 6.6811,0.041 0.2037,0.041 -0.041,0.1222 -0.1629,-0.163 z m 7.8626,0 0.041,0.1629 -0.2851,-0.082 0.2444,-0.082 z m -20.0435,0.1222 0.4482,0.774 -0.326,0.163 -0.1629,-0.041 0.041,-0.8963 z m -0.6925,0.041 0.2037,0.041 -0.1223,0.4481 -0.2037,-0.041 0.1223,-0.4481 z m 19.8805,0.1629 -0.082,0.2445 -0.2037,-0.041 0,-0.082 0.2852,-0.1222 z m -1.3851,0.1223 0.082,0.1222 0,0.2852 -0.4481,-0.1223 0.1629,0 0.2037,-0.2851 z m 3.8702,0.1222 0.2444,0.082 0,0.2852 0,0.6518 0,0.1222 -0.3259,0.1222 -0.4074,-0.082 0.2852,-1.1407 0.041,0 c 0.064,-0.01 0.1028,-0.032 0.163,-0.041 z m -25.3803,0.1222 0.3666,0.4889 -0.4888,-0.1223 0.1222,-0.3666 z m 35.4021,0.041 0.2037,0.041 -0.1223,0.3666 -0.2037,-0.041 0.1223,-0.3666 z m -11.4477,0.1222 -0.041,0.2037 -0.774,0.082 -0.2037,-0.082 0,-0.041 1.0185,-0.1629 z m 6.4368,0 -0.041,0.2037 0.4074,0.082 0.041,-0.163 -0.4074,-0.1222 z m -27.1728,0.2444 0,0.2037 -0.4074,0.2037 0.3259,0.3259 -0.1222,0.082 -0.2852,-0.082 0.082,-0.3259 -0.1222,-0.041 0,-0.041 0.5296,-0.3259 z m 3.1369,0 0.3666,0.082 -0.2444,0.6926 -0.3259,-0.081 0.2037,-0.6926 z m 8.3107,0 0.4074,0 0,0.041 -0.4074,0 0,-0.041 z m -13.6068,0.082 0.2037,0.041 -0.3667,1.3444 c -0.019,-0.2982 -0.091,-0.4868 -0.2444,-0.5703 l 0.041,-0.3259 0.3667,-0.4889 z m 10.3069,0.082 0.2445,0.082 -0.1222,0.4482 -0.2852,-0.041 0.1629,-0.4889 z m 2.1185,0.041 0.2444,0.041 -0.082,0.2445 0.041,0.1629 c -0.01,0.1969 0.032,0.3372 0.1222,0.4482 l 0,0.082 -0.1629,0 -0.4074,0.4481 -0.2037,0 0.2444,-0.8555 0.163,-0.2852 -0.041,-0.041 0.082,-0.2444 z m 1.3851,0.041 0.2444,0.2852 0,0.2852 c -0.1625,-0.1175 -0.2809,-0.2535 -0.4074,-0.3667 l 0.163,-0.2037 z m -7.6997,0.2037 0.2852,0.041 -0.163,0.4889 -0.2444,-0.082 0.1222,-0.4481 z m 13.9735,0.082 0.2037,0.041 0.3259,0.4889 -0.082,0.2444 -0.2037,-0.082 -0.082,-0.082 0,-0.1629 -0.2037,0 c 0.013,-0.1553 0.042,-0.3219 0.041,-0.4481 z m -16.54,0.082 -0.1222,0.3667 -0.041,1.4259 -0.6519,0.8147 0.3667,0.081 -0.4481,0.1223 -0.082,0.2444 0.2851,0.3259 -0.041,0.2037 -0.5703,0.6111 0.082,0.9777 -0.8555,1.4259 0.2852,0.2851 -0.6111,-0.1222 0.4481,-1.5481 -1.5073,0.8556 0.2851,0.2851 -1.0184,0.4482 c -0.1112,-0.2193 -0.218,-0.4175 -0.326,-0.6519 -0.01,-0.011 0,-0.03 0,-0.041 l 0.1223,-0.774 0.2851,0.082 0.6926,0.4481 c -0.2006,-0.6795 -0.5592,-1.0906 -1.1407,-1.2221 l 0.2037,-0.6926 c 0.015,-0.046 0.027,-0.077 0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 -0.081,-0.041 c 0.068,-0.2257 0.108,-0.4498 0.163,-0.6518 l 0.1629,-0.1222 0.041,-0.2037 -0.041,-0.1223 c 0.059,-0.2398 0.045,-0.4104 0.082,-0.611 0.2166,-0.041 0.4501,-0.155 0.6926,-0.3667 -0.087,0.5222 -0.036,0.8328 0.2444,0.8963 l -0.3259,0.2037 -0.041,0.082 c -0.1805,0.1124 -0.3751,0.2434 -0.5296,0.3666 l -0.041,0.2444 0.4074,0.1223 -0.3259,1.6702 0.5703,0.1223 0.1222,-0.4074 0.4482,-0.2037 -0.2852,-0.2852 -0.2852,-0.082 0.082,-0.2037 1.5074,0.1222 0.2037,-0.6925 -0.5296,-0.1223 0.1222,-0.4073 0.5703,0.1222 0.3667,-1.1407 0.2444,-0.163 -0.2037,-0.041 0.4889,-1.548 0.3259,-0.1223 z m -6.1108,0.041 0.2444,0.082 -0.1222,0.3667 -0.2037,-0.041 0.082,-0.4074 z m 24.0359,0 0.1629,0.2445 0.2037,0.082 0.3259,-0.1222 -0.041,0.1629 c -0.3961,0.037 -0.7256,0.1179 -0.9777,0.2037 l -0.041,0 -0.1629,-0.041 0.2851,-0.4481 0.2445,-0.082 z m -12.018,0.082 0.6111,0.1223 -0.1222,0.4074 -0.4889,-0.5297 z m 3.9517,0.1223 0.3259,0.082 -0.041,0.1629 -0.2852,0.082 0,-0.041 0,-0.2851 z m 4.8072,0.041 0.2037,0.041 0,0.041 -0.2037,0 c 0,-0.03 0,-0.052 0,-0.082 z m -13.8105,0.082 0.2852,0.082 -0.082,0.611 -0.3667,0.1223 0.041,-0.4074 0.1222,-0.4074 z m 29.5764,0.041 0.2037,0.041 -0.1222,0.3666 -0.2037,-0.041 0.1222,-0.3666 z m -7.4552,0.3259 0.4074,0.1222 -0.082,0.4481 -0.4074,-0.2444 0.082,-0.3259 z m -26.358,0.041 0.4073,0.1222 -0.082,0.2037 -0.4073,-0.1222 0.082,-0.2037 z m 1.6702,0 0.2037,0.2444 -0.041,0.2037 -0.3259,-0.3259 0.163,-0.1222 z m 18.1696,0.041 c 0.1619,0.088 0.2757,0.1838 0.4889,0.2851 -0.019,0.058 -0.041,0.1397 -0.041,0.2037 l -0.5297,0 c 0.032,-0.1732 0.06,-0.336 0.082,-0.4888 z m -3.2591,0.2037 0.1629,0 0,0.041 -0.1629,-0.041 z m -12.1402,0.2037 -0.082,0.5703 -0.041,0.2444 -0.2852,-0.082 0.041,-0.611 0.3667,-0.1223 z m -3.2999,0.082 0.2445,0.041 -0.1222,0.4888 -0.2852,-0.041 0.1629,-0.4888 z m 10.7144,0.041 0.7333,0.1629 0,0.082 -0.082,0.2444 -0.082,0.1223 0,0.1629 0,0.041 -0.1223,0.2852 -0.082,0 -0.2036,-0.2852 c 0.017,-0.3233 -0.065,-0.5992 -0.163,-0.8148 z m 20.0027,0 c -0.1782,0.6666 0.096,1.3875 0.6926,2.1184 l 0.2444,-0.1222 0.163,0.2444 -0.041,0.163 c -0.2464,-0.066 -0.4957,0.012 -0.6926,0.1629 -0.042,-0.016 -0.074,-0.03 -0.1222,-0.041 l -0.3666,0.1222 c 0.1402,-0.4438 0.062,-0.7271 -0.3259,-0.8148 l -0.4074,0.1223 -0.041,0.082 -0.2852,-0.2037 c 0.2165,-0.5136 0.4453,-0.7099 0.8148,-0.6111 l 0.1222,-0.4074 -0.6111,-0.163 0.8555,-0.6518 z m 2.4036,0.041 0.326,0.4888 -0.1223,0.4482 -0.2851,-0.5704 0.082,-0.3666 z m -17.9658,0.082 0.2852,0.082 -0.1222,0.4074 -0.2445,-0.326 0.082,-0.1629 z m -14.2586,0.041 0.2852,0.041 -0.082,0.2037 c -0.1131,0.033 -0.218,0.087 -0.3259,0.1222 l 0.1222,-0.3667 z m 15.7659,0 0.7333,0 -0.082,0.2037 -0.6925,0.082 c 0.022,-0.1067 0.02,-0.184 0.041,-0.2852 z m -3.9924,0.082 0.041,0 0,0.1222 -0.041,0 0,-0.1222 z m 19.6769,0 0.2037,0.041 -0.2037,0.8147 -0.2037,-0.041 0.2037,-0.8147 z m -28.4357,0.1629 0.5703,0.1222 -0.2444,0.6926 -0.3667,-0.6111 0.041,-0.2037 z m 2.1591,0.041 -0.082,1.1407 0.6111,0.163 0.082,-1.1815 -0.6111,-0.1222 z m 19.5547,0.1222 0.1629,0.041 -0.1222,0.4482 -0.2037,-0.041 0,-0.041 0.041,0 0.1223,-0.4074 z m -13.4438,0.041 0.1222,0 0.2852,0.7333 -0.1223,0.163 -0.1629,0 -0.2037,-0.6111 c 0.01,-0.011 0,-0.029 0,-0.041 l 0,-0.041 c 0.026,-0.066 0.056,-0.134 0.082,-0.2037 z m 6.3145,0 0.4074,0 -0.082,0.4889 -0.3259,0 0,-0.4889 z m 4.0331,0 0.2445,0.041 -0.041,0.163 -0.2445,-0.082 0.041,-0.1222 z m -25.7062,0.082 0.082,0.041 -0.041,0.2037 -0.082,-0.041 0.041,-0.2037 z m 38.1723,0.082 -0.041,0.163 0.041,0.041 0,-0.2037 z m -21.5508,0.041 0.082,0 0,0.3259 -0.2037,-0.041 0.1222,-0.2851 z m -10.918,0.2445 c 0.2732,-0.046 0.6794,-0.013 1.1814,0.041 l -0.1222,0.4074 c -0.3876,-0.088 -0.7501,0.1822 -0.937,0.774 l -0.5704,-0.8963 c 0.053,-0.1664 0.1749,-0.2802 0.4482,-0.3259 z m 14.0956,0.041 0.3259,0 -0.1222,0.2037 -0.2037,0 0,-0.2037 z m 0.774,0 0.082,0 0,0.2037 -0.041,0 -0.041,-0.2037 z m 15.1549,0.041 0.4889,0.1222 -0.2852,1.0185 -0.3667,-0.4889 0.163,-0.6518 z m -17.9658,0.041 0.2444,0.041 -0.2852,0.082 0.041,-0.1222 z m 10.8365,0 0.2037,0.041 -0.041,0.1222 -0.2444,0.1222 0,0.082 -0.041,0 0.041,-0.082 0.082,-0.2852 z m 9.5736,0.1222 -0.1222,0.082 -0.082,0.1629 0.2037,0.2445 0,-0.4889 z m -13.8104,0.082 0.4073,0.082 -0.3259,0.4481 -0.3259,-0.082 -0.041,-0.1629 0.2852,-0.2852 z m -10.4292,0.041 0.1222,0.081 0,0.2444 -0.1629,-0.041 c 0.032,-0.1024 0.017,-0.1886 0.041,-0.2851 z m 13.8512,0.041 0.6111,0.5296 0.041,0.041 -0.1222,0.6111 c -0.1738,-0.1302 -0.3351,-0.2839 -0.4889,-0.3667 -0.043,-0.2456 -0.071,-0.5151 -0.041,-0.8147 z m -8.5551,0.041 0.3666,0 0,0.2444 -0.3666,0 0,-0.2444 z m -16.4585,0.082 0.1629,0.041 -0.1222,0.4074 -0.2852,-0.082 0.082,-0.2852 0.163,-0.082 z m 4.1961,0.2037 0.5296,0.1222 0,1.1814 c -0.3391,-0.077 -0.521,-0.509 -0.5296,-1.3036 z m 1.7925,0.1629 -0.2445,0.6926 0.6519,0.163 0.2037,-0.6926 -0.6111,-0.163 z m 3.0146,0.2445 c 0.537,0.1214 0.591,1.2374 0.163,3.2998 -0.149,0.2487 -0.3559,0.7021 -0.5703,1.1407 l -0.5704,-0.1222 -0.5296,-1.3444 c 0.3877,0.088 0.5932,-0.086 0.7333,-0.5296 l 0.082,-1.1814 0.2037,0.2444 0.6518,0.163 -0.1629,-1.6703 z m 9.6959,0.041 0.1222,0.1222 -0.2444,0.2852 -0.1222,0.4481 -0.1223,0 -0.2851,-0.082 -0.041,-0.4481 0.082,-0.1222 0.2444,0.2444 0.3667,-0.4481 z m 5.3775,0 c 1e-4,0.306 -0.1563,0.4481 -0.5703,0.4481 l 0,0.2037 0.4074,0 -0.3667,0.6518 -0.4074,-0.082 0.082,-0.082 0,-0.2851 -0.041,-0.041 0.4074,-0.7741 c 0.1595,-0.01 0.3126,-0.041 0.4889,-0.041 z m -13.4438,0.041 0.2852,0.041 -0.4482,1.2629 -0.082,0.3259 c 0.198,0.081 0.3667,0.1667 0.5297,0.2444 l -0.2445,0.4482 -0.1222,-0.2037 -0.3259,0.1629 -0.2444,-0.041 c 0.067,-0.1419 0.1305,-0.2725 0.2037,-0.4889 l -0.2037,0 0.1629,-0.4888 0.041,0.041 0.2852,0 0.1629,-1.3037 z m -8.1885,0.082 0.5703,0.1222 -0.1629,0.4074 -0.4074,-0.5296 z m 13.1586,0.082 0.082,0.082 -0.1629,-0.041 0.082,-0.041 z m 4.3591,0 0.3259,0 c -0.046,0.2542 -0.075,0.4486 -0.081,0.6518 l -0.6111,0 0.082,-0.5703 0.2852,-0.082 z m -3.1369,0.082 0.082,0.4888 c -0.2042,-0.1067 -0.3488,-0.235 -0.4481,-0.4074 l 0.3666,-0.082 z m -1.7518,0.082 -0.1222,0.4888 -0.1629,0 0,-0.4073 0.2851,-0.082 z m 18.0066,0.041 0.2037,0.041 -0.1629,0.6518 -0.2037,-0.082 0.1629,-0.6111 z m 0.6518,0 0.4889,0.1222 -0.4074,1.4666 -0.1629,-0.041 c -0.083,-0.019 -0.171,0.021 -0.2445,0.041 l 0,-0.3667 0.3259,-1.2221 z m -21.2249,0.041 0.1222,0 0,0.041 -0.1222,-0.041 z m 3.5035,0.1222 c 0.081,0.036 0.1343,0.08 0.2037,0.1222 l -0.2444,0.041 0.041,-0.1629 z m -12.1809,0.082 0.2852,0.041 -0.2852,0.8963 -0.2852,-0.041 0.2852,-0.8963 z m 1.7925,0.1629 -0.1222,0.4482 0.6111,0.1222 -0.4889,-0.5704 z m 19.5954,0 c 0.045,0.041 0.1551,0.1195 0.2037,0.163 l -0.082,0.5296 -0.8963,2.8517 -0.5703,0.8148 0.3667,1.0592 -0.6519,-0.1629 -0.3666,2.0776 -0.5296,-0.1222 0,-0.9777 0.3259,-0.1222 0.082,-0.2037 0.1629,-1.4666 0.4889,-0.5704 -0.1222,-0.1222 c 0.028,-0.055 0.041,-0.1272 0.041,-0.2037 l 0.2037,-0.1222 -0.4074,-0.5703 0.3666,-0.1223 0.2445,0.041 0.082,-1.1406 0.3666,-1.1407 0.5296,0.1222 0.163,-0.6111 z m 1.2629,0.082 0.1222,0.163 -0.1629,-0.041 0.041,-0.1222 z m 1.8333,0.1223 0.082,1.6295 0.4888,0.1222 0.2037,-0.2037 -0.2444,0.8148 c -0.1147,-0.1898 -0.1569,-0.2813 -0.2852,-0.4889 l -0.2037,0.082 c -0.022,-0.018 -0.055,-0.024 -0.082,-0.041 l -0.4074,-0.6518 0.4482,-1.2629 z m 0.5296,0 0.3666,0.082 0,0.082 -0.2444,0.3666 -0.2444,-0.082 0.1222,-0.4481 z m 3.7887,0.1629 0.2037,0.041 -0.1222,0.4481 -0.2037,-0.082 0.1222,-0.4073 z m 1.7925,0.2444 0.2037,0.082 0,1.0593 0,0.041 c -0.05,0.036 -0.1167,0.064 -0.163,0.1222 l -0.3666,-0.082 0.3259,-1.2222 z m -32.1022,0.041 0.2444,0.082 -0.9777,3.0962 -0.2445,-0.041 0.9778,-3.1369 z m 29.5764,0.163 0.082,0.041 -0.163,0.6111 -0.2037,-0.041 0.1223,-0.4481 0.1629,-0.163 z m -14.0142,0.163 0.2037,0 0,0.4888 -0.2037,0 0,-0.4888 z m 11.6921,0.082 0.2037,0.082 0.041,0.2444 -0.2852,-0.2037 0.041,-0.1222 z m -24.2804,0.082 -0.1629,0.4481 0.611,0.1629 0.163,-0.4888 -0.6111,-0.1222 z m 27.1321,0.041 0.2037,0.041 0.041,0.6925 -0.4074,-0.1222 0.163,-0.6111 z m -29.0468,0.041 0.2852,0.041 -0.2037,0.6518 -0.2445,-0.082 0.163,-0.6111 z m 31.5726,0.2036 0.4074,0.1223 -0.082,1.0592 -0.082,0.3259 -0.2444,-0.082 0.082,-1.1407 c -0.055,-0.012 -0.1121,0 -0.163,0 l 0.082,-0.2852 z m -19.5547,0.2445 0.041,0 0,0.4481 -0.2036,0 0.1629,-0.4481 z m -5.5404,0.041 0.6925,0.1629 -0.5703,1.1815 -0.3259,0.4481 -0.082,0 0.2037,-0.6111 0,-1.0592 c 0.035,-0.028 0.048,-0.074 0.082,-0.1222 z m 5.9478,0.2037 0.4074,0 0,0.4888 0.2445,0 0.041,-0.041 -0.041,0.2852 -0.326,0.082 -0.041,-0.1222 0.041,-0.2037 -0.3666,-0.082 -0.163,0.041 c 0.1409,-0.1216 0.2037,-0.2569 0.2037,-0.4481 z m 13.892,0 0.2444,0.041 0.1222,0.7333 -0.082,0.2444 -0.4074,-0.6111 0.1223,-0.4074 z m -11.8143,0.2037 0.082,0 -0.2037,0.8962 -0.082,0.041 -0.2037,-0.2037 c -0.1035,0 -0.1645,0.01 -0.2444,0.041 l 0.2037,-0.6518 0.4481,-0.1222 z m 0.7741,0 0.4888,0 0.163,0.041 -0.2445,0.774 -0.5296,0.3259 -0.2444,0 0.082,-0.2037 0.163,0 0,-0.2037 0.2851,-0.082 -0.2851,-0.2851 0.1222,-0.3667 z m 2.8517,0 0.6518,0 -0.082,0.2037 -0.6111,-0.1223 0.041,-0.082 z m -22.5286,0.1629 0.6518,0.163 -0.4889,0.6111 -0.3666,-0.082 0.2037,-0.6926 z m 14.9511,0.1222 0.2037,0 0.3667,0.082 -0.4074,0.2037 -0.041,0.2037 0.041,0.1222 -0.163,0.041 -0.2036,0 0.2036,-0.6518 z m 20.0028,0.041 0.2037,0.041 -0.041,0.2037 -0.2037,-0.041 0.041,-0.2037 z m -18.8213,0.163 0.2444,0.041 -0.041,0.2037 -0.2852,0.041 0.082,-0.2852 z m 6.1923,0 0.2852,0.041 -0.041,0.082 -0.2445,-0.082 0,-0.041 z m 6.1516,0.2037 0.6518,0.1222 0.2851,0.8555 c 0.027,0.314 0.036,0.6162 -0.041,0.937 l -0.2036,-0.082 0.1629,-0.4481 -0.5703,-0.1222 -0.041,0.2037 0.3259,0.8147 -0.3259,0.1223 c -0.1052,0.3329 -0.023,0.6072 0.2851,0.774 -0.041,0.1099 -0.074,0.22 -0.1222,0.3259 l -0.2444,0.082 0.1222,-0.4074 -0.5703,-0.1222 -0.2445,1.7518 c -0.1707,0.1743 -0.3679,0.3712 -0.5703,0.5296 l 0.2037,-0.2852 c 0.09,-0.6137 -0.1266,-0.9903 -0.6111,-1.0999 l 0.1222,-0.4074 0.6111,0.1222 0.1222,-0.2852 -0.3259,-0.2852 0.4481,-0.1222 0,-1.1814 0.5296,-1.7925 z m -27.3766,0.041 0.8148,0.4074 -0.3259,1.0999 -0.2852,-0.082 -0.3259,-1.0184 0.1222,-0.4074 z m 2.4851,0.041 0.5703,0.1222 -0.082,0.2037 -0.5296,-0.1222 0.041,-0.2037 z m 32.0208,0.1222 0.2851,0.041 -0.2037,0.6926 -0.2851,-0.041 0.2037,-0.6926 z m -23.3027,0.041 0.2037,0 0,0.2037 -0.2444,-0.041 0.041,-0.163 z m 10.144,0 0,0.082 -0.041,0 0.041,-0.082 z m 11.8143,0.2852 -0.3667,1.3444 -0.041,0 0.4074,-1.3444 z m -11.4884,0.082 0.2444,0.082 -0.082,0.2037 -0.2851,0.1222 0.1222,-0.4074 z m 10.3069,0 0.041,0 c 0.027,0.1987 0.01,0.418 -0.041,0.6518 l -0.1629,-0.041 0.1629,-0.6111 z m 1.5889,0 0.1222,0.041 0,0.2037 -0.163,-0.041 0.041,-0.2037 z m -16.3363,0.1222 0.1629,0 -0.4481,0.4481 -0.2037,0 0.4889,-0.4481 z m 3.1369,0 0.2851,0 -0.082,0.4481 -0.3259,0 0.1222,-0.4481 z m -22.4471,0.2037 0.082,0.1222 -0.041,0.082 c -0.011,-0.069 -0.041,-0.1361 -0.041,-0.2037 z m 20.1657,0 0.5296,0 0.082,0.082 -0.082,0.3259 -0.6111,-0.1222 0.082,-0.2852 z m -18.9028,0.082 0.2037,0.041 0,0.2444 c -0.066,-0.097 -0.1384,-0.184 -0.2037,-0.2852 z m 10.7143,0.2037 -0.082,0.2852 -0.041,0.082 -0.041,0.1222 -0.163,-0.2037 0.3259,-0.2852 z m 19.7176,0 0.2037,0.041 -0.082,0.1629 c -0.028,-0.054 -0.092,-0.1466 -0.1222,-0.2037 z m -4.1554,0.041 0.6111,0.1222 -0.082,0.2444 -0.6111,-0.1629 0.082,-0.2037 z m 7.9441,0 0.163,0.041 -0.2852,0.9777 -0.1222,-0.041 0.2444,-0.9777 z m -29.4542,0.082 1.2222,0.082 -0.2037,0.6111 -1.2629,0 0.2444,-0.6926 z m 10.918,0.041 0.6518,0 0,0.2037 -0.1222,0 -0.6111,-0.163 c 0.029,-0.014 0.051,-0.027 0.082,-0.041 z m 14.2994,0.082 0.2851,0.4074 -0.2851,0.4481 -0.2445,-0.041 0.2445,-0.8148 z m 1.1406,0.3259 0.1223,0.6111 -0.2852,-0.082 0.1629,-0.5296 z m 4.1554,0.041 0.1222,0 c -0.064,0.204 -0.057,0.3921 0,0.5296 l -0.041,0 -0.1222,0.4074 0.041,0.8962 -0.4074,0.4889 -0.2037,-0.041 0.3259,-1.1814 -0.4481,-0.1222 0.2444,-0.8148 0.4074,0.1222 0.082,-0.2852 z m -17.2325,0.041 0.3666,0 0,0.2852 -0.2444,0.082 -0.1222,-0.041 0,-0.3259 z m 0.774,0 0.4074,0 -0.163,0.5703 -0.2444,-0.041 -0.082,-0.082 0.082,0 0,-0.4481 z m 2.037,0 0.4073,0 -0.1222,0.6926 c -0.1459,0.1526 -0.3487,0.2496 -0.5703,0.3259 l -0.6111,-0.4482 c 0.097,0.029 0.2025,0.064 0.3259,0.082 0.414,0 0.5704,-0.1928 0.5704,-0.6518 z m -22.4472,0.041 c 0.01,0.018 0.071,0.022 0.082,0.041 l -0.082,0 0,-0.041 z m 2.7703,0.041 0.8148,0.2037 -0.082,0.2037 -0.8148,0.082 c -0.02,-0.022 -0.021,-0.059 -0.041,-0.082 l 0.1222,-0.4074 z m 21.4286,0 0.2852,0.1629 -0.082,0.2037 -0.2852,-0.041 0.082,-0.3259 z m -2.3221,0.082 0.2852,0.082 -0.2852,0 0,-0.082 z m -14.2993,0.3666 0.4888,0.5296 -0.2037,0.6519 -0.041,0 -0.2444,-0.3259 -0.5296,-0.1223 c -0.048,0.151 -0.1391,0.2794 -0.2444,0.3667 l -0.8555,-0.2444 c -0.047,-0.2319 -0.2222,-0.4009 -0.6111,-0.4889 l 0.041,-0.2037 0.5703,0.1222 0.2037,0.2444 c 0.1053,-0.3329 0.5689,-0.446 1.4259,-0.5296 z m 3.1776,0.326 0.3667,0.4481 -0.6519,-0.1222 0.2852,-0.3259 z m 21.6731,0 0.1222,0.2036 c -0.02,0.075 -0.087,0.1637 -0.1222,0.2445 l -0.1222,-0.041 0.1222,-0.4074 z m -1.3444,0.1222 0.2037,0.3666 -0.041,0.2037 -0.2445,-0.3666 c 0.023,-0.07 0.061,-0.132 0.082,-0.2037 z m -25.9099,0.4074 0.2444,0.041 -0.1222,0.4073 -0.2444,-0.041 0.1222,-0.4073 z m -1.5074,0.082 0.2037,0.041 -0.041,0.1222 c -0.061,-0.042 -0.1022,-0.1177 -0.1629,-0.163 z m -3.9109,0.082 c 0.1984,0.045 0.3656,0.1069 0.5296,0.1222 l 0.4889,0.6111 0,-0.4889 -0.1222,-0.1222 c 0.1736,-0.011 0.3316,-0.066 0.4481,-0.1222 0.1559,0.2001 0.3052,0.427 0.4889,0.6518 l -0.326,0.4481 -0.1222,-0.1222 -0.082,-0.163 -0.2852,-0.041 -0.6518,0.2852 0.041,0.6111 c -0.1697,-0.1506 -0.3284,-0.3246 -0.4888,-0.4889 l 0.082,-0.2037 -0.3667,-0.082 c -0.1552,-0.1722 -0.3026,-0.3448 -0.4481,-0.5296 l 0.6518,0.1222 0.163,-0.4888 z m 11.7328,0.2444 0.4481,0 0,0.4889 -0.4481,0 0,-0.4889 z m 11.6921,0 0.1629,0 0,0.1222 -0.1629,-0.1222 z m -4.4406,0.041 0.163,0.2852 -0.041,0.1629 -0.9778,0 -0.2851,0 0,-0.041 c 0.097,0.022 0.1954,0.061 0.2851,0.041 0.1795,-0.041 0.3597,-0.1964 0.4889,-0.4074 l 0.3667,-0.041 z m -0.7333,0.041 0,0.041 -0.5296,0 0.5296,-0.041 z m 2.1999,0.041 c 0.1,0.077 0.157,0.2268 0.163,0.3666 l -0.6926,0 0.163,-0.2851 0.3666,-0.082 z m 17.1103,0.041 0.163,0.041 -0.041,0.1629 -0.163,-0.082 0.041,-0.1222 z m -21.1434,0.041 0.1222,0 c 0.1262,0.063 0.2198,0.1547 0.2444,0.2852 l -0.3666,0 0,-0.2852 z m 11.692,0.4481 0.5296,0.1222 -0.082,0.2445 -0.5296,-0.1222 0.082,-0.2445 z m -13.0364,0.082 0.1629,0.1222 -0.082,0.2037 -0.082,-0.041 0,-0.2851 z m -4.1146,0.082 0.2444,0.041 0.1222,0.082 0.163,0 -0.082,0.2445 -0.3667,0.2036 -0.1222,0.041 0,-0.082 0.1222,0.041 0.041,-0.2036 -0.1222,-0.2852 0,-0.082 z m 25.421,0.041 0.1222,0.4481 -0.1222,0.2852 0,-0.7333 z m -16.1733,0.163 -0.041,0.2037 -0.041,0.4888 -0.937,-0.1222 -0.082,-0.082 0.774,-0.3666 -0.3666,-0.082 0.6925,-0.041 z m -3.5036,0.041 -0.041,0.1222 -0.2851,-0.082 0.3259,-0.041 z m 4.7665,0 0.4481,0.082 0,0.041 0,0.2037 c -0.1904,-10e-5 -0.2989,0.048 -0.4074,0.1222 l -0.041,-0.4482 z m -2.5666,0.041 -0.1222,0.4481 -0.6111,-0.082 -0.2444,-0.2444 -0.082,0.2037 -0.2852,-0.041 0.082,-0.2445 0.082,0 0.2037,0.082 -0.041,-0.082 0.2852,0 0.7333,-0.041 z m 3.7888,0 0.1222,0.041 -0.1222,0 0,-0.041 z m -15.2771,0.041 0.1629,0.2444 0.2852,0 0.163,-0.1222 0.2851,0.2852 -0.3259,0.3666 c -0.7618,0.018 -1.1993,0.1248 -1.2629,0.3259 l -0.082,0.2037 0.2852,0.082 0.5296,0 -0.2444,0.2852 c -0.3068,0 -0.7246,-0.1575 -1.1815,-0.3667 l 0.1223,-0.3259 -0.3667,-0.082 -0.3259,0.163 c -0.3254,-0.1839 -0.6735,-0.4253 -1.0592,-0.6926 0.5299,0.1199 0.9408,0.021 1.2222,-0.2852 0.452,0.097 0.8964,0.163 1.3851,0.163 l 0.082,0 0.1629,0.041 0.041,-0.163 0.1222,-0.1222 z m 1.9147,0.082 c 0.012,0.2781 0.1751,0.4716 0.6111,0.5703 l -0.041,0.1222 -0.163,0.082 c -0.4016,-0.033 -0.7787,-0.07 -1.0999,-0.082 0.1875,-0.1742 0.4654,-0.4655 0.6925,-0.6925 z m 25.1766,0 0.1222,0.041 -0.2444,1.0184 -0.1222,-0.041 0.2444,-1.0184 z m -10.9587,0.082 0.2444,0.082 -0.082,0.2851 -0.1629,0 0,-0.3666 z m -20.8176,0.1222 c 0.2965,0.3446 0.6324,0.7122 0.9777,1.0999 l -0.7333,-0.1629 c -0.2939,-0.2508 -0.5827,-0.5253 -0.8555,-0.8148 l 0.6111,-0.1222 z m -1.0592,0.2444 0.4481,0.7333 -0.3259,0 c -0.2313,-0.1353 -0.4738,-0.2499 -0.6925,-0.4074 0.047,-0.067 0.091,-0.1468 0.1222,-0.2444 l 0.4481,-0.082 z m 23.2212,0.163 0.5703,0.1222 0,1.1814 -0.4481,0.1222 -0.5296,-0.1222 0.4074,-1.3036 z m 11.2846,0.1222 -0.2037,0.4074 0.082,-0.3259 0.1222,-0.082 z m -16.2955,0.1222 0.2444,0 0,0.082 -0.2444,-0.041 0,-0.041 z m -19.6769,0.1222 c 0.029,0.01 0.054,0 0.082,0 l 0.082,0.082 -0.3666,0 0.2037,-0.082 z m 29.169,0.041 -0.041,0.3667 -0.2852,-0.082 c 0.1196,-0.087 0.2149,-0.1918 0.326,-0.2852 z m 3.8295,0 0,0.082 -0.041,0 0.041,-0.082 z m -0.9777,0.041 0.2036,0.082 c -0.072,0.065 -0.1696,0.1008 -0.2444,0.163 -0.1919,0.1594 -0.368,0.3385 -0.5703,0.4889 -0.078,-0.08 -0.1398,-0.2017 -0.2037,-0.326 0.1572,-0.079 0.2843,-0.1614 0.4481,-0.2444 l 0.3259,0.082 0.041,-0.2037 c 0.01,0 -0.01,-0.038 0,-0.041 z m -23.5471,0.2037 -1.1,0.5296 -0.1629,0 0,-0.2037 c 0.1087,0 0.2966,-0.111 0.5296,-0.2851 l 0.7333,-0.041 z m -4.9294,0.1222 c 0.1297,0.1454 0.2301,0.2561 0.3666,0.4074 l 0,0.2037 c -0.066,-0.043 -0.1389,-0.078 -0.2037,-0.1222 l 0.041,-0.082 -0.1629,-0.041 c -0.08,-0.056 -0.166,-0.1047 -0.2445,-0.163 l 0.163,-0.041 0.041,-0.1629 z m 10.0217,0.082 0.3667,0.2445 -0.082,0.082 -0.2037,0 c 0,-0.1208 -0.037,-0.2283 -0.082,-0.3259 z m -2.0369,0.3259 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 6.6404,0 0.4074,0 0,0.082 -0.2444,0.1223 -0.163,0 0,-0.2037 z m -3.0961,0.1223 0.4074,0.081 -0.4074,0 0,-0.081 z m 5.8256,0 0.2445,0.041 0.2444,0.2851 0.082,0 0,0.4074 c -0.3615,0.031 -0.758,0.061 -1.1407,0.082 l 0.3259,-0.4889 c 0.079,0 0.1557,0 0.2445,0 l 0,-0.3259 z m -6.4774,0.3259 0.6518,0 0,0.4888 -1.0185,0 0.3667,-0.4888 z m 8.1885,0.041 0.2851,0.082 -0.041,0.1222 c -0.1062,0.015 -0.2175,0.027 -0.3259,0.041 l 0.082,-0.2445 z m 9.4107,0.041 c -0.02,0.2876 -0.042,0.5616 0.041,0.774 l -0.163,0.082 -0.1222,0.4074 -0.3259,-0.4481 0.5703,-0.8148 z m -12.0588,0.041 c 0.01,0 0.03,0 0.041,0 l 0.041,0.041 -0.082,0.2444 -0.2444,-0.041 c 0.043,-0.093 0.1038,-0.1842 0.2444,-0.2444 z m -8.6366,0.1629 0.6518,0 0,0.2037 -0.6518,0.2037 0,-0.4074 z m 1.0185,0 0.4888,0 0,0.2037 -0.4888,0 0,-0.2037 z m 3.585,0 0.3666,0 -0.3666,0.4074 -0.4889,0 0.4889,-0.4074 z m -15.1549,0.2037 0.041,0 0,0.2037 -0.4481,0 0,-0.041 0.4074,-0.163 z m 3.3406,0 0.6111,0 0,0.2037 -0.6111,0 0,-0.2037 z m 4.9702,0 0.6111,0 0,0.2037 -0.6111,0 0,-0.2037 z m 3.9109,0 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 18.0473,0.041 0.082,0 0,0.041 -0.082,-0.041 z m -2.7295,0.081 0.041,0 -0.1629,0.4889 -0.5296,-0.1222 0.041,-0.082 c 0.1754,-0.071 0.4149,-0.2009 0.611,-0.2852 z m 5.2961,0 c 0.072,0.09 0.1611,0.1484 0.2444,0.2444 l 0,0.041 -0.4074,-0.082 c -0.029,-0.024 -0.055,-0.058 -0.082,-0.082 l 0.2444,-0.1222 z m -32.6319,0.2852 0.6519,0 0,0.2444 -0.6519,0 0,-0.2444 z m 2.9332,0 0.3667,0 -0.3667,0.5296 0,-0.5296 z m -3.5442,0.2444 0.4481,0 0,0.2852 -0.4481,0 0,-0.2852 z m 9.3292,0 0.611,0 1.0185,0.2852 1.2222,-0.2852 1.3036,0 0,0.4889 -5.1738,0 0,-0.2037 1.0185,-0.2852 z m 4.522,0 4.6035,0 -0.4482,0.4889 -0.2037,-0.2037 -1.0184,0.2037 -2.4851,0 -0.4481,-0.4889 z m 5.459,0 0.5703,0 0,0.2852 -0.5703,0 0,-0.2852 z m 15.3178,0 c -0.021,0.067 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.1629 0.041,-0.041 z m -30.5134,0.2852 1.0184,0 0,0.2037 -1.0184,0 0,-0.2037 z"
+           id="path6116-9"
+           transform="matrix(0.61596339,0,0,0.61596335,-408.29514,329.71724)" />
+        <path
+           inkscape:connector-curvature="0"
+           inkscape:export-ydpi="90"
+           inkscape:export-xdpi="90"
+           inkscape:export-filename="Z:\private\général\illustrations\Charte graphique\OD\OD 5.0\aboutpage\png\aboutpage_OD5.0.png"
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:51.30051804px;line-height:125%;font-family:'karabinE.';-inkscape-font-specification:'karabinE.';text-align:start;writing-mode:lr-tb;text-anchor:start;display:inline;opacity:0.22999998;fill:#8ae234;fill-opacity:1;stroke:none;filter:url(#filter4332-9)"
+           d="m -104.31687,974.2719 -2.5665,0.48886 0,1.34439 0.5703,-0.61109 0.6518,0 0,0.2037 -1.2221,0.40739 0,2.07768 0.2037,0 -0.2037,0.28517 0,0.85552 c -0.1243,0.11339 -0.1889,0.18925 -0.2852,0.28517 l 0,0.48886 c 0.096,-0.0462 0.1847,-0.0603 0.2852,-0.12221 l 0,0.7333 -0.2852,0.24443 0,8.55516 0.6111,2.24064 0.082,0.57034 c -0.028,0.0807 -0.061,0.16777 -0.082,0.24444 0.066,0.0489 0.1079,0.10817 0.1629,0.16295 l 0,0.16296 -0.2444,-0.0815 c -0.024,-0.006 -0.057,-10e-4 -0.082,0 0.036,-0.12665 0.062,-0.25692 0.1222,-0.36665 l -0.1629,-0.61108 -0.4074,0.0815 0,3.87019 c 0.014,-0.002 0.027,0.004 0.041,0 l 0.2037,-0.0407 0.041,-0.0407 0,0.85552 c -0.09,0.26172 -0.1903,0.50209 -0.2852,0.69256 l 0,0.97773 0.2444,0.0815 -0.041,0.16295 -0.2036,-0.0815 0,11.12172 0.1629,-1.1814 0.1222,0.041 0,1.0184 0.2037,0 0.4889,0.5296 c -0.1,0.082 -0.1897,0.1934 -0.2444,0.3667 l -0.2037,-0.2444 -0.082,0 -0.163,-0.6519 0,0.5704 -0.041,0 -0.2444,0.1222 0,0.8962 0.2851,-0.1222 0,0.3259 -0.1222,-0.041 -0.1222,0.4074 0.2444,0.041 0.3667,-0.1222 0,0.2444 -0.3667,0 0,0.8556 -0.2851,0.082 0,0.2037 0.2851,-0.082 0,0.082 c 0.4141,0 0.5704,-0.1422 0.5704,-0.4482 l -0.2037,-0.2037 0.5296,0 -0.1222,0.082 -0.082,0.2445 0.1222,0 0,0.082 0.2037,0.2444 0,0.2852 -1.0185,0 0,0.2444 3.3813,0 c 0.2347,-0.6383 0.527,-0.9777 0.937,-0.9777 l 0,-0.4074 -0.5703,0 -0.2852,0.2037 -0.1629,0 -0.2445,-0.3259 0.082,-0.2445 -0.2444,0.082 -0.6518,0 -0.3259,0.1223 0,-0.041 -0.3667,-0.082 -0.2852,0.2037 -0.4481,-0.2037 0,-0.2445 1.0592,0 0,-0.2037 -0.2037,-0.2037 0,-0.2444 0.4889,0.163 -0.082,0.2037 0.5703,0.1222 0.2852,-0.041 0.6111,0.2037 -0.082,0.2444 0.2852,0.082 0.5703,-0.041 0.6518,0.2444 0,0.2037 c -0.3219,10e-5 -0.8162,0.3865 -1.3851,1.1815 l 18.576905,0 c 0.082,-0.08 0.1635,-0.1631 0.2445,-0.2445 0.212,0.076 0.504,0.165 0.7333,0.2445 l 1.4666,0 -0.2445,-0.4074 1.1407,0.082 0.2037,0.082 -0.041,0.1629 -0.5296,0.082 0.7333,0 7.8626,0 0.041,-0.1629 c 0.061,0.031 0.1356,0.056 0.2037,0.082 l -0.041,0.082 1.3037,0 0.3666,-0.2445 -0.041,0.2445 2.5666,0 0.082,-0.2445 0.2444,0.041 -0.082,0.2037 0.4481,0 0,-1.3444 -0.082,0.2445 -0.2444,-0.041 0.1222,-0.4074 0.2037,0.082 0,-9.044 -0.1222,-0.041 0.1222,-0.5704 0,-1.711 -0.2852,0.082 -0.041,0.2037 0.2037,0.3259 -0.6111,1.0999 -0.2037,-0.041 0.937,-3.5035 0,-1.58882 -0.2851,0.12222 -0.041,1.05921 -0.6519,2.36289 -0.5703,0.2851 1.1814,-4.39976 0.3667,0.57034 0,-1.34438 -0.163,-0.0407 0.163,-0.57035 0,-1.83324 c -0.2598,-0.39209 -0.5239,-0.78278 -0.8148,-1.14069 l 0.8148,0.0407 0,-1.22217 -0.2037,0.85552 -0.2445,-0.0815 0.326,-1.18143 0.1222,0.0407 0,-3.54428 -0.082,0.28517 -0.4482,-0.12222 0.5297,-2.03694 0,-7.98482 -0.041,0.12222 -0.8148,0 -0.6518,-0.36665 -0.8148,0 0.041,-0.20369 -0.3259,-0.52961 0.082,-0.28517 0.2037,0.0407 0.8555,0.77404 0.2851,-0.16296 0.082,-0.28517 c -0.3162,-0.38756 -1.7549,-1.08882 -4.3183,-2.07768 l -1.0999,0 2.811,1.18142 -0.1223,0.40739 0.2852,-0.16295 0.6926,0.20369 -0.4889,0.81478 -0.2037,-0.0407 -0.1629,-0.28517 -0.2445,-0.0407 -0.3666,0.12222 0.1222,-0.40739 0.3666,-0.16296 0,-0.0407 -0.2444,-0.28517 -0.2444,-0.0815 -0.2852,0.2037 -0.2444,-0.0407 -0.6926,-0.48887 -0.5703,0.36665 -1.5481,-1.2629 -1.8333,0 -0.082,0.32591 -0.2444,-0.0407 0.082,-0.28517 -3.2998,0 1.0184,1.54807 0.2037,0.0407 -0.1629,0.69256 -0.4482,-0.12221 -0.082,0.20369 c 0.3277,0.0876 0.5624,0.55849 0.6926,1.38512 l -0.163,0.69256 -0.2444,-0.0815 0.1222,-0.44812 -0.7333,-0.2037 -0.1629,0.44813 0.4888,0.12222 -0.2444,0.89625 -0.4889,-0.12221 -0.2037,0.93699 0.4482,0.12222 -0.1222,0.40738 -0.4482,-0.12221 -0.1222,0.40739 0.4481,0.12221 -0.1629,0.69256 c -0.4097,-0.10951 -0.6971,0.12321 -0.937,0.69256 -0.022,0.0836 -0.038,0.17515 -0.041,0.24444 l -0.2444,-0.28517 -0.2037,0.28517 c -0.01,-0.0895 -0.01,-0.18894 0,-0.28517 l 0.2037,0 0,-0.2037 -0.163,-0.16295 c 0.014,-0.071 0.021,-0.12964 0.041,-0.2037 l 0.5296,0.16296 0.163,-0.65182 -0.4074,-0.61109 0.937,-1.38512 -0.2037,-0.0407 0.2851,-0.16295 0.082,-0.28518 -0.2037,-1.46659 0.6519,-0.24444 -0.2445,-0.0815 0.4482,-0.61108 c 0.1537,-1.06751 -0.199,-1.68478 -1.0592,-1.91472 l 0.2851,-0.16296 0.082,-0.24443 -1.5888,0 0,0.0815 0.6926,0.16296 -0.937,0.7333 c 0.085,-0.31634 0.048,-0.64018 -0.041,-0.97773 l -1.5888,0 -0.2037,0.69256 -0.2445,-0.0407 0.163,-0.65182 -0.937,0 0.2444,0.48886 -0.081,0.44813 -0.3666,-0.57034 0.082,-0.36665 -0.4481,0 -0.8556,3.09615 c -0.097,-0.0451 -0.1796,-0.0767 -0.2851,-0.12222 l -0.041,0 -0.163,-0.24443 0.2852,-0.12222 0.082,-1.18142 0.3666,-1.42586 -0.4888,0 -0.6111,2.36285 -0.2444,0 0.611,-2.36285 -2.6072,0 -0.041,0.16295 0.4481,0.12222 -0.2852,1.05921 c -0.9988,-0.37944 -1.8221,-0.65178 -2.4443,-0.65182 -0.1476,0.37417 -0.4355,0.62502 -0.7741,0.77404 -0.016,-0.069 -0.022,-0.13369 -0.041,-0.2037 l -0.041,-0.20369 0.5704,-0.0815 0,-0.28517 c 0,-0.20089 -0.2546,-0.36699 -0.7741,-0.48887 l -0.041,-0.20369 -0.9777,0 c 0.001,0.0136 0,0.0271 0,0.0407 l 0,0.24443 c -0.2787,-0.13728 -0.624,-0.21604 -1.0185,-0.28517 l -1.711,0 0,0.16295 -0.2444,0.0815 -0.082,-0.24443 -0.5296,0 0.041,0.12221 -0.163,0.16296 -0.082,-0.28517 -2.729505,0 -0.2037,0.97773 -0.3259,0 0,-0.48887 c 0.085,-0.17617 0.1553,-0.35747 0.2037,-0.48886 l -2.4036,0 z m 36.257605,12.83274 0,-0.93699 -0.041,0.0407 -0.1629,0.61109 0.2037,0.28517 z m -34.342905,-12.75127 -0.2851,0.44813 -0.4889,0.0815 0.082,-0.28517 0,-0.12222 0.6926,-0.12222 z m 13.484605,0.0407 0.4481,0.12222 -0.041,0.24443 -0.4481,-0.12221 0.041,-0.24444 z m -16.295505,0.36665 0,0.48887 -0.4482,0 0.4482,-0.48887 z m 7.821805,0 0.082,0.0407 0.2037,0.89625 c -0.2224,-0.0204 -0.4372,-0.0455 -0.6111,-0.0815 l 0.2037,-0.65182 -0.041,-0.16296 0.163,-0.0407 z m 1.4666,0 0.4074,0.48887 -0.4074,0 0,-0.48887 z m -2.5665,0.16296 0.082,0.28517 -0.1222,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.151605,0.0407 0.4481,0 0,0.28516 -0.4481,0 0,-0.28516 z m 5.214605,0 0.2037,0 0,0.28516 -0.2037,0 0,-0.28516 z m -2.974005,0.28516 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24444 -0.1629,0 c 0.038,-0.0691 0.088,-0.17948 0.1222,-0.24444 z m 13.036505,0 0.2037,0.0815 -0.163,0.65182 -0.3259,-0.57035 0.2852,-0.16295 z m 11.8143,0.0407 0.4481,0.12221 -0.1222,0.48887 -0.4889,-0.12222 0.163,-0.48886 z m -5.8257,0.16295 0.2444,0.0407 -0.1629,1.58882 -0.2852,0.16295 -0.1222,0.48887 -0.5296,2.52581 -0.6518,-0.65182 1.0999,-2.64803 -0.2444,-0.28517 0.082,-0.20369 0.5703,-1.01848 z m 0.9777,0.0407 0.5704,0.12222 -0.2852,0.16295 -0.082,0.2037 -0.774,3.87019 -0.2852,0.16296 -0.082,1.14068 -0.2037,0.77404 -0.5703,0 0.1629,-0.57034 c 0.2449,-0.0957 0.4481,-0.21289 0.4481,-0.36665 l -0.2851,-0.28517 1.3851,-5.21458 z m -17.721405,0.2037 0.244505,0 0.041,0.16295 -0.082,0.0407 -0.122305,0 -0.082,-0.20369 z m 14.543805,0.12221 0.2037,0.0407 -0.082,0.44813 -0.2444,-0.0815 0.1222,-0.40739 z m 12.629,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m -29.820805,0.0407 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m -2.0777,0.2037 1.0592,0 c -0.029,0.0977 -0.082,0.18868 -0.1222,0.28517 l -0.937,0 0,-0.28517 z m 11.855005,0 0,0.5296 -0.4888,0 0.4888,-0.5296 z m 24.3619,0.16295 c -0.074,0.27639 0.1417,0.51308 0.5703,0.65182 l 0,-0.5296 -0.5703,-0.12222 z m -6.0701,0.32591 0.4481,0.12222 -0.3666,1.30364 -0.4482,-0.12221 0,-1.18143 0.3667,-0.12222 z m -17.0696,0.44813 0,0.48887 -0.2037,0 -1.6703,0.24443 c 0.035,-0.18638 0.074,-0.3749 0.082,-0.57035 l 1.7925,-0.16295 z m 0.3666,0 0.6519,0.20369 0,0.28518 -0.8556,0 0.2037,-0.28518 0,-0.20369 z m 1.0185,0 0.041,0 0.2852,0.44813 -0.041,0.0407 -0.2852,0 0,-0.48887 z m 1.8333,0 -0.082,0.32591 -0.2852,0.0407 0.1222,-0.32591 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.2662,0 0.6518,0.36665 -0.082,0.20369 -0.4482,0.85552 c -0.076,0.61312 0.12,0.99046 0.5296,1.09995 l -0.1222,0.40739 -0.5296,-0.12222 -0.082,0.28517 0.2445,0.28518 -0.3667,0.12221 0.041,1.18143 -0.4889,1.79251 -0.5296,-0.12222 -0.4073,-1.30364 0.1222,-0.48887 0.2444,0.0407 -0.1222,0.48887 0.4481,0.12221 0.041,-0.20369 -0.2852,-0.81478 0.2852,-0.12221 c 0.1185,-0.44346 -0.079,-0.76489 -0.5703,-0.89626 l 0.6518,-0.28517 -0.1222,0.40739 0.4888,0.12221 0.3667,-3.21837 0.041,-0.20369 z m -20.4917,0.12222 0.2444,0.0407 0.1223,0.48887 -0.326,-0.0815 0,-0.36665 -0.041,-0.0815 z m -7.740405,0.0815 0.4481,0 -0.4481,0.52961 0,-0.52961 z m 1.3037,0 0.8147,0 c -0.012,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2572,0.20542 -0.3429,0.30401 -0.5703,0.48887 l -0.2037,-0.24443 0,-0.28518 z m 1.3036,0 0.3667,0 0.4073,0 0,0.2037 -0.082,-0.0815 -0.4888,0.12222 0,0.24443 -0.082,0.0407 -0.2037,-0.24443 -0.082,0 0.1629,-0.28518 z m 1.1407,0 0.6111,0 -0.041,0.28518 -0.5704,0 0,-0.28518 z m 7.292305,0 0.6518,0 -0.082,0.24444 0.1222,0.44812 -0.2852,0.0407 -0.4074,-0.65182 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24444 -0.2037,0.0407 -0.082,-0.28518 z m 21.1434,0 0.8148,0 0.2444,0.0407 -0.082,0.2037 -1.0999,0.16295 0.1222,-0.40739 z m -12.9142,0.0815 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m 5.2553,0 -0.082,0.2037 0.4889,0.12221 0.041,-0.20369 -0.4481,-0.12222 z m 10.144,0.36665 0.4889,0.12222 0.4074,0.57034 -0.6519,0.32591 0.2852,0.0815 -0.6111,1.01847 c -0.3277,-0.0876 -0.3629,-0.37134 -0.2444,-0.81478 l 0.2852,-0.16295 0.041,-0.2037 0,-0.93699 z m -1.3851,0.28517 0.2444,0.0815 0.041,0.7333 -0.4481,-0.12222 0.1629,-0.69256 z m -25.5025,0.0407 0,0.40739 -0.2852,0 -0.082,-0.32591 0.3666,-0.0815 z m 23.9137,0.0407 0.2444,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -24.7285,0.0815 0.082,0.28517 -0.2445,0 0,-0.24443 0.163,-0.0407 z m -8.229305,0.0407 1.0185,0 c -0.101,0.0837 -0.1917,0.16587 -0.2852,0.24443 l -0.7333,0 0,-0.24443 z m 2.0777,0 0.4481,0 0,0.24443 -0.6111,0 0.163,-0.24443 z m 7.862605,0 0,0.24443 -0.2037,0 -0.041,-0.16295 0.2444,-0.0815 z m 3.748,0 0.4074,0 0,0.24443 -0.4074,0 0,-0.24443 z m 1.0592,0 0.8148,0 0,0.24443 -0.8148,0 0,-0.24443 z m 22.3656,0.0407 0.4482,0.12221 0.2851,0.28517 0.082,-0.40738 0.2445,0.0407 -0.1223,0.44812 -0.2037,-0.0815 0.163,0.28518 -0.1222,0.48886 c -0.3277,-0.0875 -0.616,0.14207 -0.7741,0.7333 l -0.3666,-0.61108 0.3666,-1.30364 z m -31.002205,0.0407 0.2851,0.20369 -0.2037,0.0815 -0.082,-0.28517 z m -4.7258,0.0815 0.041,0.0815 -0.1222,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.980105,0.0407 0.5296,0.16296 -0.041,0.20369 -0.5296,-0.12222 0.041,-0.24443 z m -20.4917,0.0407 0.3667,0 0,0.28517 -0.3667,0 0,-0.28517 z m 3.5443,0 0.2037,0 c 0.2933,0.10004 0.5027,0.25432 0.6518,0.48887 l -0.082,0.12221 c 0.049,0.098 0.1128,0.18842 0.163,0.28518 l -0.3667,0 0,0.24443 0.5296,0.0815 c 0.074,0.1378 0.1679,0.27231 0.2444,0.40739 l -1.7925,0 0,-0.2037 c 0.5522,1.1e-4 0.8148,-0.22357 0.8148,-0.5296 l -0.3666,-0.40739 0,-0.48887 z m -9.2885,0.0407 0.1222,0.44813 -0.2037,0.0407 -0.082,-0.32592 0.163,-0.16295 z m -3.503505,0.0815 0.081,0.44812 -0.4481,0.12222 -0.041,-0.16295 0.3259,-0.0407 0,-0.32591 0.082,-0.0407 z m 1.6295,0.0407 c 0.2852,1.0667 0.7124,1.54315 1.303705,1.38512 l 0.082,0.16295 -0.163005,0.24444 -0.2444,-0.12222 c -0.5964,0.73087 -0.8708,1.45178 -0.6926,2.11842 l -0.8555,-0.65182 0.6111,-0.16296 -0.1222,-0.40739 c -0.3695,0.0988 -0.5984,-0.0975 -0.8148,-0.61108 l 0.9777,-0.7333 -0.4481,-0.93699 -0.041,-0.16296 0.4074,-0.12221 z m 23.587805,0.24443 0.4482,0.12222 -0.082,0.24443 -0.4482,-0.12222 0.082,-0.24443 z m -14.9511,0.0815 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 4.6035,0 0,0.0815 -0.041,0.16296 -0.2037,-0.0407 0.2444,-0.20369 z m -10.5514,0.0407 c 0.1566,0.1293 0.3291,0.24633 0.5703,0.36665 l 0,-0.16296 0.082,0.36665 0,0.0815 -0.4481,0.12221 -0.2037,-0.77403 z m 23.2212,0.0407 0.4481,0.12222 0,0.97773 -0.2852,0.12222 -0.041,0.2037 -0.1629,1.46659 -0.4074,0.57035 0.2037,0.24443 -0.3259,0.2037 0.3666,0.57034 -0.2852,0.12222 -0.2444,-0.0407 -0.041,1.14069 -0.3259,1.14068 -0.4481,-0.16295 -0.2037,0.69256 c 0.013,0.0242 0.029,0.0565 0.041,0.0815 l -0.1223,0.0815 0.163,0.0407 c 0.083,0.20379 0.1422,0.44083 0.163,0.69256 l -0.041,0.2037 -0.163,-0.24443 -0.2852,-0.0815 -0.041,0.0407 0.2445,-1.54808 0.774,-2.85172 0.4481,-0.81478 -0.2851,-1.05921 0.5296,0.16296 0.3259,-2.07769 z m -28.435805,0.0407 -0.041,0.44813 -0.2851,0.0815 -0.2852,-0.16296 -0.2037,0.0815 0.3666,0.48887 -0.4888,0.61108 -0.3259,-0.48887 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48887 -0.163,0 -0.2037,0.28517 -0.2037,0 0.3667,-0.61108 1.2629,-0.2037 z m 4.807205,0 0.163,0.65183 -0.2037,0.0407 -0.2037,-0.61108 0.2444,-0.0815 z m -7.088605,0.28518 0.2037,0 0,0.28517 -0.2037,0.24443 -0.2444,0 0,-0.32591 c 0.078,-0.065 0.1634,-0.13004 0.2444,-0.20369 z m 32.591105,0.40738 1.5074,1.34439 -0.1222,0.44812 -0.5296,-0.16295 -0.4889,1.79251 -0.2037,-0.0407 0.4074,-2.48507 -0.2852,0.12222 -0.3259,-0.0815 0.041,-0.937 z m 4.4813,0 0.7741,0 -0.1223,0.40739 -0.6925,-0.20369 0.041,-0.2037 z m -27.4172,0.12222 0.041,0 0.2037,0.2037 -0.163,0.0407 -0.082,-0.24443 z m 3.422,0 0.5704,0 0,0.2037 -0.5704,0 0,-0.2037 z m 5.4998,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.16296 c -0.014,0.0596 -0.024,0.0991 -0.041,0.16295 l 0.4074,0.12222 c -0.1395,0.12918 -0.3455,0.16298 -0.6519,0.16295 l -0.2036,0 0,-0.20369 0.4888,-0.24443 z m -4.6443,0.0407 0.6519,0.20369 0,0.44813 c -0.4141,0 -0.6518,0.1829 -0.6519,0.48886 l -0.1629,0 c 0,-0.45892 -0.1314,-0.73324 -0.4074,-0.7333 l 0,-0.20369 0.5703,-0.20369 z m 11.4477,0.0407 0.3259,0.61109 -0.041,0.20369 -0.3259,-0.61108 0.041,-0.2037 z m -18.0881,0.0407 0.5704,0.28518 0.6518,2.36285 0,0.0815 -0.3667,-0.52961 -0.2037,0 0.5704,0.85552 0.041,0.65182 0.2851,0.12222 -0.3666,0.57034 -1.1814,-4.3998 z m 15.44,0 0.2445,0.0407 -0.2852,1.09995 -0.2444,-0.0407 0.2851,-1.09995 z m -7.0885,0.12222 0.5703,0.20369 0,0.24444 -0.774,0 0.2037,-0.24444 0,-0.20369 z m -9.2885,0.20369 0.4889,0.48887 0.041,0.16296 -0.4889,0.12221 -0.1629,-0.65182 0.1222,-0.12222 z m 1.9962,0.12222 0.3259,0.32591 0,0.0815 0.082,0.0407 0.2037,0.24443 -0.1629,0.16296 0.6518,2.36285 -0.2852,-0.16295 -0.8148,-3.05542 z m -7.821805,0.0815 0.082,0.36665 -0.2037,0.0407 -0.082,-0.36665 0.2037,-0.0407 z m 2.4443,0.20369 -0.082,0.61109 0.082,0.24443 0.2444,0.16295 c -0.7759,0.20744 -1.0756,0.74803 -0.937,1.71104 l 0.3667,0.57034 -0.2037,0.0407 0.5703,0.24443 -0.1629,1.30365 0.082,0.28517 0.2444,0.12222 -0.2037,0.0407 0.5704,0.85552 c -0.141,0.11253 -0.2864,0.23952 -0.4482,0.40739 l -0.082,-0.2037 -0.4074,0.12222 -0.082,-0.36665 0.4074,-0.12222 -0.2037,-0.81477 -0.4481,0.12221 -0.2037,-0.81477 0.4074,-0.12222 -0.1222,-0.44813 -0.6518,0.2037 0.082,0.44812 -0.2037,0.0407 -0.163,-0.61108 c 0.1174,-0.74568 0.3563,-1.1839 0.6518,-1.2629 l -0.082,-0.16296 -0.4074,0.0815 -0.1629,-0.61109 0.2037,-0.0407 1.3444,-2.03695 z m 31.328205,0.2037 0.2444,0.0407 0.2444,0.28517 0.2852,-0.12222 0.6926,0.16296 0.4481,2.28137 -0.041,0.2037 0.2852,0.0815 0.2852,-0.12222 0.2444,0.0407 -0.6926,2.64802 c -0.6159,-0.32291 -0.8481,-0.90564 -0.6111,-1.79251 l -0.2037,-0.0815 0.2852,-0.12222 0.1222,-0.48887 0.082,-1.18142 -0.5703,-0.12222 -0.6926,2.68876 0.2445,0.28518 -0.3667,0.12221 -0.041,0.2037 0.2037,2.1999 -0.8148,0 c -0.1161,0.56732 -0.1894,1.08429 -0.2444,1.50733 -0.1694,0.10755 -0.2849,0.39717 -0.4074,0.85552 l -0.3259,0.12222 -0.4481,-0.12222 -0.163,-0.93699 0.5704,-0.48887 0,-0.12222 c 0.055,0.0879 0.1486,0.1672 0.2851,0.2037 l 0.2037,0.0407 0.082,-0.2037 0.2445,-1.87399 0.3666,-0.5296 0.7333,-3.62576 0.2444,-0.89625 -0.4481,-0.12222 -0.3666,1.34438 -0.3667,0.12222 0.2444,0.28517 -0.1222,0.48887 -0.5296,-0.16296 0.8148,-3.09615 z m -9.207,0.12221 0.2037,0.0407 -0.2444,0.89626 -0.2852,0.16295 -0.2037,-0.0815 0.5296,-1.01848 z m 6.0701,0 0.2037,0.0407 -0.082,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -24.9729,0.0815 0.2037,0.81478 -0.2037,0.0407 -0.2445,-0.77404 0.2445,-0.0815 z m -6.722005,0.0407 0.041,0 0.1223,0.44813 -0.2037,0.0407 -0.041,-0.12222 c 0.028,-0.10614 0.05,-0.23043 0.082,-0.32591 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.261405,0.0407 0.2445,0.0407 -0.2037,0.69256 -0.2037,-0.0407 0.1629,-0.69256 z m -26.5617,0.0407 0.1222,0.44813 -0.3259,0.48886 -0.082,-0.36665 0.2852,-0.57034 z m 13.8919,0.0815 0,0.0407 -0.3259,0.2037 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1892,-0.0178 0.3783,-0.0562 0.5296,-0.0815 z m -11.7327,0.24443 0.1222,0.12222 -0.2037,0.0815 -0.041,-0.16295 0.1222,-0.0407 z m 27.132,0.12222 0.7741,0.20369 -0.041,0.24443 -0.7741,-0.20369 0.041,-0.24443 z m -8.7181,0.0407 0.5704,0.16296 -0.082,0.20369 -0.5296,-0.12221 0.041,-0.24444 z m -15.4807,0.0407 0,0.61109 0.4481,0 c 0,0.33785 0.036,0.62662 0.1222,0.81477 -0.2101,0.0427 -0.4005,0.0946 -0.5703,0.16296 l 0,-0.0407 -0.3667,-0.40739 -0.6518,0.2037 c 0,-0.11015 -0.034,-0.20771 -0.082,-0.28518 l -0.2444,-0.89625 1.3443,-0.16296 z m 2.8924,0 0.2852,0.2037 0.2037,0 1.874,-0.2037 0,0.2037 -0.2852,0.65182 c 0.3992,-0.22119 0.701,-0.47342 0.8148,-0.77404 0.071,0.0934 0.1312,0.1937 0.2037,0.28517 l -0.3667,0.0407 0,0.44813 0.4074,0 0.2444,0.28517 0.163,-0.24443 c 0.093,0.10678 0.1891,0.22207 0.2852,0.32591 l 0.041,0.16295 -0.2037,-0.20369 -0.2445,0.12222 0.041,0.69256 -0.2444,0.12221 -0.082,0.16296 -0.6518,-0.12222 c -0.065,-0.12871 -0.1069,-0.24434 -0.1222,-0.36665 l 0.3259,0 0.3666,0.0815 0.041,-0.20369 -0.2851,-0.52961 c -0.2712,-0.0725 -0.5058,-0.0647 -0.7333,-0.0815 l -0.2037,-0.20369 -0.082,0.16295 c -0.064,0.002 -0.1437,-0.007 -0.2037,0 l -0.5296,-0.61108 -1.0592,0.2037 -0.7741,-0.2037 -0.4481,0.44813 -0.163,-0.24443 0,-0.2037 c 0.2416,3e-5 0.4327,0.0164 0.6111,0 0.5354,-0.049 0.7741,-0.17787 0.7741,-0.40739 z m 16.2956,0 0.2444,0.0815 -0.2444,0.89626 -0.2445,-0.0815 0.2445,-0.89626 z m -19.9621,0.40739 0,0.44813 0.4074,0 0,-0.44813 -0.4074,0 z m -1.5481,0.0815 0.2445,0.28517 -0.2037,0.36665 -0.163,-0.5296 0,-0.0815 0.1222,-0.0407 z m -10.510605,0.12222 0.041,0.32591 -0.1629,0.0407 0.1222,-0.36665 z m 21.836005,0 0.163,0 0,0.24443 -0.163,0 0,-0.24443 z m -16.662205,0.0407 0.5297,0.937 0.041,0.16295 -0.2037,0.28518 0.774005,1.83325 -0.529605,0.32591 -0.2852,-1.50734 -0.1222,-0.44813 -0.2444,-0.12222 -0.163,-1.42586 0.2037,-0.0407 z m -0.8962,0.0407 1.1407,4.23685 -0.3259,-0.0815 0,-0.0815 -0.2852,-0.16296 -0.6926,-3.4628 -0.041,-0.20369 -0.2851,-0.12222 0.4888,-0.12222 z m 19.880605,0.0815 0.2444,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -7.7812,0.0815 0.6519,0 0,0.20369 c -0.1266,0.0362 -0.2233,0.0983 -0.326,0.16296 l -0.3259,-0.0815 0,-0.28517 z m -9.2069,0.12222 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 15.1141,0.0407 0,0.12222 -0.082,0 0.082,-0.12222 z m 9.981,0.24444 0.2444,0.0407 -0.1629,0.48886 -0.2037,-0.0407 0.1222,-0.48886 z m 5.2553,0 0.2444,0.0407 -0.1629,0.48886 -0.2037,-0.0407 0.1222,-0.48886 z m -22.8138,0.0815 0.3667,0 c -0.095,0.17535 -0.2074,0.27297 -0.3667,0.28517 l 0,-0.28517 z m 7.1293,0 0.163,0 0,0.20369 -0.163,0 0,-0.20369 z m -1.5073,0.0407 0.2852,0.0815 -0.2852,0 0,-0.0815 z m 4.7257,0.0815 0.3259,0.61109 -0.1222,0.40738 -0.4481,-0.12221 0.2444,-0.89626 z m 1.0185,0.28517 0.2037,0.0407 c -0.079,0.2957 0.1602,0.56117 0.6518,0.69256 l -0.2444,0.89626 c -0.1374,-0.16028 -0.2848,-0.28993 -0.4482,-0.40739 l 0.041,-0.20369 -0.4481,-0.12222 0.2445,-0.89626 z m -5.8664,0.0407 0.1222,0 0.082,0.0407 -0.1222,0.44813 -0.163,-0.0815 0.082,-0.40739 z m 3.3813,0 0.5704,0 -0.082,0.2037 -0.2445,0 c -0.09,-0.0653 -0.1747,-0.12663 -0.2444,-0.2037 z m -7.4145,0.12222 c -0.014,0.0405 -0.029,0.0791 -0.041,0.12222 l -0.1222,-0.0407 0.163,-0.0815 z m -15.602905,0.16296 0.082,0.16295 0.3259,2.9332 0.4074,-0.12222 -0.1223,-0.36665 0.6111,0.24444 c -0.4434,0.11851 -0.6365,0.41476 -0.5296,0.81477 l 0.2444,0.12222 -0.2444,0.7333 0.041,0.20369 0.4481,-0.12221 -0.1222,-0.44813 0.2037,-0.0407 0.1222,0.44813 -0.3666,1.14069 -0.3667,-0.0815 c -0.056,0.0711 -0.069,0.13431 -0.1222,0.20369 l -0.4481,-1.58881 0.041,-1.09995 -0.3259,-0.0815 0.2037,-0.28517 -0.041,-0.24444 -0.4889,0.12222 -0.082,-0.16295 0,-0.0815 0,-0.16296 c 0.3324,-0.11704 0.5134,-0.41156 0.4481,-0.93699 l -0.4481,-0.77404 -0.041,-0.16295 0.5704,-0.36665 z m 31.165205,0 0.5296,0.12221 -0.2037,0.69256 -0.5296,-0.12221 0.2037,-0.69256 z m -28.924605,0.28517 -0.4074,0.0815 0.041,0.20369 0.4074,-0.12222 -0.041,-0.16295 z m 4.725705,0 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 8.5144,0.0407 0.2037,0.0815 -0.2444,0 0.041,-0.0815 z m 16.9067,0 0.5296,0.12221 -0.1223,0.48887 0.4482,0.12222 0.1629,-0.69256 0.4482,0.57034 -0.5704,0.81478 -0.1629,1.87398 -0.4482,0.52961 -0.2444,-0.0407 c 0.5137,-1.92153 0.4109,-2.92097 -0.2444,-3.09615 l 0.2037,-0.69256 z m -20.0436,0.0815 0.2037,0 -0.1222,0.44813 -0.1629,0 0,-0.20369 0.082,-0.24444 z m 1.7925,0 0.2037,0 c 0.1369,0.16132 0.1866,0.38537 0.163,0.65183 l -0.1222,0 -0.2445,-0.65183 z m -2.5665,0.12222 0.2037,0.36665 -0.2852,-0.0815 0.082,-0.28517 z m 12.5476,0.16296 0.2444,0.0815 0.2852,0.2037 -0.163,0.24443 c -0.1007,-0.099 -0.2134,-0.17918 -0.3259,-0.24443 l -0.041,-0.28517 z m -7.1701,0.16295 0.2852,0 c 0,0.0716 0.024,0.14662 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.7333,0.0815 0.4074,0.12222 -0.3259,0 -0.081,-0.12222 z m -6.7219,0.12222 0.2037,0.0815 -0.082,1.22217 -0.082,0.20369 -0.2037,-0.0815 0.041,-0.48887 0.2037,0 0,-0.65182 -0.082,-0.28517 z m 14.6253,0.0407 0.3259,0.0815 -0.163,0.65182 -0.2037,-0.0815 -0.041,-0.52961 0.082,-0.12222 z m -15.3586,0.0407 0,0.2037 -0.1222,0 0.1222,-0.2037 z m -1.4666,0.16296 0.1222,0 0.1222,0.16295 0.082,0.28518 -0.3259,-0.40739 0,-0.0407 z m 4.522,0.0407 0.2037,0 -0.082,0.20369 -0.1629,0 0.041,-0.20369 z m -5.2553,0.16295 -0.041,0.24444 c -0.1412,0.67657 -0.1364,1.03083 0.1222,1.09995 l -0.2444,0.20369 -0.082,0.16296 -0.041,0.24443 -0.1222,0.0407 -0.163,-0.57035 0.4482,-0.0815 c -0.206,-0.77059 -0.1475,-1.24298 0.1222,-1.34439 z m 1.874,0 0.041,0.12222 0.082,-0.0815 0.163,0.65182 0,0.12222 -0.4889,0.7333 0.2852,0.0815 -0.326,0.12221 -0.082,0.24444 0.2445,0.28517 -0.082,0.16296 -0.4074,0.57034 0.041,0.85552 -0.6518,1.30364 0.2444,0.28517 -0.4889,-0.16295 0.3667,-1.34439 -1.1814,0.7333 0.2444,0.28517 -0.8555,0.44813 -0.082,1.01847 -0.4074,0.69256 c 0.08,-0.49941 0.011,-0.79803 -0.2037,-0.85551 l 0.2852,-0.16296 0.041,-0.20369 0.2037,-1.30364 c 0.1374,-0.1299 0.2764,-0.27149 0.4074,-0.40739 l 0.4481,0.32591 c -0.053,-0.21157 -0.1577,-0.37537 -0.2445,-0.52961 0.051,-0.0555 0.1128,-0.10648 0.163,-0.16295 l 0.2444,0.0407 0.082,-0.36665 0.3667,-0.16296 -0.163,-0.16296 c 0.072,-0.0919 0.134,-0.19121 0.2037,-0.28517 l 0.7333,0.0407 0.163,-0.61108 -0.4074,-0.12222 c 0.071,-0.1075 0.135,-0.2161 0.2037,-0.32591 l 0.2852,0.0815 0.2851,-1.05921 c 0.1085,-0.19992 0.2227,-0.4049 0.3259,-0.61108 l -0.1222,-0.16296 0.041,-0.12222 z m 11.7328,0.0407 0.2037,0.40739 0,0.0407 -0.4889,0 c 0.012,-0.0714 0.03,-0.13545 0.041,-0.20369 l 0.2445,-0.24444 z m -22.162005,0.0407 0.082,0.28517 -0.082,0 0,-0.28517 z m 30.432005,0.2037 0.4888,0.12221 -0.4073,0.937 c -0.091,-0.13612 -0.2088,-0.26481 -0.3667,-0.36665 l 0.2852,-0.69256 z m -10.8773,0.16295 0.2037,0.0407 -0.2037,0 0,-0.0407 z m 0.9777,0.0407 0.4074,0.12222 -0.041,0.16295 -0.2037,0.0407 -0.1629,-0.28517 c 0.01,-0.003 -0.01,-0.0375 0,-0.0407 z m -8.3922,0.32591 0.4074,0.0815 -0.1629,0.65182 -0.2852,-0.57034 0.041,-0.16296 z m 23.9137,0.0407 c 0.452,0.27924 0.6049,0.76826 0.4074,1.50734 l -0.5296,1.05921 c -0.1997,1.12234 -0.2914,1.89101 -0.2851,2.40359 l -0.163,-0.0407 0.041,-0.77404 0.1222,-0.48886 -0.3666,-0.77404 0.8962,-2.11842 -0.1222,-0.77404 z m -21.836,0.12222 0.2444,0 0,0.20369 -0.2444,0 0,-0.20369 z m 12.0995,0 0.041,0 -0.163,0.57034 c -0.021,0.0768 -0.028,0.1306 -0.041,0.20369 l -0.041,0 0.2037,-0.77403 z m -19.9621,0.0407 0.2037,0.0407 0.1222,0.24444 -0.3666,-0.12222 0.041,-0.16296 z m -4.114605,0.2037 0.041,0.20369 -0.2852,0.52961 -0.041,-0.16296 0.2852,-0.57034 z m 3.6257,0 c 0.1218,0.0561 0.225305,0.11426 0.407405,0.16295 l -0.082,0.36665 -0.162905,-0.24443 -0.082,-0.0407 -0.082,-0.24443 z m 31.124505,0.0815 0.2445,0.0815 -0.1222,0.48887 -0.2445,-0.0815 0.1222,-0.48886 z m -25.4618,0.0815 c 0.1306,0.006 0.286,0.0201 0.4482,0.0407 l -0.1222,0.36665 c -0.2956,-0.079 -0.55,0.15923 -0.6926,0.69256 l -0.4481,-0.77403 c 0.047,-0.17471 0.2132,-0.25604 0.4888,-0.28518 l 0.3667,0 -0.041,-0.0407 z m 14.0142,0 0.082,0 0.1222,0.0407 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.24444 z m -8.1478,0.0407 0.2852,0 -0.1222,0.52961 -0.2444,-0.0815 c 0.037,-0.15395 0.063,-0.31014 0.082,-0.44813 z m 0.8556,0 0.5703,0 0,0.0815 -0.3666,0.57035 0.1222,0.16295 -0.6111,-0.16295 c 0.107,-0.16059 0.1904,-0.4143 0.2852,-0.65183 z m 1.0592,0 0.2444,0 -0.041,0.0815 -0.2037,-0.0407 0,-0.0407 z m 2.2406,0 0.4889,0 -0.1222,0.36665 -0.2037,0.0407 0,0.44813 0,0.0407 -0.081,0.16295 0.041,0.44813 -0.163,0.0407 c -0.1808,-0.20535 -0.2427,-0.4948 -0.2037,-0.85552 0,-0.0259 0,-0.0547 0,-0.0815 0.012,-0.0828 0.016,-0.15377 0.041,-0.24444 l 0.2037,-0.36665 z m 0.8555,0 0.7333,0 0.3259,0 -0.041,0.2037 -0.2444,0 0,0.48886 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.28517 -0.4889,0.12222 -0.041,-0.52961 0.2445,-0.0407 0,-0.48886 -0.2852,0.0407 -0.041,-0.24444 z m -7.6996,0.0815 0,0.77404 c -0.2652,-0.0831 -0.4074,-0.28894 -0.4074,-0.65182 0.1827,2e-5 0.2999,-0.0425 0.4074,-0.12222 z m 5.5405,0 0.4074,0.12222 -0.082,0.36665 -0.4482,-0.12222 0,-0.0407 0.163,-0.20369 -0.082,0 0.041,-0.12222 z m 11.9365,0 0.1222,0.65182 c -0.026,-0.0119 -0.051,-0.0326 -0.082,-0.0407 l -0.3259,0.0815 -0.041,0.24444 0,0.28517 -0.041,0.0815 -0.2037,-0.0407 0.041,-0.2037 0.2444,-0.36665 0.163,-0.28517 -0.4482,-0.12222 0.5704,-0.28517 z m -18.8214,0.0815 c 0.092,0.0158 0.1761,0.0407 0.2852,0.0407 l 0,0.65182 -0.2445,-0.0815 -0.041,0.12222 -0.1222,0 0,0.44813 0,0.0815 0.4481,0.12222 0.041,-0.20369 0.163,0 -0.5296,0.77403 -0.2444,-0.32591 -0.082,0.36665 0.2444,0.0815 -0.041,0.0407 0.5296,0.12222 0.082,0.24443 -0.1222,0.20369 c -0.155,0.0761 -0.2587,0.22703 -0.2852,0.44813 l -0.041,0.12222 -0.1629,0 c -0.01,-0.0298 0,-0.0522 0,-0.0815 l 0.082,-0.44813 -0.163,-0.0407 c -0.084,-0.43313 -0.1524,-0.79239 -0.2444,-1.05921 l 0.4481,-1.62955 z m -7.2923,0.44813 c 0.2126,0.11967 0.3124,0.32245 0.2852,0.61108 l -0.2037,-0.12222 -0.082,-0.48886 z m 18.3325,0 0.041,0 c -0.01,0.0299 -0.034,0.0522 -0.041,0.0815 -0.03,0.13716 -0.06,0.28313 -0.082,0.40739 -0.092,0.0158 -0.1761,0.0407 -0.2851,0.0407 l 0,0.48887 -0.2445,0 0.082,-0.937 0.5296,0 0,-0.0815 z m -12.3846,0.0815 0.2852,0 0.1222,0.0407 0,0.40739 -0.2037,0 0,0.2037 0.082,0.36665 c -0.1679,-0.14918 -0.2705,-0.48918 -0.2852,-1.01848 z m 25.3396,0.0407 0.4481,0.12222 -0.1222,0.40739 -0.4481,-0.12222 0.1222,-0.40739 z m -33.935505,0.0407 c -0.044,0.0495 -0.077,0.10969 -0.1222,0.16296 l -0.041,-0.12222 0.163,-0.0407 z m -0.8962,0.0407 0.4481,0.93699 -0.2037,0.0407 -0.082,-0.0407 c 0.011,-0.0447 0.028,-0.075 0.041,-0.12221 l -0.2444,-0.0815 -0.2037,-0.69256 0.2444,-0.0407 z m 17.517705,0 0.4074,0.12222 -0.082,0.24443 -0.3667,-0.24443 0.041,-0.12222 z m 0.7333,0 0.2037,0.0815 -0.1223,0.40739 -0.2036,-0.0407 0.1222,-0.44813 z m 7.1293,0.0815 0.082,0.12222 0.2851,0.0815 0.081,-0.0407 -0.2037,1.34439 -0.6925,2.52581 -0.2444,0.48886 -0.082,-0.36665 0.2036,-0.28517 -0.2036,-0.20369 -0.2445,0.0815 -0.1629,-0.28517 0.2851,-0.12221 0.2037,0.0407 0.041,-1.05921 0.2852,-0.97773 0.4074,0.0815 0.1222,-0.52961 0.041,0 0,-0.0815 c -0.1251,-0.22969 -0.1809,-0.50833 -0.2037,-0.81478 z m 3.0554,0.0407 0.2444,0.0815 -0.082,0.24443 0,0.0407 -0.1629,0.5296 -0.2037,-0.0815 0.2037,-0.81477 z m -20.2472,0.20369 0.4074,0.12222 -0.1223,0.36665 -0.2851,-0.48887 z m -10.632905,0.32591 0.041,0.16296 -0.1222,0.0407 0,-0.16296 0.082,-0.0407 z m 5.5405,0.0407 0.2037,0.0815 -0.082,0.36665 0.2037,0.0407 -0.2444,0.12221 -0.1222,0.48887 -0.163,-0.61108 0.2037,-0.48887 z m 27.417305,0 0.3666,0.0815 c -0.05,0.18576 -0.024,0.33527 0,0.44813 l -0.3259,-0.0815 c 0.053,-0.20003 0.019,-0.33531 -0.041,-0.44813 z m -3.9517,0.0815 0.041,0 c -0.023,0.12023 -0.051,0.23874 -0.082,0.36665 l -0.041,0 0.082,-0.36665 z m -17.314,0.0407 0.2037,0.0407 -0.2445,0.81477 -0.2037,-0.0407 0.2445,-0.81478 z m 14.7475,0.0407 c 0.1067,0.0985 0.2579,0.168 0.4073,0.24443 l -0.1629,0.32591 -0.163,-0.0407 -0.041,-0.0407 c -0.048,-0.0401 -0.1096,-0.0903 -0.1629,-0.12221 l 0.1222,-0.36665 z m -21.917605,0.16295 0.082,0 c 0.01,0.0632 0,0.14342 0,0.2037 l -0.082,-0.2037 z m 32.468905,0 0.3259,0.52961 -0.4481,-0.12222 0.1222,-0.40739 z m -33.242905,0.36665 0.041,0.12222 -0.163,-0.0407 0,-0.0407 0.1223,-0.0407 z m 6.762705,0.16296 0.2036,0.0815 -0.7333,2.81098 -0.2036,-0.0815 0.7333,-2.81098 z m 9.4514,0 -0.2037,0.81478 0,0.0815 c -0.07,0.01 -0.1708,0.0316 -0.2445,0.0407 l 0.2445,-0.89625 0.2037,-0.0407 z m 1.5888,0.16295 c 0,0.0512 0,0.10831 0,0.16296 -0.1404,0.17119 -0.5033,0.28724 -1.0185,0.40739 l 0.082,-0.24444 0.937,-0.32591 z m 8.5959,0.12222 c 0.1067,0.18437 0.2374,0.33745 0.3666,0.48887 l 0,0.12221 0.163,0.0407 c 0.068,0.0685 0.1302,0.14364 0.2037,0.2037 l -0.163,0.65182 -0.2037,-0.0407 c 0.071,-0.26674 -0.1676,-0.49256 -0.611,-0.61108 l 0.2444,-0.85552 z m 1.0185,0.0407 0,0.12222 -0.082,-0.0815 0.082,-0.0407 z m 5.5812,0.0407 0.4481,0.12221 -0.041,0.2037 -0.4889,-0.12222 0.082,-0.20369 z m -24.1989,0.0407 0.1222,0.44812 0.2444,0.89626 -0.4481,0.7333 0.3259,-0.12222 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 -0.2037,-0.24443 -0.2444,-0.0815 -0.082,0.44813 -0.2444,-0.0407 0.6518,-2.40359 z m -1.2222,0.0815 0.2037,0.0815 -0.1222,0.52961 -0.2037,-0.0407 0.1222,-0.57035 z m 7.1293,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m 14.5438,0.0407 -0.082,0.24444 0.6926,0.16295 0.082,-0.20369 -0.6926,-0.2037 z m -28.680205,0.0815 c 0.026,-0.005 0.055,0.004 0.082,0 -0.1259,0.1796 -0.3023,0.32896 -0.5296,0.44813 l -0.041,-0.2037 c 0.1448,-0.11438 0.3062,-0.20677 0.4889,-0.24443 z m 13.362405,0.2037 c 0.1272,0.1138 0.2391,0.2232 0.2852,0.32591 l -0.2852,-0.0815 0,-0.24443 z m -12.955005,0.20369 0.041,0 0.3259,0.12222 c 0.029,0.10641 0.051,0.19751 0.082,0.28517 l -0.2037,0.77404 -0.2036,-0.0407 c 0.1426,-0.53338 0.01,-0.85798 -0.2852,-0.937 l -0.2037,0.0815 0.041,-0.16295 0.3259,-0.0815 0.081,0 0,-0.0407 z m -2.5665,0.0407 0.082,0.24443 -0.1222,-0.0407 0.041,-0.20369 z m 13.443805,0 0.2037,0 c -0.015,0.10051 -0.023,0.21901 -0.041,0.32591 l -0.1629,0.16295 0,-0.48886 z m 8.5552,0 0.3666,0 -0.041,0.16295 -0.4074,-0.12221 c 0.02,-0.0187 0.064,-0.0211 0.082,-0.0407 z m 1.0184,0 0.4074,0 0,0.20369 c -0.1951,4e-5 -0.3609,0.0365 -0.4888,0.0815 l 0.082,-0.28517 z m -19.432405,0.0815 0.163,0.0407 -0.082,0.32592 -0.082,-0.36665 z m 13.810505,0.12221 0,0.52961 -0.041,0.0407 -0.041,0.16295 -0.2444,0 0.2036,-0.69256 0.1223,-0.0407 z m 0.8555,0 0.937,0 -0.041,0.16296 0,0.12221 -0.2444,0 -0.2852,-0.0407 -0.082,0.0407 -0.2852,0 c 0,0.0149 0,0.026 0,0.0407 l -0.082,-0.0407 0.082,-0.28517 z m 3.0554,0.16296 -0.082,0.36665 -0.3666,0 -0.1222,-0.12222 0.041,-0.16295 c 0.2044,-0.0207 0.3677,-0.0344 0.5296,-0.0815 z m 9.044,0 c 0.6945,0.36416 0.9332,1.0147 0.6926,1.91472 l -0.4889,-0.12221 -0.1629,0.5296 0.3666,0.57035 -0.8555,1.2629 0.2037,0.0407 -0.2444,0.12222 -0.082,0.28517 0.1629,1.30364 -0.5703,0.24444 0.2037,0.0407 -0.3667,0.57034 c -0.1386,0.96298 0.1611,1.5036 0.937,1.71103 l -0.2444,0.16296 -0.082,0.24443 0.082,0.61108 -1.3444,-2.03694 -0.2037,-0.0407 0.163,-0.61108 0.4481,0.0815 0.041,-0.16296 c -0.2956,-0.079 -0.5344,-0.51722 -0.6518,-1.2629 l 0.1629,-0.61109 0.2037,0.0407 -0.082,0.44813 0.6926,0.20369 0.082,-0.44812 -0.4074,-0.12222 0.2444,-0.81478 0.4074,0.12222 0.2037,-0.81478 -0.4074,-0.12221 0.082,-0.36665 0.4482,0.12221 0.082,-0.36665 -0.4074,-0.12221 0.1629,-0.61109 c 0.3696,0.0988 0.5984,-0.13822 0.8148,-0.65182 0.1069,-0.4 -0.01,-0.61477 -0.4481,-0.7333 l 0.1629,-0.61108 z m -24.5248,0.0407 0.4889,0.12221 -0.4074,0.57035 -0.2444,-0.0815 0.1629,-0.61108 z m 23.3027,0 c 0.1376,0.0728 0.2979,0.11503 0.4481,0.16295 l -0.1222,0.40739 -0.3259,-0.5296 0,-0.0407 z m -16.703,0.0815 0.6519,0 0.2037,0.24444 0.1629,0 -0.1629,0.61108 -0.6111,0 -0.2445,-0.85552 z m 5.7035,0.2037 0.082,0 c -0.036,0.16125 -0.082,0.31655 -0.1222,0.44813 l -0.082,0 0.1222,-0.44813 z m 4.8886,0.0407 0,0.16295 -0.082,0.24444 -0.2036,0 0.041,-0.2037 0.2444,-0.20369 z m -7.7403,0.0815 0.2037,0.0407 -0.041,0.0815 -0.2037,0 0.041,-0.12221 z m -8.6367,0.0815 0.6518,0.36665 -0.2851,1.01847 -0.2037,-0.0815 -0.2445,-0.937 0.082,-0.36665 z m 20.8991,0 0.4888,0.12222 0.3667,1.14069 -0.1222,0.44813 -0.2037,-0.0407 0.1222,-0.44813 -0.4481,-0.12222 -0.041,0.2037 0.2444,0.7333 -0.2444,0.12221 c -0.1069,0.40004 0.086,0.69627 0.5296,0.81478 l -0.5704,0.24443 0.082,-0.36665 -0.4074,-0.12221 -0.3259,2.9332 -0.082,0.16295 -0.5703,-0.32591 0.082,-0.20369 0.4074,-0.77404 c 0.069,-0.55307 -0.1194,-0.87896 -0.4889,-0.97774 l 0.1222,-0.36665 0.4889,0.12222 0.041,-0.24443 -0.2037,-0.28517 0.3259,-0.0815 -0.041,-1.09995 0.4481,-1.58882 z m -18.9844,0.0407 0.4074,0.12222 -0.041,0.20369 -0.4073,-0.12221 0.041,-0.2037 z m 11.2032,0 0.163,0 c 0.066,0.0585 0.1536,0.11741 0.2444,0.16296 l -0.041,0.12221 -0.082,0.28518 -0.2851,-0.52961 0,-0.0407 z m -19.962005,0.0407 0.3259,0.48887 -0.2444,-0.24444 -0.2037,-0.0407 0.1222,-0.2037 z m 1.0999,0.0815 0.163,0.0407 0,0.16295 -0.163,0.65182 -0.2037,-0.0815 0.2037,-0.77404 z m 31.083805,0 c 0.044,0.10287 0.088,0.18377 0.163,0.20369 l 0.2036,0.0407 0,0.44813 -1.711,6.35526 -0.4889,-0.12221 0.2852,-0.12222 0.041,-0.20369 0.6926,-3.46281 0.2852,-0.12222 0.041,-1.05921 0.4888,-1.95546 z m 1.0185,0 0.2037,0.0407 -0.2037,0.65182 -0.2037,-0.0815 0.1629,-0.57034 0.041,-0.0407 z m -15.6438,0.12222 0.041,0.44812 -0.1222,0.0407 -0.082,-0.32591 0.163,-0.16295 z m 12.792,0 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -9.5736,0.0407 c 0.1347,0.0336 0.3237,0.0613 0.4889,0.0815 l -0.1222,0.48887 -0.4482,-0.16296 0.082,-0.40739 z m -20.980505,0.32592 0.4889,0.12221 -0.082,0.2037 -0.163,1.38512 c 0.01,-0.18442 -0.023,-0.3523 -0.082,-0.57035 l -0.2037,-0.81477 0.041,-0.32591 z m 3.2998,0.0407 0.4482,0.0815 c -0.1069,0.39999 -0.01,0.69501 0.2851,0.77404 l -0.041,0.20369 c -0.4433,-0.11854 -0.7027,-0.10371 -0.774,0.16296 l -0.2037,-0.0407 -0.082,-0.61108 0.3667,-0.57035 z m 16.825205,0.0407 0.2852,0 -0.082,0.24444 -0.2037,0 0,-0.24444 z m -13.7697,0.16296 0.2037,0.0407 -0.041,1.05921 -0.4074,-0.12222 0.2444,-0.97773 z m 20.125,0.20369 0.4481,0.16296 -0.041,0.16295 -0.4889,-0.12221 0.082,-0.2037 z m 3.0961,0 0.2037,0.0407 -0.4481,0.937 -0.2037,-0.0407 0.2037,-0.81478 0.2444,-0.12222 z m -19.5139,0.12222 0.937,0.0407 -0.1222,0.57034 -0.9778,0 0.163,-0.61108 z m 8.5959,0.16295 0.2037,0 0,0.0407 -0.2037,-0.0407 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3628,0 0.3259,0 0,0.2037 -0.3666,0 0,-0.12222 0.041,-0.0815 z m -19.5139,0.0407 0.3259,0.52961 -0.2851,0.12222 -0.2037,-0.0407 c 0.062,-0.23334 0.1326,-0.43446 0.1629,-0.61109 z m -4.318305,0.16296 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m 32.305905,0 0.2037,0.0407 c -0.1069,0.40001 -0.01,0.69504 0.2852,0.77404 l -1.4259,3.50354 0.2037,0.24443 -0.041,0.2037 -0.5296,0.89625 -0.2037,-0.0407 0.163,-1.42586 0.2444,-0.12221 0.1222,-0.44813 0.6926,-3.42207 0.2852,-0.20369 z m -35.361305,0.12222 0.1222,0.85551 0.2037,0.12222 c -0.012,0.0966 -0.014,0.18349 -0.041,0.28517 l 0,0.0815 -0.041,-0.0815 -0.2037,0.0815 c 0.022,0.0838 0.035,0.13719 0.041,0.20369 l -0.3667,0.1646 c -0.01,-0.0436 -0.032,-0.0797 -0.041,-0.12222 l 0.1222,-0.0407 0.041,-0.20369 0.163,-1.34438 z m 9.451405,0.0407 0.6111,0.16296 -0.041,0.20369 -0.6926,0.0815 0.1222,-0.44813 z m -4.807205,0.24444 0.2037,0.0815 -0.163,0.5296 -0.2036,-0.0407 0.1629,-0.57034 z m 28.965305,0 0.2037,0.0407 -0.2851,1.01847 -0.2037,-0.0815 0.2851,-0.97773 z m -20.4916,0.12221 0.3666,0.52961 -0.1629,0.61108 -0.2037,-0.32591 -0.4074,-0.12221 c -0.1069,0.40001 -0.4121,0.56665 -0.8555,0.44812 0.107,-0.40002 -0.01,-0.65551 -0.4481,-0.77404 l 0.041,-0.20369 0.4074,0.12222 0.1629,0.24443 c 0.08,-0.29997 0.4464,-0.45431 1.1,-0.52961 z m 10.8365,0.2037 0.1222,0 0,0.12222 -0.1222,-0.12222 z m 13.1179,0 0.8963,0.24443 -0.4481,1.75177 c -0.2956,-0.079 -0.3768,-0.54439 -0.163,-1.34438 l -0.4481,-0.0815 0.1629,-0.57034 z m -6.1515,0.0407 0.2851,0.5296 -0.041,0.2037 -0.2851,-0.57035 0.041,-0.16295 z m -28.558005,0.0815 -0.2037,1.62955 -0.8147,0.24443 0.2444,-0.89625 c 0.4491,-0.22295 0.7308,-0.54687 0.774,-0.97773 z m 0.6926,0 0.2444,0.0815 -0.082,0.36665 -0.2851,-0.0815 0.1222,-0.36665 z m 21.876805,0.0407 0.1629,0.0407 0,0.24444 -0.4074,0 0.2445,-0.28518 z m -9.5329,0.0407 0.2037,0 0.1629,0.24444 -0.2852,0 -0.082,0 0,-0.0407 0,-0.2037 z m -6.9664,0.24444 0.4889,0.12221 -0.082,0.24444 -0.5296,0.93699 -0.163,-0.24443 -0.2037,-0.0815 -0.5296,0.28517 0.041,0.65182 c -0.2956,-0.0791 -0.5041,0.0481 -0.6111,0.44813 l -0.1629,-0.24443 -0.2037,-0.0407 -0.244405,0.12221 0.203605,-1.62955 0.6111,0.16296 0.1222,-0.40739 c 0.7391,0.19754 1.1561,0.0741 1.263,-0.32591 z m 2.8517,0.12221 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m -7.862605,0.0407 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m 6.640505,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2445,-0.0407 0.1223,-0.44813 z m -9.288505,0.12222 0.2037,0.0815 -0.2444,0.0815 0.041,-0.16295 z m -0.041,0.28517 0.163,0.12222 0,0.0407 -0.2037,-0.0407 0.041,-0.12222 z m 15.725205,0.0815 c 0,0.20653 -0.1299,0.30826 -0.3259,0.36665 l -0.5296,0.0407 0,-0.16296 0,-0.0407 0.8555,-0.20369 z m 3.2591,0 c 0.013,0.005 0.029,-0.006 0.041,0 0.089,0.046 0.1749,0.11085 0.2037,0.20369 l -0.2444,0 0,-0.20369 z m 1.5481,0 0.4074,0 0.082,0.12221 -0.2037,0.81478 c -0.045,0.002 -0.075,0 -0.1222,0 l 0,0.2037 -0.2037,-0.2037 -0.4074,0 -0.163,-0.24443 0.1223,-0.44813 c 0.1892,0.0506 0.3495,-0.044 0.4888,-0.24443 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.0591 0,0.0815 -0.099,0.33787 -0.3274,0.59857 -0.6518,0.7333 l -0.1223,-0.0407 0.4482,-0.77404 z m 4.4405,0 -0.041,0.20369 -0.4889,0 0,-0.12222 c 0.2002,-0.0277 0.3723,-0.0507 0.5296,-0.0815 z m 8.8811,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m -26.8469,0.0815 0.4074,0.12222 -0.1223,0.44813 -0.4073,-0.12222 0.1222,-0.44813 z m 9.7366,0.12222 0.1629,0 -0.1629,0.57035 0,-0.57035 z m -11.9773,0.16296 -0.082,0.36665 0.4074,0.12221 0.1222,-0.36665 -0.4481,-0.12221 z m 4.9702,0.0407 0.6925,0.20369 -0.1222,0.36665 0.4481,0.12222 0.163,-0.61109 0.3259,0.36665 c -0.3477,0.17232 -0.5887,0.44677 -0.7333,0.81478 -0.062,0.0265 -0.089,0.0462 -0.1222,0.0815 l -0.2037,-0.0407 c 0.1402,-0.44387 -0.02,-0.72709 -0.4074,-0.81478 l -0.2037,-0.0407 c 0.072,-0.11464 0.1184,-0.28147 0.163,-0.44812 z m 16.9066,0 0.4074,0.12221 -0.082,0.24444 -0.4074,-0.12222 0.082,-0.24443 z m -14.4216,0.20369 0.1223,0.0407 c -0.043,2.1e-4 -0.081,-0.002 -0.1223,0 l 0,-0.0407 z m -13.729005,0.24443 0.4482,0.0815 -0.082,0.2037 -0.4074,-0.12222 0.041,-0.16296 z m 20.165805,0 0.1629,0.0815 -0.2037,0.0407 0.041,-0.12222 z m -10.4699,0.0407 0.163,0.24444 0.2036,0.0407 c 0.1186,0.0317 0.2233,0.0419 0.326,0.0407 -0.1474,0.0926 -0.2951,0.12532 -0.4889,0.0815 l -0.2037,0.65182 c 0.3876,0.0877 0.6345,0.21898 0.774,0.44813 l -0.4888,0.24443 0.4074,0.0815 0.082,-0.28517 c 0.122,0.22481 0.1522,0.50258 0.041,0.85552 l 0.6518,0.16295 -0.3667,1.09995 -0.6111,-0.12222 0,2.11839 -1.3443,1.1407 0.2037,0.3259 -1.7518,2.4036 0.4481,-0.1222 0.2444,0.082 -0.1222,0.4074 -0.2851,-0.041 -0.2852,-0.3259 -0.2852,-0.041 -0.1222,0.4889 -0.2852,-0.082 2.4851,-7.78118 0.2444,-0.0407 -0.2851,0.97774 0.6518,0.12221 0.4074,-1.30364 -0.4482,-0.0815 0.041,-0.12221 -0.2037,-0.0815 -0.2851,0 0.041,-0.12222 0.2851,-0.0407 0.082,-0.20369 -0.2444,-0.0815 0.163,-0.57034 -0.2037,-0.28518 0.082,-0.20369 0.2851,-0.0815 z m 6.6812,0.0407 0.2037,0.0407 -0.041,0.12222 -0.163,-0.16296 z m 7.8626,0 0.041,0.16296 -0.2852,-0.0815 0.2444,-0.0815 z m -20.043605,0.12222 0.4482,0.77404 -0.3259,0.16295 -0.163,-0.0407 0.041,-0.89625 z m -0.6925,0.0407 0.2037,0.0407 -0.1222,0.44812 -0.2037,-0.0407 0.1222,-0.44812 z m 19.880605,0.16295 -0.082,0.24443 -0.2037,-0.0407 0,-0.0815 0.2851,-0.12222 z m -1.3852,0.12222 0.082,0.12221 0,0.28518 -0.4481,-0.12222 0.163,0 0.2037,-0.28517 z m 3.8702,0.12221 0.2445,0.0815 0,0.28517 0,0.65183 0,0.12221 -0.326,0.12222 -0.4073,-0.0815 0.2851,-1.14069 0.041,0 c 0.064,-0.008 0.1028,-0.0322 0.163,-0.0407 z m -25.380305,0.12222 0.3667,0.48887 -0.4889,-0.12222 0.1222,-0.36665 z m 35.402105,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -11.4476,0.12222 -0.041,0.20369 -0.7741,0.0815 -0.2037,-0.0815 0,-0.0407 1.0185,-0.16295 z m 6.4367,0 -0.041,0.20369 0.4074,0.0815 0.041,-0.16296 -0.4074,-0.12221 z m -27.172805,0.24443 0,0.20369 -0.4074,0.2037 0.3259,0.32591 -0.1222,0.0815 -0.2852,-0.0815 0.082,-0.32591 -0.1222,-0.0407 0,-0.0407 0.5296,-0.32591 z m 3.136905,0 0.3666,0.0815 -0.2444,0.69256 -0.3259,-0.0815 0.2037,-0.69256 z m 8.3107,0 0.4074,0 0,0.0407 -0.4074,0 0,-0.0407 z m -13.606805,0.0815 0.2037,0.0407 -0.3666,1.34438 c -0.019,-0.29822 -0.091,-0.48679 -0.2445,-0.57034 l 0.041,-0.32592 0.3667,-0.48886 z m 10.307005,0.0815 0.2444,0.0815 -0.1222,0.44813 -0.2852,-0.0407 0.163,-0.48886 z m 2.1184,0.0407 0.2444,0.0407 -0.082,0.24444 0.041,0.16295 c -0.01,0.1969 0.032,0.3372 0.1222,0.44813 l 0,0.0815 -0.1629,0 -0.4074,0.44812 -0.2037,0 0.2444,-0.85551 0.163,-0.28517 -0.041,-0.0407 0.082,-0.24444 z m 1.3851,0.0407 0.2444,0.28518 0,0.28517 c -0.1625,-0.11746 -0.2809,-0.25347 -0.4074,-0.36665 l 0.163,-0.2037 z m -7.6996,0.2037 0.2851,0.0407 -0.1629,0.48886 -0.2445,-0.0815 0.1223,-0.44813 z m 13.9734,0.0815 0.2037,0.0407 0.3259,0.48887 -0.082,0.24443 -0.2037,-0.0815 -0.082,-0.0815 0,-0.16296 -0.2037,0 c 0.013,-0.15533 0.042,-0.32188 0.041,-0.44812 z m -16.540005,0.0815 -0.1222,0.36665 -0.041,1.42586 -0.6518,0.81478 0.3666,0.0815 -0.4481,0.1222 -0.082,0.2445 0.2852,0.3259 -0.041,0.2037 -0.5704,0.6111 0.082,0.9777 -0.8555,1.4259 0.2852,0.2851 -0.6111,-0.1222 0.4481,-1.5481 -1.5073,0.8555 0.2851,0.2852 -1.0184,0.4481 c -0.1112,-0.2192 -0.218,-0.4174 -0.3259,-0.6518 0,-0.011 0.01,-0.03 0,-0.041 l 0.1222,-0.774 0.2851,0.082 0.6926,0.4481 c -0.2006,-0.6795 -0.5592,-1.0906 -1.1407,-1.2222 l 0.2037,-0.6925 c 0.015,-0.046 0.027,-0.077 0.041,-0.1222 l 0.1222,-0.041 0.041,-0.2037 -0.082,-0.041 c 0.068,-0.2257 0.108,-0.4498 0.163,-0.6518 l 0.1629,-0.1223 0.041,-0.20258 -0.041,-0.12221 c 0.059,-0.23984 0.045,-0.41042 0.082,-0.61109 0.2166,-0.0412 0.4501,-0.15496 0.6926,-0.36665 -0.087,0.52224 -0.036,0.8328 0.2444,0.89626 l -0.3259,0.20369 -0.041,0.0815 c -0.1805,0.1125 -0.3751,0.2435 -0.5296,0.3667 l -0.041,0.2444 0.4074,0.1222 -0.3259,1.6703 0.5703,0.1223 0.1222,-0.4074 0.4482,-0.2037 -0.2852,-0.2852 -0.2852,-0.082 0.082,-0.2037 1.5074,0.1222 0.2037,-0.6925 -0.5296,-0.1223 0.1222,-0.4074 0.5703,0.1223 0.3667,-1.14077 0.2444,-0.16295 -0.2037,-0.0407 0.4889,-1.54808 0.3259,-0.12222 z m -6.1108,0.0407 0.2444,0.0815 -0.1222,0.36665 -0.2037,-0.0407 0.082,-0.40739 z m 24.035905,0 0.163,0.24444 0.2037,0.0815 0.3259,-0.12221 -0.041,0.16295 c -0.3962,0.0368 -0.7257,0.11789 -0.9778,0.2037 l -0.041,0 -0.1629,-0.0407 0.2852,-0.44813 0.2444,-0.0815 z m -12.018,0.0815 0.6111,0.12222 -0.1222,0.40739 -0.4889,-0.52961 z m 3.9517,0.12222 0.3259,0.0815 -0.041,0.16296 -0.2852,0.0815 0,-0.0407 0,-0.28517 z m 4.8072,0.0407 0.2037,0.0407 0,0.0407 -0.2037,0 c 0,-0.0303 0,-0.052 0,-0.0815 z m -13.8105,0.0815 0.2852,0.0815 -0.082,0.61108 -0.366705,0.12222 0.041,-0.40739 0.122305,-0.40739 z m 29.5764,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -7.4552,0.32591 0.4074,0.12222 -0.082,0.44813 -0.4074,-0.24444 0.082,-0.32591 z m -26.358005,0.0407 0.4074,0.12222 -0.082,0.20369 -0.4074,-0.12221 0.082,-0.2037 z m 1.6703,0 0.2037,0.24443 -0.041,0.2037 -0.3259,-0.32591 0.1629,-0.12222 z m 18.169505,0.0407 c 0.1619,0.0875 0.2758,0.18387 0.4889,0.28517 -0.019,0.0576 -0.041,0.13961 -0.041,0.2037 l -0.5296,0 c 0.031,-0.17322 0.06,-0.33608 0.082,-0.48887 z m -3.2591,0.20369 0.163,0 0,0.0407 -0.163,-0.0407 z m -12.1402,0.2037 -0.082,0.57034 -0.041,0.24444 -0.285205,-0.0815 0.041,-0.61108 0.366705,-0.12222 z m -3.299805,0.0815 0.2444,0.0407 -0.1222,0.48886 -0.2852,-0.0407 0.163,-0.48886 z m 10.714305,0.0407 0.7333,0.16295 0,0.0815 -0.082,0.24443 -0.082,0.12222 0,0.16295 0,0.0407 -0.1222,0.28518 -0.082,0 -0.2037,-0.28518 c 0.017,-0.3233 -0.065,-0.59919 -0.163,-0.81477 z m 20.0028,0 c -0.1782,0.66667 0.096,1.38755 0.6925,2.11845 l 0.2445,-0.1222 0.1629,0.2444 -0.041,0.1629 c -0.2463,-0.066 -0.4957,0.012 -0.6925,0.163 -0.042,-0.016 -0.074,-0.03 -0.1223,-0.041 l -0.3666,0.1222 c 0.1402,-0.4439 0.062,-0.7271 -0.3259,-0.8148 l -0.4074,0.1222 -0.041,0.082 -0.2852,-0.2037 c 0.2165,-0.5135 0.4453,-0.70982 0.8148,-0.61104 l 0.1222,-0.40739 -0.6111,-0.16295 0.8556,-0.65182 z m 2.4036,0.0407 0.3259,0.48887 -0.1222,0.44813 -0.2852,-0.57035 0.082,-0.36665 z m -17.9659,0.0815 0.2852,0.0815 -0.1222,0.40739 -0.2445,-0.32591 0.082,-0.16296 z m -14.258605,0.0407 0.2852,0.0407 -0.082,0.20369 c -0.1131,0.033 -0.218,0.0873 -0.3259,0.12222 l 0.1222,-0.36665 z m 15.766005,0 0.7333,0 -0.082,0.2037 -0.6926,0.0815 c 0.022,-0.10671 0.02,-0.18393 0.041,-0.28517 z m -3.9924,0.0815 0.041,0 0,0.12222 -0.041,0 0,-0.12222 z m 19.6768,0 0.2037,0.0407 -0.2037,0.81478 -0.2037,-0.0407 0.2037,-0.81478 z m -28.4357,0.16295 0.5703,0.12222 -0.2444,0.69256 -0.3666,-0.61108 0.041,-0.2037 z m 2.1592,0.0407 -0.082,1.1407 0.611,0.163 0.082,-1.18148 -0.611,-0.12222 z m 19.5546,0.12222 0.163,0.0407 -0.1222,0.44813 -0.2037,-0.0407 0,-0.0407 0.041,0 0.1222,-0.40739 z m -13.4438,0.0407 0.1222,0 0.2852,0.73328 -0.1222,0.163 -0.163,0 -0.2037,-0.61111 c 0.01,-0.0113 0,-0.0293 0,-0.0407 l 0,-0.0407 c 0.026,-0.0655 0.056,-0.13405 0.082,-0.20369 z m 6.3145,0 0.4074,0 -0.082,0.48887 -0.3259,0 0,-0.48887 z m 4.0332,0 0.2444,0.0407 -0.041,0.16295 -0.2444,-0.0815 0.041,-0.12222 z m -25.706305,0.0815 0.082,0.0407 -0.041,0.20369 -0.082,-0.0407 0.041,-0.20369 z m 38.172405,0.0815 -0.041,0.16296 0.041,0.0407 0,-0.2037 z m -21.5509,0.0407 0.082,0 0,0.32591 -0.2037,-0.0407 0.1222,-0.28518 z m -10.918005,0.24444 c 0.2732,-0.0456 0.679405,-0.0134 1.181405,0.0407 l -0.1222,0.40734 c -0.3876,-0.088 -0.750105,0.1822 -0.937005,0.7741 l -0.5704,-0.8963 c 0.053,-0.16642 0.175,-0.28026 0.4482,-0.32588 z m 14.095605,0.0407 0.3259,0 -0.1222,0.20374 -0.2037,0 0,-0.20374 z m 0.7741,0 0.082,0 0,0.20374 -0.041,0 -0.041,-0.20374 z m 15.1548,0.0407 0.4889,0.12222 -0.2852,1.01852 -0.3666,-0.4889 0.1629,-0.65184 z m -17.9658,0.0407 0.2444,0.0407 -0.2852,0.0815 0.041,-0.12442 z m 10.8365,0 0.2037,0.0407 -0.041,0.12224 -0.2444,0.1222 0,0.082 -0.041,0 0.041,-0.082 0.082,-0.28518 z m 9.5737,0.12224 -0.1223,0.082 -0.082,0.1629 0.2037,0.2445 0,-0.4889 z m -13.8105,0.082 0.4074,0.082 -0.3259,0.4481 -0.326,-0.082 -0.041,-0.1629 0.2852,-0.2852 z m -10.4292,0.041 0.1222,0.082 0,0.2444 -0.1629,-0.041 c 0.032,-0.1024 0.017,-0.1886 0.041,-0.2851 z m 13.8512,0.041 0.6111,0.5296 0.041,0.041 -0.1222,0.6111 c -0.1738,-0.1302 -0.3351,-0.2839 -0.4889,-0.3667 -0.043,-0.2456 -0.071,-0.5151 -0.041,-0.8148 z m -8.5551,0.041 0.3666,0 0,0.2444 -0.3666,0 0,-0.2444 z m -16.458505,0.082 0.1629,0.041 -0.1222,0.4074 -0.2852,-0.082 0.082,-0.2852 0.163,-0.082 z m 4.196105,0.2037 0.5296,0.1222 0,1.1814 c -0.3391,-0.077 -0.521,-0.509 -0.5296,-1.3036 z m 1.7925,0.1629 -0.2444,0.6926 0.6518,0.163 0.2037,-0.6926 -0.6111,-0.163 z m 3.0147,0.2445 c 0.5369,0.1214 0.591,1.2374 0.1629,3.2998 -0.149,0.2487 -0.3559,0.7021 -0.5703,1.1407 l -0.5704,-0.1222 -0.5296,-1.3444 c 0.3877,0.088 0.5932,-0.086 0.7333,-0.5296 l 0.082,-1.1814 0.2037,0.2444 0.6518,0.163 -0.1629,-1.6703 z m 9.6958,0.041 0.1222,0.1222 -0.2444,0.2852 -0.1222,0.4481 -0.1222,0 -0.2852,-0.082 -0.041,-0.4481 0.082,-0.1223 0.2444,0.2445 0.3667,-0.4482 z m 5.3775,0 c 10e-5,0.306 -0.1563,0.4481 -0.5703,0.4481 l 0,0.2037 0.4074,0 -0.3667,0.6518 -0.4073,-0.081 0.082,-0.082 0,-0.2852 -0.041,-0.041 0.4073,-0.774 c 0.1596,-0.01 0.3126,-0.041 0.4889,-0.041 z m -13.4438,0.041 0.2852,0.041 -0.4481,1.2629 -0.082,0.3259 c 0.1979,0.081 0.3666,0.1667 0.5296,0.2444 l -0.2445,0.4481 -0.1222,-0.2037 -0.3259,0.163 -0.2444,-0.041 c 0.067,-0.1419 0.1305,-0.2725 0.2037,-0.4889 l -0.2037,0 0.1629,-0.4888 0.041,0.041 0.2852,0 0.163,-1.3037 z m -8.188505,0.082 0.5704,0.1222 -0.163,0.4074 -0.4074,-0.5296 z m 13.158705,0.082 0.082,0.082 -0.163,-0.041 0.082,-0.041 z m 4.359,0 0.3259,0 c -0.047,0.2542 -0.075,0.4486 -0.082,0.6518 l -0.611,0 0.082,-0.5704 0.2851,-0.082 z m -3.1369,0.082 0.082,0.4888 c -0.2042,-0.1067 -0.3488,-0.235 -0.4481,-0.4074 l 0.3666,-0.082 z m -1.7517,0.082 -0.1223,0.4888 -0.1629,0 0,-0.4074 0.2852,-0.082 z m 18.0065,0.041 0.2037,0.041 -0.1629,0.6518 -0.2037,-0.082 0.1629,-0.6111 z m 0.6519,0 0.4888,0.1222 -0.4074,1.4666 -0.1629,-0.041 c -0.083,-0.019 -0.171,0.021 -0.2445,0.041 l 0,-0.3667 0.326,-1.2221 z m -21.225,0.041 0.1222,0 0,0.041 -0.1222,-0.041 z m 3.5036,0.1222 c 0.081,0.036 0.1343,0.08 0.2036,0.1222 l -0.2444,0.041 0.041,-0.163 z m -12.181,0.082 0.2852,0.041 -0.2852,0.8962 -0.2851,-0.041 0.2851,-0.8962 z m 1.7925,0.1629 -0.1222,0.4482 0.6111,0.1222 -0.4889,-0.5704 z m 19.5954,0 c 0.045,0.041 0.1551,0.1195 0.2037,0.163 l -0.082,0.5296 -0.8962,2.8517 -0.5704,0.8148 0.3667,1.0592 -0.6518,-0.163 -0.3667,2.0777 -0.5296,-0.1222 0,-0.9777 0.3259,-0.1222 0.082,-0.2037 0.163,-1.4666 0.4888,-0.5704 -0.1222,-0.1222 c 0.028,-0.055 0.041,-0.1272 0.041,-0.2037 l 0.2037,-0.1222 -0.4074,-0.5703 0.3667,-0.1223 0.2444,0.041 0.082,-1.1406 0.3666,-1.1407 0.5296,0.1222 0.163,-0.6111 z m 1.2629,0.082 0.1223,0.163 -0.163,-0.041 0.041,-0.1222 z m 1.8333,0.1222 0.082,1.6296 0.4889,0.1222 0.2036,-0.2037 -0.2444,0.8148 c -0.1147,-0.1898 -0.1569,-0.2813 -0.2852,-0.4889 l -0.2037,0.081 c -0.022,-0.018 -0.055,-0.024 -0.082,-0.041 l -0.4073,-0.6518 0.4481,-1.2629 z m 0.5296,0 0.3666,0.082 0,0.082 -0.2444,0.3667 -0.2444,-0.082 0.1222,-0.4481 z m 3.7887,0.163 0.2037,0.041 -0.1222,0.4481 -0.2037,-0.082 0.1222,-0.4074 z m 1.7925,0.2444 0.2037,0.082 0,1.0592 0,0.041 c -0.05,0.036 -0.1167,0.064 -0.1629,0.1223 l -0.3667,-0.082 0.3259,-1.2222 z m -32.102205,0.041 0.2444,0.082 -0.9777,3.0962 -0.2444,-0.041 0.9777,-3.1369 z m 29.576405,0.163 0.082,0.041 -0.1629,0.6111 -0.2037,-0.041 0.1222,-0.4482 0.1629,-0.1629 z m -14.0142,0.1629 0.2037,0 0,0.4889 -0.2037,0 0,-0.4889 z m 11.6921,0.082 0.2037,0.082 0.041,0.2445 -0.2852,-0.2037 0.041,-0.1222 z m -24.2804,0.082 -0.1629,0.4482 0.6111,0.1629 0.1629,-0.4888 -0.6111,-0.1223 z m 27.1321,0.041 0.2037,0.041 0.041,0.6926 -0.4074,-0.1222 0.163,-0.6111 z m -29.046805,0.041 0.285205,0.041 -0.2037,0.6519 -0.244505,-0.082 0.163,-0.6111 z m 31.572605,0.2037 0.4074,0.1223 -0.082,1.0592 -0.082,0.3259 -0.2444,-0.081 0.082,-1.1407 c -0.055,-0.013 -0.1121,0 -0.163,0 l 0.082,-0.2852 z m -19.5546,0.2445 0.041,0 0,0.4481 -0.2037,0 0.1629,-0.4481 z m -5.5405,0.041 0.6925,0.1629 -0.5703,1.1815 -0.3259,0.4481 -0.082,0 0.2037,-0.6111 0,-1.0592 c 0.035,-0.028 0.048,-0.074 0.082,-0.1222 z m 5.9479,0.2037 0.4073,0 0,0.4888 0.2445,0 0.041,-0.041 -0.041,0.2852 -0.3259,0.082 -0.041,-0.1222 0.041,-0.2037 -0.3667,-0.082 -0.1629,0.041 c 0.1408,-0.1216 0.2037,-0.2569 0.2037,-0.4481 z m 13.8919,0 0.2444,0.041 0.1223,0.7333 -0.082,0.2444 -0.4074,-0.6111 0.1222,-0.4074 z m -11.8143,0.2037 0.082,0 -0.2037,0.8962 -0.082,0.041 -0.2036,-0.2037 c -0.1036,0 -0.1645,0.01 -0.2445,0.041 l 0.2037,-0.6518 0.4481,-0.1222 z m 0.7741,0 0.4888,0 0.163,0.041 -0.2444,0.774 -0.5296,0.3259 -0.2445,0 0.082,-0.2037 0.163,0 0,-0.2037 0.2852,-0.082 -0.2852,-0.2852 0.1222,-0.3666 z m 2.8517,0 0.6518,0 -0.082,0.2037 -0.6111,-0.1223 0.041,-0.082 z m -22.528605,0.1629 0.6518,0.163 -0.4888,0.6111 -0.3667,-0.082 0.2037,-0.6926 z m 14.951205,0.1222 0.2037,0 0.3666,0.082 -0.4074,0.2037 -0.041,0.2037 0.041,0.1222 -0.1629,0.041 -0.2037,0 0.2037,-0.6518 z m 20.0028,0.041 0.2036,0.041 -0.041,0.2037 -0.2036,-0.041 0.041,-0.2037 z m -18.8214,0.163 0.2444,0.041 -0.041,0.2037 -0.2852,0.041 0.082,-0.2852 z m 6.1923,0 0.2852,0.041 -0.041,0.081 -0.2445,-0.081 0,-0.041 z m 6.1516,0.2037 0.6518,0.1222 0.2852,0.8555 c 0.027,0.314 0.036,0.6162 -0.041,0.937 l -0.2037,-0.082 0.1629,-0.4481 -0.5703,-0.1222 -0.041,0.2037 0.3259,0.8147 -0.3259,0.1222 c -0.1051,0.333 -0.023,0.6073 0.2852,0.7741 -0.04,0.1099 -0.074,0.22 -0.1223,0.3259 l -0.2444,0.082 0.1222,-0.4074 -0.5703,-0.1222 -0.2445,1.7518 c -0.1707,0.1743 -0.3679,0.3712 -0.5703,0.5296 l 0.2037,-0.2852 c 0.09,-0.6138 -0.1266,-0.9904 -0.6111,-1.1 l 0.1222,-0.4074 0.6111,0.1223 0.1222,-0.2852 -0.3259,-0.2852 0.4481,-0.1222 0,-1.1814 0.5297,-1.7925 z m -27.376505,0.041 0.8147,0.4074 -0.3259,1.0999 -0.2852,-0.082 -0.3259,-1.0185 0.1223,-0.4073 z m 2.485,0.041 0.5704,0.1222 -0.082,0.2037 -0.5296,-0.1222 0.041,-0.2037 z m 32.020805,0.1222 0.2851,0.041 -0.2036,0.6926 -0.2852,-0.041 0.2037,-0.6926 z m -23.3027,0.041 0.2037,0 0,0.2037 -0.2444,-0.041 0.041,-0.163 z m 10.144,0 0,0.082 -0.041,0 0.041,-0.082 z m 11.8143,0.2852 -0.3667,1.3443 -0.041,0 0.4074,-1.3443 z m -11.4884,0.082 0.2445,0.081 -0.082,0.2037 -0.2852,0.1222 0.1222,-0.4074 z m 10.307,0 0.041,0 c 0.027,0.1987 0.01,0.418 -0.041,0.6518 l -0.163,-0.041 0.163,-0.6111 z m 1.5888,0 0.1222,0.041 0,0.2037 -0.163,-0.041 0.041,-0.2037 z m -16.3363,0.1222 0.163,0 -0.4482,0.4481 -0.2037,0 0.4889,-0.4481 z m 3.1369,0 0.2852,0 -0.082,0.4481 -0.326,0 0.1223,-0.4481 z m -22.447105,0.2037 0.082,0.1222 -0.041,0.082 c -0.011,-0.069 -0.041,-0.1361 -0.041,-0.2037 z m 20.165705,0 0.5296,0 0.082,0.082 -0.082,0.3259 -0.6111,-0.1222 0.082,-0.2852 z m -18.902805,0.082 0.2037,0.041 0,0.2444 c -0.066,-0.097 -0.1384,-0.184 -0.2037,-0.2852 z m 10.714305,0.2037 -0.082,0.2851 -0.041,0.082 -0.041,0.1222 -0.163,-0.2036 0.3259,-0.2852 z m 19.7176,0 0.2037,0.041 -0.082,0.1629 c -0.028,-0.054 -0.092,-0.1466 -0.1222,-0.2037 z m -4.1554,0.041 0.6111,0.1222 -0.082,0.2444 -0.6111,-0.1629 0.082,-0.2037 z m 7.9441,0 0.163,0.041 -0.2852,0.9777 -0.1222,-0.041 0.2444,-0.9777 z m -29.4542,0.082 1.2222,0.082 -0.2037,0.6111 -1.2629,0 0.2444,-0.6926 z m 10.918,0.041 0.6519,0 0,0.2037 -0.1223,0 -0.611,-0.163 c 0.029,-0.014 0.051,-0.027 0.082,-0.041 z m 14.2994,0.081 0.2852,0.4074 -0.2852,0.4481 -0.2445,-0.041 0.2445,-0.8148 z m 1.1407,0.3259 0.1222,0.6111 -0.2852,-0.082 0.163,-0.5296 z m 4.1553,0.041 0.1223,0 c -0.064,0.2039 -0.057,0.3921 0,0.5296 l -0.041,0 -0.1223,0.4074 0.041,0.8962 -0.4074,0.4889 -0.2036,-0.041 0.3259,-1.1814 -0.4482,-0.1223 0.2445,-0.8147 0.4074,0.1222 0.082,-0.2852 z m -17.2325,0.041 0.3666,0 0,0.2851 -0.2444,0.082 -0.1222,-0.041 0,-0.3259 z m 0.774,0 0.4074,0 -0.1629,0.5703 -0.2445,-0.041 -0.082,-0.082 0.082,0 0,-0.4481 z m 2.037,0 0.4074,0 -0.1223,0.6925 c -0.1459,0.1527 -0.3487,0.2497 -0.5703,0.3259 l -0.6111,-0.4481 c 0.097,0.029 0.2025,0.064 0.3259,0.082 0.4141,0 0.5704,-0.1928 0.5704,-0.6518 z m -22.447105,0.041 c 0.01,0.018 0.071,0.022 0.082,0.041 l -0.082,0 0,-0.041 z m 2.7702,0.041 0.8148,0.2037 -0.082,0.2037 -0.8148,0.082 c -0.02,-0.022 -0.021,-0.059 -0.041,-0.082 l 0.1222,-0.4074 z m 21.428605,0 0.2852,0.1629 -0.082,0.2037 -0.2851,-0.041 0.082,-0.3259 z m -2.3221,0.082 0.2852,0.082 -0.2852,0 0,-0.082 z m -14.2993,0.3666 0.4889,0.5296 -0.2037,0.6518 -0.041,0 -0.2445,-0.3259 -0.5296,-0.1222 c -0.048,0.151 -0.1391,0.2794 -0.2444,0.3667 l -0.8555,-0.2445 c -0.047,-0.2318 -0.222205,-0.4008 -0.611105,-0.4888 l 0.041,-0.2037 0.570305,0.1222 0.2037,0.2444 c 0.1053,-0.3329 0.569,-0.446 1.4259,-0.5296 z m 3.1776,0.3259 0.3667,0.4482 -0.6518,-0.1223 0.2851,-0.3259 z m 21.6731,0 0.1222,0.2037 c -0.02,0.075 -0.087,0.1637 -0.1222,0.2445 l -0.1222,-0.041 0.1222,-0.4074 z m -1.3444,0.1222 0.2037,0.3667 -0.041,0.2037 -0.2444,-0.3667 c 0.023,-0.07 0.061,-0.1319 0.082,-0.2037 z m -25.909905,0.4074 0.2444,0.041 -0.1222,0.4074 -0.2444,-0.041 0.1222,-0.4074 z m -1.5073,0.081 0.2037,0.041 -0.041,0.1222 c -0.061,-0.042 -0.1022,-0.1176 -0.163,-0.1629 z m -3.911,0.082 c 0.1984,0.045 0.3656,0.107 0.5296,0.1222 l 0.4889,0.6111 0,-0.4888 -0.1222,-0.1223 c 0.1736,-0.011 0.3316,-0.066 0.4481,-0.1222 0.1559,0.2002 0.3052,0.4271 0.4889,0.6519 l -0.3259,0.4481 -0.1222,-0.1222 -0.082,-0.163 -0.2852,-0.041 -0.6518,0.2852 0.041,0.6111 c -0.1698,-0.1506 -0.3285,-0.3246 -0.4889,-0.4889 l 0.082,-0.2037 -0.3667,-0.082 c -0.1551,-0.1722 -0.3025,-0.3448 -0.4481,-0.5296 l 0.6518,0.1222 0.163,-0.4889 z m 11.732805,0.2445 0.4481,0 0,0.4888 -0.4481,0 0,-0.4888 z m 11.6921,0 0.1629,0 0,0.1222 -0.1629,-0.1222 z m -4.4406,0.041 0.163,0.2851 -0.041,0.163 -0.9777,0 -0.2852,0 0,-0.041 c 0.097,0.022 0.1955,0.061 0.2852,0.041 0.1794,-0.041 0.3596,-0.1964 0.4888,-0.4074 l 0.3667,-0.041 z m -0.7333,0.041 0,0.041 -0.5296,0 0.5296,-0.041 z m 2.1999,0.041 c 0.1,0.077 0.157,0.2267 0.163,0.3666 l -0.6926,0 0.163,-0.2852 0.3666,-0.082 z m 17.1104,0.041 0.1629,0.041 -0.041,0.1629 -0.1629,-0.082 0.041,-0.1222 z m -21.1435,0.041 0.1222,0 c 0.1262,0.063 0.2198,0.1547 0.2444,0.2851 l -0.3666,0 0,-0.2851 z m 11.692,0.4481 0.5297,0.1222 -0.082,0.2444 -0.5297,-0.1222 0.082,-0.2444 z m -13.0364,0.082 0.163,0.1222 -0.082,0.2037 -0.082,-0.041 0,-0.2852 z m -4.1146,0.082 0.2444,0.041 0.1222,0.082 0.163,0 -0.082,0.2444 -0.3667,0.2037 -0.1222,0.041 0,-0.082 0.1222,0.041 0.041,-0.2037 -0.1222,-0.2851 0,-0.082 z m 25.421,0.041 0.1223,0.4481 -0.1223,0.2852 0,-0.7333 z m -16.1733,0.1629 -0.041,0.2037 -0.041,0.4889 -0.937,-0.1222 -0.082,-0.082 0.7741,-0.3667 -0.3667,-0.082 0.6926,-0.041 z m -3.5035,0.041 -0.041,0.1223 -0.2852,-0.082 0.3259,-0.041 z m 4.7664,0 0.4481,0.082 0,0.041 0,0.2037 c -0.1904,0 -0.2989,0.048 -0.4074,0.1223 l -0.041,-0.4482 z m -2.5665,0.041 -0.1223,0.4482 -0.611,-0.082 -0.2445,-0.2445 -0.082,0.2037 -0.2852,-0.041 0.082,-0.2444 0.082,0 0.2037,0.082 -0.041,-0.082 0.2852,0 0.7333,-0.041 z m 3.7887,0 0.1222,0.041 -0.1222,0 0,-0.041 z m -15.2771,0.041 0.163,0.2445 0.2851,0 0.163,-0.1222 0.2852,0.2851 -0.326,0.3667 c -0.7618,0.018 -1.1993,0.1247 -1.2629,0.3259 l -0.082,0.2037 0.2852,0.082 0.5296,0 -0.2444,0.2852 c -0.3068,0 -0.7246,-0.1575 -1.1814,-0.3667 l 0.1222,-0.3259 -0.366705,-0.082 -0.3259,0.163 c -0.3253,-0.184 -0.6735,-0.4253 -1.0592,-0.6926 0.53,0.1199 0.9408,0.021 1.2222,-0.2852 0.452005,0.097 0.896405,0.163 1.385105,0.163 l 0.082,0 0.1629,0.041 0.041,-0.163 0.1223,-0.1222 z m 1.9147,0.082 c 0.012,0.2782 0.1751,0.4717 0.6111,0.5704 l -0.041,0.1222 -0.1629,0.082 c -0.4017,-0.033 -0.7787,-0.07 -1.1,-0.082 0.1875,-0.1742 0.4654,-0.4655 0.6926,-0.6926 z m 25.1766,0 0.1223,0.041 -0.2445,1.0185 -0.1222,-0.041 0.2444,-1.0185 z m -10.9587,0.082 0.2444,0.082 -0.082,0.2852 -0.1629,0 0,-0.3666 z m -20.817605,0.1223 c 0.2965,0.3446 0.6324,0.7122 0.9778,1.0999 l -0.7333,-0.1629 c -0.294,-0.2508 -0.5828,-0.5253 -0.8556,-0.8148 l 0.6111,-0.1222 z m -1.0592,0.2444 0.4481,0.7333 -0.3259,0 c -0.2313,-0.1353 -0.4738,-0.2499 -0.6925,-0.4074 0.047,-0.067 0.091,-0.1468 0.1222,-0.2444 l 0.4481,-0.082 z m 23.221205,0.163 0.5703,0.1222 0,1.1814 -0.4481,0.1222 -0.5296,-0.1222 0.4074,-1.3036 z m 11.2846,0.1222 -0.2037,0.4074 0.082,-0.326 0.1223,-0.082 z m -16.2955,0.1222 0.2444,0 0,0.082 -0.2444,-0.041 0,-0.041 z m -19.676905,0.1222 c 0.029,0.01 0.054,0 0.082,0 l 0.082,0.082 -0.3666,0 0.2037,-0.082 z m 29.169105,0.041 -0.041,0.3667 -0.2852,-0.082 c 0.1195,-0.087 0.2148,-0.1918 0.3259,-0.2852 z m 3.8294,0 0,0.082 -0.041,0 0.041,-0.082 z m -0.9777,0.041 0.2037,0.082 c -0.072,0.065 -0.1697,0.1008 -0.2445,0.163 -0.1919,0.1594 -0.368,0.3385 -0.5703,0.4888 -0.078,-0.08 -0.1398,-0.2017 -0.2037,-0.3259 0.1573,-0.079 0.2843,-0.1614 0.4481,-0.2444 l 0.3259,0.082 0.041,-0.2037 c 0.01,0 -0.01,-0.038 0,-0.041 z m -23.5471,0.2037 -1.0999,0.5296 -0.163,0 0,-0.2037 c 0.1087,0 0.2966,-0.111 0.5296,-0.2852 l 0.7333,-0.041 z m -4.929405,0.1222 c 0.1297,0.1453 0.2302,0.2561 0.3667,0.4074 l 0,0.2037 c -0.065,-0.043 -0.139,-0.078 -0.2037,-0.1222 l 0.041,-0.082 -0.163,-0.041 c -0.08,-0.056 -0.166,-0.1047 -0.2444,-0.163 l 0.1629,-0.041 0.041,-0.1629 z m 10.021805,0.082 0.3666,0.2444 -0.082,0.082 -0.2037,0 c 0,-0.1207 -0.037,-0.2282 -0.082,-0.3259 z m -2.037,0.3259 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 6.6405,0 0.4073,0 0,0.082 -0.2444,0.1222 -0.1629,0 0,-0.2036 z m -3.0962,0.1222 0.4074,0.082 -0.4074,0 0,-0.082 z m 5.8257,0 0.2444,0.041 0.2444,0.2852 0.081,0 0,0.4074 c -0.3615,0.031 -0.758,0.061 -1.1407,0.082 l 0.3259,-0.4889 c 0.079,0 0.1558,0 0.2445,0 l 0,-0.3259 z m -6.4775,0.3259 0.6518,0 0,0.4889 -1.0185,0 0.3667,-0.4889 z m 8.1885,0.041 0.2852,0.082 -0.041,0.1223 c -0.1063,0.015 -0.2176,0.027 -0.3259,0.041 l 0.082,-0.2445 z m 9.4107,0.041 c -0.02,0.2877 -0.042,0.5617 0.041,0.7741 l -0.163,0.082 -0.1222,0.4074 -0.3259,-0.4482 0.5703,-0.8147 z m -12.0587,0.041 c 0.01,0 0.03,0 0.041,0 l 0.041,0.041 -0.082,0.2445 -0.2445,-0.041 c 0.043,-0.093 0.1038,-0.1842 0.2445,-0.2445 z m -8.6367,0.163 0.6518,0 0,0.2037 -0.6518,0.2037 0,-0.4074 z m 1.0185,0 0.4889,0 0,0.2037 -0.4889,0 0,-0.2037 z m 3.585,0 0.3667,0 -0.3667,0.4074 -0.4888,0 0.4888,-0.4074 z m -15.154805,0.2037 0.041,0 0,0.2037 -0.4482,0 0,-0.041 0.4074,-0.163 z m 3.3405,0 0.6111,0 0,0.2037 -0.6111,0 0,-0.2037 z m 4.970205,0 0.6111,0 0,0.2037 -0.6111,0 0,-0.2037 z m 3.9109,0 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 18.0473,0.041 0.082,0 0,0.041 -0.082,-0.041 z m -2.7295,0.082 0.041,0 -0.1629,0.4889 -0.5296,-0.1223 0.041,-0.082 c 0.1755,-0.071 0.4149,-0.2008 0.6111,-0.2851 z m 5.2961,0 c 0.072,0.09 0.1611,0.1484 0.2444,0.2444 l 0,0.041 -0.4074,-0.082 c -0.029,-0.024 -0.055,-0.058 -0.082,-0.082 l 0.2445,-0.1222 z m -32.631805,0.2852 0.6518,0 0,0.2444 -0.6518,0 0,-0.2444 z m 2.9332,0 0.3666,0 -0.3666,0.5296 0,-0.5296 z m -3.5443,0.2444 0.4481,0 0,0.2852 -0.4481,0 0,-0.2852 z m 9.329205,0 0.6111,0 1.0184,0.2852 1.2222,-0.2852 1.3036,0 0,0.4889 -5.1738,0 0,-0.2037 1.0185,-0.2852 z m 4.522,0 4.6035,0 -0.4481,0.4889 -0.2037,-0.2037 -1.0185,0.2037 -2.4851,0 -0.4481,-0.4889 z m 5.459,0 0.5703,0 0,0.2852 -0.5703,0 0,-0.2852 z m 15.3178,0 c -0.021,0.067 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.163 0.041,-0.041 z m -30.513405,0.2852 1.0185,0 0,0.2037 -1.0185,0 0,-0.2037 z"
+           id="path6192-4"
+           transform="matrix(0.61596339,0,0,0.61596335,-413.88323,329.71724)" />
+        <g
+           inkscape:export-ydpi="600"
+           inkscape:export-xdpi="600"
+           inkscape:export-filename="/Volumes/partage/private/marketing/Design/ChartesGraphiques/ModelWriter/png/logo_modelwriter_HD.png"
+           id="g4593-7"
+           transform="matrix(0.39217453,0,0,0.39217453,-625.0906,1023.5742)">
+          <g
+             id="g4324-8"
+             transform="matrix(1.0083233,0,0,1.0083233,11.632425,-451.09721)">
+            <text
+               sodipodi:linespacing="125%"
+               id="text4326-4"
+               y="108.4253"
+               x="102.82677"
+               style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:47.02912903px;line-height:125%;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:0px;word-spacing:0px;fill:#5a5a5a;fill-opacity:1;stroke:none"
+               xml:space="preserve"><tspan
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:52.10993958px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.36148632px;fill:#5a5a5a;fill-opacity:1"
+                 y="108.4253"
+                 x="102.82677"
+                 id="tspan4328-5"
+                 sodipodi:role="line"><tspan
+                   id="tspan4330-0"
+                   style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:52.10993958px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.36148632px;fill:#5a5a5a;fill-opacity:1">M</tspan><tspan
+                   id="tspan4332-3"
+                   style="font-size:43.5675621px;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:-1.36148632px;fill:#5a5a5a;fill-opacity:1">ODEL</tspan></tspan></text>
+            <text
+               xml:space="preserve"
+               style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:47.02912903px;line-height:125%;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
+               x="240.09686"
+               y="124.76314"
+               id="text4334-6"
+               sodipodi:linespacing="125%"><tspan
+                 sodipodi:role="line"
+                 id="tspan4336-1"
+                 x="240.09686"
+                 y="124.76314"
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:52.10993958px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.36148632px"><tspan
+                   style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:52.10993958px;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.36148632px;fill:#faa542;fill-opacity:1"
+                   id="tspan4338-0">W</tspan><tspan
+                   style="font-size:43.5675621px;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:-1.36148632px;fill:#faa542;fill-opacity:1"
+                   id="tspan4340-6">RITER</tspan></tspan></text>
+          </g>
+          <g
+             id="g4400-3"
+             transform="translate(24.224454,-101.5825)">
+            <g
+               transform="matrix(0.62138123,0.05946504,-0.05946504,0.62138123,93.923956,-868.76894)"
+               id="g4376-2">
+              <path
+                 d="m 353.76798,912.84277 c 0.31366,-0.42982 0.46098,-0.98102 0.44194,-1.65363 -5.04243,-14.72576 -9.38414,-30.88636 -16.84097,-44.34698 -1.02954,-1.85847 -1.62482,1.6687 -1.54396,2.60599 1.20755,8.12703 6.20172,30.20172 3.44674,33.9138 -2.60067,3.50433 -23.74398,6.82552 -33.41569,8.55038 -0.91725,0.2089 -4.05999,2.11778 -2.11516,2.40873 15.1165,2.26136 32.6588,0.12757 48.42072,-0.67442 0.81271,-0.0656 1.29274,-0.37405 1.50184,-0.66059 l 0.10452,-0.14329"
+                 id="path4378-0"
+                 inkscape:connector-curvature="0"
+                 sodipodi:nodetypes="ccscscscsc"
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#5a5a5a;fill-opacity:1;stroke:none" />
+              <path
+                 d="m 332.28429,899.14379 c -0.44809,0.59109 -1.09318,1.03281 -1.93535,1.3252 -15.83787,-10.26458 -37.79549,-16.07602 -71.04317,0.78365 -0.6928,0.0953 -0.74044,-0.25108 -0.78811,-0.59743 21.48247,-15.37477 37.15247,-19.80437 54.84276,-17.61836 9.28662,1.14756 22.17176,8.81004 19.07325,15.90992 l -0.14929,0.19702"
+                 id="path4380-6"
+                 inkscape:connector-curvature="0"
+                 sodipodi:nodetypes="ccccscc"
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#5a5a5a;fill-opacity:1;stroke:none" />
+            </g>
+            <g
+               style="fill:#faa542;fill-opacity:1"
+               id="g4394-1"
+               transform="matrix(-0.62138123,-0.05946504,0.05946504,-0.62138123,366.91998,366.23079)">
+              <path
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#faa542;fill-opacity:1;stroke:none"
+                 sodipodi:nodetypes="ccscscscsc"
+                 inkscape:connector-curvature="0"
+                 id="path4396-5"
+                 d="m 353.76798,912.84277 c 0.31366,-0.42982 0.46098,-0.98102 0.44194,-1.65363 -5.04243,-14.72576 -9.38414,-30.88636 -16.84097,-44.34698 -1.02954,-1.85847 -1.62482,1.6687 -1.54396,2.60599 1.20755,8.12703 6.20172,30.20172 3.44674,33.9138 -2.60067,3.50433 -23.74398,6.82552 -33.41569,8.55038 -0.91725,0.2089 -4.05999,2.11778 -2.11516,2.40873 15.1165,2.26136 32.6588,0.12757 48.42072,-0.67442 0.81271,-0.0656 1.29274,-0.37405 1.50184,-0.66059 l 0.10452,-0.14329" />
+              <path
+                 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#faa542;fill-opacity:1;stroke:none"
+                 sodipodi:nodetypes="ccccscc"
+                 inkscape:connector-curvature="0"
+                 id="path4398-5"
+                 d="m 332.28429,899.14379 c -0.44809,0.59109 -1.09318,1.03281 -1.93535,1.3252 -15.83787,-10.26458 -37.79549,-16.07602 -71.04317,0.78365 -0.6928,0.0953 -0.74044,-0.25108 -0.78811,-0.59743 21.48247,-15.37477 37.15247,-19.80437 54.84276,-17.61836 9.28662,1.14756 22.17176,8.81004 19.07325,15.90992 l -0.14929,0.19702" />
+            </g>
+          </g>
+        </g>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/mapping/releng/org.eclipse.intent.branding/build.properties b/mapping/releng/org.eclipse.intent.branding/build.properties
new file mode 100644
index 0000000..24a4c7f
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/build.properties
@@ -0,0 +1,7 @@
+bin.includes = META-INF/,\
+               plugin.xml,\
+               plugin_customization.ini,\
+               icons/,\
+               splash.bmp,\
+               plugin.properties,\
+               intro/
diff --git a/mapping/releng/org.eclipse.intent.branding/icons/about.gif b/mapping/releng/org.eclipse.intent.branding/icons/about.gif
new file mode 100644
index 0000000..d39bbf9
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/icons/about.gif
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.branding/icons/logo_16.gif b/mapping/releng/org.eclipse.intent.branding/icons/logo_16.gif
new file mode 100644
index 0000000..aff9faa
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/icons/logo_16.gif
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.branding/icons/logo_32.gif b/mapping/releng/org.eclipse.intent.branding/icons/logo_32.gif
new file mode 100644
index 0000000..a1832ba
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/icons/logo_32.gif
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.branding/icons/logo_64.gif b/mapping/releng/org.eclipse.intent.branding/icons/logo_64.gif
new file mode 100644
index 0000000..f1f2600
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/icons/logo_64.gif
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.branding/intro/css/style.css b/mapping/releng/org.eclipse.intent.branding/intro/css/style.css
new file mode 100644
index 0000000..26a5b26
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/intro/css/style.css
@@ -0,0 +1,252 @@
+html {
+	font-size: 100%;
+}
+
+body {
+	margin: 0;
+	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+	line-height: 18px;
+	color: #003e5e;
+	background-color: #ffffff;
+	padding: 20px 0 10px 0;
+	text-align: justify;
+}
+
+a {
+	color: #408BBC;
+	text-decoration: none;
+}
+
+a:hover {
+	color: #003E5E;
+	text-decoration: none;
+}
+
+#logo {
+	width: 200px;
+	margin-bottom: 30px;
+	}
+
+.separator {
+	background: -moz-linear-gradient(left center, #f7f9ff 0%, #BDBDBD 50%, #f7f9ff 99%)
+		repeat scroll 0 0 transparent;
+	background: -webkit-gradient(linear, left top, right top, color-stop(0%, #f7f9ff),
+		color-stop(50%, #BDBDBD), color-stop(99%, #f7f9ff) );
+	background: -webkit-linear-gradient(left, #f7f9ff 0%, #BDBDBD 50%, #f7f9ff 99%)
+		;
+	background: -o-linear-gradient(left, #f7f9ff 0%, #BDBDBD 50%, #f7f9ff 99%)
+		;
+	background: -ms-linear-gradient(left, #f7f9ff 0%, #BDBDBD 50%, #f7f9ff 99%)
+		;
+	background: linear-gradient(left, #f7f9ff 0%, #BDBDBD 50%, #f7f9ff 99%);
+	height: 1px;
+	margin: 15px 0 10px;
+}
+
+hr {
+	border: 0 none;
+	color: #003E5E;
+}
+
+.row-fluid:before,.row-fluid:after {
+	display: table;
+	content: "";
+}
+
+.row-fluid:after {
+	clear: both;
+}
+
+.row-fluid>[class *="span"] {
+	float: left;
+	/*margin-left: 2.127659574%;*/
+}
+
+.row-fluid>[class *="span"]:first-child {
+	margin-left: 0;
+}
+
+[class *="span"] {
+	float: left;
+}
+
+.row-fluid>.span9 {
+	width: 62.07%;
+}
+
+.row-fluid>.span3 {
+	width: 37.93%;
+}
+
+@media ( min-width : 1200px) {
+	[class *="span"] {
+		float: left;
+		margin-left: 30px;
+	}
+	.span9 {
+		width: 870px;
+	}
+	.span3 {
+		width: 270px;
+	}
+	.row-fluid {
+		width: 100%; *
+		zoom: 1;
+	}
+	.row-fluid:before,.row-fluid:after {
+		display: table;
+		content: "";
+	}
+	.row-fluid:after {
+		clear: both;
+	}
+	.row-fluid>[class *="span"] {
+		float: left;
+		margin-left: 2.564102564%;
+	}
+	.row-fluid>[class *="span"]:first-child {
+		margin-left: 0;
+	}
+	.row-fluid>.span9 {
+		width: 74.358974359%;
+	}
+	.row-fluid>.span3 {
+		width: 23.076923077%;
+	}
+}
+
+.span9 {
+	width: 700px;
+}
+
+.span3 {
+	width: 275px !important;
+	margin-right: 20px;
+}
+
+.container-fluid {
+	padding-left: 20px;
+	padding-right: 20px; *
+	zoom: 1;
+}
+
+.container-fluid:before,.container-fluid:after {
+	display: table;
+	content: "";
+}
+
+.container-fluid:after {
+	clear: both;
+}
+
+.hero-unit {
+	min-height: 255px;
+	padding: 20px;
+	background-color: transparent;
+}
+
+p {
+	font-size: 14px;
+	line-height: 21px;
+	color: inherit;
+	text-align: justify;
+	margin: 5px 0 10px 0;
+}
+
+p.small {
+	font-size: 12px !important;
+}
+
+#left-column {
+	margin: 0em;
+	padding: 0.75em;
+	float: left;
+	width: 50%;
+}
+
+.articletitle {
+	color: #003E5E;
+	font-weight: normal;
+	line-height: normal;
+	margin: 0;
+	text-shadow: 0 0 1px rgba(17, 17, 17, 0.4), 0 2px 1px rgba(0, 0, 0, 0.2)
+		;
+}
+
+.first {
+	color: #408BBC;
+	}
+
+.bubble {
+	background: url("bubble.png") no-repeat scroll left bottom transparent;
+	height: 45px;
+	padding: 20px 0 0 30px;
+}
+
+
+h2 {
+		font-size: 22px;
+}
+
+
+ul {
+	list-style-image: url("square_blue.png");
+	margin: 3px 0 0;
+}
+
+li {
+	line-height: 24px;
+}
+
+.centered {
+	width: 280px;
+	margin: 0 auto;
+	padding-top: 5px;
+}
+
+.layout_video {
+	width: 400px;
+	margin: 0 auto;
+	padding-top: 30px;
+}
+
+.layout_img {
+	width: 600px;
+	margin: 0 auto;
+	padding-top: 30px;
+}
+
+.layout_footer {
+	padding: 1px;
+	width: 220px;
+	margin: 0 auto;
+}
+
+.layout_footer  p{
+	font-size: 12px;
+}
+
+.breadcrumb {
+	font-size: 12px;
+    list-style: none outside none;
+    margin: 0 0 20px 1px;
+    padding: 0;
+}
+.breadcrumb li {
+    display: inline-block;
+}
+.breadcrumb li a{
+	text-decoration: underline;
+}
+.breadcrumb .divider {
+    padding: 0 3px;
+}
+.breadcrumb .active {
+    color: #003E5E;
+	text-shadow: 0 0 1pt rgba(17, 17, 17, 0.2), 0 1.2pt 1pt rgba(0, 0, 0, 0.2)
+		;
+}
+
+footer,header {
+	display: block;
+}
diff --git a/mapping/releng/org.eclipse.intent.branding/intro/findhelp.html b/mapping/releng/org.eclipse.intent.branding/intro/findhelp.html
new file mode 100644
index 0000000..ee2060b
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/intro/findhelp.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <title>Welcome to Intent</title>
+    <!-- Bootstrap -->
+    <link rel="stylesheet" type="text/css" href="css/style.css" /> 
+</head>
+
+<body>
+    <div class="container-fluid">
+      <div class="row-fluid">
+        <div class="span3">
+          <img src="images/about.png" width="200" />
+        </div><!--/span-->
+      
+       <div class="span9">
+      	<div class="hero-unit">
+      		<ul class="breadcrumb">
+					<li>
+					<a href="index.html">Welcome</a> <span class="divider">/ </span>
+					</li>
+					<li class="active">Find help</li>
+			</ul>
+			<h2><a href="https://www.eclipse.org/intent/support/index.html">Find Help</a></h2>
+		   <hr class="separator"></hr>
+	           <div>
+	            <ul>
+	            	<li><a https://www.eclipse.org/intent/support/index.html">Community support</a></li>
+	            	<li><a https://www.eclipse.org/intent/support/index.html">Professional support</a></li>
+	            </ul>
+	       	 </div>
+	        </div>
+
+        </div>
+      
+	  <hr class="separator"></hr>
+      
+      <footer>
+      <div class="layout_footer">
+        <p>&#169; 2015 - 2017 Obeo - All rights reserved</p>
+      </div>  
+      </footer>
+   
+        </div><!--/span-->
+      </div><!--/row-->
+    </div><!--/.fluid-container-->
+</body>
+</html>
diff --git a/mapping/releng/org.eclipse.intent.branding/intro/getinvolved.html b/mapping/releng/org.eclipse.intent.branding/intro/getinvolved.html
new file mode 100644
index 0000000..75fbf42
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/intro/getinvolved.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <title>Welcome to Intent</title>
+    <!-- Bootstrap -->
+    <link rel="stylesheet" type="text/css" href="css/style.css" /> 
+</head>
+
+<body>
+    <div class="container-fluid">
+      <div class="row-fluid">
+        <div class="span3">
+          <img src="images/about.png" width="200" />
+        </div><!--/span-->
+      
+       <div class="span9">
+      	<div class="hero-unit">
+      		<ul class="breadcrumb">
+					<li>
+					<a href="index.html">Welcome</a> <span class="divider">/ </span>
+					</li>
+					<li class="active">Get Involved</li>
+			</ul>
+			<h2>How to help?</h2>
+		   <hr class="separator"></hr>
+		   <div>
+	            	<h3>Reporting bugs</h3> 
+	            	<p>The best ways to contribute are by finding, <a href="https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Mylyn%20Docs%20Intent">reporting bugs</a> and helping us to improve the documentation.</p></li>
+	        </div>
+        </div>
+      
+	  <hr class="separator"></hr>
+      
+      <footer>
+      <div class="layout_footer">
+        <p>&#169; 2015 - 2017 Obeo - All rights reserved</p>
+      </div>  
+      </footer>
+   
+        </div><!--/span-->
+      </div><!--/row-->
+    </div><!--/.fluid-container-->
+</body>
+</html>
diff --git a/mapping/releng/org.eclipse.intent.branding/intro/gettingstarted.html b/mapping/releng/org.eclipse.intent.branding/intro/gettingstarted.html
new file mode 100644
index 0000000..d10a768
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/intro/gettingstarted.html
@@ -0,0 +1,59 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <title>Welcome to Intent</title>
+    <!-- Bootstrap -->
+    <link rel="stylesheet" type="text/css" href="css/style.css" /> 
+</head>
+
+<body>
+    <div class="container-fluid">
+      <div class="row-fluid">
+        <div class="span3">
+          <img src="images/about.png" width="200" />
+        </div><!--/span-->
+      
+       <div class="span9">
+      	<div class="hero-unit">
+      		<ul class="breadcrumb">
+					<li>
+					<a href="index.html">Welcome</a> <span class="divider">/ </span>
+					</li>
+					<li class="active">Getting started</li>
+			</ul>
+			<h2>Getting started</h2>
+		   <hr class="separator"></hr>
+		   	<div>
+		    	<h3>First steps</h3>
+	            <ul>
+	            	<li>TODO</li>
+	            </ul>
+		   <div>
+		   <h3>Documentation</h3>
+	            <ul>
+	            	<li><a href="https://wiki.eclipse.org/Intent">Full documentation</a></li>
+	            </ul>
+	       </div>
+	       <div>
+		   <h3>Other related projects</h3>
+	            <ul>
+	            	<li>https://itea3.org/project/modelwriter.html</li>
+	            	<li>http://modelwriter.eu/</li>
+	            </ul>
+	         </div>
+        </div>
+      
+	  <hr class="separator"></hr>
+      
+      <footer>
+      <div class="layout_footer">
+        <p>&#169; 2015 - 2016 Obeo - All rights reserved</p>
+      </div>  
+      </footer>
+   
+        </div><!--/span-->
+      </div><!--/row-->
+    </div><!--/.fluid-container-->
+</body>
+</html>
diff --git a/mapping/releng/org.eclipse.intent.branding/intro/images/about.png b/mapping/releng/org.eclipse.intent.branding/intro/images/about.png
new file mode 100644
index 0000000..4c557e8
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/intro/images/about.png
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.branding/intro/index.html b/mapping/releng/org.eclipse.intent.branding/intro/index.html
new file mode 100644
index 0000000..9288fae
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/intro/index.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <title>Welcome to Intent</title>
+    <!-- Bootstrap -->
+    <link rel="stylesheet" type="text/css" href="css/style.css" /> 
+</head>
+
+<body>
+    <div class="container-fluid">
+      <div class="row-fluid">
+        <div class="span3">
+          <img src="images/about.png" width="200" />
+        </div><!--/span-->
+      
+       <div class="span9">
+      	<div class="hero-unit">
+      	<h2>Welcome to <a href="https://www.eclipse.org/intent/">Intent</a></h2>
+		   <hr class="separator"></hr>
+		   <div>
+	            <ul>
+	            	<li><a href="gettingstarted.html">Getting started</a></li>
+	            	<li><a href="findhelp.html">Find help</a>	</li>
+	            	<li><a href="getinvolved.html">Get involved</a></li>
+	            </ul>
+	        </div>
+	        <div>
+	        Visit Intent web site : <a https://www.eclipse.org/intent/">https://www.eclipse.org/intent/</a>
+	        </div>
+        </div>
+      
+	  <hr class="separator"></hr>
+      
+      <footer>
+      <div class="layout_footer">
+        <p>&#169; 2015 - 2017 Obeo - All rights reserved</p>
+      </div>  
+      </footer>
+   
+        </div><!--/span-->
+      </div><!--/row-->
+    </div><!--/.fluid-container-->
+</body>
+</html>
diff --git a/mapping/releng/org.eclipse.intent.branding/intro/product_welcome_intro.xml b/mapping/releng/org.eclipse.intent.branding/intro/product_welcome_intro.xml
new file mode 100644
index 0000000..89d103c
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/intro/product_welcome_intro.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<introContent>
+	<!-- Root page -->
+	<page id="root" content="index.html"/>
+</introContent>
\ No newline at end of file
diff --git a/mapping/releng/org.eclipse.intent.branding/plugin.properties b/mapping/releng/org.eclipse.intent.branding/plugin.properties
new file mode 100644
index 0000000..6c7189c
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/plugin.properties
@@ -0,0 +1,14 @@
+pluginName = Intent
+providerName = Obeo
+
+productName=Intent
+aboutText=Intent\n\
+\n\
+Version: 0.10.0\n\
+\n\
+(c) Copyright Obeo 2015-2017. All rights reserved.\n\
+\n\
+Visit https://www.eclipse.org/intent/\n\
+\n\
+This product includes software developed by the Eclipse Foundation http://www.eclipse.org/\n\
+This product includes software developed by the Apache Software Foundation http://apache.org/\n\
diff --git a/mapping/releng/org.eclipse.intent.branding/plugin.xml b/mapping/releng/org.eclipse.intent.branding/plugin.xml
new file mode 100644
index 0000000..39a9342
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/plugin.xml
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<plugin>
+   <extension point="org.eclipse.ui.activities">
+      <!-- EMF MDD Tools -->
+      <activity
+            id="org.eclipse.emf.activity"
+            description="%activity.emf.desc"
+            name="%activity.emf">
+      </activity>
+      <!-- EMF Project and EMF Generator Model wizards and Reload action --> 
+      <activityPatternBinding
+            activityId="org.eclipse.emf.activity"
+            pattern="org\.eclipse\.emf\.codegen\.ecore\.ui/.*">
+      </activityPatternBinding>      
+      <!-- Model importers -->
+      <activityPatternBinding
+            activityId="org.eclipse.emf.activity"
+            pattern="org\.eclipse\.emf\.importer/.*">
+      </activityPatternBinding>
+      <!-- Model exporters -->
+      <activityPatternBinding
+            activityId="org.eclipse.emf.activity"
+            pattern="org\.eclipse\.emf\.exporter/.*">
+      </activityPatternBinding>
+      <!-- Ecore editor -->
+      <activityPatternBinding
+            activityId="org.eclipse.emf.activity"
+            pattern="org\.eclipse\.emf\.ecore\.editor/.*Ecore.*">
+      </activityPatternBinding>
+      <!-- Create Dynamic Instance action -->
+      <activityPatternBinding
+            activityId="org.eclipse.emf.activity"
+            pattern="org\.eclipse\.emf\.ecore\.editor/.*CreateDynamic.*">
+      </activityPatternBinding>
+      <!-- XML Schema to Ecore mapping -->
+      <activityPatternBinding
+            activityId="org.eclipse.emf.activity"
+            pattern="org\.eclipse\.emf\.mapping\.xsd2ecore\.editor/.*">
+      </activityPatternBinding>
+      <!-- Ecore to Ecore mapping -->
+      <activityPatternBinding
+            activityId="org.eclipse.emf.activity"
+            pattern="org\.eclipse\.emf\.mapping\.ecore2ecore\.editor/.*">
+      </activityPatternBinding>
+      <!-- Ecore to XML mapping -->
+      <activityPatternBinding
+            activityId="org.eclipse.emf.activity"
+            pattern="org\.eclipse\.emf\.mapping\.ecore2xml\.ui/.*">
+      </activityPatternBinding>
+      <!-- Validation -->
+
+      <!-- Reflective Editors -->
+      <activity
+            id="org.eclipse.emf.reflective.activity"
+            description="%activity.emf.reflective.desc"
+            name="%activity.emf.reflective">
+      </activity>
+      <activityPatternBinding
+            activityId="org.eclipse.emf.reflective.activity"
+            pattern="org\.eclipse\.emf\.ecore\.editor/.Open*">
+      </activityPatternBinding>
+      <activityPatternBinding
+            activityId="org.eclipse.emf.reflective.activity"
+            pattern="org\.eclipse\.emf\.ecore\.editor/.*Reflective.*">
+      </activityPatternBinding>
+
+      <!-- EMF JET -->
+      <activity
+            id="org.eclipse.emf.jet.activity"
+            description="%activity.emf.jet.desc"
+            name="%activity.emf.jet">
+      </activity>
+      <activityPatternBinding
+            activityId="org.eclipse.emf.jet.activity"
+            pattern="org\.eclipse\.emf\.codegen\.ui/.*">
+      </activityPatternBinding>
+
+      <!-- Sample XML Schema Editor -->
+      <activity
+            id="org.eclipse.xsd.activity"
+            description="%activity.xsd.desc"
+            name="%activity.xsd">
+      </activity>
+      <activityPatternBinding
+            activityId="org.eclipse.xsd.activity"
+            pattern="org\.eclipse\.xsd\.editor/.*">
+      </activityPatternBinding>
+
+      <!-- EMF Examples -->
+      <activity
+            id="org.eclipse.emf.examples.activity"
+            description="%activity.emf.examples.desc"
+            name="%activity.emf.examples">
+      </activity>
+      <activityPatternBinding
+            activityId="org.eclipse.emf.examples.activity"
+            pattern="org\.eclipse\.emf\.example\.installer/.*">
+      </activityPatternBinding>
+      <activityPatternBinding
+            activityId="org.eclipse.emf.examples.activity"
+            pattern="org\.eclipse\.xsd\.example\.installer/.*">
+      </activityPatternBinding>
+      <activityPatternBinding
+            activityId="org.eclipse.emf.examples.activity"
+            pattern="org\.eclipse\.emf\.examples\.library\.editor/.*">
+      </activityPatternBinding>
+      <activityPatternBinding
+            activityId="org.eclipse.emf.examples.activity"
+            pattern="org\.eclipse\.emf\.query\.examples/.*">
+      </activityPatternBinding>
+      <activityPatternBinding
+            activityId="org.eclipse.emf.examples.activity"
+            pattern="org\.eclipse\.emf\.transaction\.examples/.*">
+      </activityPatternBinding>
+      <activityPatternBinding
+            activityId="org.eclipse.emf.examples.activity"
+            pattern="org\.eclipse\.emf\.validation\.examples/.*">
+      </activityPatternBinding>
+
+      <!-- The category should be something that makes sense for the product -->
+      <category
+            description="%activity.cat.emf.desc"
+            id="org.eclipse.emf.Category"
+            name="%activity.cat.emf">
+      </category>
+
+      <categoryActivityBinding
+            activityId="org.eclipse.emf.activity"
+            categoryId="org.eclipse.emf.Category">
+      </categoryActivityBinding>
+      <categoryActivityBinding
+            activityId="org.eclipse.emf.reflective.activity"
+            categoryId="org.eclipse.emf.Category">
+      </categoryActivityBinding>
+      <categoryActivityBinding
+            activityId="org.eclipse.emf.jet.activity"
+            categoryId="org.eclipse.emf.Category">
+      </categoryActivityBinding>
+      <categoryActivityBinding
+            activityId="org.eclipse.xsd.activity"
+            categoryId="org.eclipse.emf.Category">
+      </categoryActivityBinding>
+      <categoryActivityBinding
+            activityId="org.eclipse.emf.examples.activity"
+            categoryId="org.eclipse.emf.Category">
+      </categoryActivityBinding>
+    
+    
+     <!-- Viewpoint Specification -->
+      <activity
+            id="org.eclipse.sirius.specification.activity"
+            description="Viewpoint specification"
+            name="viewpointspecification">
+      </activity>
+      <activityPatternBinding
+            activityId="org.eclipse.sirius.specification.activity"
+            pattern=".*/org.eclipse.sirius.ui.specificationproject.wizard">
+      </activityPatternBinding>
+    
+     <categoryActivityBinding
+            activityId="org.eclipse.sirius.specification.activity"
+            categoryId="org.eclipse.emf.Category">
+      </categoryActivityBinding>
+   </extension>
+    
+    
+   <extension point="org.eclipse.core.runtime.products" id="product">
+    <product name="Intent" application="org.eclipse.ui.ide.workbench">
+      <property name="windowImages" value="icons/logo_16.gif,icons/logo_32.gif,icons/logo_64.gif"/>
+      <property name="appName" value="Intent"/>
+      <property name="aboutImage" value="icons/about.gif"/>
+      <property name="aboutText" value="Intent &#x0A;&#x0A;Version  0.10.0&#x0A;&#x0A;&#x0A;(c) Copyright (c) 2015-2017 Obeo. All Rights Reserved.&#x0A;Visit http://www.obeo.fr"/>
+      <property name="startupForegroundColor" value="000000"/>
+      <property name="startupMessageRect" value="3,300,495,15"/>
+      <property name="startupProgressRect" value="3,315,495,15"/>
+      <property name="preferenceCustomization" value="plugin_customization.ini"/>
+      <property
+            name="cssTheme"
+            value="org.eclipse.e4.ui.css.theme.e4_default">
+      </property>
+    </product>
+  </extension>
+   <extension
+         point="org.eclipse.ui.intro">
+      <introProductBinding
+            introId="org.eclipse.intent.welcome.intro"
+            productId="org.eclipse.intent.product">
+      </introProductBinding>
+      <intro
+            class="org.eclipse.ui.intro.config.CustomizableIntroPart"
+            icon="icons/logo_16.gif"
+            id="org.eclipse.intent.welcome.intro">
+      </intro>
+   </extension>
+   <extension
+         point="org.eclipse.ui.intro.config">
+      <config
+            content="intro/product_welcome_intro.xml"
+            id="org.eclipse.intent.welcome.config"
+            introId="org.eclipse.intent.welcome.intro">
+         <presentation
+               home-page-id="root">
+            <implementation
+                  kind="html"
+                  os="win32,linux,macosx">
+            </implementation>
+         </presentation>
+      </config>
+   </extension>
+    
+    
+</plugin>
diff --git a/mapping/releng/org.eclipse.intent.branding/plugin_customization.ini b/mapping/releng/org.eclipse.intent.branding/plugin_customization.ini
new file mode 100644
index 0000000..c6b4741
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/plugin_customization.ini
@@ -0,0 +1,3 @@
+org.eclipse.ui/SHOW_PROGRESS_ON_STARTUP=true
+org.eclipse.ui/DOCK_PERSPECTIVE_BAR=topRight
+org.eclipse.ui/SHOW_TRADITIONAL_STYLE_TABS=false
diff --git a/mapping/releng/org.eclipse.intent.branding/pom.xml b/mapping/releng/org.eclipse.intent.branding/pom.xml
new file mode 100644
index 0000000..91fa56a
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/pom.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2016 Obeo.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+    Obeo - initial API and implementation
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.branding</artifactId>
+  <packaging>eclipse-plugin</packaging>
+  <name>Intent Branding</name>
+  
+ <build>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-source-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-pmd-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>
diff --git a/mapping/releng/org.eclipse.intent.branding/splash.bmp b/mapping/releng/org.eclipse.intent.branding/splash.bmp
new file mode 100755
index 0000000..78be510
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/splash.bmp
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.branding/splash.png b/mapping/releng/org.eclipse.intent.branding/splash.png
new file mode 100644
index 0000000..878b752
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/splash.png
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.branding/splash.svg b/mapping/releng/org.eclipse.intent.branding/splash.svg
new file mode 100644
index 0000000..1d6faa3
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.branding/splash.svg
@@ -0,0 +1,4159 @@
+<?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: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"
+   sodipodi:docname="splash.svg"
+   inkscape:version="0.92.1 r15371"
+   version="1.1"
+   id="svg3790"
+   height="297mm"
+   width="210mm">
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="0.9899495"
+     inkscape:cx="377.10103"
+     inkscape:cy="1549.7988"
+     inkscape:document-units="px"
+     inkscape:current-layer="g4324"
+     showgrid="false"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     inkscape:window-width="1806"
+     inkscape:window-height="870"
+     inkscape:window-x="2349"
+     inkscape:window-y="415"
+     inkscape:window-maximized="0"
+     inkscape:snap-global="false"
+     showborder="false">
+    <sodipodi:guide
+       orientation="1,0"
+       position="306.00887,281.22647"
+       id="guide3907"
+       inkscape:locked="false" />
+    <sodipodi:guide
+       orientation="1,0"
+       position="790.85714,106.66667"
+       id="guide4809"
+       inkscape:locked="false" />
+  </sodipodi:namedview>
+  <defs
+     id="defs3792">
+    <inkscape:perspective
+       id="perspective3798"
+       inkscape:persp3d-origin="396.85039 : 374.17322 : 1"
+       inkscape:vp_z="793.70078 : 561.25983 : 1"
+       inkscape:vp_y="0 : 1066.6667 : 0"
+       inkscape:vp_x="0 : 561.25983 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.53333333 : 1"
+       inkscape:vp_y="0 : 1066.6667 : 0"
+       inkscape:vp_z="1.0666667 : 0.53333333 : 1"
+       inkscape:persp3d-origin="0.53333333 : 0.35555555 : 1"
+       id="perspective3808" />
+    <linearGradient
+       y2="135"
+       x2="353.57135"
+       y1="240"
+       x1="359.28571"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,16.840076,-385.12332)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3770"
+       xlink:href="#linearGradient3615-2"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3615-2">
+      <stop
+         style="stop-color:#e3e3e3;stop-opacity:1;"
+         offset="0"
+         id="stop3617-3" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop3619-2" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3227-5">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3229-1" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3231-7" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3821">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3823" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3825" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3776"
+       xlink:href="#linearGradient3227-5"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3828">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3830" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3832" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-543.44709,-641.38931)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3834"
+       xlink:href="#linearGradient3227-5"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3836">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3838" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3840" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3778"
+       xlink:href="#linearGradient3227-5"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3843">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3845" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3847" />
+    </linearGradient>
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-543.44709,-642.39946)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3849"
+       xlink:href="#linearGradient3227-5"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3851">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3853" />
+      <stop
+         style="stop-color:#345363;stop-opacity:1;"
+         offset="1"
+         id="stop3855" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3597-9">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3599-4" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop3601-8" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1333.8754,557.29692)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3782"
+       xlink:href="#linearGradient3597-9"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3862">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3864" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop3866" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,-27.200724,469.56325)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3784"
+       xlink:href="#linearGradient3597-9"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3869">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3871" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop3873" />
+    </linearGradient>
+    <linearGradient
+       y2="290.35715"
+       x2="702.10712"
+       y1="290.35715"
+       x1="581.10712"
+       gradientTransform="matrix(0,0.1251041,-6.8169736,0,2682.5475,707.53148)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3786"
+       xlink:href="#linearGradient3597-9"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient3876">
+      <stop
+         style="stop-color:#4d7a91;stop-opacity:1;"
+         offset="0"
+         id="stop3878" />
+      <stop
+         style="stop-color:#88adc0;stop-opacity:1;"
+         offset="1"
+         id="stop3880" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.53333333 : 1"
+       inkscape:vp_y="0 : 1066.6667 : 0"
+       inkscape:vp_z="1.0666667 : 0.53333333 : 1"
+       inkscape:persp3d-origin="0.53333333 : 0.35555555 : 1"
+       id="perspective2991" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4287"
+       xlink:href="#linearGradient3227-5"
+       inkscape:collect="always" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.53333333 : 1"
+       inkscape:vp_y="0 : 1066.6667 : 0"
+       inkscape:vp_z="1.0666667 : 0.53333333 : 1"
+       inkscape:persp3d-origin="0.53333333 : 0.35555555 : 1"
+       id="perspective4301" />
+    <linearGradient
+       y2="323.64511"
+       x2="755.04388"
+       y1="283.64511"
+       x1="622.55377"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient4329"
+       xlink:href="#linearGradient3227-5"
+       inkscape:collect="always" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient3242"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient3250"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient3382"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient3386"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient3331"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient3335"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <filter
+       id="filter3345"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3347"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3349"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3351"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3353">
+        <feMergeNode
+           id="feMergeNode3355"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3357"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3359"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3361"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3363"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3365"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3367">
+        <feMergeNode
+           id="feMergeNode3369"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3371"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3373"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3375"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3377"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3379"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3381">
+        <feMergeNode
+           id="feMergeNode3383"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3385"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3387"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3389"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3391"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3393"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3395">
+        <feMergeNode
+           id="feMergeNode3397"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3399"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3401"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3403"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3405"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3407"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3409">
+        <feMergeNode
+           id="feMergeNode3411"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3413"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3415"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3417"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3419"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3421"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3423">
+        <feMergeNode
+           id="feMergeNode3425"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3427"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3429"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3431"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3433"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3435"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3437">
+        <feMergeNode
+           id="feMergeNode3439"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3441"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3443"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3445"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3447"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3449"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3451">
+        <feMergeNode
+           id="feMergeNode3453"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3455"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3457"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3459"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3461"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3463"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3465">
+        <feMergeNode
+           id="feMergeNode3467"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3469"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3471"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3473"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3475"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3477"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3479">
+        <feMergeNode
+           id="feMergeNode3481"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3483"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3485"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3487"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3489"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3491"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3493">
+        <feMergeNode
+           id="feMergeNode3495"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3497"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3499"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3501"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3503"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3505"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3507">
+        <feMergeNode
+           id="feMergeNode3509"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3511"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3513"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3515"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3517"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3519"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3521">
+        <feMergeNode
+           id="feMergeNode3523"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3525"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3527"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3529"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3531"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3533"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3535">
+        <feMergeNode
+           id="feMergeNode3537"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3539"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3541"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3543"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3545"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3547"
+         in="bluralpha"
+         dx="0"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3549">
+        <feMergeNode
+           id="feMergeNode3551"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3553"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3555"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3557"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3559"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3561"
+         in="bluralpha"
+         dx="0"
+         dy="-4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3563">
+        <feMergeNode
+           id="feMergeNode3565"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3567"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4402"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4404"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4406"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4408"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4410">
+        <feMergeNode
+           id="feMergeNode4412"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4414"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4674"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4676"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4678"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4680"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4682">
+        <feMergeNode
+           id="feMergeNode4684"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4686"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient4798"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient4802"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <filter
+       id="filter4812"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4814"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4816"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4818"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4820">
+        <feMergeNode
+           id="feMergeNode4822"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4824"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4826"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4828"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4830"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4832"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4834">
+        <feMergeNode
+           id="feMergeNode4836"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4838"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4840"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4842"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4844"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4846"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4848">
+        <feMergeNode
+           id="feMergeNode4850"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4852"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4854"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4856"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4858"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4860"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4862">
+        <feMergeNode
+           id="feMergeNode4864"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4866"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4868"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4870"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4872"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4874"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4876">
+        <feMergeNode
+           id="feMergeNode4878"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4880"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4882"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4884"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4886"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4888"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4890">
+        <feMergeNode
+           id="feMergeNode4892"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4894"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4896"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4898"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4900"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4902"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4904">
+        <feMergeNode
+           id="feMergeNode4906"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4908"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4910"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4912"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4914"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4916"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4918">
+        <feMergeNode
+           id="feMergeNode4920"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4922"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4924"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4926"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4928"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4930"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4932">
+        <feMergeNode
+           id="feMergeNode4934"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4936"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4938"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4940"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4942"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4944"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4946">
+        <feMergeNode
+           id="feMergeNode4948"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4950"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4952"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4954"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4956"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4958"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4960">
+        <feMergeNode
+           id="feMergeNode4962"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4964"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4966"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4968"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4970"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4972"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4974">
+        <feMergeNode
+           id="feMergeNode4976"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4978"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4980"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4982"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4984"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4986"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4988">
+        <feMergeNode
+           id="feMergeNode4990"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4992"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4994"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4996"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4998"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5000"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5002">
+        <feMergeNode
+           id="feMergeNode5004"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5006"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter5008"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur5010"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5012"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5014"
+         in="bluralpha"
+         dx="4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5016">
+        <feMergeNode
+           id="feMergeNode5018"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5020"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3473"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3475"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3477"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3479"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3481">
+        <feMergeNode
+           id="feMergeNode3484"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3486"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3488"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3490"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3492"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3494"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3496">
+        <feMergeNode
+           id="feMergeNode3498"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3500"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3502"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3504"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3506"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3508"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3510">
+        <feMergeNode
+           id="feMergeNode3512"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3514"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3516"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3518"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3520"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3522"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3524">
+        <feMergeNode
+           id="feMergeNode3526"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3528"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3530"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3532"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3534"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3536"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3538">
+        <feMergeNode
+           id="feMergeNode3540"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3542"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3544"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3546"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3548"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3550"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3552">
+        <feMergeNode
+           id="feMergeNode3554"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3556"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3558"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3560"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3562"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3564"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3566">
+        <feMergeNode
+           id="feMergeNode3568"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3570"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3572"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3574"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3576"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3578"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3580">
+        <feMergeNode
+           id="feMergeNode3582"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3584"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3586"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3588"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3590"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3592"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3594">
+        <feMergeNode
+           id="feMergeNode3596"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3598"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3600"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3602"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3604"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3606"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3608">
+        <feMergeNode
+           id="feMergeNode3610"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3612"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3614"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3616"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3618"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3620"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3622">
+        <feMergeNode
+           id="feMergeNode3624"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3626"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3628"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3630"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3632"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3634"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3636">
+        <feMergeNode
+           id="feMergeNode3638"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3640"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3642"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3644"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3646"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3648"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3650">
+        <feMergeNode
+           id="feMergeNode3652"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3654"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3656"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3658"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3660"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3662"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3664">
+        <feMergeNode
+           id="feMergeNode3666"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3668"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3670"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3672"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3674"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3676"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3678">
+        <feMergeNode
+           id="feMergeNode3680"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3682"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3684"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3686"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3688"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3690"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3692">
+        <feMergeNode
+           id="feMergeNode3694"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3696"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3698"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3700"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3702"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3704"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3706">
+        <feMergeNode
+           id="feMergeNode3708"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3710"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter3712"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur3714"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix3716"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset3718"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge3720">
+        <feMergeNode
+           id="feMergeNode3722"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode3724"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9293"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9295"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9297"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9299"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9301">
+        <feMergeNode
+           id="feMergeNode9303"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9305"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9077"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9079"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9081"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9083"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9085">
+        <feMergeNode
+           id="feMergeNode9087"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9089"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3165-1-1">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3167-7-7" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3169-4-4" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9237"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9239"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9241"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9243"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9245">
+        <feMergeNode
+           id="feMergeNode9247"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9249"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9223"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9225"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9227"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9229"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9231">
+        <feMergeNode
+           id="feMergeNode9233"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9235"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9209"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9211"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9213"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9215"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9217">
+        <feMergeNode
+           id="feMergeNode9219"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9221"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4213"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4215"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4217"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4219"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4221">
+        <feMergeNode
+           id="feMergeNode4223"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4225"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4241"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4243"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4245"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4247"
+         in="bluralpha"
+         dx="0"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4249">
+        <feMergeNode
+           id="feMergeNode4251"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4253"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4269"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4271"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4273"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4275"
+         in="bluralpha"
+         dx="0"
+         dy="-4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4277">
+        <feMergeNode
+           id="feMergeNode4279"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4281"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient4285"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <filter
+       id="filter4318"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4320"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4322"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.5 0 " />
+      <feOffset
+         id="feOffset4324"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4326">
+        <feMergeNode
+           id="feMergeNode4328"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4330"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4332"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4334"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4336"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.4 0 " />
+      <feOffset
+         id="feOffset4338"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4340">
+        <feMergeNode
+           id="feMergeNode4342"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4344"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient4346"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9237-3"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9239-6"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9241-2"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9243-5"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9245-9">
+        <feMergeNode
+           id="feMergeNode9247-3"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9249-7"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9223-6"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9225-3"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9227-9"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9229-1"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9231-0">
+        <feMergeNode
+           id="feMergeNode9233-5"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9235-8"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9209-1"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9211-9"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9213-0"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9215-5"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9217-4">
+        <feMergeNode
+           id="feMergeNode9219-8"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9221-8"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-1-1"
+       id="linearGradient5972"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-162.6078,616.6023)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient6076"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient6080"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient6196"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3014901,0,0,1.3036437,258.50552,245.52314)"
+       x1="-1.0714296"
+       y1="7.3214297"
+       x2="350.71429"
+       y2="7.3214297" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient6198"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3014901,0,0,1.3036437,258.50538,245.52314)"
+       x1="-1.1364633"
+       y1="243.9391"
+       x2="350.64923"
+       y2="243.9391" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient6200"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient6204"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <filter
+       id="filter6249"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur6251"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix6253"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.4 0 " />
+      <feOffset
+         id="feOffset6255"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge6257">
+        <feMergeNode
+           id="feMergeNode6259"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode6261"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter6263"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur6265"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix6267"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.4 0 " />
+      <feOffset
+         id="feOffset6269"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge6271">
+        <feMergeNode
+           id="feMergeNode6273"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode6275"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter6277"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur6279"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix6281"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.4 0 " />
+      <feOffset
+         id="feOffset6283"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge6285">
+        <feMergeNode
+           id="feMergeNode6287"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode6289"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter6291"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur6293"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix6295"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.4 0 " />
+      <feOffset
+         id="feOffset6297"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge6299">
+        <feMergeNode
+           id="feMergeNode6301"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode6303"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9077-8"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9079-2"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9081-6"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9083-7"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9085-9">
+        <feMergeNode
+           id="feMergeNode9087-2"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9089-3"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3165-1-0">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3167-7-8" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3169-4-1" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9237-8"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9239-0"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9241-6"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9243-3"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9245-4">
+        <feMergeNode
+           id="feMergeNode9247-5"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9249-6"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter6461"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur6463"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix6465"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset6467"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge6469">
+        <feMergeNode
+           id="feMergeNode6471"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode6473"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter9223-4"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur9225-9"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix9227-2"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset9229-0"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge9231-6">
+        <feMergeNode
+           id="feMergeNode9233-4"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode9235-3"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient4356"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient4360"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-1-0"
+       id="linearGradient4368"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-2506.6273,-1560.4453)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <filter
+       id="filter4377"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4379"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4381"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4383"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4385">
+        <feMergeNode
+           id="feMergeNode4387"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4389"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4414"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4416"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4418"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4420"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4422">
+        <feMergeNode
+           id="feMergeNode4424"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4426"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4428"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4430"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4432"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4434"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4436">
+        <feMergeNode
+           id="feMergeNode4438"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4440"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4442"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4444"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4446"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4448"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4450">
+        <feMergeNode
+           id="feMergeNode4452"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4454"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       id="filter4456"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-.25"
+       y="-.25">
+      <feGaussianBlur
+         id="feGaussianBlur4458"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4460"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4462"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4464">
+        <feMergeNode
+           id="feMergeNode4466"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4468"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter5341"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur5343"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5345"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5347"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5349">
+        <feMergeNode
+           id="feMergeNode5351"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5353"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-1-1-1"
+       id="linearGradient5282"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,-2461.1274,-1278.5966)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3165-1-1-1">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3167-7-7-6" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3169-4-4-2" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter5327"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur5329"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5331"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5333"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5335">
+        <feMergeNode
+           id="feMergeNode5337"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5339"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter5313"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur5315"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5317"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5319"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5321">
+        <feMergeNode
+           id="feMergeNode5323"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5325"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter5299"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur5301"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix5303"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset5305"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge5307">
+        <feMergeNode
+           id="feMergeNode5309"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode5311"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4362"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4364"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4366"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4368"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4370">
+        <feMergeNode
+           id="feMergeNode4372"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4374"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4348"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4350"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4352"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4354"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4356">
+        <feMergeNode
+           id="feMergeNode4358"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4360"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4334"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4336"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4338"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4340"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4342">
+        <feMergeNode
+           id="feMergeNode4344-1"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4346"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter11658"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur11660"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix11662"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset11664"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge11666">
+        <feMergeNode
+           id="feMergeNode11668"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode11670"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4362-7"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4364-4"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4366-0"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4368-9"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4370-4">
+        <feMergeNode
+           id="feMergeNode4372-8"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4374-8"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       id="linearGradient3165-8-2"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-8-4"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-2-5"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4348-5"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4350-1"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4352-7"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4354-1"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4356-1">
+        <feMergeNode
+           id="feMergeNode4358-5"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4360-2"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4334-7"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4336-6"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4338-1"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4340-4"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4342-2">
+        <feMergeNode
+           id="feMergeNode4344-3"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4346-2"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter7774"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur7776"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix7778"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset7780"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge7782">
+        <feMergeNode
+           id="feMergeNode7784"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode7786"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2"
+       id="linearGradient6091"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.300058,0,0,1.3036437,259.76284,644.22274)"
+       x1="359.28571"
+       y1="240"
+       x2="353.57135"
+       y2="135" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient6093"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3014901,0,0,1.3036437,258.50552,245.52314)"
+       x1="-1.0714296"
+       y1="7.3214297"
+       x2="350.71429"
+       y2="7.3214297" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient6095"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3014901,0,0,1.3036437,258.50538,245.52314)"
+       x1="-1.1364633"
+       y1="243.9391"
+       x2="350.64923"
+       y2="243.9391" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient6097"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,388.247)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3597-9"
+       id="linearGradient6099"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8541381,0,0,1.3036437,-48.757944,384.46363)"
+       x1="581.10712"
+       y1="290.35715"
+       x2="702.10712"
+       y2="290.35715" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient6101"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3036437,0,0,1.3036437,-301.77933,389.25715)"
+       x1="622.55377"
+       y1="283.64511"
+       x2="755.04388"
+       y2="323.64511" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3597-9"
+       id="linearGradient6103"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0,0.3575926,-2.8936755,0,1333.8754,557.29692)"
+       x1="581.10712"
+       y1="290.35715"
+       x2="702.10712"
+       y2="290.35715" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3597-9"
+       id="linearGradient6105"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0384179,0,0,1.0830358,-27.200724,469.56325)"
+       x1="581.10712"
+       y1="290.35715"
+       x2="702.10712"
+       y2="290.35715" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3597-9"
+       id="linearGradient6107"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0,0.1251041,-6.8169736,0,2682.5475,707.53148)"
+       x1="581.10712"
+       y1="290.35715"
+       x2="702.10712"
+       y2="290.35715" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-2"
+       id="linearGradient6109"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,549.9115,550.21259)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4362-1"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4364-3"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4366-8"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4368-4"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4370-9">
+        <feMergeNode
+           id="feMergeNode4372-4"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4374-9"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-6"
+       id="linearGradient7469"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,607.37313,337.14688)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       id="linearGradient3165-8-6"
+       inkscape:collect="always">
+      <stop
+         id="stop3167-8-3"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop3169-2-4"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4348-1"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4350-5"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4352-2"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4354-5"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4356-1-1">
+        <feMergeNode
+           id="feMergeNode4358-3"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4360-9"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter4334-2"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur4336-0"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix4338-6"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset4340-8"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge4342-2-7">
+        <feMergeNode
+           id="feMergeNode4344-9"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode4346-0"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       id="filter7513"
+       inkscape:label="Drop shadow"
+       width="1.5"
+       height="1.5"
+       x="-0.25"
+       y="-0.25">
+      <feGaussianBlur
+         id="feGaussianBlur7515"
+         in="SourceAlpha"
+         stdDeviation="2"
+         result="blur" />
+      <feColorMatrix
+         id="feColorMatrix7517"
+         result="bluralpha"
+         type="matrix"
+         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0.3 0 " />
+      <feOffset
+         id="feOffset7519"
+         in="bluralpha"
+         dx="-4"
+         dy="4"
+         result="offsetBlur" />
+      <feMerge
+         id="feMerge7521">
+        <feMergeNode
+           id="feMergeNode7523"
+           in="offsetBlur" />
+        <feMergeNode
+           id="feMergeNode7525"
+           in="SourceGraphic" />
+      </feMerge>
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-6"
+       id="linearGradient4650"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,607.37313,337.14688)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient4652"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3014901,0,0,1.3036437,258.50552,245.52314)"
+       x1="-1.0714296"
+       y1="7.3214297"
+       x2="350.71429"
+       y2="7.3214297" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227-5"
+       id="linearGradient4654"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.3014901,0,0,1.3036437,258.50538,245.52314)"
+       x1="-1.1364633"
+       y1="243.9391"
+       x2="350.64923"
+       y2="243.9391" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2"
+       id="linearGradient4659"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.4165366,0,0,1.3034829,270.48221,424.24418)"
+       x1="350.01523"
+       y1="237.67511"
+       x2="336.45663"
+       y2="42.779255" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2"
+       id="linearGradient4666"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.4165366,0,0,1.3034829,270.48221,24.24418)"
+       x1="359.28571"
+       y1="240"
+       x2="353.57135"
+       y2="135" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-6"
+       id="linearGradient4714"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,607.37313,337.14688)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2"
+       id="linearGradient4764"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.4170462,0,0,1.4304473,270.04683,811.40415)"
+       x1="350.01523"
+       y1="237.67511"
+       x2="336.45663"
+       y2="42.779255" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-6"
+       id="linearGradient4803"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,607.37313,337.14688)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2"
+       id="linearGradient4853"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.4170462,0,0,1.4304473,270.04683,1231.4041)"
+       x1="350.01523"
+       y1="237.67511"
+       x2="336.45663"
+       y2="42.779255" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-6"
+       id="linearGradient4855"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,607.37313,337.14688)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2"
+       id="linearGradient4899"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.4170462,0,0,1.4304473,890.04683,811.40415)"
+       x1="350.01523"
+       y1="237.67511"
+       x2="336.45663"
+       y2="42.779255" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-6"
+       id="linearGradient4901"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,607.37313,337.14688)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2"
+       id="linearGradient4945"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.4170462,0,0,1.4304473,890.04683,1231.4041)"
+       x1="350.01523"
+       y1="237.67511"
+       x2="336.45663"
+       y2="42.779255" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-6"
+       id="linearGradient4947"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,607.37313,337.14688)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2"
+       id="linearGradient3900"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.4170462,0,0,1.4304473,270.04683,1631.4041)"
+       x1="350.01523"
+       y1="237.67511"
+       x2="336.45663"
+       y2="42.779255" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-6"
+       id="linearGradient3902"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,607.37313,337.14688)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2"
+       id="linearGradient3923"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.4170462,0,0,1.4304473,890.04683,1631.4041)"
+       x1="350.01523"
+       y1="237.67511"
+       x2="336.45663"
+       y2="42.779255" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-6"
+       id="linearGradient3925"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,607.37313,337.14688)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2"
+       id="linearGradient4745"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.4170462,0,0,1.4304473,890.04683,2011.4041)"
+       x1="350.01523"
+       y1="237.67511"
+       x2="336.45663"
+       y2="42.779255" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165-8-6"
+       id="linearGradient4747"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1915651,0,0,0.1611116,607.37313,337.14688)"
+       x1="348.89258"
+       y1="220.17154"
+       x2="348.89258"
+       y2="566.41748" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3615-2"
+       id="linearGradient3971"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.4170462,0,0,1.4304473,278.61826,-671.45304)"
+       x1="350.01523"
+       y1="237.67511"
+       x2="336.45663"
+       y2="42.779255" />
+  </defs>
+  <metadata
+     id="metadata3795">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:groupmode="layer"
+     inkscape:label="Calque 1">
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Bitstream Vera Sans';fill:#000000;fill-opacity:1;stroke:none"
+       x="550.40375"
+       y="661.85229"
+       id="text2932"
+       transform="scale(0.99954733,1.0004529)"><tspan
+         sodipodi:role="line"
+         id="tspan2934"
+         x="550.40375"
+         y="661.85229"
+         style="font-size:39.98194504px;line-height:1.25"> </tspan></text>
+    <text
+       transform="scale(0.99954733,1.0004529)"
+       id="text4590"
+       y="1061.6713"
+       x="550.40375"
+       style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Bitstream Vera Sans';fill:#000000;fill-opacity:1;stroke:none"
+       xml:space="preserve"><tspan
+         y="1061.6713"
+         x="550.40375"
+         id="tspan4592"
+         sodipodi:role="line"
+         style="font-size:39.98194504px;line-height:1.25"> </tspan></text>
+    <rect
+       y="-657.14862"
+       x="275.58157"
+       height="329.0025"
+       width="499.00253"
+       id="rect3929"
+       style="opacity:0.99142857;fill:url(#linearGradient3971);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.997491;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       inkscape:export-filename="/Volumes/partage/private/marketing/Design/Produits/UMLDesigner/splashscreen/png/splashscreen_UML_5.0.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90" />
+    <rect
+       transform="matrix(1.073713,0,0,1.073713,2.6401789,-954.90334)"
+       y="485.64908"
+       x="529.2757"
+       height="39.10931"
+       width="39.10931"
+       id="rect3943"
+       style="opacity:0.99142857;fill:#cccccc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:6.01200008;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter3614);enable-background:accumulate"
+       inkscape:export-filename="Z:\private\général\Charte graphique\OD\OD6.0\splashscreen\png\splashscreen_OD6.0.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90" />
+    <path
+       transform="matrix(1.0736865,0,0,1.073713,-1.6373811,-956.29964)"
+       id="path3945"
+       d="m 664.30928,462.60713 -2.5665,0.48886 0,1.34437 0.5703,-0.61108 0.6519,0 0,0.20369 -1.2222,0.40739 0,2.07767 0.2037,0 -0.2037,0.28517 0,0.8555 c -0.1242,0.11339 -0.1889,0.18925 -0.2852,0.28518 l 0,0.48885 c 0.096,-0.0462 0.1848,-0.0603 0.2852,-0.12221 l 0,0.7333 -0.2852,0.24442 0,8.55509 0.6111,2.24062 0.082,0.57033 c -0.028,0.0807 -0.061,0.16777 -0.082,0.24444 0.066,0.0489 0.108,0.10817 0.163,0.16295 l 0,0.16296 -0.2445,-0.0815 c -0.024,-0.006 -0.057,-10e-4 -0.082,0 0.036,-0.12665 0.062,-0.25692 0.1222,-0.36665 l -0.1629,-0.61107 -0.4074,0.0815 0,3.87017 c 0.014,-0.002 0.027,0.004 0.041,0 l 0.2037,-0.0407 0.041,-0.0407 0,0.8555 c -0.09,0.26172 -0.1903,0.5021 -0.2852,0.69256 l 0,0.97773 0.2444,0.0815 -0.041,0.16295 -0.2037,-0.0815 0,11.1216 0.163,-1.1814 0.1222,0.0407 0,1.01848 0.2037,0 0.4889,0.52959 c -0.1,0.0821 -0.1897,0.19341 -0.2445,0.36665 l -0.2036,-0.24443 -0.082,0 -0.163,-0.65181 0,0.57033 -0.041,0 -0.2444,0.12222 0,0.89624 0.2851,-0.12221 0,0.32591 -0.1222,-0.0407 -0.1222,0.40739 0.2444,0.0407 0.3667,-0.12222 0,0.24442 -0.3667,0 0,0.85552 -0.2851,0.0815 0,0.20368 0.2851,-0.0815 0,0.0815 c 0.4141,4e-5 0.5704,-0.14214 0.5704,-0.44812 l -0.2037,-0.20369 0.5296,0 -0.12221,0.0815 -0.082,0.24443 0.1222,0 0,0.0815 0.2037,0.24442 0,0.28517 -1.0185,0 0,0.24444 3.3813,0 c 0.2347,-0.63833 0.527,-0.97773 0.937,-0.97773 l 0,-0.40739 -0.5703,0 -0.2852,0.2037 -0.1629,0 -0.24451,-0.32591 0.082,-0.24443 -0.2444,0.0815 -0.6518,0 -0.32591,0.12222 0,-0.0407 -0.3667,-0.0815 -0.28521,0.2037 -0.44809,-0.2037 0,-0.24442 1.05921,0 0,-0.2037 -0.20371,-0.20369 0,-0.24443 0.48889,0.16295 -0.082,0.2037 0.57029,0.12221 0.28521,-0.0407 0.61109,0.2037 -0.082,0.24442 0.2852,0.0815 0.5703,-0.0407 0.65179,0.24443 0,0.2037 c -0.3219,6e-5 -0.81629,0.38652 -1.38509,1.18142 l 18.5769,0 c 0.082,-0.0802 0.16341,-0.16304 0.24451,-0.24444 0.212,0.0756 0.504,0.16494 0.73329,0.24444 l 1.4666,0 -0.2445,-0.40739 1.1407,0.0815 0.20371,0.0815 -0.041,0.16296 -0.52958,0.0815 0.73329,0 7.86261,0 0.041,-0.16296 c 0.061,0.0307 0.13559,0.0557 0.2037,0.0815 l -0.041,0.0815 1.30359,0 0.36671,-0.24444 -0.041,0.24444 2.5665,0 0.082,-0.24444 0.2445,0.0407 -0.082,0.2037 0.44809,0 0,-1.34438 -0.082,0.24444 -0.24441,-0.0407 0.12221,-0.40739 0.20371,0.0815 0,-9.04394 -0.12221,-0.0407 0.12221,-0.57034 0,-1.71102 -0.28522,0.0815 -0.041,0.20368 0.2037,0.32592 -0.61109,1.09994 -0.20371,-0.0407 0.937,-3.50352 0,-1.58879 -0.2852,0.12221 -0.041,1.05921 -0.6518,2.36283 -0.5703,0.28516 1.18141,-4.39976 0.36671,0.57035 0,-1.34437 -0.163,-0.0407 0.163,-0.57034 0,-1.83324 c -0.25982,-0.39207 -0.52391,-0.78276 -0.8148,-1.14067 l 0.8148,0.0407 0,-1.22215 -0.20371,0.85551 -0.24451,-0.0815 0.32592,-1.18142 0.1223,0.0407 0,-3.54425 -0.082,0.28517 -0.44821,-0.12222 0.52959,-2.03692 0,-7.98475 -0.041,0.12222 -0.8147,0 -0.6519,-0.36665 -0.8147,0 0.041,-0.2037 -0.326,-0.52959 0.082,-0.28517 0.2037,0.0407 0.8556,0.77402 0.28511,-0.16295 0.082,-0.28516 c -0.3162,-0.38756 -1.75491,-1.08881 -4.31831,-2.07767 l -1.0999,0 2.811,1.18142 -0.1223,0.40738 0.28521,-0.16296 0.69259,0.2037 -0.48888,0.81477 -0.20371,-0.0407 -0.16291,-0.28516 -0.2445,-0.0407 -0.36659,0.12221 0.12221,-0.40739 0.36658,-0.16295 0,-0.0407 -0.2444,-0.28517 -0.2444,-0.0815 -0.2852,0.20369 -0.2444,-0.0407 -0.6926,-0.48886 -0.5703,0.36664 -1.5481,-1.26289 -1.8333,0 -0.082,0.32591 -0.2444,-0.0407 0.082,-0.28517 -3.2998,0 1.0184,1.54806 0.2037,0.0407 -0.1629,0.69256 -0.4482,-0.12222 -0.082,0.20369 c 0.3277,0.0876 0.5625,0.55849 0.6926,1.38511 l -0.1629,0.69256 -0.2445,-0.0815 0.1222,-0.44812 -0.7333,-0.2037 -0.1629,0.44813 0.4888,0.12222 -0.2444,0.89624 -0.4889,-0.12222 -0.2036,0.93699 0.4481,0.12221 -0.1222,0.40739 -0.4482,-0.12221 -0.1222,0.40737 0.4481,0.12222 -0.1629,0.69256 c -0.4097,-0.10952 -0.6971,0.12321 -0.937,0.69255 -0.022,0.0836 -0.038,0.17515 -0.041,0.24444 l -0.2444,-0.28518 -0.2037,0.28518 c -0.01,-0.0895 -0.01,-0.18894 0,-0.28518 l 0.2037,0 0,-0.20369 -0.163,-0.16296 c 0.014,-0.071 0.021,-0.12963 0.041,-0.20368 l 0.5296,0.16295 0.163,-0.65182 -0.4074,-0.61107 0.937,-1.38511 -0.2037,-0.0407 0.2852,-0.16296 0.082,-0.28517 -0.2037,-1.46658 0.6518,-0.24443 -0.2444,-0.0815 0.4481,-0.61108 c 0.1537,-1.06751 -0.199,-1.68476 -1.0592,-1.91471 l 0.2851,-0.16295 0.082,-0.24443 -1.5888,0 0,0.0815 0.6926,0.16295 -0.937,0.7333 c 0.085,-0.31635 0.049,-0.64018 -0.041,-0.97773 l -1.5888,0 -0.2037,0.69256 -0.2445,-0.0407 0.163,-0.65182 -0.937,0 0.2444,0.48886 -0.082,0.44813 -0.3666,-0.57035 0.082,-0.36664 -0.4481,0 -0.8555,3.09613 c -0.097,-0.0451 -0.1796,-0.0767 -0.2852,-0.12222 l -0.041,0 -0.163,-0.24443 0.2852,-0.12222 0.082,-1.18142 0.3666,-1.42584 -0.4888,0 -0.6111,2.36283 -0.2444,0 0.611,-2.36283 -2.6072,0 -0.041,0.16295 0.4481,0.12222 -0.2852,1.0592 c -0.9988,-0.37943 -1.8221,-0.65178 -2.4443,-0.65181 -0.1476,0.37417 -0.4355,0.625 -0.7741,0.77402 -0.016,-0.069 -0.022,-0.13369 -0.041,-0.20369 l -0.041,-0.20369 0.5704,-0.0815 0,-0.28517 c 0,-0.2009 -0.2546,-0.36699 -0.774,-0.48887 l -0.041,-0.20369 -0.9778,0 c 10e-4,0.0136 0,0.0271 0,0.0407 l 0,0.24443 c -0.2787,-0.13728 -0.624,-0.21603 -1.0185,-0.28517 l -1.711,0 0,0.16295 -0.2444,0.0815 -0.081,-0.24443 -0.5296,0 0.041,0.12221 -0.163,0.16296 -0.082,-0.28517 -2.7295,0 -0.2037,0.97773 -0.3259,0 0,-0.48887 c 0.085,-0.17617 0.1553,-0.35747 0.2037,-0.48886 l -2.4036,0 z m 36.2576,12.83263 0,-0.93699 -0.041,0.0407 -0.1629,0.61107 0.2037,0.28518 z m -34.3428,-12.75115 -0.2852,0.44812 -0.4889,0.0815 0.082,-0.28517 0,-0.12222 0.6926,-0.12221 z m 13.4845,0.0407 0.4482,0.12222 -0.041,0.24443 -0.4482,-0.12222 0.041,-0.24443 z m -16.2955,0.36665 0,0.48887 -0.4481,0 0.4481,-0.48887 z m 7.8218,0 0.082,0.0407 0.2037,0.89624 c -0.2224,-0.0204 -0.4372,-0.0455 -0.611,-0.0815 l 0.2036,-0.65181 -0.041,-0.16296 0.163,-0.0407 z m 1.4666,0 0.4074,0.48887 -0.4074,0 0,-0.48887 z m -2.5665,0.16296 0.082,0.28517 -0.1222,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.1516,0.0407 0.4482,0 0,0.28517 -0.4482,0 0,-0.28517 z m 5.2146,0 0.2037,0 0,0.28517 -0.2037,0 0,-0.28517 z m -2.9739,0.28517 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24442 -0.163,0 c 0.038,-0.0691 0.088,-0.17948 0.1222,-0.24442 z m 13.0364,0 0.2037,0.0815 -0.163,0.65182 -0.3259,-0.57034 0.2852,-0.16295 z m 11.8143,0.0407 0.4481,0.12221 -0.1222,0.48886 -0.4889,-0.12222 0.163,-0.48885 z m -5.8257,0.16295 0.2444,0.0407 -0.1629,1.58881 -0.2852,0.16295 -0.1222,0.48886 -0.5296,2.52579 -0.6518,-0.65181 1.0999,-2.64801 -0.2444,-0.28517 0.082,-0.20369 0.5703,-1.01846 z m 0.9777,0.0407 0.5704,0.12222 -0.2852,0.16295 -0.082,0.2037 -0.774,3.87015 -0.2852,0.16295 -0.082,1.14068 -0.2037,0.77404 -0.5703,0 0.1629,-0.57034 c 0.2449,-0.0956 0.4481,-0.21289 0.4481,-0.36665 l -0.2851,-0.28516 1.3851,-5.21454 z m -17.7214,0.20369 0.2445,0 0.041,0.16296 -0.082,0.0407 -0.1222,0 -0.082,-0.2037 z m 14.5438,0.12222 0.2037,0.0407 -0.082,0.44813 -0.2444,-0.0815 0.1222,-0.40739 z m 12.6291,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2445,-0.0815 0.1222,-0.40739 z m -29.8209,0.0407 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m -2.0777,0.20369 1.0592,0 c -0.029,0.0977 -0.082,0.18869 -0.1222,0.28518 l -0.937,0 0,-0.28518 z m 11.855,0 0,0.5296 -0.4888,0 0.4888,-0.5296 z m 24.3619,0.16296 c -0.074,0.27638 0.1417,0.51306 0.5703,0.65181 l 0,-0.52959 -0.5703,-0.12222 z m -6.0701,0.3259 0.4481,0.12222 -0.3666,1.30363 -0.4482,-0.12222 0,-1.18141 0.3667,-0.12222 z m -17.0696,0.44813 0,0.48886 -0.2037,0 -1.6703,0.24443 c 0.035,-0.18638 0.075,-0.3749 0.082,-0.57034 l 1.7925,-0.16295 z m 0.3667,0 0.6518,0.20369 0,0.28517 -0.8555,0 0.2037,-0.28517 0,-0.20369 z m 1.0184,0 0.041,0 0.2852,0.44812 -0.041,0.0407 -0.2852,0 0,-0.48886 z m 1.8333,0 -0.082,0.32591 -0.2852,0.0407 0.1222,-0.32591 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.2662,0 0.6518,0.36665 -0.082,0.20369 -0.4481,0.85551 c -0.076,0.6131 0.1199,0.99044 0.5296,1.09994 l -0.1222,0.40738 -0.5296,-0.12222 -0.082,0.28517 0.2444,0.28517 -0.3667,0.12222 0.041,1.18142 -0.4888,1.79249 -0.5296,-0.12222 -0.4074,-1.30363 0.1222,-0.48886 0.2444,0.0407 -0.1222,0.48886 0.4481,0.12221 0.041,-0.20369 -0.2851,-0.81477 0.2851,-0.12222 c 0.1186,-0.44345 -0.079,-0.76487 -0.5703,-0.89624 l 0.6518,-0.28517 -0.1222,0.40739 0.4889,0.12221 0.3666,-3.21834 0.041,-0.20369 z m -20.4917,0.12221 0.2445,0.0407 0.1222,0.48886 -0.3259,-0.0815 0,-0.36665 -0.041,-0.0815 z m -7.7404,0.0815 0.4482,0 -0.4482,0.5296 0,-0.5296 z m 1.3037,0 0.8148,0 c -0.013,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2573,0.20542 -0.343,0.30401 -0.5704,0.48886 l -0.2037,-0.24443 0,-0.28517 z m 1.3036,0 0.3667,0 0.4074,0 0,0.2037 -0.082,-0.0815 -0.4889,0.12221 0,0.24443 -0.082,0.0407 -0.2037,-0.24443 -0.082,0 0.1629,-0.28517 z m 1.1407,0 0.6111,0 -0.041,0.28517 -0.5703,0 0,-0.28517 z m 7.2923,0 0.6518,0 -0.082,0.24443 0.1222,0.44812 -0.2852,0.0407 -0.4073,-0.65181 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24443 -0.2037,0.0407 -0.082,-0.28517 z m 21.1434,0 0.8148,0 0.2445,0.0407 -0.082,0.20369 -1.1,0.16295 0.1222,-0.40738 z m -12.9142,0.0815 0.2037,0.0815 -0.082,0.40738 -0.2444,-0.0815 0.1222,-0.40738 z m 5.2553,0 -0.082,0.20369 0.4889,0.12221 0.041,-0.20368 -0.4481,-0.12222 z m 10.144,0.36664 0.4889,0.12222 0.4074,0.57034 -0.6518,0.32591 0.2851,0.0815 -0.6111,1.01847 c -0.3276,-0.0876 -0.3629,-0.37134 -0.2444,-0.81478 l 0.2852,-0.16295 0.041,-0.20369 0,-0.93699 z m -1.3851,0.28517 0.2444,0.0815 0.041,0.73329 -0.4481,-0.12221 0.163,-0.69256 z m -25.5025,0.0407 0,0.40739 -0.2852,0 -0.082,-0.32591 0.3666,-0.0815 z m 23.9137,0.0407 0.2444,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.082,-0.44813 z m -24.7285,0.0815 0.082,0.28517 -0.2444,0 0,-0.24443 0.1629,-0.0407 z m -8.2293,0.0407 1.0185,0 c -0.101,0.0837 -0.1917,0.16587 -0.2852,0.24443 l -0.7333,0 0,-0.24443 z m 2.0777,0 0.4481,0 0,0.24443 -0.611,0 0.1629,-0.24443 z m 7.8626,0 0,0.24443 -0.2037,0 -0.041,-0.16296 0.2445,-0.0815 z m 3.748,0 0.4074,0 0,0.24443 -0.4074,0 0,-0.24443 z m 1.0592,0 0.8148,0 0,0.24443 -0.8148,0 0,-0.24443 z m 22.3656,0.0407 0.4482,0.12222 0.2851,0.28517 0.081,-0.40739 0.2445,0.0407 -0.1222,0.44813 -0.2037,-0.0815 0.1629,0.28517 -0.1222,0.48886 c -0.3277,-0.0875 -0.616,0.14207 -0.774,0.73329 l -0.3667,-0.61107 0.3667,-1.30364 z m -31.0022,0.0407 0.2851,0.2037 -0.2037,0.0815 -0.082,-0.28518 z m -4.7257,0.0815 0.041,0.0815 -0.1223,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.98,0.0407 0.5296,0.16296 -0.041,0.20368 -0.5296,-0.12221 0.041,-0.24443 z m -20.4917,0.0407 0.3667,0 0,0.28517 -0.3667,0 0,-0.28517 z m 3.5443,0 0.2037,0 c 0.2933,0.10004 0.5027,0.25431 0.6518,0.48886 l -0.082,0.12221 c 0.049,0.098 0.1129,0.18842 0.163,0.28517 l -0.3667,0 0,0.24444 0.5296,0.0815 c 0.074,0.13781 0.168,0.27231 0.2445,0.40738 l -1.7925,0 0,-0.20369 c 0.5521,10e-5 0.8147,-0.22357 0.8147,-0.5296 l -0.3666,-0.40738 0,-0.48886 z m -9.2885,0.0407 0.1223,0.44812 -0.2037,0.0407 -0.082,-0.3259 0.1629,-0.16295 z m -3.5035,0.0815 0.082,0.44811 -0.4481,0.12222 -0.041,-0.16296 0.3259,-0.0407 0,-0.32591 0.082,-0.0407 z m 1.6296,0.0407 c 0.2851,1.0667 0.7124,1.54313 1.3036,1.38511 l 0.082,0.16295 -0.163,0.24443 -0.2444,-0.12221 c -0.5964,0.73086 -0.8708,1.45176 -0.6926,2.1184 l -0.8555,-0.65181 0.6111,-0.16296 -0.1222,-0.40739 c -0.3695,0.0988 -0.5984,-0.0975 -0.8148,-0.61107 l 0.9777,-0.73329 -0.4481,-0.93699 -0.041,-0.16295 0.4074,-0.12222 z m 23.5878,0.24443 0.4481,0.12221 -0.082,0.24444 -0.4481,-0.12222 0.082,-0.24443 z m -14.9512,0.0815 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 4.6035,0 0,0.0815 -0.041,0.16296 -0.2037,-0.0407 0.2444,-0.20369 z m -10.5514,0.0407 c 0.1566,0.12931 0.3291,0.24634 0.5704,0.36665 l 0,-0.16295 0.082,0.36665 0,0.0815 -0.4482,0.12221 -0.2037,-0.77404 z m 23.2212,0.0407 0.4481,0.12222 0,0.97772 -0.2852,0.12222 -0.041,0.20369 -0.1629,1.46659 -0.4074,0.57034 0.2037,0.24443 -0.3259,0.20369 0.3666,0.57034 -0.2852,0.12221 -0.2444,-0.0407 -0.041,1.14067 -0.3259,1.14068 -0.4481,-0.16295 -0.2037,0.69256 c 0.013,0.0242 0.029,0.0565 0.041,0.0815 l -0.1222,0.0815 0.1629,0.0407 c 0.083,0.20379 0.1422,0.44083 0.163,0.69256 l -0.041,0.2037 -0.163,-0.24444 -0.2852,-0.0815 -0.041,0.0407 0.2445,-1.54806 0.774,-2.85169 0.4481,-0.81477 -0.2851,-1.0592 0.52959,0.16294 0.32591,-2.07766 z m -28.4358,0.0407 -0.041,0.44813 -0.2851,0.0815 -0.2852,-0.16296 -0.2037,0.0815 0.3667,0.48886 -0.4889,0.61108 -0.3259,-0.48887 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48885 -0.163,0 -0.2037,0.28516 -0.2037,0 0.3667,-0.61107 1.2629,-0.2037 z m 4.8072,0 0.163,0.65182 -0.2037,0.0407 -0.2037,-0.61108 0.2444,-0.0815 z m -7.0885,0.28517 0.2037,0 0,0.28518 -0.2037,0.24442 -0.2445,0 0,-0.3259 c 0.078,-0.065 0.1634,-0.13004 0.2445,-0.2037 z m 32.5911,0.40739 1.5073,1.34436 -0.1222,0.44813 -0.5296,-0.16295 -0.4889,1.79249 -0.2037,-0.0407 0.4074,-2.48505 -0.2852,0.12221 -0.3259,-0.0815 0.041,-0.93699 z m 4.4812,0 0.7741,0 -0.1222,0.40738 -0.6926,-0.20369 0.041,-0.20369 z m -27.4172,0.12221 0.041,0 0.2037,0.20369 -0.163,0.0407 -0.082,-0.24443 z m 3.422,0 0.5704,0 0,0.20369 -0.5704,0 0,-0.20369 z m 5.4998,0 0.041,0 0,0.20369 -0.082,0 0.041,-0.20369 z m 0.5296,0.16295 c -0.014,0.0596 -0.024,0.0992 -0.041,0.16296 l 0.4074,0.12222 c -0.1395,0.12917 -0.3455,0.16298 -0.6518,0.16295 l -0.2037,0 0,-0.20369 0.4888,-0.24444 z m -4.6442,0.0407 0.6518,0.2037 0,0.44813 c -0.414,0 -0.6518,0.1829 -0.6518,0.48885 l -0.163,0 c 0,-0.45891 -0.1313,-0.73324 -0.4074,-0.73329 l 0,-0.20369 0.5704,-0.2037 z m 11.4476,0.0407 0.3259,0.61109 -0.041,0.20369 -0.3259,-0.61108 0.041,-0.2037 z m -18.0881,0.0407 0.5704,0.28517 0.6518,2.36284 0,0.0815 -0.3667,-0.5296 -0.2037,0 0.5704,0.85551 0.041,0.65182 0.2852,0.12221 -0.3667,0.57034 -1.1814,-4.39976 z m 15.4401,0 0.2444,0.0407 -0.2852,1.09994 -0.2444,-0.0407 0.2852,-1.09994 z m -7.0886,0.12222 0.5703,0.20369 0,0.24444 -0.774,0 0.2037,-0.24444 0,-0.20369 z m -9.2885,0.20369 0.4889,0.48886 0.041,0.16295 -0.4889,0.12222 -0.1629,-0.65181 0.1222,-0.12222 z m 1.9962,0.12222 0.3259,0.32591 0,0.0815 0.082,0.0407 0.2037,0.24443 -0.1629,0.16295 0.6518,2.36284 -0.2852,-0.16296 -0.8147,-3.05538 z m -7.8218,0.0815 0.082,0.36664 -0.2037,0.0407 -0.082,-0.36663 0.2037,-0.0407 z m 2.4443,0.20369 -0.082,0.61107 0.082,0.24444 0.2444,0.16295 c -0.7759,0.20743 -1.0756,0.74802 -0.937,1.71101 l 0.3667,0.57035 -0.2037,0.0407 0.5703,0.24442 -0.1629,1.30363 0.082,0.28518 0.2444,0.12221 -0.2037,0.0407 0.5704,0.85551 c -0.141,0.11253 -0.2864,0.23952 -0.4481,0.40739 l -0.082,-0.2037 -0.4074,0.12222 -0.082,-0.36665 0.4073,-0.12222 -0.2036,-0.81476 -0.4482,0.12221 -0.2037,-0.81478 0.4074,-0.1222 -0.1222,-0.44813 -0.6518,0.20369 0.082,0.44812 -0.2037,0.0407 -0.163,-0.61107 c 0.1174,-0.74568 0.3563,-1.1839 0.6519,-1.2629 l -0.082,-0.16295 -0.4074,0.0815 -0.163,-0.61108 0.2037,-0.0407 1.3444,-2.03692 z m 31.3282,0.20368 0.2444,0.0407 0.2445,0.28518 0.2851,-0.12222 0.6926,0.16295 0.4481,2.28136 -0.041,0.2037 0.2852,0.0815 0.2852,-0.12221 0.2444,0.0407 -0.6926,2.64799 c -0.6158,-0.3229 -0.8481,-0.90563 -0.611,-1.79249 l -0.2037,-0.0815 0.2851,-0.12221 0.1223,-0.48886 0.082,-1.18142 -0.5704,-0.12221 -0.6925,2.68873 0.2444,0.28517 -0.3667,0.12222 -0.041,0.2037 0.2037,2.19987 -0.8147,0 c -0.1161,0.56731 -0.1894,1.08429 -0.2445,1.50732 -0.1694,0.10755 -0.2849,0.39717 -0.4074,0.85552 l -0.3259,0.12221 -0.4481,-0.12221 -0.163,-0.93699 0.5704,-0.48886 0,-0.12222 c 0.055,0.0879 0.1486,0.16719 0.2852,0.2037 l 0.2037,0.0407 0.082,-0.20369 0.2444,-1.87397 0.3666,-0.5296 0.7333,-3.62572 0.2445,-0.89626 -0.4482,-0.12221 -0.3666,1.34437 -0.3667,0.12222 0.2445,0.28517 -0.1222,0.48885 -0.5296,-0.16294 0.8147,-3.09614 z m -9.207,0.12222 0.2037,0.0407 -0.2444,0.89625 -0.2852,0.16295 -0.2037,-0.0815 0.5296,-1.01846 z m 6.0701,0 0.2037,0.0407 -0.082,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -24.9729,0.0815 0.2037,0.81477 -0.2037,0.0407 -0.2445,-0.77403 0.2445,-0.0815 z m -6.7219,0.0407 0.041,0 0.1222,0.44813 -0.2037,0.0407 -0.041,-0.12221 c 0.028,-0.10614 0.05,-0.23043 0.082,-0.32591 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.2614,0.0407 0.2444,0.0407 -0.2037,0.69255 -0.2037,-0.0407 0.163,-0.69255 z m -26.5618,0.0407 0.1222,0.44812 -0.3259,0.48886 -0.082,-0.36664 0.2852,-0.57034 z m 13.892,0.0815 0,0.0407 -0.3259,0.2037 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1891,-0.0178 0.3782,-0.0562 0.5296,-0.0815 z m -11.7328,0.24444 0.1222,0.12221 -0.2037,0.0815 -0.041,-0.16295 0.1222,-0.0407 z m 27.1321,0.12221 0.774,0.20369 -0.041,0.24443 -0.774,-0.20369 0.041,-0.24443 z m -8.7182,0.0407 0.5704,0.16295 -0.082,0.20369 -0.5296,-0.12221 0.041,-0.24443 z m -15.4807,0.0407 0,0.61107 0.4481,0 c 0,0.33786 0.036,0.62662 0.1222,0.81477 -0.2101,0.0426 -0.4005,0.0946 -0.5703,0.16296 l 0,-0.0407 -0.3667,-0.40738 -0.6518,0.20368 c 0,-0.11014 -0.034,-0.2077 -0.082,-0.28516 l -0.2444,-0.89625 1.3443,-0.16295 z m 2.8924,0 0.2852,0.20369 0.2037,0 1.874,-0.20369 0,0.20369 -0.2852,0.65182 c 0.3992,-0.22119 0.701,-0.47342 0.8148,-0.77403 0.071,0.0934 0.1312,0.19368 0.2037,0.28516 l -0.3667,0.0407 0,0.44813 0.4074,0 0.2445,0.28517 0.1629,-0.24443 c 0.093,0.10678 0.1891,0.22207 0.2852,0.3259 l 0.041,0.16295 -0.2037,-0.20368 -0.2444,0.1222 0.041,0.69257 -0.2445,0.12221 -0.081,0.16296 -0.6518,-0.12222 c -0.065,-0.12871 -0.1069,-0.24434 -0.1222,-0.36665 l 0.3259,0 0.3666,0.0815 0.041,-0.2037 -0.2851,-0.52959 c -0.2712,-0.0725 -0.5058,-0.0647 -0.7333,-0.0815 l -0.2037,-0.20369 -0.082,0.16295 c -0.064,0.002 -0.1437,-0.007 -0.2037,0 l -0.5296,-0.61108 -1.0592,0.20369 -0.7741,-0.20369 -0.4481,0.44813 -0.163,-0.24444 0,-0.20369 c 0.2416,3e-5 0.4327,0.0163 0.6111,0 0.5354,-0.049 0.7741,-0.17787 0.7741,-0.40738 z m 16.2956,0 0.2444,0.0815 -0.2444,0.89624 -0.2445,-0.0815 0.2445,-0.89625 z m -19.9621,0.40738 0,0.44813 0.4074,0 0,-0.44813 -0.4074,0 z m -1.548,0.0815 0.2444,0.28517 -0.2037,0.36665 -0.163,-0.52961 0,-0.0815 0.1223,-0.0407 z m -10.5107,0.12221 0.041,0.32591 -0.1629,0.0407 0.1222,-0.36665 z m 21.8361,0 0.1629,0 0,0.24444 -0.1629,0 0,-0.24444 z m -16.6622,0.0407 0.5296,0.93699 0.041,0.16295 -0.2037,0.28517 0.774,1.83323 -0.5296,0.32591 -0.2852,-1.50732 -0.1222,-0.44812 -0.2444,-0.12222 -0.163,-1.42585 0.2037,-0.0407 z m -0.8963,0.0407 1.1407,4.2368 -0.3259,-0.0815 0,-0.0815 -0.2852,-0.16296 -0.6925,-3.46276 -0.041,-0.2037 -0.2852,-0.12221 0.4888,-0.12222 z m 19.8806,0.0815 0.2444,0.0815 -0.1222,0.40738 -0.2037,-0.0407 0.082,-0.44812 z m -7.7811,0.0815 0.6518,0 0,0.20369 c -0.1266,0.0362 -0.2233,0.0983 -0.3259,0.16295 l -0.3259,-0.0815 0,-0.28517 z m -9.207,0.12221 0.1222,0.36664 -0.2037,0.0407 -0.1222,-0.36664 0.2037,-0.0407 z m 15.1141,0.0407 0,0.12222 -0.082,0 0.082,-0.12222 z m 9.981,0.24443 0.2444,0.0407 -0.1629,0.48887 -0.2037,-0.0407 0.1222,-0.48886 z m 5.2553,0 0.2445,0.0407 -0.163,0.48887 -0.2037,-0.0407 0.1222,-0.48886 z m -22.8137,0.0815 0.3666,0 c -0.096,0.17536 -0.2074,0.27297 -0.3666,0.28518 l 0,-0.28518 z m 7.1293,0 0.1629,0 0,0.2037 -0.1629,0 0,-0.2037 z m -1.5074,0.0407 0.2852,0.0815 -0.2852,0 0,-0.0815 z m 4.7257,0.0815 0.3259,0.61108 -0.1222,0.40738 -0.4481,-0.12221 0.2444,-0.89625 z m 1.0185,0.28517 0.2037,0.0407 c -0.079,0.29569 0.1603,0.56116 0.6518,0.69255 l -0.2444,0.89626 c -0.1374,-0.16029 -0.2848,-0.28993 -0.4481,-0.40739 l 0.041,-0.2037 -0.4482,-0.12221 0.2445,-0.89625 z m -5.8664,0.0407 0.1222,0 0.082,0.0407 -0.1222,0.44813 -0.1629,-0.0815 0.082,-0.40739 z m 3.3813,0 0.5704,0 -0.082,0.2037 -0.2445,0 c -0.09,-0.0653 -0.1747,-0.12663 -0.2444,-0.2037 z m -7.4144,0.12222 c -0.014,0.0405 -0.029,0.0791 -0.041,0.12221 l -0.1223,-0.0407 0.163,-0.0815 z m -15.603,0.16295 0.082,0.16296 0.3259,2.93317 0.4074,-0.12222 -0.1222,-0.36665 0.611,0.24443 c -0.4434,0.11852 -0.6364,0.41477 -0.5296,0.81477 l 0.2445,0.12222 -0.2445,0.7333 0.041,0.20368 0.4482,-0.1222 -0.1223,-0.44813 0.2037,-0.0407 0.1223,0.44813 -0.3667,1.14067 -0.3666,-0.0815 c -0.056,0.0711 -0.069,0.1343 -0.1223,0.20368 l -0.4481,-1.58879 0.041,-1.09994 -0.3259,-0.0815 0.2037,-0.28517 -0.041,-0.24444 -0.4889,0.12222 -0.082,-0.16296 0,-0.0815 0,-0.16296 c 0.3324,-0.11704 0.5134,-0.41156 0.4482,-0.93698 l -0.4482,-0.77404 -0.041,-0.16296 0.5704,-0.36664 z m 31.1652,0 0.5296,0.12222 -0.2037,0.69255 -0.5296,-0.12222 0.2037,-0.69255 z m -28.9246,0.28517 -0.4074,0.0815 0.041,0.2037 0.4074,-0.12222 -0.041,-0.16295 z m 4.7257,0 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 8.5144,0.0407 0.2037,0.0815 -0.2444,0 0.041,-0.0815 z m 16.9067,0 0.5296,0.12222 -0.1222,0.48887 0.4481,0.12221 0.1629,-0.69256 0.4482,0.57035 -0.5704,0.81476 -0.1629,1.87397 -0.4482,0.52961 -0.2444,-0.0407 c 0.5137,-1.92151 0.411,-2.92094 -0.2444,-3.09613 l 0.2037,-0.69256 z m -20.0436,0.0815 0.2037,0 -0.1222,0.44813 -0.1629,0 0,-0.20369 0.082,-0.24444 z m 1.7926,0 0.2037,0 c 0.1368,0.16131 0.1865,0.38537 0.1629,0.65182 l -0.1222,0 -0.2444,-0.65182 z m -2.5666,0.12222 0.2037,0.36665 -0.2852,-0.0815 0.082,-0.28517 z m 12.5476,0.16295 0.2444,0.0815 0.2852,0.2037 -0.163,0.24443 c -0.1007,-0.099 -0.2133,-0.17919 -0.3259,-0.24443 l -0.041,-0.28518 z m -7.1701,0.16296 0.2852,0 c 0,0.0715 0.024,0.14662 0.041,0.20369 l -0.4074,0 0.082,-0.20369 z m 0.7333,0.0815 0.4074,0.12221 -0.3259,0 -0.082,-0.12221 z m -6.7219,0.12221 0.2037,0.0815 -0.082,1.22216 -0.082,0.20368 -0.2037,-0.0815 0.041,-0.48885 0.2037,0 0,-0.65182 -0.082,-0.28517 z m 14.6253,0.0407 0.3259,0.0815 -0.163,0.65181 -0.2037,-0.0815 -0.041,-0.52959 0.082,-0.12222 z m -15.3586,0.0407 0,0.20369 -0.1222,0 0.1222,-0.20369 z m -1.4666,0.16296 0.1222,0 0.1223,0.16294 0.082,0.28517 -0.3259,-0.40738 0,-0.0407 z m 4.522,0.0407 0.2037,0 -0.082,0.20369 -0.1629,0 0.041,-0.20369 z m -5.2553,0.16295 -0.041,0.24443 c -0.1412,0.67657 -0.1364,1.03082 0.1222,1.09994 l -0.2444,0.2037 -0.082,0.16295 -0.041,0.24444 -0.1222,0.0407 -0.163,-0.57035 0.4482,-0.0815 c -0.206,-0.77057 -0.1475,-1.24296 0.1222,-1.34437 z m 1.874,0 0.041,0.12222 0.082,-0.0815 0.163,0.65182 0,0.12222 -0.4889,0.73329 0.2852,0.0815 -0.3259,0.12221 -0.082,0.24444 0.2444,0.28516 -0.082,0.16295 -0.4074,0.57035 0.041,0.8555 -0.6518,1.30364 0.2444,0.28516 -0.4888,-0.16295 0.3666,-1.34437 -1.1814,0.73329 0.2444,0.28517 -0.8555,0.44812 -0.082,1.01846 -0.4074,0.69256 c 0.08,-0.49941 0.011,-0.79803 -0.2037,-0.8555 l 0.2852,-0.16296 0.041,-0.20369 0.2037,-1.30364 c 0.1374,-0.12989 0.2764,-0.27148 0.4074,-0.40738 l 0.4481,0.32591 c -0.053,-0.21157 -0.1577,-0.37537 -0.2444,-0.5296 0.051,-0.0555 0.1128,-0.10648 0.1629,-0.16296 l 0.2445,0.0407 0.082,-0.36665 0.3666,-0.16295 -0.1629,-0.16296 c 0.072,-0.0919 0.1339,-0.19121 0.2036,-0.28516 l 0.7333,0.0407 0.163,-0.61108 -0.4074,-0.12222 c 0.071,-0.1075 0.1351,-0.2161 0.2037,-0.3259 l 0.2852,0.0815 0.2852,-1.0592 c 0.1084,-0.19992 0.2226,-0.4049 0.3259,-0.61109 l -0.1223,-0.16295 0.041,-0.12222 z m 11.7328,0.0407 0.2037,0.40739 0,0.0407 -0.4889,0 c 0.012,-0.0714 0.03,-0.13545 0.041,-0.2037 l 0.2445,-0.24443 z m -22.1619,0.0407 0.082,0.28517 -0.082,0 0,-0.28517 z m 30.4319,0.20369 0.4889,0.12222 -0.4074,0.93698 c -0.091,-0.13611 -0.2088,-0.26481 -0.3667,-0.36665 l 0.2852,-0.69255 z m -10.8773,0.16296 0.2037,0.0407 -0.2037,0 0,-0.0407 z m 0.9778,0.0407 0.4073,0.12221 -0.041,0.16296 -0.2037,0.0407 -0.1629,-0.28517 c 0.01,-0.003 -0.01,-0.0375 0,-0.0407 z m -8.3923,0.32591 0.4074,0.0815 -0.1629,0.65181 -0.2852,-0.57035 0.041,-0.16294 z m 23.9138,0.0407 c 0.4519,0.27923 0.6049,0.76825 0.4074,1.50732 l -0.5297,1.0592 c -0.1997,1.12233 -0.2914,1.89099 -0.2851,2.40357 l -0.163,-0.0407 0.041,-0.77403 0.1222,-0.48886 -0.3666,-0.77403 0.8962,-2.1184 -0.1222,-0.77403 z m -21.8361,0.1222 0.2445,0 0,0.2037 -0.2445,0 0,-0.2037 z m 12.0995,0 0.041,0 -0.163,0.57035 c -0.02,0.0768 -0.028,0.1306 -0.041,0.20369 l -0.041,0 0.2037,-0.77404 z m -19.9621,0.0407 0.2037,0.0407 0.1222,0.24443 -0.3666,-0.12221 0.041,-0.16296 z m -4.1146,0.2037 0.041,0.20369 -0.2852,0.52961 -0.041,-0.16296 0.2852,-0.57034 z m 3.6258,0 c 0.1217,0.0561 0.2252,0.11426 0.4074,0.16295 l -0.082,0.36665 -0.163,-0.24443 -0.082,-0.0407 -0.082,-0.24443 z m 31.1245,0.0815 0.2444,0.0815 -0.1222,0.48887 -0.2445,-0.0815 0.1223,-0.48887 z m -25.4618,0.0815 c 0.1305,0.006 0.2859,0.0201 0.4481,0.0407 l -0.1222,0.36665 c -0.2956,-0.079 -0.55,0.15923 -0.6926,0.69255 l -0.4481,-0.77403 c 0.047,-0.1747 0.2132,-0.25603 0.4889,-0.28517 l 0.3666,0 -0.041,-0.0407 z m 14.0141,0 0.082,0 0.1222,0.0407 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.24444 z m -8.1477,0.0407 0.2851,0 -0.1222,0.52961 -0.2444,-0.0815 c 0.037,-0.15395 0.063,-0.31014 0.082,-0.44813 z m 0.8555,0 0.5703,0 0,0.0815 -0.3666,0.57033 0.1222,0.16296 -0.6111,-0.16296 c 0.107,-0.16057 0.1904,-0.41428 0.2852,-0.65181 z m 1.0592,0 0.2444,0 -0.041,0.0815 -0.2037,-0.0407 0,-0.0407 z m 2.2406,0 0.4889,0 -0.1222,0.36665 -0.2037,0.0407 0,0.44812 0,0.0407 -0.082,0.16295 0.041,0.44813 -0.163,0.0407 c -0.1808,-0.20535 -0.2427,-0.4948 -0.2037,-0.85552 0,-0.0259 0,-0.0547 0,-0.0815 0.012,-0.0827 0.016,-0.15375 0.041,-0.24442 l 0.2037,-0.36665 z m 0.8555,0 0.7333,0 0.326,0 -0.041,0.2037 -0.2445,0 0,0.48885 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.28517 -0.4889,0.12222 -0.041,-0.52961 0.2445,-0.0407 0,-0.48885 -0.2852,0.0407 -0.041,-0.24443 z m -7.6996,0.0815 0,0.77403 c -0.2652,-0.0831 -0.4074,-0.28893 -0.4074,-0.65181 0.1827,2e-5 0.3,-0.0425 0.4074,-0.12222 z m 5.5405,0 0.4074,0.12222 -0.082,0.36665 -0.4482,-0.12222 0,-0.0407 0.163,-0.20369 -0.082,0 0.041,-0.12222 z m 11.9365,0 0.1222,0.65181 c -0.026,-0.0119 -0.051,-0.0326 -0.082,-0.0407 l -0.3259,0.0815 -0.041,0.24443 0,0.28518 -0.041,0.0815 -0.2037,-0.0407 0.041,-0.20369 0.2444,-0.36665 0.163,-0.28516 -0.4482,-0.12222 0.5704,-0.28517 z m -18.8214,0.0815 c 0.092,0.0158 0.1762,0.0407 0.2852,0.0407 l 0,0.65181 -0.2444,-0.0815 -0.041,0.12222 -0.1223,0 0,0.44812 0,0.0815 0.4482,0.12222 0.041,-0.2037 0.1629,0 -0.5296,0.77403 -0.2444,-0.32591 -0.082,0.36665 0.2444,0.0815 -0.041,0.0407 0.5296,0.12221 0.082,0.24444 -0.1222,0.20368 c -0.155,0.0762 -0.2587,0.22703 -0.2852,0.44813 l -0.041,0.12222 -0.1629,0 c 0,-0.0298 0.01,-0.0522 0,-0.0815 l 0.082,-0.44813 -0.163,-0.0407 c -0.084,-0.43312 -0.1524,-0.79238 -0.2444,-1.0592 l 0.4481,-1.62953 z m -7.2922,0.44811 c 0.2126,0.11968 0.3123,0.32246 0.2851,0.61109 l -0.2037,-0.12222 -0.082,-0.48887 z m 18.3324,0 0.041,0 c -0.01,0.0299 -0.034,0.0522 -0.041,0.0815 -0.03,0.13716 -0.06,0.28313 -0.082,0.40739 -0.092,0.0158 -0.1761,0.0407 -0.2851,0.0407 l 0,0.48887 -0.2445,0 0.082,-0.937 0.5296,0 0,-0.0815 z m -12.3846,0.0815 0.2852,0 0.1222,0.0407 0,0.40739 -0.2037,0 0,0.20369 0.082,0.36664 c -0.1678,-0.14916 -0.2705,-0.48917 -0.2851,-1.01846 z m 25.3396,0.0407 0.4481,0.12222 -0.1222,0.40739 -0.4481,-0.12222 0.1222,-0.40739 z m -33.9355,0.0407 c -0.044,0.0495 -0.077,0.10969 -0.1222,0.16296 l -0.041,-0.12222 0.163,-0.0407 z m -0.8962,0.0407 0.4481,0.93698 -0.2037,0.0407 -0.082,-0.0407 c 0.011,-0.0447 0.028,-0.075 0.041,-0.1222 l -0.2444,-0.0815 -0.2037,-0.69256 0.2444,-0.0407 z m 17.5177,0 0.4074,0.12222 -0.082,0.24443 -0.3667,-0.24443 0.041,-0.12222 z m 0.7333,0 0.2037,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.1222,-0.44813 z m 7.1293,0.0815 0.082,0.12221 0.2852,0.0815 0.082,-0.0407 -0.2037,1.34437 -0.6926,2.52579 -0.2444,0.48886 -0.082,-0.36665 0.2037,-0.28516 -0.2037,-0.2037 -0.2445,0.0815 -0.1629,-0.28517 0.2851,-0.12222 0.2037,0.0407 0.041,-1.0592 0.2852,-0.97772 0.4074,0.0815 0.1222,-0.52961 0.041,0 0,-0.0815 c -0.1251,-0.22968 -0.1809,-0.50832 -0.2037,-0.81476 z m 3.0554,0.0407 0.2444,0.0815 -0.082,0.24444 0,0.0407 -0.1629,0.52959 -0.2037,-0.0815 0.2037,-0.81476 z m -20.2472,0.20369 0.4074,0.12222 -0.1222,0.36665 -0.2852,-0.48887 z m -10.6329,0.32591 0.041,0.16296 -0.1222,0.0407 0,-0.16296 0.082,-0.0407 z m 5.5405,0.0407 0.2037,0.0815 -0.082,0.36664 0.2037,0.0407 -0.2444,0.12221 -0.1222,0.48887 -0.163,-0.61108 0.2037,-0.48886 z m 27.4173,0 0.3666,0.0815 c -0.05,0.18574 -0.025,0.33526 0,0.44811 l -0.3259,-0.0815 c 0.053,-0.20003 0.019,-0.3353 -0.041,-0.44812 z m -3.9517,0.0815 0.041,0 c -0.023,0.12022 -0.051,0.23872 -0.082,0.36664 l -0.041,0 0.082,-0.36664 z m -17.314,0.0407 0.2037,0.0407 -0.2444,0.81476 -0.2037,-0.0407 0.2444,-0.81476 z m 14.7475,0.0407 c 0.1067,0.0985 0.2579,0.16799 0.4074,0.24442 l -0.163,0.32591 -0.163,-0.0407 -0.041,-0.0407 c -0.048,-0.0401 -0.1096,-0.0903 -0.1629,-0.12222 l 0.1222,-0.36663 z m -21.9175,0.16294 0.082,0 c 0.01,0.0632 0,0.14341 0,0.20369 l -0.082,-0.20369 z m 32.4688,0 0.3259,0.52961 -0.4481,-0.12222 0.1222,-0.40739 z m -33.2429,0.36665 0.041,0.12222 -0.1629,-0.0407 0,-0.0407 0.1222,-0.0407 z m 6.7627,0.16296 0.2037,0.0815 -0.7333,2.81096 -0.2037,-0.0815 0.7333,-2.81095 z m 9.4514,0 -0.2037,0.81476 0,0.0815 c -0.07,0.01 -0.1708,0.0316 -0.2444,0.0407 l 0.2444,-0.89625 0.2037,-0.0407 z m 1.5888,0.16295 c 0,0.0512 0,0.10831 0,0.16296 -0.1404,0.17118 -0.5033,0.28723 -1.0185,0.40738 l 0.082,-0.24444 0.937,-0.3259 z m 8.5959,0.12222 c 0.1067,0.18436 0.2375,0.33744 0.3667,0.48885 l 0,0.12222 0.1629,0.0407 c 0.068,0.0685 0.1302,0.14364 0.2037,0.20369 l -0.163,0.65182 -0.2036,-0.0407 c 0.071,-0.26673 -0.1677,-0.49255 -0.6111,-0.61108 l 0.2444,-0.8555 z m 1.0185,0.0407 0,0.1222 -0.082,-0.0815 0.082,-0.0407 z m 5.5812,0.0407 0.4481,0.1222 -0.041,0.2037 -0.4888,-0.12222 0.082,-0.20368 z m -24.1989,0.0407 0.1222,0.44812 0.2445,0.89625 -0.4482,0.7333 0.3259,-0.12222 0.2037,0.0407 -0.1222,0.36664 -0.2037,-0.0407 -0.2037,-0.24442 -0.2444,-0.0815 -0.082,0.44812 -0.2444,-0.0407 0.6518,-2.40357 z m -1.2222,0.0815 0.2037,0.0815 -0.1222,0.52961 -0.2037,-0.0407 0.1222,-0.57035 z m 7.1293,0 0.2037,0.0407 -0.082,0.36665 -0.2036,-0.0407 0.082,-0.36665 z m 14.5438,0.0407 -0.082,0.24443 0.6926,0.16296 0.082,-0.20369 -0.6926,-0.2037 z m -28.6801,0.0815 c 0.026,-0.005 0.055,0.004 0.082,0 -0.126,0.1796 -0.3024,0.32896 -0.5296,0.44813 l -0.041,-0.2037 c 0.1447,-0.11438 0.3061,-0.20677 0.4888,-0.24443 z m 13.3623,0.20369 c 0.1273,0.11381 0.2392,0.22321 0.2852,0.32591 l -0.2852,-0.0815 0,-0.24444 z m -12.9549,0.2037 0.041,0 0.3259,0.12221 c 0.028,0.10642 0.051,0.19752 0.082,0.28518 l -0.2037,0.77402 -0.2037,-0.0407 c 0.1426,-0.53338 0.011,-0.85797 -0.2852,-0.93699 l -0.2037,0.0815 0.041,-0.16296 0.3259,-0.0815 0.082,0 0,-0.0407 z m -2.5666,0.0407 0.082,0.24443 -0.1222,-0.0407 0.041,-0.20369 z m 13.4438,0 0.2037,0 c -0.015,0.10051 -0.023,0.21901 -0.041,0.32591 l -0.1629,0.16294 0,-0.48885 z m 8.5552,0 0.3666,0 -0.041,0.16295 -0.4073,-0.12221 c 0.02,-0.0187 0.064,-0.0211 0.082,-0.0407 z m 1.0185,0 0.4074,0 0,0.20369 c -0.1952,4e-5 -0.3609,0.0365 -0.4889,0.0815 l 0.082,-0.28517 z m -19.4325,0.0815 0.163,0.0407 -0.082,0.32591 -0.082,-0.36665 z m 13.8105,0.12222 0,0.5296 -0.041,0.0407 -0.041,0.16296 -0.2444,0 0.2037,-0.69255 0.1222,-0.0407 z m 0.8555,0 0.937,0 -0.041,0.16296 0,0.1222 -0.2444,0 -0.2852,-0.0407 -0.082,0.0407 -0.2852,0 c 0,0.0149 0,0.026 0,0.0407 l -0.082,-0.0407 0.082,-0.28516 z m 3.0554,0.16296 -0.082,0.36664 -0.3666,0 -0.1222,-0.12222 0.041,-0.16295 c 0.2044,-0.0207 0.3677,-0.0344 0.5296,-0.0815 z m 9.0441,0 c 0.6944,0.36415 0.9331,1.01469 0.6925,1.9147 l -0.4888,-0.12221 -0.163,0.52959 0.3666,0.57035 -0.8555,1.26289 0.2037,0.0407 -0.2444,0.12222 -0.082,0.28516 0.1629,1.30363 -0.5703,0.24443 0.2037,0.0407 -0.3667,0.57034 c -0.1386,0.96297 0.1611,1.50358 0.937,1.71102 l -0.2444,0.16296 -0.082,0.24442 0.082,0.61108 -1.3444,-2.03692 -0.2037,-0.0407 0.163,-0.61108 0.4481,0.0815 0.041,-0.16295 c -0.2956,-0.079 -0.5344,-0.51721 -0.6518,-1.26289 l 0.1629,-0.61108 0.2037,0.0407 -0.082,0.44813 0.6926,0.20369 0.082,-0.44813 -0.4074,-0.12221 0.2444,-0.81477 0.4074,0.12222 0.2037,-0.81478 -0.4074,-0.12221 0.082,-0.36665 0.4482,0.12222 0.082,-0.36665 -0.4074,-0.12222 0.1629,-0.61107 c 0.3696,0.0988 0.5984,-0.13822 0.8148,-0.65182 0.1069,-0.39999 0,-0.61476 -0.4481,-0.73329 l 0.1629,-0.61107 z m -24.5248,0.0407 0.4888,0.12221 -0.4074,0.57035 -0.2444,-0.0815 0.163,-0.61108 z m 23.3026,0 c 0.1376,0.0728 0.2979,0.11503 0.4481,0.16295 l -0.1222,0.40739 -0.3259,-0.5296 0,-0.0407 z m -16.7029,0.0815 0.6518,0 0.2037,0.24444 0.1629,0 -0.1629,0.61108 -0.6111,0 -0.2444,-0.85552 z m 5.7034,0.2037 0.082,0 c -0.036,0.16124 -0.082,0.31655 -0.1222,0.44812 l -0.082,0 0.1222,-0.44812 z m 4.8887,0.0407 0,0.16295 -0.082,0.24443 -0.2037,0 0.041,-0.20369 0.2444,-0.20369 z m -7.7404,0.0815 0.2037,0.0407 -0.041,0.0815 -0.2037,0 0.041,-0.12222 z m -8.6367,0.0815 0.6519,0.36665 -0.2852,1.01846 -0.2037,-0.0815 -0.2444,-0.93699 0.082,-0.36665 z m 20.8991,0 0.4888,0.12222 0.3667,1.14068 -0.1222,0.44812 -0.2037,-0.0407 0.1222,-0.44812 -0.4481,-0.12222 -0.041,0.2037 0.2444,0.73328 -0.2444,0.12222 c -0.1069,0.40004 0.086,0.69625 0.5296,0.81477 l -0.5704,0.24443 0.082,-0.36665 -0.4074,-0.1222 -0.3259,2.93316 -0.082,0.16296 -0.5703,-0.32591 0.082,-0.2037 0.4074,-0.77402 c 0.069,-0.55308 -0.1194,-0.87895 -0.4889,-0.97773 l 0.1222,-0.36665 0.4889,0.12222 0.041,-0.24443 -0.2037,-0.28517 0.3259,-0.0815 -0.041,-1.09994 0.4481,-1.58881 z m -18.9843,0.0407 0.4074,0.12222 -0.041,0.20369 -0.4074,-0.12222 0.041,-0.20369 z m 11.2032,0 0.1629,0 c 0.066,0.0585 0.1536,0.11741 0.2444,0.16296 l -0.041,0.12221 -0.082,0.28517 -0.2851,-0.5296 0,-0.0407 z m -19.9621,0.0407 0.3259,0.48887 -0.2444,-0.24444 -0.2037,-0.0407 0.1222,-0.20369 z m 1.1,0.0815 0.1629,0.0407 0,0.16295 -0.1629,0.65181 -0.2037,-0.0815 0.2037,-0.77403 z m 31.0837,0 c 0.044,0.10287 0.088,0.18377 0.163,0.20369 l 0.2037,0.0407 0,0.44812 -1.7111,6.35521 -0.4888,-0.12222 0.2851,-0.12221 0.041,-0.2037 0.6926,-3.46277 0.2852,-0.12222 0.041,-1.0592 0.4888,-1.95544 z m 1.0185,0 0.2037,0.0407 -0.2037,0.65181 -0.2037,-0.0815 0.1629,-0.57033 0.041,-0.0407 z m -15.6437,0.12221 0.041,0.44812 -0.1222,0.0407 -0.082,-0.3259 0.1629,-0.16296 z m 12.792,0 0.2037,0.0407 -0.1223,0.36664 -0.2037,-0.0407 0.1223,-0.36664 z m -9.5737,0.0407 c 0.1347,0.0336 0.3237,0.0613 0.4889,0.0815 l -0.1222,0.48886 -0.4481,-0.16296 0.082,-0.40738 z m -20.9805,0.3259 0.4889,0.12222 -0.082,0.20369 -0.163,1.38512 c 0.01,-0.18442 -0.023,-0.3523 -0.082,-0.57035 l -0.2037,-0.81477 0.041,-0.32591 z m 3.2999,0.0407 0.4481,0.0815 c -0.1069,0.39998 -0.01,0.69501 0.2852,0.77404 l -0.041,0.20368 c -0.4434,-0.11853 -0.7027,-0.10371 -0.7741,0.16296 l -0.2037,-0.0407 -0.082,-0.61107 0.3667,-0.57035 z m 16.8251,0.0407 0.2852,0 -0.082,0.24443 -0.2037,0 0,-0.24443 z m -13.7697,0.16296 0.2037,0.0407 -0.041,1.0592 -0.4074,-0.12222 0.2444,-0.97772 z m 20.125,0.20369 0.4481,0.16296 -0.041,0.16295 -0.4889,-0.12221 0.082,-0.2037 z m 3.0961,0 0.2037,0.0407 -0.4481,0.93698 -0.2037,-0.0407 0.2037,-0.81476 0.2444,-0.12222 z m -19.5139,0.12222 0.937,0.0407 -0.1222,0.57033 -0.9777,0 0.1629,-0.61107 z m 8.5959,0.16295 0.2037,0 0,0.0407 -0.2037,-0.0407 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3628,0 0.326,0 0,0.2037 -0.3667,0 0,-0.12222 0.041,-0.0815 z m -19.5139,0.0407 0.3259,0.5296 -0.2851,0.12221 -0.2037,-0.0407 c 0.062,-0.23333 0.1326,-0.43444 0.1629,-0.61107 z m -4.3183,0.16296 0.2037,0.0407 -0.1222,0.36664 -0.2037,-0.0407 0.1222,-0.36664 z m 32.3059,0 0.2037,0.0407 c -0.1069,0.4 -0.01,0.69502 0.2852,0.77402 l -1.4259,3.50352 0.2037,0.24442 -0.041,0.20369 -0.5296,0.89625 -0.2037,-0.0407 0.163,-1.42585 0.2444,-0.12222 0.1222,-0.44812 0.6926,-3.42204 0.2852,-0.20368 z m -35.3613,0.12221 0.1222,0.85551 0.2037,0.12222 c -0.012,0.0965 -0.014,0.18347 -0.041,0.28516 l 0,0.0815 -0.041,-0.0815 -0.2037,0.0815 c 0.022,0.0838 0.035,0.13719 0.041,0.20369 l -0.3666,0.16296 c -0.01,-0.0436 -0.031,-0.0797 -0.041,-0.12222 l 0.1222,-0.0407 0.041,-0.20369 0.1629,-1.34437 z m 9.4514,0.0407 0.6111,0.16296 -0.041,0.20369 -0.6926,0.0815 0.1223,-0.44813 z m -4.8072,0.24444 0.2037,0.0815 -0.1629,0.52961 -0.2037,-0.0407 0.1629,-0.57034 z m 28.9654,0 0.2037,0.0407 -0.2852,1.01847 -0.2037,-0.0815 0.2852,-0.97772 z m -20.4917,0.12221 0.3667,0.52961 -0.163,0.61107 -0.2037,-0.32591 -0.4074,-0.12221 c -0.1069,0.4 -0.412,0.56665 -0.8555,0.44812 0.107,-0.40002 -0.01,-0.6555 -0.4481,-0.77403 l 0.041,-0.20369 0.4074,0.12221 0.1629,0.24444 c 0.08,-0.29997 0.4464,-0.45431 1.1,-0.52961 z m 10.8365,0.2037 0.1223,0 0,0.12221 -0.1223,-0.12221 z m 13.118,0 0.8962,0.24443 -0.4481,1.75175 c -0.2956,-0.079 -0.3768,-0.54438 -0.163,-1.34437 l -0.4481,-0.0815 0.163,-0.57033 z m -6.1516,0.0407 0.2852,0.52959 -0.041,0.2037 -0.2852,-0.57034 0.041,-0.16295 z m -28.558,0.0815 -0.2036,1.62954 -0.8148,0.24443 0.2444,-0.89624 c 0.4491,-0.22295 0.7308,-0.54687 0.774,-0.97773 z m 0.6926,0 0.2444,0.0815 -0.082,0.36664 -0.2851,-0.0815 0.1222,-0.36665 z m 21.8768,0.0407 0.1629,0.0407 0,0.24443 -0.4074,0 0.2445,-0.28517 z m -9.5329,0.0407 0.2037,0 0.1629,0.24443 -0.2851,0 -0.082,0 0,-0.0407 0,-0.2037 z m -6.9664,0.24443 0.4889,0.12221 -0.082,0.24443 -0.5296,0.93699 -0.163,-0.24443 -0.2036,-0.0815 -0.5297,0.28516 0.041,0.65182 c -0.2956,-0.0791 -0.5041,0.0481 -0.611,0.44812 l -0.163,-0.24442 -0.2037,-0.0407 -0.2444,0.12221 0.2037,-1.62954 0.6111,0.16295 0.1222,-0.40738 c 0.739,0.19754 1.156,0.0741 1.2629,-0.32591 z m 2.8518,0.12221 0.2037,0.0815 -0.082,0.36665 -0.2445,-0.0407 0.1222,-0.40739 z m -7.8626,0.0407 0.2037,0.0815 -0.082,0.36665 -0.2445,-0.0407 0.1222,-0.40739 z m 6.6404,0.0407 0.2037,0.0815 -0.082,0.40738 -0.2445,-0.0407 0.1223,-0.44813 z m -9.2885,0.12222 0.2037,0.0815 -0.2444,0.0815 0.041,-0.16295 z m -0.041,0.28517 0.163,0.12221 0,0.0407 -0.2037,-0.0407 0.041,-0.12221 z m 15.7252,0.0815 c 0,0.20654 -0.1299,0.30826 -0.3259,0.36665 l -0.5296,0.0407 0,-0.16295 0,-0.0407 0.8555,-0.2037 z m 3.2591,0 c 0.013,0.005 0.029,-0.006 0.041,0 0.089,0.046 0.1749,0.11085 0.2037,0.2037 l -0.2444,0 0,-0.2037 z m 1.5481,0 0.4074,0 0.082,0.12222 -0.2037,0.81477 c -0.045,0.002 -0.075,0 -0.1222,0 l 0,0.20369 -0.2037,-0.20369 -0.4074,0 -0.1629,-0.24443 0.1222,-0.44812 c 0.1892,0.0505 0.3495,-0.044 0.4889,-0.24444 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.0591 0,0.0815 -0.098,0.33787 -0.3274,0.59856 -0.6518,0.73329 l -0.1222,-0.0407 0.4481,-0.77403 z m 4.4405,0 -0.041,0.2037 -0.4888,0 0,-0.12222 c 0.2001,-0.0277 0.3723,-0.0507 0.5296,-0.0815 z m 8.8811,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m -26.8469,0.0815 0.4074,0.12222 -0.1222,0.44812 -0.4074,-0.12222 0.1222,-0.44812 z m 9.7366,0.12222 0.1629,0 -0.1629,0.57033 0,-0.57033 z m -11.9773,0.16295 -0.082,0.36664 0.4074,0.12222 0.1223,-0.36665 -0.4482,-0.12221 z m 4.9702,0.0407 0.6925,0.20369 -0.1222,0.36665 0.4482,0.12221 0.1629,-0.61108 0.3259,0.36665 c -0.3477,0.17232 -0.5886,0.44677 -0.7333,0.81477 -0.062,0.0265 -0.089,0.0462 -0.1222,0.0815 l -0.2037,-0.0407 c 0.1402,-0.44386 -0.02,-0.72709 -0.4074,-0.81477 l -0.2037,-0.0407 c 0.071,-0.11464 0.1184,-0.28147 0.163,-0.44812 z m 16.9066,0 0.4074,0.12221 -0.082,0.24443 -0.4074,-0.12221 0.082,-0.24443 z m -14.4215,0.20369 0.1222,0.0407 c -0.043,2.1e-4 -0.081,-0.002 -0.1222,0 l 0,-0.0407 z m -13.729,0.24443 0.4481,0.0815 -0.082,0.20369 -0.4074,-0.12221 0.041,-0.16296 z m 20.1657,0 0.163,0.0815 -0.2037,0.0407 0.041,-0.12222 z m -10.4699,0.0407 0.163,0.24443 0.2037,0.0407 c 0.1185,0.0317 0.2232,0.0419 0.3259,0.0407 -0.1474,0.0926 -0.2951,0.12532 -0.4889,0.0815 l -0.2037,0.65181 c 0.3876,0.0877 0.6345,0.21897 0.774,0.44813 l -0.4888,0.24443 0.4074,0.0815 0.082,-0.28516 c 0.1221,0.22481 0.1522,0.50257 0.041,0.8555 l 0.6518,0.16296 -0.3666,1.09994 -0.6111,-0.12222 0,2.1184 -1.3444,1.14068 0.2037,0.32591 -1.7518,2.40356 0.4481,-0.1222 0.2445,0.0815 -0.1222,0.40738 -0.2852,-0.0407 -0.2852,-0.32592 -0.2852,-0.0407 -0.1222,0.48886 -0.2852,-0.0815 2.4851,-7.78105 0.2445,-0.0407 -0.2852,0.97772 0.6518,0.12222 0.4074,-1.30363 -0.4481,-0.0815 0.041,-0.12221 -0.2037,-0.0815 -0.2852,0 0.041,-0.12222 0.2852,-0.0407 0.082,-0.20369 -0.2445,-0.0815 0.163,-0.57034 -0.2037,-0.28517 0.082,-0.20369 0.2852,-0.0815 z m 6.6812,0.0407 0.2037,0.0407 -0.041,0.12221 -0.163,-0.16295 z m 7.8626,0 0.041,0.16295 -0.2852,-0.0815 0.2444,-0.0815 z m -20.0435,0.12222 0.4481,0.77402 -0.3259,0.16296 -0.163,-0.0407 0.041,-0.89624 z m -0.6926,0.0407 0.2037,0.0407 -0.1222,0.44812 -0.2037,-0.0407 0.1222,-0.44813 z m 19.8806,0.16296 -0.082,0.24443 -0.2037,-0.0407 0,-0.0815 0.2852,-0.12222 z m -1.3852,0.12222 0.082,0.12221 0,0.28516 -0.4481,-0.12221 0.163,0 0.2037,-0.28516 z m 3.8702,0.12221 0.2445,0.0815 0,0.28517 0,0.65182 0,0.12222 -0.3259,0.12221 -0.4074,-0.0815 0.2851,-1.14067 0.041,0 c 0.064,-0.008 0.1028,-0.0322 0.163,-0.0407 z m -25.3803,0.12221 0.3667,0.48887 -0.4889,-0.12222 0.1222,-0.36665 z m 35.4021,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -11.4476,0.12221 -0.041,0.2037 -0.7741,0.0815 -0.2037,-0.0815 0,-0.0407 1.0185,-0.16296 z m 6.4367,0 -0.041,0.2037 0.4074,0.0815 0.041,-0.16296 -0.4074,-0.12222 z m -27.1728,0.24444 0,0.20369 -0.4074,0.2037 0.3259,0.3259 -0.1222,0.0815 -0.2852,-0.0815 0.082,-0.3259 -0.1222,-0.0407 0,-0.0407 0.5296,-0.32591 z m 3.1369,0 0.3666,0.0815 -0.2444,0.69255 -0.3259,-0.0815 0.2037,-0.69255 z m 8.3107,0 0.4074,0 0,0.0407 -0.4074,0 0,-0.0407 z m -13.6068,0.0815 0.2037,0.0407 -0.3666,1.34438 c -0.019,-0.29822 -0.091,-0.4868 -0.2445,-0.57035 l 0.041,-0.3259 0.3667,-0.48886 z m 10.307,0.0815 0.2444,0.0815 -0.1222,0.44812 -0.2852,-0.0407 0.163,-0.48886 z m 2.1184,0.0407 0.2444,0.0407 -0.082,0.24443 0.041,0.16295 c -0.01,0.1969 0.032,0.3372 0.1222,0.44813 l 0,0.0815 -0.1629,0 -0.4074,0.44812 -0.2037,0 0.2444,-0.85551 0.163,-0.28517 -0.041,-0.0407 0.081,-0.24444 z m 1.3851,0.0407 0.2444,0.28517 0,0.28517 c -0.1625,-0.11746 -0.2809,-0.25346 -0.4073,-0.36664 l 0.1629,-0.2037 z m -7.6996,0.2037 0.2851,0.0407 -0.1629,0.48886 -0.2444,-0.0815 0.1222,-0.44811 z m 13.9734,0.0815 0.2037,0.0407 0.3259,0.48886 -0.082,0.24443 -0.2037,-0.0815 -0.082,-0.0815 0,-0.16296 -0.2037,0 c 0.013,-0.15533 0.042,-0.32188 0.041,-0.44812 z m -16.54,0.0815 -0.1222,0.36664 -0.041,1.42585 -0.65179,0.81477 0.36659,0.0815 -0.44809,0.12221 -0.082,0.24444 0.2852,0.3259 -0.041,0.20369 -0.57039,0.61108 0.082,0.97773 -0.8555,1.42585 0.2852,0.28516 -0.6111,-0.12222 0.4481,-1.54805 -1.5073,0.8555 0.2852,0.28517 -1.0185,0.44812 c -0.1112,-0.21925 -0.218,-0.41747 -0.3259,-0.65181 -0.01,-0.0107 0,-0.03 0,-0.0407 l 0.1222,-0.77403 0.2852,0.0815 0.6925,0.44812 c -0.2005,-0.6795 -0.5592,-1.09061 -1.1407,-1.22216 l 0.2037,-0.69255 c 0.015,-0.0461 0.027,-0.0769 0.041,-0.12222 l 0.1223,-0.0407 0.041,-0.2037 -0.082,-0.0407 c 0.068,-0.22572 0.1079,-0.44974 0.1629,-0.65181 l 0.163,-0.12222 0.041,-0.20369 -0.041,-0.12222 c 0.059,-0.23982 0.045,-0.4104 0.082,-0.61107 0.2165,-0.0412 0.45,-0.15496 0.6925,-0.36665 -0.087,0.52224 -0.036,0.83278 0.2445,0.89625 l -0.3259,0.20369 -0.041,0.0815 c -0.1806,0.11242 -0.3752,0.24349 -0.5297,0.36665 l -0.041,0.24443 0.4074,0.12221 -0.3259,1.67028 0.57039,0.12222 0.12221,-0.40739 0.44808,-0.2037 -0.2852,-0.28516 -0.28511,-0.0815 0.082,-0.20369 1.5073,0.12222 0.2037,-0.69256 -0.52959,-0.12221 0.1222,-0.40739 0.57039,0.12222 0.3666,-1.14068 0.2444,-0.16296 -0.2037,-0.0407 0.4889,-1.54806 0.3259,-0.12221 z m -6.1108,0.0407 0.2444,0.0815 -0.1222,0.36665 -0.2037,-0.0407 0.082,-0.40739 z m 24.0359,0 0.163,0.24443 0.2037,0.0815 0.3259,-0.12222 -0.041,0.16296 c -0.3962,0.0368 -0.7257,0.11789 -0.9778,0.20369 l -0.041,0 -0.16291,-0.0407 0.28521,-0.44813 0.24441,-0.0815 z m -12.01791,0.0815 0.611,0.12221 -0.12221,0.40739 -0.48879,-0.5296 z m 3.9516,0.12221 0.3259,0.0815 -0.041,0.16296 -0.2851,0.0815 0,-0.0407 0,-0.28518 z m 4.80719,0.0407 0.2037,0.0407 0,0.0407 -0.2037,0 c 0,-0.0303 0,-0.052 0,-0.0815 z m -13.8105,0.0815 0.2852,0.0815 -0.082,0.61108 -0.36659,0.12221 0.041,-0.40738 0.12221,-0.40739 z m 29.5765,0.0407 0.2036,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1223,-0.36665 z m -7.4553,0.32591 0.40741,0.12222 -0.082,0.44811 -0.40741,-0.24442 0.082,-0.32591 z m -26.35799,0.0407 0.4074,0.12222 -0.082,0.20369 -0.40741,-0.12222 0.082,-0.20369 z m 1.6703,0 0.2037,0.24443 -0.041,0.20369 -0.3259,-0.3259 0.1629,-0.12222 z m 18.16949,0.0407 c 0.1619,0.0875 0.2758,0.18386 0.4889,0.28517 -0.019,0.0576 -0.041,0.1396 -0.041,0.20368 l -0.52959,0 c 0.031,-0.17321 0.06,-0.33606 0.082,-0.48885 z m -3.2591,0.20369 0.16301,0 0,0.0407 -0.16301,-0.0407 z m -12.1402,0.20369 -0.082,0.57034 -0.041,0.24443 -0.2851,-0.0815 0.041,-0.61109 0.3666,-0.12221 z m -3.2998,0.0815 0.2444,0.0407 -0.1222,0.48887 -0.2852,-0.0407 0.163,-0.48887 z m 10.7143,0.0407 0.73329,0.16296 0,0.0815 -0.082,0.24443 -0.082,0.12222 0,0.16295 0,0.0407 -0.12221,0.28516 -0.082,0 -0.2037,-0.28516 c 0.017,-0.3233 -0.065,-0.59919 -0.163,-0.81478 z m 20.00279,0 c -0.17819,0.66667 0.096,1.38754 0.6925,2.1184 l 0.24451,-0.12221 0.1629,0.24443 -0.041,0.16296 c -0.2463,-0.0659 -0.4957,0.0124 -0.6925,0.16295 -0.042,-0.0157 -0.074,-0.0298 -0.1222,-0.0407 l -0.3667,0.12222 c 0.1402,-0.44386 0.062,-0.72707 -0.32591,-0.81477 l -0.4074,0.12222 -0.041,0.0815 -0.2852,-0.20369 c 0.2165,-0.51357 0.4453,-0.70986 0.8148,-0.61108 l 0.1222,-0.40738 -0.611,-0.16295 0.8555,-0.65183 z m 2.4036,0.0407 0.32591,0.48887 -0.1222,0.44812 -0.28521,-0.57034 0.082,-0.36665 z m -17.9659,0.0815 0.2852,0.0815 -0.1222,0.40739 -0.2444,-0.32591 0.082,-0.16296 z m -14.2586,0.0407 0.2852,0.0407 -0.082,0.20369 c -0.1131,0.033 -0.21799,0.0873 -0.3259,0.12222 l 0.1222,-0.36665 z m 15.76599,0 0.7333,0 -0.082,0.20369 -0.69259,0.0815 c 0.022,-0.10672 0.02,-0.18393 0.041,-0.28517 z m -3.99239,0.0815 0.041,0 0,0.12221 -0.041,0 0,-0.12221 z m 19.67679,0 0.20371,0.0407 -0.20371,0.81476 -0.2037,-0.0407 0.2037,-0.81476 z m -28.4357,0.16295 0.5704,0.12222 -0.2445,0.69255 -0.3666,-0.61107 0.041,-0.2037 z m 2.15921,0.0407 -0.082,1.14068 0.6111,0.16295 0.082,-1.18141 -0.6111,-0.12222 z m 19.5546,0.12222 0.16301,0.0407 -0.12221,0.44811 -0.2037,-0.0407 0,-0.0407 0.041,0 0.1222,-0.40738 z m -13.4438,0.0407 0.12221,0 0.2852,0.73329 -0.1222,0.16295 -0.163,0 -0.20371,-0.61108 c 0,-0.0113 -0.01,-0.0293 0,-0.0407 l 0,-0.0407 c 0.026,-0.0655 0.056,-0.13405 0.082,-0.20369 z m 6.3145,0 0.4074,0 -0.082,0.48885 -0.3259,0 0,-0.48885 z m 4.03319,0 0.24441,0.0407 -0.041,0.16295 -0.2444,-0.0815 0.041,-0.12221 z m -25.70619,0.0815 0.082,0.0407 -0.041,0.20369 -0.082,-0.0407 0.041,-0.20369 z m 38.17229,0.0815 -0.041,0.16295 0.041,0.0407 0,-0.20369 z m -21.55089,0.0407 0.082,0 0,0.3259 -0.20371,-0.0407 0.12221,-0.28516 z m -10.918,0.24442 c 0.27319,-0.0456 0.6794,-0.0134 1.1814,0.0407 l -0.1222,0.40739 c -0.3876,-0.0877 -0.75,0.1822 -0.937,0.77403 l -0.5704,-0.89386 c 0.053,-0.16645 0.1749,-0.28029 0.44821,-0.32592 z m 14.0956,0.0407 0.3259,0 -0.1222,0.2037 -0.2037,0 0,-0.2037 z m 0.77409,0 0.082,0 0,0.2037 -0.041,0 -0.041,-0.2037 z m 15.15481,0.0407 0.48889,0.12222 -0.2852,1.01846 -0.3666,-0.48886 0.16291,-0.65182 z m -17.9658,0.0407 0.24441,0.0407 -0.28511,0.0815 0.041,-0.12222 z m 10.8365,0 0.2037,0.0407 -0.041,0.12222 -0.24441,0.12221 0,0.0815 -0.041,0 0.041,-0.0815 0.082,-0.28517 z m 9.5737,0.12222 -0.1222,0.0815 -0.082,0.16295 0.20361,0.24443 0,-0.48886 z m -13.8105,0.0815 0.40741,0.0815 -0.32591,0.44813 -0.3259,-0.0815 -0.041,-0.16295 0.28511,-0.28517 z m -10.4292,0.0407 0.1223,0.0815 0,0.24443 -0.16301,-0.0407 c 0.032,-0.10244 0.017,-0.18859 0.041,-0.28518 z m 13.8513,0.0407 0.611,0.5296 0.041,0.0407 -0.1222,0.61108 c -0.1738,-0.13018 -0.3351,-0.28386 -0.48879,-0.36665 -0.043,-0.24559 -0.071,-0.51515 -0.041,-0.81477 z m -8.5552,0.0407 0.36659,0 0,0.24443 -0.36659,0 0,-0.24443 z m -16.4585,0.0815 0.16291,0.0407 -0.12221,0.40738 -0.2851,-0.0815 0.082,-0.28517 0.1629,-0.0815 z m 4.1961,0.20369 0.5296,0.12222 0,1.18141 c -0.3391,-0.0767 -0.521,-0.50904 -0.5296,-1.30363 z m 1.79251,0.16296 -0.24441,0.69255 0.6518,0.16296 0.2037,-0.69257 -0.61109,-0.16294 z m 3.01469,0.24442 c 0.53689,0.1214 0.591,1.23745 0.1629,3.29982 -0.149,0.24871 -0.3558,0.70204 -0.57029,1.14068 l -0.5704,-0.12222 -0.52959,-1.34436 c 0.3877,0.0877 0.5932,-0.0857 0.73329,-0.52961 l 0.082,-1.18141 0.20371,0.24443 0.65189,0.16296 -0.163,-1.67029 z m 9.6958,0.0407 0.1222,0.12222 -0.24441,0.28517 -0.1222,0.44812 -0.1222,0 -0.2852,-0.0815 -0.041,-0.44813 0.082,-0.12221 0.2445,0.24443 0.3666,-0.44813 z m 5.3776,0 c 0,0.30601 -0.1563,0.44815 -0.5704,0.44813 l 0,0.20369 0.40741,0 -0.36659,0.65182 -0.40741,-0.0815 0.082,-0.0815 0,-0.28517 -0.041,-0.0407 0.40741,-0.77404 c 0.1595,-0.009 0.3126,-0.0407 0.4888,-0.0407 z m -13.4439,0.0407 0.2852,0.0407 -0.44809,1.26289 -0.082,0.32591 c 0.198,0.0814 0.36659,0.1667 0.52959,0.24444 l -0.2444,0.44812 -0.1223,-0.2037 -0.3259,0.16296 -0.24441,-0.0407 c 0.067,-0.14188 0.1305,-0.2725 0.2037,-0.48886 l -0.2037,0 0.163,-0.48886 0.041,0.0407 0.2851,0 0.16301,-1.30363 z m -8.1885,0.0815 0.5704,0.12221 -0.163,0.40739 -0.40741,-0.5296 z m 13.1587,0.0815 0.082,0.0815 -0.163,-0.0407 0.082,-0.0407 z m 4.359,0 0.32591,0 c -0.046,0.25427 -0.075,0.44864 -0.082,0.65181 l -0.611,0 0.082,-0.57034 0.2851,-0.0815 z m -3.13689,0.0815 0.082,0.48887 c -0.2042,-0.10677 -0.34879,-0.235 -0.44809,-0.40739 l 0.3667,-0.0815 z m -1.75171,0.0815 -0.1222,0.48886 -0.163,0 0,-0.40738 0.2852,-0.0815 z m 18.00661,0.0407 0.2036,0.0407 -0.1629,0.65181 -0.2037,-0.0815 0.163,-0.61107 z m 0.6518,0 0.48879,0.12222 -0.40729,1.46658 -0.16301,-0.0407 c -0.083,-0.0188 -0.171,0.0209 -0.2444,0.0407 l 0,-0.36664 0.32591,-1.22216 z m -21.22501,0.0407 0.1222,0 0,0.0407 -0.1222,-0.0407 z m 3.5036,0.12222 c 0.081,0.0361 0.13431,0.0796 0.20371,0.12221 l -0.24451,0.0407 0.041,-0.16295 z m -12.181,0.0815 0.2852,0.0407 -0.2852,0.89625 -0.28511,-0.0407 0.28511,-0.89625 z m 1.7926,0.16296 -0.1223,0.44812 0.6111,0.12221 -0.4888,-0.57033 z m 19.5954,0 c 0.045,0.041 0.155,0.11944 0.20361,0.16294 l -0.082,0.52961 -0.8962,2.85169 -0.5704,0.81478 0.36671,1.0592 -0.6518,-0.16296 -0.36671,2.07766 -0.52959,-0.12221 0,-0.97772 0.32591,-0.12222 0.082,-0.2037 0.163,-1.46659 0.48889,-0.57033 -0.1223,-0.12222 c 0.028,-0.0546 0.041,-0.12719 0.041,-0.20369 l 0.2037,-0.12222 -0.40741,-0.57033 0.36671,-0.12222 0.2444,0.0407 0.082,-1.14068 0.3667,-1.14067 0.5296,0.12221 0.1629,-0.61107 z m 1.2629,0.0815 0.1222,0.16295 -0.163,-0.0407 0.041,-0.12221 z m 1.8332,0.12221 0.082,1.62955 0.48889,0.12221 0.20371,-0.20369 -0.2445,0.81477 c -0.1147,-0.18977 -0.1569,-0.28133 -0.28511,-0.48886 l -0.2037,0.0815 c -0.022,-0.0177 -0.056,-0.0241 -0.082,-0.0407 l -0.4074,-0.65182 0.4481,-1.2629 z m 0.5296,0 0.3667,0.0815 0,0.0815 -0.2445,0.36665 -0.24441,-0.0815 0.12221,-0.44813 z m 3.78869,0.16296 0.2037,0.0407 -0.1222,0.44812 -0.2037,-0.0815 0.1222,-0.40739 z m 1.7925,0.24443 0.20371,0.0815 0,1.0592 0,0.0407 c -0.05,0.0364 -0.11671,0.0642 -0.16291,0.12222 l -0.3667,-0.0815 0.3259,-1.22216 z m -32.1022,0.0407 0.2444,0.0815 -0.9777,3.09612 -0.2444,-0.0407 0.9777,-3.13686 z m 29.5764,0.16296 0.082,0.0407 -0.1629,0.61108 -0.2037,-0.0407 0.1222,-0.44812 0.1629,-0.16295 z m -14.0141,0.16295 0.20361,0 0,0.48886 -0.20361,0 0,-0.48886 z m 11.692,0.0815 0.20371,0.0815 0.041,0.24443 -0.2852,-0.20369 0.041,-0.12221 z m -24.28039,0.0815 -0.16291,0.44812 0.6111,0.16296 0.1629,-0.48887 -0.61109,-0.12221 z m 27.1321,0.0407 0.2037,0.0407 0.041,0.69257 -0.40741,-0.12222 0.163,-0.61108 z m -29.0468,0.0407 0.28521,0.0407 -0.20371,0.65183 -0.2444,-0.0815 0.1629,-0.61109 z m 31.5726,0.2037 0.40741,0.12222 -0.082,1.0592 -0.082,0.32591 -0.24441,-0.0815 0.082,-1.14068 c -0.055,-0.0125 -0.1121,-0.005 -0.163,0 l 0.082,-0.28517 z m -19.5546,0.24443 0.041,0 0,0.44813 -0.2037,0 0.1629,-0.44813 z m -5.5405,0.0407 0.6926,0.16296 -0.5704,1.18141 -0.3259,0.44812 -0.082,0 0.2037,-0.61107 0,-1.0592 c 0.035,-0.0284 0.048,-0.0738 0.081,-0.12222 z m 5.9479,0.2037 0.40741,0 0,0.48885 0.2444,0 0.041,-0.0407 -0.041,0.28517 -0.3259,0.0815 -0.041,-0.12221 0.041,-0.2037 -0.36671,-0.0815 -0.1629,0.0407 c 0.1408,-0.12156 0.2037,-0.25687 0.2037,-0.44811 z m 13.8919,0 0.2445,0.0407 0.1222,0.73329 -0.082,0.24444 -0.4074,-0.61109 0.1222,-0.40737 z m -11.81421,0.20369 0.082,0 -0.2037,0.89624 -0.082,0.0407 -0.2037,-0.20369 c -0.1036,0 -0.1645,0.009 -0.2445,0.0407 l 0.2037,-0.65182 0.4481,-0.12221 z m 0.774,0 0.4889,0 0.1629,0.0407 -0.2444,0.77403 -0.5296,0.32591 -0.2445,0 0.082,-0.2037 0.163,0 0,-0.20369 0.2852,-0.0815 -0.2852,-0.28517 0.1222,-0.36664 z m 2.85171,0 0.6518,0 -0.082,0.20368 -0.611,-0.1222 0.041,-0.0815 z m -22.5286,0.16295 0.6518,0.16295 -0.4888,0.61108 -0.3667,-0.0815 0.2037,-0.69256 z m 14.9512,0.12221 0.2037,0 0.3666,0.0815 -0.40741,0.20369 -0.041,0.2037 0.041,0.12221 -0.1629,0.0407 -0.2037,0 0.2037,-0.65182 z m 20.0028,0.0407 0.2037,0.0407 -0.041,0.20369 -0.2037,-0.0407 0.041,-0.20369 z m -18.82141,0.16296 0.24441,0.0407 -0.041,0.2037 -0.2851,0.0407 0.082,-0.28517 z m 6.19231,0 0.2852,0.0407 -0.041,0.0815 -0.2444,-0.0815 0,-0.0407 z m 6.1516,0.20369 0.6518,0.12222 0.2852,0.8555 c 0.027,0.314 0.036,0.61617 -0.041,0.93699 l -0.20371,-0.0815 0.16291,-0.44812 -0.5703,-0.12221 -0.041,0.20369 0.32591,0.81477 -0.32591,0.12221 c -0.1051,0.33293 -0.023,0.6072 0.28521,0.77403 -0.041,0.10991 -0.074,0.22 -0.12221,0.32591 l -0.2445,0.0815 0.12221,-0.40739 -0.5703,-0.12221 -0.24441,1.75176 c -0.1708,0.17431 -0.368,0.3712 -0.57039,0.52959 l 0.2037,-0.28517 c 0.09,-0.61375 -0.12649,-0.99033 -0.61109,-1.09994 l 0.1222,-0.40738 0.61109,0.12222 0.12221,-0.28517 -0.32591,-0.28518 0.44821,-0.12221 0,-1.18142 0.52959,-1.79249 z m -27.3765,0.0407 0.81471,0.40739 -0.32591,1.09994 -0.28511,-0.0815 -0.3259,-1.01846 0.1222,-0.40739 z m 2.485,0.0407 0.5704,0.12221 -0.081,0.2037 -0.5296,-0.12222 0.041,-0.20369 z m 32.02081,0.12221 0.2852,0.0407 -0.2037,0.69255 -0.28521,-0.0407 0.20371,-0.69256 z m -23.3026,0.0407 0.2037,0 0,0.2037 -0.2445,-0.0407 0.041,-0.16296 z m 10.1439,0 0,0.0815 -0.041,0 0.041,-0.0815 z m 11.8143,0.28517 -0.36659,1.34437 -0.041,0 0.4073,-1.34437 z m -11.48839,0.0815 0.2445,0.0815 -0.082,0.2037 -0.2852,0.12221 0.1222,-0.40739 z m 10.307,0 0.041,0 c 0.027,0.19876 0.01,0.41807 -0.041,0.65183 l -0.163,-0.0407 0.163,-0.61109 z m 1.5888,0 0.1222,0.0407 0,0.2037 -0.1629,-0.0407 0.041,-0.2037 z m -16.33631,0.12222 0.163,0 -0.4482,0.44813 -0.2037,0 0.48889,-0.44813 z m 3.1369,0 0.2852,0 -0.082,0.44813 -0.3259,0 0.1222,-0.44813 z m -22.4471,0.20369 0.082,0.12222 -0.041,0.0815 c -0.011,-0.0687 -0.041,-0.1361 -0.041,-0.2037 z m 20.1657,0 0.5296,0 0.082,0.0815 -0.082,0.32591 -0.6111,-0.12221 0.081,-0.28518 z m -18.90279,0.0815 0.2037,0.0407 0,0.24443 c -0.066,-0.0966 -0.13829,-0.18401 -0.2037,-0.28517 z m 10.71429,0.2037 -0.082,0.28517 -0.041,0.0815 -0.041,0.12221 -0.1629,-0.20368 0.3259,-0.28517 z m 19.7176,0 0.2037,0.0407 -0.082,0.16295 c -0.028,-0.0538 -0.092,-0.14667 -0.1222,-0.20369 z m -4.1553,0.0407 0.611,0.12221 -0.082,0.24442 -0.611,-0.16294 0.082,-0.20369 z m 7.94399,0 0.163,0.0407 -0.2852,0.97773 -0.1222,-0.0407 0.2444,-0.97772 z m -29.4542,0.0815 1.22221,0.0815 -0.20371,0.61107 -1.26289,0 0.2444,-0.69255 z m 10.9181,0.0407 0.6518,0 0,0.20369 -0.1222,0 -0.6111,-0.16295 c 0.029,-0.0137 0.051,-0.0271 0.081,-0.0407 z m 14.2993,0.0815 0.28521,0.40738 -0.28521,0.44813 -0.2444,-0.0407 0.2444,-0.81477 z m 1.14071,0.3259 0.1222,0.61108 -0.28521,-0.0815 0.16301,-0.52961 z m 4.15539,0.0407 0.12221,0 c -0.064,0.20395 -0.057,0.39208 0,0.5296 l -0.041,0 -0.1222,0.40738 0.041,0.89626 -0.4074,0.48885 -0.20371,-0.0407 0.32591,-1.18142 -0.44809,-0.12222 0.2444,-0.81477 0.4074,0.12222 0.082,-0.28517 z m -17.2326,0.0407 0.3667,0 0,0.28517 -0.2445,0.0815 -0.1222,-0.0407 0,-0.32591 z m 0.774,0 0.4074,0 -0.1629,0.57034 -0.2445,-0.0407 -0.082,-0.0815 0.082,0 0,-0.44813 z m 2.037,0 0.40741,0 -0.1222,0.69256 c -0.146,0.15266 -0.3488,0.24964 -0.5704,0.3259 l -0.61109,-0.44812 c 0.097,0.029 0.20249,0.0644 0.3259,0.0815 0.4141,0 0.5704,-0.19281 0.5704,-0.65182 z m -22.44709,0.0407 c 0.01,0.0179 0.071,0.0223 0.082,0.0407 l -0.082,0 0,-0.0407 z m 2.7702,0.0407 0.8148,0.20369 -0.082,0.20369 -0.8148,0.0815 c -0.02,-0.0217 -0.021,-0.0594 -0.041,-0.0815 l 0.1222,-0.40738 z m 21.42871,0 0.2851,0.16295 -0.082,0.2037 -0.2851,-0.0407 0.082,-0.32591 z m -2.3222,0.0815 0.28521,0.0815 -0.28521,0 0,-0.0815 z m -14.2993,0.36665 0.48889,0.5296 -0.2037,0.65182 -0.041,0 -0.2445,-0.32591 -0.52959,-0.12222 c -0.048,0.151 -0.1391,0.2794 -0.24441,0.36665 l -0.8555,-0.24443 c -0.047,-0.23181 -0.22209,-0.40088 -0.61109,-0.48887 l 0.041,-0.20368 0.5704,0.12221 0.2036,0.24443 c 0.1053,-0.33289 0.569,-0.44605 1.4259,-0.5296 z m 3.1776,0.3259 0.3667,0.44813 -0.65179,-0.12221 0.2851,-0.32592 z m 21.67309,0 0.12221,0.2037 c -0.02,0.075 -0.087,0.16363 -0.12221,0.24443 l -0.1222,-0.0407 0.1222,-0.40739 z m -1.34439,0.12222 0.20371,0.36665 -0.041,0.2037 -0.2444,-0.36665 c 0.023,-0.0703 0.061,-0.13195 0.082,-0.2037 z m -25.9099,0.40739 0.24441,0.0407 -0.1222,0.40739 -0.24441,-0.0407 0.1222,-0.40739 z m -1.5073,0.0815 0.20371,0.0407 -0.041,0.12221 c -0.061,-0.0422 -0.10221,-0.11766 -0.163,-0.16295 z m -3.91099,0.0815 c 0.1984,0.0449 0.3656,0.10692 0.5296,0.12221 l 0.48889,0.61107 0,-0.48885 -0.1222,-0.12222 c 0.17359,-0.0109 0.33159,-0.0657 0.44809,-0.12221 0.1559,0.20013 0.3052,0.42705 0.48889,0.65181 l -0.3259,0.44812 -0.1222,-0.12221 -0.082,-0.16296 -0.28521,-0.0407 -0.65179,0.28518 0.041,0.61107 c -0.1697,-0.1506 -0.3284,-0.32459 -0.48889,-0.48886 l 0.082,-0.20369 -0.3666,-0.0815 c -0.1552,-0.17217 -0.30259,-0.34479 -0.4482,-0.52961 l 0.6518,0.12222 0.163,-0.48885 z m 11.7328,0.24443 0.4482,0 0,0.48885 -0.4482,0 0,-0.48885 z m 11.6921,0 0.1629,0 0,0.1222 -0.1629,-0.1222 z m -4.44051,0.0407 0.16291,0.28516 -0.041,0.16295 -0.97771,0 -0.2852,0 0,-0.0407 c 0.097,0.0219 0.1955,0.0613 0.2852,0.0407 0.1794,-0.0411 0.3596,-0.19639 0.4888,-0.40737 l 0.3667,-0.0407 z m -0.73329,0.0407 0,0.0407 -0.5296,0 0.5296,-0.0407 z m 2.19989,0.0407 c 0.1,0.0769 0.15689,0.22679 0.1629,0.36665 l -0.69259,0 0.163,-0.28517 0.3667,-0.0815 z m 17.11031,0.0407 0.1629,0.0407 -0.041,0.16296 -0.1629,-0.0815 0.041,-0.12222 z m -21.14351,0.0407 0.12221,0 c 0.1262,0.0632 0.21979,0.15471 0.2445,0.28517 l -0.36671,0 0,-0.28517 z m 11.6921,0.44813 0.5296,0.12222 -0.082,0.24443 -0.5296,-0.12222 0.082,-0.24443 z m -13.0365,0.0815 0.163,0.12221 -0.082,0.2037 -0.082,-0.0407 0,-0.28517 z m -4.1146,0.0815 0.2444,0.0407 0.1222,0.0815 0.16301,0 -0.082,0.24444 -0.3666,0.20368 -0.1223,0.0407 0,-0.0815 0.1223,0.0407 0.041,-0.20368 -0.1223,-0.28518 0,-0.0815 z m 25.4211,0.0407 0.1222,0.44812 -0.1222,0.28517 0,-0.73329 z m -16.1734,0.16296 -0.041,0.20368 -0.041,0.48887 -0.937,-0.12222 -0.081,-0.0815 0.77409,-0.36664 -0.3667,-0.0815 0.6926,-0.0407 z m -3.50351,0.0407 -0.041,0.12222 -0.28521,-0.0815 0.32591,-0.0407 z m 4.7664,0 0.44821,0.0815 0,0.0407 0,0.20368 c -0.19051,-3e-5 -0.299,0.0479 -0.40741,0.12222 l -0.041,-0.44812 z m -2.5665,0.0407 -0.1222,0.44812 -0.6111,-0.0815 -0.2445,-0.24444 -0.082,0.2037 -0.28511,-0.0407 0.082,-0.24442 0.082,0 0.2037,0.0815 -0.041,-0.0815 0.2851,0 0.7333,-0.0407 z m 3.78869,0 0.12221,0.0407 -0.12221,0 0,-0.0407 z m -15.2771,0.0407 0.163,0.24442 0.28511,0 0.163,-0.12222 0.2852,0.28518 -0.3259,0.36664 c -0.7619,0.018 -1.1994,0.12476 -1.2629,0.32592 l -0.082,0.20368 0.28511,0.0815 0.5296,0 -0.24441,0.28517 c -0.3067,1e-5 -0.7246,-0.15749 -1.1814,-0.36665 l 0.1222,-0.3259 -0.36671,-0.0815 -0.3259,0.16296 c -0.3253,-0.18391 -0.6735,-0.42525 -1.0592,-0.69256 0.52999,0.11988 0.94079,0.0209 1.2222,-0.28518 0.452,0.0971 0.8964,0.16296 1.3851,0.16296 l 0.082,0 0.163,0.0407 0.041,-0.16296 0.12221,-0.1222 z m 1.91471,0.0815 c 0.012,0.27819 0.1751,0.47169 0.61109,0.57035 l -0.041,0.12221 -0.16291,0.0815 c -0.4016,-0.0334 -0.77869,-0.0703 -1.1,-0.0815 0.1876,-0.17417 0.4654,-0.46551 0.6926,-0.69256 z m 25.17669,0 0.12221,0.0407 -0.24451,1.01847 -0.1222,-0.0407 0.2445,-1.01848 z m -10.9588,0.0815 0.24441,0.0815 -0.082,0.28517 -0.16291,0 0,-0.36665 z m -20.81759,0.12222 c 0.2965,0.34462 0.63239,0.71226 0.9778,1.09994 l -0.7333,-0.16296 c -0.294,-0.25078 -0.5828,-0.52524 -0.8555,-0.81476 l 0.611,-0.12222 z m -1.05921,0.24443 0.44821,0.73329 -0.32591,0 c -0.2314,-0.13531 -0.4738,-0.24992 -0.69259,-0.40738 0.047,-0.0675 0.091,-0.14685 0.1222,-0.24443 l 0.44809,-0.0815 z m 23.2212,0.16296 0.5703,0.12221 0,1.18142 -0.4481,0.12222 -0.5296,-0.12222 0.40741,-1.30363 z m 11.2847,0.12221 -0.2037,0.40738 0.082,-0.3259 0.1222,-0.0815 z m -16.2956,0.12222 0.2444,0 0,0.0815 -0.2444,-0.0407 0,-0.0407 z m -19.67691,0.12222 c 0.029,0.006 0.054,-0.005 0.082,0 l 0.082,0.0815 -0.36659,0 0.2037,-0.0815 z m 29.1691,0.0407 -0.041,0.36664 -0.2852,-0.0815 c 0.1195,-0.0874 0.2148,-0.19178 0.3259,-0.28516 z m 3.8294,0 0,0.0815 -0.041,0 0.041,-0.0815 z m -0.9777,0.0407 0.2037,0.0815 c -0.072,0.0648 -0.1696,0.10081 -0.2445,0.16296 -0.1919,0.15941 -0.368,0.33853 -0.5703,0.48886 -0.078,-0.0803 -0.1398,-0.20168 -0.2037,-0.32591 0.1573,-0.0786 0.2843,-0.16145 0.4481,-0.24443 l 0.3259,0.0815 0.041,-0.2037 c 0.01,-0.003 -0.01,-0.0377 0,-0.0407 z m -23.5471,0.20369 -1.0999,0.5296 -0.163,0 0,-0.20369 c 0.1087,10e-6 0.2966,-0.11103 0.5296,-0.28517 l 0.7333,-0.0407 z m -4.9294,0.12222 c 0.1297,0.14533 0.2302,0.25608 0.3667,0.40738 l 0,0.2037 c -0.065,-0.0425 -0.139,-0.0782 -0.2037,-0.12222 l 0.041,-0.0815 -0.163,-0.0407 c -0.08,-0.0559 -0.166,-0.10467 -0.2444,-0.16296 l 0.1629,-0.0407 0.041,-0.16295 z m 10.0218,0.0815 0.3666,0.24444 -0.082,0.0815 -0.2037,0 c 0,-0.12071 -0.037,-0.22822 -0.082,-0.32591 z m -2.037,0.32591 0.6519,0 0,0.2037 -0.6519,0 0,-0.2037 z m 6.6405,0 0.4074,0 0,0.0815 -0.2445,0.12222 -0.1629,0 0,-0.2037 z m -3.0962,0.12222 0.4074,0.0815 -0.4074,0 0,-0.0815 z m 5.8257,0 0.2444,0.0407 0.2444,0.28516 0.082,0 0,0.40739 c -0.3615,0.0312 -0.7579,0.0611 -1.1406,0.0815 l 0.32591,-0.48887 c 0.079,-0.004 0.1557,0 0.2444,0 l 0,-0.3259 z m -6.4775,0.3259 0.6518,0 0,0.48887 -1.0185,0 0.3667,-0.48887 z m 8.1885,0.0407 0.2852,0.0815 -0.041,0.12222 c -0.1063,0.0146 -0.2175,0.0272 -0.3259,0.0407 l 0.082,-0.24443 z m 9.4107,0.0407 c -0.02,0.28762 -0.042,0.56161 0.041,0.77404 l -0.163,0.0815 -0.1222,0.40737 -0.3259,-0.44811 0.5703,-0.81478 z m -12.0587,0.0407 c 0.01,-0.004 0.03,0.004 0.041,0 l 0.041,0.0407 -0.082,0.24443 -0.2445,-0.0407 c 0.043,-0.0934 0.1038,-0.18419 0.2445,-0.24443 z m -8.6367,0.16295 0.6519,0 0,0.2037 -0.6519,0.20369 0,-0.40739 z m 1.0185,0 0.4889,0 0,0.2037 -0.4889,0 0,-0.2037 z m 3.585,0 0.3667,0 -0.3667,0.40739 -0.4888,0 0.4888,-0.40739 z m -15.1548,0.2037 0.041,0 0,0.20369 -0.4482,0 0,-0.0407 0.4074,-0.16295 z m 3.3406,0 0.611,0 0,0.20369 -0.611,0 0,-0.20369 z m 4.9701,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 3.9109,0 0.6519,0 0,0.20369 -0.6519,0 0,-0.20369 z m 18.0474,0.0407 0.082,0 0,0.0407 -0.082,-0.0407 z m -2.7295,0.0815 0.041,0 -0.163,0.48886 -0.5296,-0.12221 0.041,-0.0815 c 0.17551,-0.0707 0.415,-0.20083 0.6111,-0.28518 z m 5.296,0 c 0.072,0.0901 0.1611,0.14842 0.2444,0.24444 l 0,0.0407 -0.4074,-0.0815 c -0.029,-0.0236 -0.055,-0.0579 -0.082,-0.0815 l 0.2445,-0.12222 z m -32.6318,0.28518 0.6518,0 0,0.24442 -0.6518,0 0,-0.24442 z m 2.9332,0 0.3666,0 -0.3666,0.52959 0,-0.52959 z m -3.5443,0.24442 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 9.3292,0 0.6111,0 1.0184,0.28517 1.2222,-0.28517 1.30371,0 0,0.48887 -5.1739,0 0,-0.2037 1.0185,-0.28517 z m 4.522,0 4.60351,0 -0.4481,0.48887 -0.2037,-0.2037 -1.0185,0.2037 -2.4851,0 -0.4481,-0.48887 z m 5.459,0 0.5704,0 0,0.28517 -0.5704,0 0,-0.28517 z m 15.3178,0 c -0.021,0.0666 -0.029,0.1361 -0.041,0.20369 l -0.041,0 0.041,-0.16295 0.041,-0.0407 z m -30.5134,0.28517 1.0185,0 0,0.2037 -1.0185,0 0,-0.2037 z"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.49142857;fill:#ef2929;fill-opacity:1;stroke:none;display:inline;filter:url(#filter3558);font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+       inkscape:export-filename="Z:\private\général\Charte graphique\OD\OD6.0\splashscreen\png\splashscreen_OD6.0.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"
+       inkscape:connector-curvature="0" />
+    <path
+       transform="matrix(1.0736935,0,0,1.073713,-1.6431211,-956.29964)"
+       id="path3947"
+       d="m 604.33044,486.94949 -2.5666,0.48887 0,1.34437 0.5704,-0.61108 0.6518,0 0,0.20369 -1.2222,0.40739 0,2.07766 0.2037,0 -0.2037,0.28516 0,0.85552 c -0.1242,0.11339 -0.1888,0.18925 -0.2852,0.28516 l 0,0.48887 c 0.096,-0.0462 0.1848,-0.0603 0.2852,-0.12222 l 0,0.7333 -0.2852,0.24443 0,8.55509 0.6111,2.24062 0.082,0.57034 c -0.028,0.0807 -0.061,0.16776 -0.082,0.24442 0.066,0.0489 0.108,0.10818 0.163,0.16296 l 0,0.16295 -0.2445,-0.0815 c -0.024,-0.006 -0.057,-0.001 -0.082,0 0.036,-0.12665 0.062,-0.25693 0.1223,-0.36665 l -0.163,-0.61108 -0.4074,0.0815 0,3.87016 c 0.014,-0.002 0.027,0.004 0.041,0 l 0.2037,-0.0407 0.041,-0.0407 0,0.8555 c -0.09,0.26172 -0.1903,0.50209 -0.2852,0.69255 l 0,0.97772 0.2445,0.0815 -0.041,0.16296 -0.2037,-0.0815 0,11.12162 0.1629,-1.18142 0.1222,0.0407 0,1.01846 0.2037,0 0.4889,0.5296 c -0.1,0.0821 -0.1897,0.19341 -0.2444,0.36665 l -0.2037,-0.24443 -0.082,0 -0.163,-0.65182 0,0.57034 -0.041,0 -0.2444,0.12221 0,0.89625 0.2852,-0.12221 0,0.3259 -0.1223,-0.0407 -0.1222,0.40738 0.2445,0.0407 0.3666,-0.12221 0,0.24443 -0.3666,0 0,0.85551 -0.2852,0.0815 0,0.2037 0.2852,-0.0815 0,0.0815 c 0.414,4e-5 0.5703,-0.14215 0.5703,-0.44813 l -0.2037,-0.20369 0.5296,0 -0.1222,0.0815 -0.082,0.24444 0.1222,0 0,0.0815 0.2037,0.24444 0,0.28517 -1.0185,0 0,0.24442 3.3814,0 c 0.2346,-0.63832 0.5269,-0.97772 0.937,-0.97772 l 0,-0.40738 -0.5704,0 -0.2852,0.20369 -0.1629,0 -0.2444,-0.32591 0.082,-0.24443 -0.2445,0.0815 -0.6518,0 -0.3259,0.12222 0,-0.0407 -0.3667,-0.0815 -0.2851,0.20369 -0.4482,-0.20369 0,-0.24443 1.0593,0 0,-0.2037 -0.2037,-0.20369 0,-0.24443 0.4888,0.16295 -0.082,0.20369 0.5704,0.12222 0.2851,-0.0407 0.6111,0.2037 -0.082,0.24443 0.2852,0.0815 0.5703,-0.0407 0.6519,0.24443 0,0.20369 c -0.3219,6e-5 -0.8163,0.38651 -1.3852,1.18141 l 18.577,0 c 0.082,-0.0802 0.1634,-0.16302 0.2444,-0.24442 0.2121,0.0756 0.504,0.16493 0.7333,0.24442 l 1.4666,0 -0.2444,-0.40738 1.1407,0.0815 0.2037,0.0815 -0.041,0.16295 -0.5297,0.0815 0.7333,0 7.8626,0 0.041,-0.16294 c 0.061,0.0307 0.1356,0.0557 0.2037,0.0815 l -0.041,0.0815 1.3037,0 0.3666,-0.24442 -0.041,0.24442 2.5666,0 0.082,-0.24442 0.2444,0.0407 -0.082,0.20368 0.4481,0 0,-1.34436 -0.082,0.24442 -0.2444,-0.0407 0.1222,-0.40737 0.2037,0.0815 0,-9.04395 -0.1222,-0.0407 0.1222,-0.57034 0,-1.71102 -0.2851,0.0815 -0.041,0.20369 0.2036,0.32591 -0.611,1.09994 -0.2037,-0.0407 0.937,-3.50351 0,-1.5888 -0.2852,0.12221 -0.041,1.0592 -0.6518,2.36284 -0.5704,0.28517 1.1815,-4.39976 0.3666,0.57034 0,-1.34437 -0.163,-0.0407 0.163,-0.57034 0,-1.83323 c -0.2597,-0.39208 -0.5239,-0.78277 -0.8148,-1.14068 l 0.8148,0.0407 0,-1.22215 -0.2037,0.8555 -0.2444,-0.0815 0.3259,-1.18141 0.1222,0.0407 0,-3.54426 -0.082,0.28518 -0.4481,-0.12222 0.5296,-2.03692 0,-7.98475 -0.041,0.12221 -0.8148,0 -0.6518,-0.36664 -0.8148,0 0.041,-0.2037 -0.3259,-0.5296 0.082,-0.28517 0.2037,0.0407 0.8555,0.77403 0.2852,-0.16295 0.082,-0.28518 c -0.3163,-0.38755 -1.755,-1.0888 -4.3183,-2.07766 l -1.1,0 2.811,1.18142 -0.1222,0.40739 0.2851,-0.16296 0.6926,0.2037 -0.4889,0.81476 -0.2037,-0.0407 -0.1629,-0.28517 -0.2444,-0.0407 -0.3667,0.12222 0.1222,-0.40738 0.3667,-0.16295 0,-0.0407 -0.2445,-0.28517 -0.2444,-0.0815 -0.2852,0.20369 -0.2444,-0.0407 -0.6926,-0.48886 -0.5703,0.36665 -1.5481,-1.2629 -1.8332,0 -0.082,0.32591 -0.2445,-0.0407 0.082,-0.28517 -3.2998,0 1.0184,1.54807 0.2037,0.0407 -0.1629,0.69255 -0.4481,-0.12222 -0.082,0.2037 c 0.3276,0.0876 0.5624,0.55849 0.6925,1.38511 l -0.1629,0.69255 -0.2445,-0.0815 0.1223,-0.44812 -0.7333,-0.20369 -0.163,0.44813 0.4889,0.1222 -0.2445,0.89626 -0.4888,-0.12222 -0.2037,0.93699 0.4481,0.12221 -0.1222,0.40738 -0.4481,-0.12221 -0.1223,0.40738 0.4482,0.12222 -0.163,0.69256 c -0.4096,-0.10952 -0.6971,0.1232 -0.937,0.69255 -0.022,0.0836 -0.038,0.17514 -0.041,0.24443 l -0.2444,-0.28517 -0.2037,0.28517 c -0.01,-0.0894 -0.01,-0.18893 0,-0.28517 l 0.2037,0 0,-0.20369 -0.163,-0.16296 c 0.014,-0.071 0.021,-0.12963 0.041,-0.20369 l 0.5296,0.16295 0.163,-0.65181 -0.4074,-0.61108 0.937,-1.3851 -0.2037,-0.0407 0.2852,-0.16296 0.082,-0.28517 -0.2037,-1.46659 0.6518,-0.24443 -0.2444,-0.0815 0.4481,-0.61108 c 0.1537,-1.06751 -0.199,-1.68476 -1.0592,-1.91471 l 0.2852,-0.16296 0.082,-0.24443 -1.5889,0 0,0.0815 0.6926,0.16295 -0.937,0.73329 c 0.085,-0.31633 0.049,-0.64017 -0.041,-0.97772 l -1.5888,0 -0.2037,0.69255 -0.2444,-0.0407 0.1629,-0.65182 -0.937,0 0.2445,0.48887 -0.082,0.44812 -0.3667,-0.57034 0.082,-0.36665 -0.4481,0 -0.8555,3.09613 c -0.097,-0.0451 -0.1796,-0.0767 -0.2852,-0.12221 l -0.041,0 -0.163,-0.24443 0.2852,-0.12222 0.082,-1.18142 0.3667,-1.42585 -0.4889,0 -0.6111,2.36284 -0.2444,0 0.6111,-2.36284 -2.6073,0 -0.041,0.16296 0.4481,0.12221 -0.2852,1.0592 c -0.9988,-0.37943 -1.8221,-0.65178 -2.4443,-0.65182 -0.1476,0.37417 -0.4355,0.62502 -0.774,0.77404 -0.017,-0.069 -0.022,-0.13369 -0.041,-0.20369 l -0.041,-0.2037 0.5703,-0.0815 0,-0.28517 c 0,-0.20088 -0.2546,-0.36698 -0.774,-0.48885 l -0.041,-0.2037 -0.9778,0 c 10e-4,0.0136 0,0.0271 0,0.0407 l 0,0.24443 c -0.2787,-0.13727 -0.624,-0.21604 -1.0184,-0.28517 l -1.7111,0 0,0.16296 -0.2444,0.0815 -0.082,-0.24443 -0.5296,0 0.041,0.12222 -0.163,0.16295 -0.081,-0.28517 -2.7295,0 -0.2037,0.97772 -0.3259,0 0,-0.48885 c 0.085,-0.17618 0.1553,-0.35747 0.2037,-0.48887 l -2.4036,0 z m 36.2576,12.83263 0,-0.93698 -0.041,0.0407 -0.163,0.61107 0.2037,0.28517 z m -34.3429,-12.75115 -0.2852,0.44813 -0.4888,0.0815 0.082,-0.28517 0,-0.12221 0.6925,-0.12222 z m 13.4846,0.0407 0.4481,0.12221 -0.041,0.24444 -0.4481,-0.12222 0.041,-0.24443 z m -16.2956,0.36665 0,0.48885 -0.4481,0 0.4481,-0.48885 z m 7.8219,0 0.082,0.0407 0.2037,0.89624 c -0.2225,-0.0204 -0.4372,-0.0455 -0.6111,-0.0815 l 0.2037,-0.65182 -0.041,-0.16294 0.1629,-0.0407 z m 1.4666,0 0.4074,0.48885 -0.4074,0 0,-0.48885 z m -2.5666,0.16295 0.082,0.28517 -0.1222,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.1515,0.0407 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 5.2145,0 0.2037,0 0,0.28517 -0.2037,0 0,-0.28517 z m -2.9739,0.28517 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24444 -0.163,0 c 0.038,-0.0692 0.088,-0.17949 0.1223,-0.24444 z m 13.0364,0 0.2037,0.0815 -0.1629,0.65182 -0.3259,-0.57034 0.2851,-0.16296 z m 11.8143,0.0407 0.4481,0.12222 -0.1222,0.48887 -0.4889,-0.12222 0.163,-0.48887 z m -5.8257,0.16296 0.2445,0.0407 -0.163,1.5888 -0.2852,0.16296 -0.1222,0.48886 -0.5296,2.52579 -0.6518,-0.65183 1.1,-2.64799 -0.2445,-0.28518 0.082,-0.20369 0.5704,-1.01846 z m 0.9778,0.0407 0.5703,0.12221 -0.2852,0.16296 -0.082,0.20369 -0.774,3.87016 -0.2852,0.16295 -0.082,1.14068 -0.2037,0.77403 -0.5703,0 0.1629,-0.57034 c 0.245,-0.0956 0.4482,-0.21288 0.4482,-0.36665 l -0.2852,-0.28516 1.3851,-5.21453 z m -17.7214,0.20369 0.2444,0 0.041,0.16296 -0.082,0.0407 -0.1222,0 -0.082,-0.2037 z m 14.5437,0.12222 0.2037,0.0407 -0.082,0.44812 -0.2444,-0.0815 0.1222,-0.40738 z m 12.6291,0.0407 0.2037,0.0815 -0.082,0.40737 -0.2444,-0.0815 0.1222,-0.40738 z m -29.8209,0.0407 0.6519,0 0,0.20369 -0.6519,0 0,-0.20369 z m -2.0776,0.20369 1.0592,0 c -0.029,0.0977 -0.082,0.18868 -0.1222,0.28516 l -0.937,0 0,-0.28516 z m 11.855,0 0,0.5296 -0.4889,0 0.4889,-0.5296 z m 24.3618,0.16295 c -0.074,0.27638 0.1417,0.51307 0.5704,0.65182 l 0,-0.52961 -0.5704,-0.12221 z m -6.0701,0.32591 0.4481,0.12221 -0.3666,1.30364 -0.4481,-0.12222 0,-1.18142 0.3666,-0.12221 z m -17.0696,0.44812 0,0.48886 -0.2037,0 -1.6703,0.24443 c 0.035,-0.18638 0.074,-0.3749 0.082,-0.57033 l 1.7926,-0.16296 z m 0.3667,0 0.6518,0.2037 0,0.28516 -0.8555,0 0.2037,-0.28516 0,-0.2037 z m 1.0185,0 0.041,0 0.2851,0.44812 -0.041,0.0407 -0.2851,0 0,-0.48886 z m 1.8332,0 -0.082,0.32591 -0.2852,0.0407 0.1223,-0.3259 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.2662,0 0.6518,0.36664 -0.082,0.2037 -0.4481,0.8555 c -0.076,0.61312 0.1199,0.99046 0.5296,1.09995 l -0.1222,0.40738 -0.5296,-0.12221 -0.082,0.28517 0.2444,0.28517 -0.3666,0.12222 0.041,1.18141 -0.4889,1.79249 -0.5296,-0.12221 -0.4074,-1.30364 0.1222,-0.48885 0.2444,0.0407 -0.1222,0.48885 0.4482,0.12222 0.041,-0.20369 -0.2852,-0.81477 0.2852,-0.12222 c 0.1185,-0.44345 -0.079,-0.76488 -0.5704,-0.89624 l 0.6518,-0.28518 -0.1222,0.40739 0.4889,0.12222 0.3666,-3.21834 0.041,-0.2037 z m -20.4916,0.12222 0.2444,0.0407 0.1222,0.48886 -0.3259,-0.0815 0,-0.36664 -0.041,-0.0815 z m -7.7404,0.0815 0.4481,0 -0.4481,0.52959 0,-0.52959 z m 1.3036,0 0.8148,0 c -0.013,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2572,0.20541 -0.3429,0.30401 -0.5704,0.48886 l -0.2037,-0.24443 0,-0.28516 z m 1.3037,0 0.3666,0 0.4074,0 0,0.20368 -0.082,-0.0815 -0.4889,0.12221 0,0.24444 -0.082,0.0407 -0.2037,-0.24443 -0.082,0 0.163,-0.28516 z m 1.1406,0 0.6111,0 -0.041,0.28516 -0.5703,0 0,-0.28516 z m 7.2923,0 0.6518,0 -0.082,0.24442 0.1222,0.44813 -0.2851,0.0407 -0.4074,-0.65182 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24442 -0.2037,0.0407 -0.082,-0.28516 z m 21.1435,0 0.8148,0 0.2444,0.0407 -0.082,0.20369 -1.1,0.16296 0.1223,-0.40738 z m -12.9142,0.0815 0.2036,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m 5.2553,0 -0.081,0.20369 0.4888,0.12222 0.041,-0.2037 -0.4481,-0.12221 z m 10.1439,0.36665 0.4889,0.12221 0.4074,0.57035 -0.6518,0.3259 0.2852,0.0815 -0.6111,1.01846 c -0.3277,-0.0876 -0.363,-0.37134 -0.2445,-0.81477 l 0.2852,-0.16296 0.041,-0.20369 0,-0.93698 z m -1.3851,0.28517 0.2445,0.0815 0.041,0.73329 -0.4482,-0.12222 0.163,-0.69255 z m -25.5025,0.0407 0,0.40739 -0.2852,0 -0.082,-0.32591 0.3667,-0.0815 z m 23.9137,0.0407 0.2444,0.0815 -0.1222,0.40738 -0.2037,-0.0407 0.082,-0.44811 z m -24.7285,0.0815 0.082,0.28518 -0.2444,0 0,-0.24444 0.1629,-0.0407 z m -8.2292,0.0407 1.0184,0 c -0.1009,0.0837 -0.1917,0.16588 -0.2851,0.24444 l -0.7333,0 0,-0.24444 z m 2.0776,0 0.4482,0 0,0.24444 -0.6111,0 0.1629,-0.24444 z m 7.8626,0 0,0.24444 -0.2036,0 -0.041,-0.16296 0.2444,-0.0815 z m 3.748,0 0.4074,0 0,0.24444 -0.4074,0 0,-0.24444 z m 1.0592,0 0.8148,0 0,0.24444 -0.8148,0 0,-0.24444 z m 22.3657,0.0407 0.4481,0.12222 0.2852,0.28516 0.082,-0.40738 0.2444,0.0407 -0.1222,0.44812 -0.2037,-0.0815 0.163,0.28517 -0.1223,0.48887 c -0.3277,-0.0875 -0.616,0.14207 -0.774,0.73329 l -0.3666,-0.61107 0.3666,-1.30364 z m -31.0023,0.0407 0.2852,0.20368 -0.2037,0.0815 -0.082,-0.28516 z m -4.7257,0.0815 0.041,0.0815 -0.1222,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.98,0.0407 0.5296,0.16294 -0.041,0.2037 -0.5296,-0.12222 0.041,-0.24442 z m -20.4917,0.0407 0.3667,0 0,0.28516 -0.3667,0 0,-0.28516 z m 3.5443,0 0.2037,0 c 0.2933,0.10003 0.5027,0.2543 0.6518,0.48885 l -0.081,0.12222 c 0.049,0.098 0.1129,0.18841 0.163,0.28517 l -0.3666,0 0,0.24443 0.5296,0.0815 c 0.074,0.13781 0.1679,0.27232 0.2444,0.40739 l -1.7925,0 0,-0.20369 c 0.5521,1e-4 0.8148,-0.22358 0.8148,-0.5296 l -0.3667,-0.40739 0,-0.48885 z m -9.2884,0.0407 0.1222,0.44813 -0.2037,0.0407 -0.082,-0.32591 0.1629,-0.16296 z m -3.5036,0.0815 0.082,0.44813 -0.4481,0.12222 -0.041,-0.16296 0.3259,-0.0407 0,-0.32591 0.082,-0.0407 z m 1.6296,0.0407 c 0.2851,1.0667 0.7124,1.54314 1.3036,1.38511 l 0.082,0.16296 -0.1629,0.24443 -0.2445,-0.12221 c -0.5964,0.73086 -0.8708,1.45176 -0.6925,2.1184 l -0.8555,-0.65182 0.611,-0.16295 -0.1222,-0.40739 c -0.3695,0.0988 -0.5984,-0.0975 -0.8148,-0.61107 l 0.9778,-0.7333 -0.4482,-0.93699 -0.041,-0.16295 0.4074,-0.12222 z m 23.5878,0.24443 0.4481,0.12222 -0.082,0.24443 -0.4481,-0.12221 0.082,-0.24444 z m -14.9512,0.0815 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 4.6035,0 0,0.0815 -0.041,0.16296 -0.2037,-0.0407 0.2445,-0.2037 z m -10.5514,0.0407 c 0.1566,0.12931 0.3292,0.24634 0.5704,0.36665 l 0,-0.16295 0.082,0.36665 0,0.0815 -0.4481,0.12222 -0.2037,-0.77403 z m 23.2212,0.0407 0.4481,0.12222 0,0.97772 -0.2851,0.12222 -0.041,0.20369 -0.163,1.46659 -0.4074,0.57033 0.2037,0.24444 -0.3259,0.20369 0.3666,0.57034 -0.2851,0.12221 -0.2445,-0.0407 -0.041,1.14068 -0.3259,1.14068 -0.4481,-0.16296 -0.2037,0.69256 c 0.013,0.0242 0.029,0.0565 0.041,0.0815 l -0.1222,0.0815 0.1629,0.0407 c 0.083,0.20378 0.1422,0.44083 0.163,0.69256 l -0.041,0.20369 -0.163,-0.24443 -0.2851,-0.0815 -0.041,0.0407 0.2444,-1.54806 0.774,-2.8517 0.4482,-0.81477 -0.2852,-1.0592 0.5296,0.16295 0.3259,-2.07766 z m -28.4357,0.0407 -0.041,0.44813 -0.2852,0.0815 -0.2852,-0.16295 -0.2037,0.0815 0.3667,0.48885 -0.4889,0.61109 -0.3259,-0.48887 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48886 -0.163,0 -0.2037,0.28517 -0.2037,0 0.3667,-0.61108 1.2629,-0.20369 z m 4.8072,0 0.1629,0.65181 -0.2037,0.0407 -0.2037,-0.61107 0.2445,-0.0815 z m -7.0886,0.28517 0.2037,0 0,0.28516 -0.2037,0.24444 -0.2444,0 0,-0.3259 c 0.078,-0.065 0.1633,-0.13004 0.2444,-0.2037 z m 32.5911,0.40738 1.5073,1.34437 -0.1222,0.44813 -0.5296,-0.16296 -0.4889,1.79249 -0.2037,-0.0407 0.4074,-2.48505 -0.2851,0.12222 -0.326,-0.0815 0.041,-0.93699 z m 4.4813,0 0.774,0 -0.1222,0.40739 -0.6926,-0.2037 0.041,-0.20369 z m -27.4173,0.12222 0.041,0 0.2037,0.20369 -0.163,0.0407 -0.082,-0.24443 z m 3.4221,0 0.5703,0 0,0.20369 -0.5703,0 0,-0.20369 z m 5.4997,0 0.041,0 0,0.20369 -0.082,0 0.041,-0.20369 z m 0.5296,0.16295 c -0.014,0.0596 -0.024,0.0991 -0.041,0.16296 l 0.4074,0.12221 c -0.1394,0.12918 -0.3455,0.16299 -0.6518,0.16296 l -0.2037,0 0,-0.20369 0.4889,-0.24444 z m -4.6442,0.0407 0.6518,0.2037 0,0.44812 c -0.414,0 -0.6518,0.18289 -0.6518,0.48886 l -0.163,0 c 0,-0.45891 -0.1313,-0.73324 -0.4074,-0.73329 l 0,-0.20369 0.5704,-0.2037 z m 11.4476,0.0407 0.3259,0.61108 -0.041,0.20369 -0.3259,-0.61108 0.041,-0.20369 z m -18.088,0.0407 0.5703,0.28517 0.6518,2.36283 0,0.0815 -0.3666,-0.5296 -0.2037,0 0.5703,0.8555 0.041,0.65183 0.2852,0.12221 -0.3667,0.57034 -1.1814,-4.39976 z m 15.44,0 0.2444,0.0407 -0.2852,1.09994 -0.2444,-0.0407 0.2852,-1.09994 z m -7.0886,0.12222 0.5704,0.20369 0,0.24443 -0.7741,0 0.2037,-0.24443 0,-0.20369 z m -9.2884,0.20369 0.4888,0.48886 0.041,0.16295 -0.4888,0.12222 -0.163,-0.65181 0.1222,-0.12222 z m 1.9962,0.12222 0.3259,0.3259 0,0.0815 0.082,0.0407 0.2037,0.24444 -0.163,0.16295 0.6518,2.36284 -0.2851,-0.16296 -0.8148,-3.05538 z m -7.8219,0.0815 0.082,0.36664 -0.2037,0.0407 -0.082,-0.36664 0.2037,-0.0407 z m 2.4443,0.20369 -0.082,0.61108 0.082,0.24443 0.2445,0.16296 c -0.776,0.20743 -1.0756,0.74802 -0.937,1.71101 l 0.3666,0.57035 -0.2037,0.0407 0.5704,0.24443 -0.163,1.30363 0.082,0.28517 0.2445,0.12222 -0.2037,0.0407 0.5703,0.85551 c -0.1409,0.11253 -0.2864,0.23951 -0.4481,0.40738 l -0.082,-0.20369 -0.4074,0.12222 -0.082,-0.36665 0.4074,-0.12222 -0.2037,-0.81477 -0.4481,0.12222 -0.2037,-0.81477 0.4073,-0.12221 -0.1222,-0.44813 -0.6518,0.20369 0.082,0.44812 -0.2037,0.0407 -0.1629,-0.61107 c 0.1174,-0.74568 0.3562,-1.1839 0.6518,-1.2629 l -0.082,-0.16295 -0.4074,0.0815 -0.163,-0.61107 0.2037,-0.0407 1.3444,-2.03693 z m 31.3282,0.20369 0.2445,0.0407 0.2444,0.28517 0.2852,-0.12221 0.6925,0.16295 0.4482,2.28136 -0.041,0.20369 0.2851,0.0815 0.2852,-0.12222 0.2444,0.0407 -0.6925,2.648 c -0.6159,-0.3229 -0.8482,-0.90563 -0.6111,-1.79249 l -0.2037,-0.0815 0.2852,-0.12222 0.1222,-0.48885 0.082,-1.18142 -0.5704,-0.12222 -0.6925,2.68874 0.2444,0.28517 -0.3666,0.12222 -0.041,0.20369 0.2037,2.19988 -0.8148,0 c -0.1161,0.56732 -0.1894,1.08428 -0.2445,1.50733 -0.1694,0.10755 -0.2848,0.39716 -0.4073,0.85551 l -0.326,0.12221 -0.4481,-0.12221 -0.1629,-0.93699 0.5703,-0.48886 0,-0.12222 c 0.055,0.0879 0.1486,0.16719 0.2852,0.20369 l 0.2037,0.0407 0.082,-0.20369 0.2444,-1.87397 0.3666,-0.52961 0.7333,-3.62572 0.2445,-0.89625 -0.4481,-0.12222 -0.3667,1.34438 -0.3666,0.12221 0.2444,0.28518 -0.1222,0.48885 -0.5296,-0.16294 0.8147,-3.09614 z m -9.207,0.12222 0.2037,0.0407 -0.2444,0.89624 -0.2852,0.16296 -0.2037,-0.0815 0.5296,-1.01846 z m 6.0701,0 0.2037,0.0407 -0.082,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -24.9729,0.0815 0.2037,0.81476 -0.2037,0.0407 -0.2444,-0.77403 0.2444,-0.0815 z m -6.7219,0.0407 0.041,0 0.1222,0.44812 -0.2037,0.0407 -0.041,-0.12221 c 0.028,-0.10615 0.05,-0.23044 0.082,-0.32592 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.2614,0.0407 0.2444,0.0407 -0.2037,0.69255 -0.2037,-0.0407 0.163,-0.69256 z m -26.5618,0.0407 0.1223,0.44813 -0.326,0.48886 -0.082,-0.36665 0.2852,-0.57034 z m 13.892,0.0815 0,0.0407 -0.3259,0.20369 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1891,-0.0178 0.3782,-0.0562 0.5296,-0.0815 z m -11.7328,0.24443 0.1222,0.12222 -0.2037,0.0815 -0.041,-0.16295 0.1222,-0.0407 z m 27.1321,0.12222 0.774,0.20369 -0.041,0.24443 -0.774,-0.2037 0.041,-0.24442 z m -8.7181,0.0407 0.5703,0.16295 -0.082,0.20369 -0.5296,-0.12222 0.041,-0.24442 z m -15.4808,0.0407 0,0.61108 0.4481,0 c 0,0.33785 0.036,0.62661 0.1222,0.81477 -0.2101,0.0426 -0.4005,0.0946 -0.5703,0.16295 l 0,-0.0407 -0.3667,-0.40738 -0.6518,0.20368 c 0,-0.11014 -0.034,-0.2077 -0.082,-0.28516 l -0.2444,-0.89626 1.3444,-0.16295 z m 2.8925,0 0.2851,0.20369 0.2037,0 1.874,-0.20369 0,0.20369 -0.2852,0.65182 c 0.3993,-0.22118 0.701,-0.47341 0.8148,-0.77403 0.071,0.0934 0.1313,0.19369 0.2037,0.28517 l -0.3666,0.0407 0,0.44812 0.4073,0 0.2445,0.28518 0.1629,-0.24444 c 0.093,0.10679 0.1891,0.22208 0.2852,0.3259 l 0.041,0.16296 -0.2037,-0.20369 -0.2444,0.12221 0.041,0.69256 -0.2444,0.12222 -0.082,0.16295 -0.6519,-0.12221 c -0.065,-0.12871 -0.1069,-0.24434 -0.1222,-0.36665 l 0.3259,0 0.3667,0.0815 0.041,-0.2037 -0.2852,-0.52959 c -0.2712,-0.0725 -0.5058,-0.0647 -0.7333,-0.0815 l -0.2037,-0.2037 -0.082,0.16296 c -0.064,0.002 -0.1436,-0.007 -0.2037,0 l -0.5296,-0.61108 -1.0592,0.20369 -0.774,-0.20369 -0.4482,0.44812 -0.1629,-0.24443 0,-0.20369 c 0.2415,2e-5 0.4326,0.0163 0.6111,0 0.5353,-0.0491 0.774,-0.17787 0.774,-0.40739 z m 16.2955,0 0.2444,0.0815 -0.2444,0.89625 -0.2444,-0.0815 0.2444,-0.89625 z m -19.962,0.40739 0,0.44812 0.4073,0 0,-0.44812 -0.4073,0 z m -1.5481,0.0815 0.2444,0.28518 -0.2037,0.36665 -0.1629,-0.52961 0,-0.0815 0.1222,-0.0407 z m -10.5106,0.12222 0.041,0.32591 -0.163,0.0407 0.1222,-0.36665 z m 21.836,0 0.1629,0 0,0.24443 -0.1629,0 0,-0.24443 z m -16.6622,0.0407 0.5296,0.93698 0.041,0.16296 -0.2037,0.28517 0.774,1.83323 -0.5296,0.32591 -0.2851,-1.50733 -0.1223,-0.44811 -0.2444,-0.12222 -0.1629,-1.42585 0.2037,-0.0407 z m -0.8963,0.0407 1.1407,4.2368 -0.3259,-0.0815 0,-0.0815 -0.2852,-0.16295 -0.6925,-3.46277 -0.041,-0.2037 -0.2852,-0.12221 0.4889,-0.12222 z m 19.8806,0.0815 0.2444,0.0815 -0.1222,0.40738 -0.2037,-0.0407 0.082,-0.44811 z m -7.7811,0.0815 0.6518,0 0,0.2037 c -0.1266,0.0362 -0.2233,0.0983 -0.3259,0.16294 l -0.3259,-0.0815 0,-0.28518 z m -9.207,0.12222 0.1222,0.36664 -0.2037,0.0407 -0.1222,-0.36664 0.2037,-0.0407 z m 15.1141,0.0407 0,0.12222 -0.082,0 0.082,-0.12222 z m 9.981,0.24442 0.2445,0.0407 -0.163,0.48887 -0.2037,-0.0407 0.1222,-0.48887 z m 5.2553,0 0.2445,0.0407 -0.163,0.48887 -0.2037,-0.0407 0.1222,-0.48887 z m -22.8137,0.0815 0.3666,0 c -0.096,0.17535 -0.2074,0.27297 -0.3666,0.28517 l 0,-0.28517 z m 7.1293,0 0.1629,0 0,0.2037 -0.1629,0 0,-0.2037 z m -1.5074,0.0407 0.2852,0.0815 -0.2852,0 0,-0.0815 z m 4.7258,0.0815 0.3259,0.61108 -0.1222,0.40738 -0.4482,-0.12222 0.2445,-0.89624 z m 1.0184,0.28517 0.2037,0.0407 c -0.079,0.29569 0.1603,0.56116 0.6518,0.69255 l -0.2444,0.89625 c -0.1373,-0.16028 -0.2848,-0.28993 -0.4481,-0.40738 l 0.041,-0.2037 -0.4481,-0.12222 0.2444,-0.89624 z m -5.8664,0.0407 0.1222,0 0.082,0.0407 -0.1222,0.44812 -0.1629,-0.0815 0.082,-0.40739 z m 3.3814,0 0.5703,0 -0.082,0.20369 -0.2444,0 c -0.089,-0.0653 -0.1748,-0.12662 -0.2445,-0.20369 z m -7.4145,0.12222 c -0.014,0.0405 -0.029,0.0791 -0.041,0.12221 l -0.1222,-0.0407 0.1629,-0.0815 z m -15.603,0.16295 0.082,0.16296 0.3259,2.93316 0.4074,-0.12221 -0.1222,-0.36665 0.6111,0.24443 c -0.4434,0.11852 -0.6365,0.41477 -0.5296,0.81478 l 0.2444,0.12221 -0.2444,0.73329 0.041,0.2037 0.4481,-0.12222 -0.1222,-0.44813 0.2037,-0.0407 0.1222,0.44812 -0.3667,1.14068 -0.3666,-0.0815 c -0.056,0.0711 -0.069,0.13432 -0.1222,0.2037 l -0.4482,-1.58881 0.041,-1.09994 -0.3259,-0.0815 0.2037,-0.28518 -0.041,-0.24442 -0.4888,0.12221 -0.082,-0.16295 0,-0.0815 0,-0.16295 c 0.3323,-0.11704 0.5134,-0.41156 0.4481,-0.93699 l -0.4481,-0.77403 -0.041,-0.16296 0.5703,-0.36664 z m 31.1652,0 0.5296,0.12222 -0.2037,0.69255 -0.5296,-0.12222 0.2037,-0.69255 z m -28.9246,0.28516 -0.4074,0.0815 0.041,0.20369 0.4074,-0.12221 -0.041,-0.16296 z m 4.7257,0 0.1223,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2036,-0.0407 z m 8.5145,0.0407 0.2037,0.0815 -0.2445,0 0.041,-0.0815 z m 16.9066,0 0.5296,0.12222 -0.1222,0.48886 0.4481,0.12222 0.163,-0.69256 0.4481,0.57034 -0.5703,0.81477 -0.163,1.87398 -0.4481,0.52959 -0.2445,-0.0407 c 0.5137,-1.92152 0.411,-2.92094 -0.2444,-3.09613 l 0.2037,-0.69256 z m -20.0435,0.0815 0.2037,0 -0.1222,0.44813 -0.163,0 0,-0.2037 0.082,-0.24443 z m 1.7925,0 0.2037,0 c 0.1368,0.16131 0.1865,0.38537 0.1629,0.65182 l -0.1222,0 -0.2444,-0.65182 z m -2.5666,0.12222 0.2037,0.36665 -0.2851,-0.0815 0.082,-0.28517 z m 12.5476,0.16295 0.2444,0.0815 0.2852,0.20369 -0.1629,0.24444 c -0.1007,-0.099 -0.2134,-0.17919 -0.326,-0.24444 l -0.041,-0.28517 z m -7.17,0.16296 0.2851,0 c 0,0.0715 0.024,0.14662 0.041,0.20369 l -0.4074,0 0.082,-0.20369 z m 0.7333,0.0815 0.4074,0.12222 -0.326,0 -0.082,-0.12222 z m -6.7219,0.12222 0.2036,0.0815 -0.082,1.22215 -0.082,0.20369 -0.2037,-0.0815 0.041,-0.48886 0.2037,0 0,-0.65182 -0.082,-0.28517 z m 14.6252,0.0407 0.3259,0.0815 -0.1629,0.65181 -0.2037,-0.0815 -0.041,-0.52959 0.082,-0.12222 z m -15.3585,0.0407 0,0.20369 -0.1223,0 0.1223,-0.20369 z m -1.4666,0.16295 0.1222,0 0.1222,0.16295 0.082,0.28517 -0.3259,-0.40738 0,-0.0407 z m 4.522,0.0407 0.2037,0 -0.082,0.20369 -0.163,0 0.041,-0.20369 z m -5.2553,0.16295 -0.041,0.24443 c -0.1413,0.67658 -0.1365,1.03082 0.1222,1.09994 l -0.2445,0.2037 -0.082,0.16295 -0.041,0.24443 -0.1222,0.0407 -0.1629,-0.57034 0.4481,-0.0815 c -0.206,-0.77057 -0.1475,-1.24296 0.1222,-1.34437 z m 1.8739,0 0.041,0.12222 0.082,-0.0815 0.163,0.65182 0,0.12222 -0.4889,0.73329 0.2852,0.0815 -0.3259,0.12222 -0.081,0.24443 0.2444,0.28517 -0.082,0.16295 -0.4074,0.57034 0.041,0.85551 -0.6518,1.30363 0.2444,0.28518 -0.4888,-0.16296 0.3666,-1.34437 -1.1814,0.73329 0.2444,0.28517 -0.8555,0.44813 -0.082,1.01846 -0.4074,0.69255 c 0.08,-0.4994 0.011,-0.79803 -0.2037,-0.85551 l 0.2852,-0.16295 0.041,-0.2037 0.2037,-1.30363 c 0.1374,-0.12988 0.2764,-0.27147 0.4074,-0.40738 l 0.4481,0.32591 c -0.053,-0.21157 -0.1577,-0.37537 -0.2444,-0.5296 0.051,-0.0555 0.1128,-0.10648 0.1629,-0.16296 l 0.2445,0.0407 0.082,-0.36665 0.3666,-0.16294 -0.1629,-0.16296 c 0.072,-0.0919 0.1339,-0.19122 0.2037,-0.28517 l 0.7333,0.0407 0.1629,-0.61109 -0.4074,-0.1222 c 0.071,-0.1075 0.1351,-0.21611 0.2037,-0.32591 l 0.2852,0.0815 0.2852,-1.0592 c 0.1084,-0.19991 0.2226,-0.40489 0.3259,-0.61108 l -0.1222,-0.16295 0.041,-0.12222 z m 11.7328,0.0407 0.2037,0.40739 0,0.0407 -0.4888,0 c 0.012,-0.0714 0.03,-0.13545 0.041,-0.2037 l 0.2444,-0.24443 z m -22.1619,0.0407 0.082,0.28517 -0.082,0 0,-0.28517 z m 30.4319,0.20369 0.4889,0.12222 -0.4074,0.93698 c -0.091,-0.13611 -0.2088,-0.26481 -0.3666,-0.36664 l 0.2851,-0.69256 z m -10.8773,0.16296 0.2037,0.0407 -0.2037,0 0,-0.0407 z m 0.9778,0.0407 0.4074,0.12221 -0.041,0.16296 -0.2037,0.0407 -0.163,-0.28518 c 0.01,-0.003 -0.01,-0.0375 0,-0.0407 z m -8.3922,0.32591 0.4074,0.0815 -0.163,0.65182 -0.2852,-0.57034 0.041,-0.16295 z m 23.9137,0.0407 c 0.4519,0.27924 0.6049,0.76826 0.4074,1.50732 l -0.5296,1.0592 c -0.1998,1.12234 -0.2915,1.89101 -0.2852,2.40358 l -0.163,-0.0407 0.041,-0.77403 0.1223,-0.48886 -0.3667,-0.77404 0.8963,-2.1184 -0.1223,-0.77403 z m -21.836,0.12222 0.2444,0 0,0.20369 -0.2444,0 0,-0.20369 z m 12.0994,0 0.041,0 -0.1629,0.57034 c -0.021,0.0768 -0.028,0.13059 -0.041,0.20369 l -0.041,0 0.2037,-0.77403 z m -19.962,0.0407 0.2037,0.0407 0.1222,0.24443 -0.3667,-0.12221 0.041,-0.16295 z m -4.1147,0.20368 0.041,0.2037 -0.2851,0.5296 -0.041,-0.16295 0.2851,-0.57035 z m 3.6258,0 c 0.1218,0.0561 0.2252,0.11427 0.4074,0.16296 l -0.082,0.36665 -0.163,-0.24443 -0.082,-0.0407 -0.082,-0.24444 z m 31.1245,0.0815 0.2444,0.0815 -0.1222,0.48887 -0.2444,-0.0815 0.1222,-0.48887 z m -25.4618,0.0815 c 0.1305,0.006 0.286,0.0201 0.4481,0.0407 l -0.1222,0.36665 c -0.2956,-0.079 -0.55,0.15923 -0.6926,0.69255 l -0.4481,-0.77403 c 0.047,-0.1747 0.2133,-0.25603 0.4889,-0.28517 l 0.3666,0 -0.041,-0.0407 z m 14.0142,0 0.082,0 0.1222,0.0407 -0.041,0.20369 -0.041,0 -0.3259,0 0.2037,-0.24443 z m -8.1478,0.0407 0.2852,0 -0.1223,0.5296 -0.2444,-0.0815 c 0.037,-0.15395 0.063,-0.31014 0.082,-0.44813 z m 0.8555,0 0.5703,0 0,0.0815 -0.3666,0.57034 0.1222,0.16295 -0.6111,-0.16295 c 0.1071,-0.16058 0.1904,-0.4143 0.2852,-0.65182 z m 1.0592,0 0.2444,0 -0.041,0.0815 -0.2037,-0.0407 0,-0.0407 z m 2.2407,0 0.4888,0 -0.1222,0.36665 -0.2037,0.0407 0,0.44812 0,0.0407 -0.082,0.16296 0.041,0.44813 -0.163,0.0407 c -0.1808,-0.20535 -0.2426,-0.4948 -0.2036,-0.85551 0,-0.0259 0,-0.0547 0,-0.0815 0.012,-0.0827 0.016,-0.15376 0.041,-0.24443 l 0.2037,-0.36665 z m 0.8555,0 0.7333,0 0.3259,0 -0.041,0.20369 -0.2445,0 0,0.48887 0.2037,0 -0.041,0.20368 -0.3259,0.52961 0,-0.28517 -0.4888,0.12221 -0.041,-0.52959 0.2444,-0.0407 0,-0.48887 -0.2852,0.0407 -0.041,-0.24443 z m -7.6997,0.0815 0,0.77403 c -0.2652,-0.0831 -0.4074,-0.28893 -0.4074,-0.65182 0.1827,3e-5 0.3,-0.0425 0.4074,-0.12221 z m 5.5405,0 0.4074,0.12221 -0.082,0.36665 -0.4481,-0.12221 0,-0.0407 0.1629,-0.2037 -0.082,0 0.041,-0.12221 z m 11.9365,0 0.1222,0.65182 c -0.026,-0.0119 -0.051,-0.0326 -0.082,-0.0407 l -0.3259,0.0815 -0.041,0.24442 0,0.28517 -0.041,0.0815 -0.2037,-0.0407 0.041,-0.20369 0.2444,-0.36664 0.163,-0.28517 -0.4481,-0.12222 0.5703,-0.28517 z m -18.8214,0.0815 c 0.092,0.0158 0.1762,0.0407 0.2852,0.0407 l 0,0.65182 -0.2444,-0.0815 -0.041,0.1222 -0.1222,0 0,0.44813 0,0.0815 0.4481,0.12222 0.041,-0.2037 0.1629,0 -0.5296,0.77403 -0.2444,-0.3259 -0.082,0.36664 0.2444,0.0815 -0.041,0.0407 0.5296,0.12221 0.082,0.24444 -0.1222,0.20369 c -0.1549,0.0762 -0.2587,0.22703 -0.2851,0.44812 l -0.041,0.12221 -0.163,0 c -0.01,-0.0298 0,-0.0522 0,-0.0815 l 0.082,-0.44812 -0.163,-0.0407 c -0.084,-0.43314 -0.1523,-0.79239 -0.2444,-1.0592 l 0.4481,-1.62955 z m -7.2922,0.44813 c 0.2126,0.11968 0.3124,0.32245 0.2852,0.61107 l -0.2037,-0.12221 -0.082,-0.48886 z m 18.3325,0 0.041,0 c -0.01,0.0299 -0.034,0.0522 -0.041,0.0815 -0.03,0.13715 -0.06,0.28312 -0.082,0.40738 -0.092,0.0158 -0.1762,0.0407 -0.2852,0.0407 l 0,0.48886 -0.2444,0 0.082,-0.93698 0.5296,0 0,-0.0815 z m -12.3846,0.0815 0.2851,0 0.1222,0.0407 0,0.40738 -0.2036,0 0,0.20369 0.082,0.36665 c -0.1679,-0.14917 -0.2705,-0.48918 -0.2852,-1.01846 z m 25.3395,0.0407 0.4482,0.12221 -0.1223,0.40738 -0.4481,-0.12221 0.1222,-0.40738 z m -33.9354,0.0407 c -0.044,0.0495 -0.077,0.10968 -0.1223,0.16294 l -0.041,-0.12221 0.163,-0.0407 z m -0.8963,0.0407 0.4481,0.93699 -0.2037,0.0407 -0.082,-0.0407 c 0.01,-0.0447 0.028,-0.075 0.041,-0.12222 l -0.2444,-0.0815 -0.2037,-0.69256 0.2444,-0.0407 z m 17.5177,0 0.4074,0.12221 -0.082,0.24444 -0.3666,-0.24444 0.041,-0.12221 z m 0.7333,0 0.2037,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.1222,-0.44812 z m 7.1293,0.0815 0.082,0.12222 0.2852,0.0815 0.082,-0.0407 -0.2037,1.34437 -0.6926,2.52579 -0.2444,0.48887 -0.082,-0.36665 0.2037,-0.28517 -0.2037,-0.2037 -0.2444,0.0815 -0.163,-0.28517 0.2852,-0.12221 0.2037,0.0407 0.041,-1.0592 0.2851,-0.97772 0.4074,0.0815 0.1223,-0.52959 0.041,0 0,-0.0815 c -0.1251,-0.22969 -0.181,-0.50833 -0.2037,-0.81478 z m 3.0554,0.0407 0.2445,0.0815 -0.082,0.24443 0,0.0407 -0.163,0.52961 -0.2037,-0.0815 0.2037,-0.81478 z m -20.2472,0.2037 0.4074,0.12221 -0.1222,0.36665 -0.2852,-0.48886 z m -10.6328,0.32591 0.041,0.16295 -0.1222,0.0407 0,-0.16295 0.082,-0.0407 z m 5.5405,0.0407 0.2037,0.0815 -0.082,0.36664 0.2036,0.0407 -0.2444,0.12222 -0.1222,0.48887 -0.163,-0.61109 0.2037,-0.48885 z m 27.4172,0 0.3667,0.0815 c -0.05,0.18576 -0.025,0.33528 0,0.44812 l -0.3259,-0.0815 c 0.053,-0.20002 0.019,-0.3353 -0.041,-0.44811 z m -3.9517,0.0815 0.041,0 c -0.023,0.12024 -0.051,0.23874 -0.082,0.36664 l -0.041,0 0.082,-0.36664 z m -17.314,0.0407 0.2037,0.0407 -0.2444,0.81477 -0.2037,-0.0407 0.2444,-0.81477 z m 14.7475,0.0407 c 0.1067,0.0985 0.2579,0.168 0.4074,0.24444 l -0.163,0.3259 -0.1629,-0.0407 -0.041,-0.0407 c -0.048,-0.0401 -0.1097,-0.0903 -0.163,-0.12222 l 0.1222,-0.36664 z m -21.9175,0.16296 0.082,0 c 0.01,0.0632 0,0.1434 0,0.20368 l -0.082,-0.20368 z m 32.4689,0 0.3259,0.52959 -0.4482,-0.12221 0.1223,-0.40738 z m -33.243,0.36664 0.041,0.12221 -0.1629,-0.0407 0,-0.0407 0.1222,-0.0407 z m 6.7627,0.16295 0.2037,0.0815 -0.7333,2.81096 -0.2037,-0.0815 0.7333,-2.81096 z m 9.4514,0 -0.2037,0.81477 0,0.0815 c -0.07,0.01 -0.1707,0.0316 -0.2444,0.0407 l 0.2444,-0.89625 0.2037,-0.0407 z m 1.5888,0.16296 c 0,0.0512 0,0.10831 0,0.16295 -0.1403,0.1712 -0.5032,0.28725 -1.0184,0.40739 l 0.082,-0.24443 0.937,-0.32591 z m 8.5959,0.12222 c 0.1067,0.18437 0.2375,0.33744 0.3667,0.48885 l 0,0.12222 0.1629,0.0407 c 0.068,0.0685 0.1302,0.14363 0.2037,0.20369 l -0.1629,0.65182 -0.2037,-0.0407 c 0.071,-0.26673 -0.1677,-0.49255 -0.6111,-0.61108 l 0.2444,-0.8555 z m 1.0185,0.0407 0,0.12222 -0.082,-0.0815 0.082,-0.0407 z m 5.5812,0.0407 0.4482,0.12222 -0.041,0.20369 -0.4889,-0.12221 0.082,-0.2037 z m -24.1989,0.0407 0.1223,0.44812 0.2444,0.89625 -0.4481,0.73329 0.3259,-0.12221 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 -0.2037,-0.24444 -0.2445,-0.0815 -0.082,0.44812 -0.2444,-0.0407 0.6518,-2.40357 z m -1.2221,0.0815 0.2037,0.0815 -0.1222,0.52959 -0.2037,-0.0407 0.1222,-0.57033 z m 7.1293,0 0.2037,0.0407 -0.082,0.36664 -0.2037,-0.0407 0.082,-0.36664 z m 14.5438,0.0407 -0.082,0.24442 0.6925,0.16296 0.082,-0.20369 -0.6925,-0.20369 z m -28.6802,0.0815 c 0.026,-0.005 0.055,0.004 0.082,0 -0.126,0.17959 -0.3024,0.32895 -0.5296,0.44811 l -0.041,-0.20369 c 0.1448,-0.11437 0.3062,-0.20676 0.4889,-0.24442 z m 13.3623,0.20368 c 0.1273,0.11381 0.2392,0.22321 0.2852,0.32591 l -0.2852,-0.0815 0,-0.24443 z m -12.9549,0.20369 0.041,0 0.3259,0.12222 c 0.029,0.10642 0.051,0.19752 0.082,0.28517 l -0.2037,0.77403 -0.2037,-0.0407 c 0.1427,-0.53336 0.01,-0.85797 -0.2852,-0.93698 l -0.2037,0.0815 0.041,-0.16296 0.3259,-0.0815 0.082,0 0,-0.0407 z m -2.5666,0.0407 0.082,0.24444 -0.1222,-0.0407 0.041,-0.2037 z m 13.4439,0 0.2037,0 c -0.015,0.10051 -0.023,0.21902 -0.041,0.32591 l -0.163,0.16296 0,-0.48887 z m 8.5551,0 0.3667,0 -0.041,0.16296 -0.4074,-0.12222 c 0.02,-0.0187 0.064,-0.0211 0.082,-0.0407 z m 1.0185,0 0.4074,0 0,0.2037 c -0.1951,4e-5 -0.3609,0.0365 -0.4889,0.0815 l 0.082,-0.28518 z m -19.4324,0.0815 0.1629,0.0407 -0.082,0.32591 -0.082,-0.36665 z m 13.8104,0.12222 0,0.5296 -0.041,0.0407 -0.041,0.16295 -0.2444,0 0.2037,-0.69255 0.1222,-0.0407 z m 0.8555,0 0.937,0 -0.041,0.16295 0,0.12222 -0.2444,0 -0.2852,-0.0407 -0.082,0.0407 -0.2851,0 c 0,0.0149 0,0.026 0,0.0407 l -0.082,-0.0407 0.082,-0.28517 z m 3.0555,0.16295 -0.082,0.36665 -0.3667,0 -0.1222,-0.12221 0.041,-0.16296 c 0.2044,-0.0207 0.3677,-0.0344 0.5296,-0.0815 z m 9.044,0 c 0.6945,0.36416 0.9331,1.0147 0.6925,1.91471 l -0.4888,-0.12222 -0.163,0.52961 0.3667,0.57033 -0.8555,1.2629 0.2037,0.0407 -0.2445,0.12221 -0.082,0.28518 0.163,1.30363 -0.5704,0.24443 0.2037,0.0407 -0.3666,0.57034 c -0.1387,0.96296 0.161,1.50358 0.937,1.71102 l -0.2445,0.16294 -0.082,0.24444 0.082,0.61108 -1.3444,-2.03693 -0.2036,-0.0407 0.1629,-0.61109 0.4481,0.0815 0.041,-0.16295 c -0.2956,-0.079 -0.5344,-0.51721 -0.6518,-1.2629 l 0.163,-0.61107 0.2037,0.0407 -0.082,0.44811 0.6925,0.2037 0.082,-0.44812 -0.4074,-0.12221 0.2445,-0.81478 0.4074,0.12221 0.2036,-0.81476 -0.4073,-0.12222 0.082,-0.36665 0.4481,0.12222 0.082,-0.36664 -0.4074,-0.12222 0.163,-0.61108 c 0.3695,0.0988 0.5983,-0.13823 0.8147,-0.65181 0.1069,-0.4 -0.01,-0.61478 -0.4481,-0.7333 l 0.163,-0.61108 z m -24.5248,0.0407 0.4889,0.12222 -0.4074,0.57033 -0.2445,-0.0815 0.163,-0.61108 z m 23.3026,0 c 0.1377,0.0728 0.2979,0.11504 0.4481,0.16296 l -0.1222,0.40738 -0.3259,-0.5296 0,-0.0407 z m -16.7029,0.0815 0.6518,0 0.2037,0.24443 0.163,0 -0.163,0.61108 -0.6111,0 -0.2444,-0.85551 z m 5.7034,0.20369 0.082,0 c -0.036,0.16124 -0.082,0.31655 -0.1222,0.44812 l -0.082,0 0.1222,-0.44812 z m 4.8887,0.0407 0,0.16295 -0.082,0.24443 -0.2037,0 0.041,-0.20369 0.2444,-0.20369 z m -7.7404,0.0815 0.2037,0.0407 -0.041,0.0815 -0.2037,0 0.041,-0.12221 z m -8.6366,0.0815 0.6518,0.36665 -0.2852,1.01846 -0.2037,-0.0815 -0.2444,-0.93698 0.082,-0.36665 z m 20.899,0 0.4889,0.12222 0.3666,1.14067 -0.1222,0.44813 -0.2037,-0.0407 0.1222,-0.44813 -0.4481,-0.1222 -0.041,0.20368 0.2444,0.7333 -0.2444,0.12222 c -0.1069,0.40002 0.086,0.69625 0.5296,0.81477 l -0.5703,0.24443 0.082,-0.36665 -0.4074,-0.12222 -0.3259,2.93318 -0.082,0.16295 -0.5704,-0.3259 0.082,-0.2037 0.4074,-0.77403 c 0.069,-0.55307 -0.1193,-0.87895 -0.4889,-0.97773 l 0.1223,-0.36664 0.4888,0.12222 0.041,-0.24444 -0.2037,-0.28517 0.3259,-0.0815 -0.041,-1.09994 0.4482,-1.5888 z m -18.9843,0.0407 0.4074,0.12221 -0.041,0.2037 -0.4074,-0.12222 0.041,-0.20369 z m 11.2032,0 0.1629,0 c 0.066,0.0584 0.1536,0.1174 0.2445,0.16295 l -0.041,0.12222 -0.082,0.28517 -0.2852,-0.5296 0,-0.0407 z m -19.9621,0.0407 0.3259,0.48886 -0.2444,-0.24443 -0.2037,-0.0407 0.1222,-0.20369 z m 1.1,0.0815 0.1629,0.0407 0,0.16296 -0.1629,0.65182 -0.2037,-0.0815 0.2037,-0.77404 z m 31.0837,0 c 0.044,0.10287 0.088,0.18378 0.163,0.2037 l 0.2037,0.0407 0,0.44812 -1.711,6.35521 -0.4889,-0.12222 0.2852,-0.12222 0.041,-0.20368 0.6925,-3.46277 0.2852,-0.12222 0.041,-1.0592 0.4889,-1.95546 z m 1.0185,0 0.2037,0.0407 -0.2037,0.65182 -0.2037,-0.0815 0.163,-0.57035 0.041,-0.0407 z m -15.6437,0.12222 0.041,0.44813 -0.1222,0.0407 -0.082,-0.32591 0.1629,-0.16296 z m 12.792,0 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -9.5736,0.0407 c 0.1346,0.0336 0.3236,0.0612 0.4888,0.0815 l -0.1222,0.48886 -0.4481,-0.16295 0.082,-0.40739 z m -20.9806,0.32591 0.4889,0.12222 -0.082,0.20369 -0.163,1.3851 c 0.01,-0.1844 -0.023,-0.35228 -0.082,-0.57033 l -0.2036,-0.81477 0.041,-0.32591 z m 3.2999,0.0407 0.4481,0.0815 c -0.1069,0.39997 -0.01,0.695 0.2852,0.77403 l -0.041,0.20369 c -0.4434,-0.11854 -0.7027,-0.10372 -0.774,0.16296 l -0.2037,-0.0407 -0.082,-0.61109 0.3666,-0.57033 z m 16.8251,0.0407 0.2852,0 -0.082,0.24443 -0.2037,0 0,-0.24443 z m -13.7697,0.16295 0.2037,0.0407 -0.041,1.0592 -0.4074,-0.12221 0.2444,-0.97773 z m 20.125,0.2037 0.4481,0.16294 -0.041,0.16296 -0.4888,-0.12222 0.082,-0.20368 z m 3.0962,0 0.2037,0.0407 -0.4482,0.93699 -0.2037,-0.0407 0.2037,-0.81478 0.2445,-0.1222 z m -19.514,0.1222 0.937,0.0407 -0.1222,0.57035 -0.9777,0 0.1629,-0.61109 z m 8.5959,0.16296 0.2037,0 0,0.0407 -0.2037,-0.0407 z m 3.748,0 0.3259,0 -0.041,0.20369 -0.2852,0 0,-0.20369 z m 2.3629,0 0.3259,0 0,0.20369 -0.3667,0 0,-0.12221 0.041,-0.0815 z m -19.5139,0.0407 0.3259,0.5296 -0.2852,0.12222 -0.2037,-0.0407 c 0.062,-0.23334 0.1327,-0.43445 0.163,-0.61108 z m -4.3184,0.16295 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m 32.306,0 0.2037,0.0407 c -0.107,0.40001 -0.01,0.69503 0.2851,0.77403 l -1.4258,3.50351 0.2037,0.24444 -0.041,0.20369 -0.5296,0.89625 -0.2037,-0.0407 0.1629,-1.42585 0.2444,-0.12221 0.1223,-0.44813 0.6925,-3.42203 0.2852,-0.2037 z m -35.3614,0.12222 0.1222,0.85551 0.2037,0.12221 c -0.012,0.0965 -0.014,0.18349 -0.041,0.28518 l 0,0.0815 -0.041,-0.0815 -0.2037,0.0815 c 0.022,0.0838 0.035,0.1372 0.041,0.2037 l -0.3666,0.16295 c -0.01,-0.0435 -0.032,-0.0797 -0.041,-0.12221 l 0.1222,-0.0407 0.041,-0.2037 0.163,-1.34437 z m 9.4514,0.0407 0.6111,0.16296 -0.041,0.20369 -0.6925,0.0815 0.1222,-0.44813 z m -4.8071,0.24443 0.2036,0.0815 -0.1629,0.5296 -0.2037,-0.0407 0.163,-0.57034 z m 28.9653,0 0.2037,0.0407 -0.2852,1.01846 -0.2037,-0.0815 0.2852,-0.97773 z m -20.4917,0.12222 0.3667,0.5296 -0.163,0.61108 -0.2037,-0.32591 -0.4074,-0.12222 c -0.1069,0.40001 -0.412,0.56666 -0.8555,0.44813 0.107,-0.40003 -0.01,-0.65551 -0.4481,-0.77404 l 0.041,-0.20369 0.4074,0.12221 0.1629,0.24444 c 0.08,-0.29997 0.4464,-0.4543 1.1,-0.5296 z m 10.8366,0.20368 0.1222,0 0,0.12222 -0.1222,-0.12222 z m 13.1179,0 0.8962,0.24444 -0.4481,1.75176 c -0.2955,-0.079 -0.3768,-0.54439 -0.1629,-1.34437 l -0.4482,-0.0815 0.163,-0.57035 z m -6.1516,0.0407 0.2852,0.52961 -0.041,0.20369 -0.2852,-0.57034 0.041,-0.16296 z m -28.5579,0.0815 -0.2037,1.62955 -0.8148,0.24443 0.2444,-0.89625 c 0.4491,-0.22295 0.7309,-0.54686 0.7741,-0.97773 z m 0.6925,0 0.2445,0.0815 -0.082,0.36665 -0.2852,-0.0815 0.1222,-0.36665 z m 21.8768,0.0407 0.163,0.0407 0,0.24443 -0.4074,0 0.2444,-0.28517 z m -9.5329,0.0407 0.2037,0 0.163,0.24443 -0.2852,0 -0.082,0 0,-0.0407 0,-0.20369 z m -6.9663,0.24443 0.4888,0.12222 -0.082,0.24443 -0.5296,0.93699 -0.1629,-0.24444 -0.2037,-0.0815 -0.5296,0.28518 0.041,0.65181 c -0.2956,-0.0791 -0.5041,0.0481 -0.6111,0.44813 l -0.163,-0.24444 -0.2037,-0.0407 -0.2444,0.12222 0.2037,-1.62953 0.6111,0.16294 0.1222,-0.40738 c 0.739,0.19754 1.156,0.0741 1.2629,-0.32591 z m 2.8517,0.12222 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m -7.8626,0.0407 0.2037,0.0815 -0.082,0.36665 -0.2445,-0.0407 0.1223,-0.40739 z m 6.6404,0.0407 0.2037,0.0815 -0.082,0.40738 -0.2444,-0.0407 0.1222,-0.44812 z m -9.2884,0.12221 0.2037,0.0815 -0.2445,0.0815 0.041,-0.16296 z m -0.041,0.28517 0.1629,0.12221 0,0.0407 -0.2037,-0.0407 0.041,-0.12221 z m 15.7252,0.0815 c 0,0.20654 -0.13,0.30826 -0.326,0.36665 l -0.5296,0.0407 0,-0.16295 0,-0.0407 0.8556,-0.2037 z m 3.2591,0 c 0.013,0.005 0.029,-0.006 0.041,0 0.089,0.046 0.1748,0.11085 0.2037,0.2037 l -0.2445,0 0,-0.2037 z m 1.548,0 0.4074,0 0.082,0.12222 -0.2037,0.81478 c -0.045,0.002 -0.075,0 -0.1222,0 l 0,0.20368 -0.2037,-0.20368 -0.4074,0 -0.1629,-0.24444 0.1222,-0.44812 c 0.1892,0.0505 0.3495,-0.044 0.4889,-0.24444 z m 1.2222,0 0.3259,0 c 0.015,0.0191 -0.011,0.0592 0,0.0815 -0.099,0.33787 -0.3273,0.59857 -0.6518,0.7333 l -0.1222,-0.0407 0.4481,-0.77404 z m 4.4405,0 -0.041,0.2037 -0.4888,0 0,-0.12222 c 0.2001,-0.0277 0.3723,-0.0507 0.5296,-0.0815 z m 8.8811,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m -26.8469,0.0815 0.4074,0.12222 -0.1222,0.44812 -0.4074,-0.12221 0.1222,-0.44813 z m 9.7366,0.12222 0.1629,0 -0.1629,0.57034 0,-0.57034 z m -11.9772,0.16295 -0.082,0.36665 0.4074,0.12222 0.1222,-0.36665 -0.4482,-0.12222 z m 4.9701,0.0407 0.6926,0.2037 -0.1223,0.36665 0.4482,0.12221 0.1629,-0.61108 0.3259,0.36665 c -0.3477,0.17231 -0.5886,0.44676 -0.7333,0.81477 -0.062,0.0265 -0.088,0.0462 -0.1222,0.0815 l -0.2037,-0.0407 c 0.1402,-0.44386 -0.02,-0.72708 -0.4074,-0.81476 l -0.2036,-0.0407 c 0.071,-0.11464 0.1184,-0.28147 0.1629,-0.44813 z m 16.9066,0 0.4074,0.12222 -0.082,0.24443 -0.4074,-0.12222 0.082,-0.24443 z m -14.4215,0.2037 0.1222,0.0407 c -0.043,2.1e-4 -0.081,-0.002 -0.1222,0 l 0,-0.0407 z m -13.729,0.24443 0.4481,0.0815 -0.082,0.20368 -0.4074,-0.12221 0.041,-0.16295 z m 20.1657,0 0.163,0.0815 -0.2037,0.0407 0.041,-0.12222 z m -10.4699,0.0407 0.163,0.24442 0.2037,0.0407 c 0.1185,0.0317 0.2232,0.0419 0.3259,0.0407 -0.1474,0.0926 -0.295,0.12532 -0.4889,0.0815 l -0.2037,0.65182 c 0.3877,0.0877 0.6346,0.21897 0.7741,0.44812 l -0.4889,0.24443 0.4074,0.0815 0.082,-0.28518 c 0.1221,0.22482 0.1522,0.50258 0.041,0.85552 l 0.6518,0.16295 -0.3666,1.09995 -0.6111,-0.12222 0,2.1184 -1.3444,1.14068 0.2037,0.32591 -1.7518,2.40357 0.4481,-0.12221 0.2445,0.0815 -0.1222,0.40738 -0.2852,-0.0407 -0.2852,-0.3259 -0.2852,-0.0407 -0.1222,0.48886 -0.2851,-0.0815 2.485,-7.78105 0.2445,-0.0407 -0.2852,0.97772 0.6518,0.12222 0.4074,-1.30363 -0.4481,-0.0815 0.041,-0.12222 -0.2037,-0.0815 -0.2852,0 0.041,-0.12221 0.2852,-0.0407 0.082,-0.20369 -0.2445,-0.0815 0.163,-0.57035 -0.2037,-0.28517 0.082,-0.20368 0.2852,-0.0815 z m 6.6812,0.0407 0.2037,0.0407 -0.041,0.12221 -0.163,-0.16295 z m 7.8626,0 0.041,0.16295 -0.2852,-0.0815 0.2445,-0.0815 z m -20.0435,0.12221 0.4481,0.77403 -0.3259,0.16296 -0.163,-0.0407 0.041,-0.89625 z m -0.6926,0.0407 0.2037,0.0407 -0.1222,0.44813 -0.2037,-0.0407 0.1222,-0.44812 z m 19.8806,0.16295 -0.082,0.24443 -0.2037,-0.0407 0,-0.0815 0.2852,-0.12221 z m -1.3851,0.12221 0.082,0.12222 0,0.28517 -0.4482,-0.12221 0.163,0 0.2037,-0.28518 z m 3.8702,0.12222 0.2444,0.0815 0,0.28517 0,0.65181 0,0.12222 -0.3259,0.12222 -0.4074,-0.0815 0.2852,-1.14068 0.041,0 c 0.064,-0.008 0.1027,-0.0322 0.1629,-0.0407 z m -25.3804,0.12222 0.3667,0.48886 -0.4889,-0.12221 0.1222,-0.36665 z m 35.4021,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -11.4476,0.12221 -0.041,0.2037 -0.774,0.0815 -0.2037,-0.0815 0,-0.0407 1.0184,-0.16296 z m 6.4367,0 -0.041,0.2037 0.4074,0.0815 0.041,-0.16295 -0.4074,-0.12222 z m -27.1728,0.24444 0,0.20369 -0.4074,0.20368 0.3259,0.32592 -0.1222,0.0815 -0.2852,-0.0815 0.082,-0.32592 -0.1222,-0.0407 0,-0.0407 0.5296,-0.3259 z m 3.1369,0 0.3667,0.0815 -0.2445,0.69255 -0.3259,-0.0815 0.2037,-0.69255 z m 8.3107,0 0.4074,0 0,0.0407 -0.4074,0 0,-0.0407 z m -13.6067,0.0815 0.2037,0.0407 -0.3667,1.34436 c -0.019,-0.29821 -0.091,-0.48678 -0.2444,-0.57033 l 0.041,-0.32591 0.3666,-0.48886 z m 10.3069,0.0815 0.2444,0.0815 -0.1222,0.44812 -0.2852,-0.0407 0.163,-0.48886 z m 2.1184,0.0407 0.2444,0.0407 -0.082,0.24442 0.041,0.16296 c -0.01,0.1969 0.032,0.3372 0.1223,0.44812 l 0,0.0815 -0.163,0 -0.4074,0.44812 -0.2037,0 0.2445,-0.85551 0.1629,-0.28517 -0.041,-0.0407 0.082,-0.24442 z m 1.3851,0.0407 0.2445,0.28516 0,0.28517 c -0.1626,-0.11746 -0.281,-0.25346 -0.4074,-0.36665 l 0.1629,-0.20368 z m -7.6996,0.20368 0.2852,0.0407 -0.163,0.48887 -0.2444,-0.0815 0.1222,-0.44813 z m 13.9734,0.0815 0.2037,0.0407 0.3259,0.48887 -0.082,0.24443 -0.2037,-0.0815 -0.082,-0.0815 0,-0.16295 -0.2037,0 c 0.013,-0.15533 0.042,-0.32188 0.041,-0.44813 z m -16.54,0.0815 -0.1222,0.36665 -0.041,1.42585 -0.6518,0.81477 0.3666,0.0815 -0.4481,0.12222 -0.082,0.24443 0.2852,0.3259 -0.041,0.2037 -0.5703,0.61108 0.082,0.97772 -0.8556,1.42585 0.2852,0.28517 -0.6111,-0.12222 0.4482,-1.54806 -1.5074,0.85551 0.2852,0.28517 -1.0185,0.44812 c -0.1111,-0.21925 -0.218,-0.41747 -0.3259,-0.65181 0,-0.0107 0.01,-0.03 0,-0.0407 l 0.1222,-0.77403 0.2852,0.0815 0.6926,0.44812 c -0.2006,-0.67951 -0.5593,-1.09061 -1.1407,-1.22216 l 0.2037,-0.69255 c 0.015,-0.0461 0.027,-0.077 0.041,-0.12222 l 0.1222,-0.0407 0.041,-0.20369 -0.082,-0.0407 c 0.068,-0.22573 0.1079,-0.44975 0.1629,-0.65181 l 0.163,-0.12222 0.041,-0.20369 -0.041,-0.12222 c 0.059,-0.23983 0.045,-0.41041 0.082,-0.61107 0.2165,-0.0412 0.45,-0.15497 0.6925,-0.36665 -0.087,0.52223 -0.036,0.83278 0.2445,0.89624 l -0.3259,0.2037 -0.041,0.0815 c -0.1805,0.11243 -0.3752,0.2435 -0.5296,0.36665 l -0.041,0.24443 0.4074,0.12221 -0.326,1.67029 0.5704,0.12221 0.1222,-0.40738 0.4481,-0.2037 -0.2851,-0.28516 -0.2852,-0.0815 0.082,-0.20369 1.5073,0.12221 0.2037,-0.69256 -0.5296,-0.12221 0.1222,-0.40738 0.5704,0.12221 0.3666,-1.14067 0.2445,-0.16296 -0.2037,-0.0407 0.4888,-1.54806 0.3259,-0.12222 z m -6.1108,0.0407 0.2444,0.0815 -0.1222,0.36664 -0.2037,-0.0407 0.082,-0.40739 z m 24.0359,0 0.163,0.24443 0.2037,0.0815 0.3259,-0.12222 -0.041,0.16296 c -0.3962,0.0368 -0.7256,0.11789 -0.9777,0.20369 l -0.041,0 -0.163,-0.0407 0.2852,-0.44812 0.2444,-0.0815 z m -12.0179,0.0815 0.6111,0.12221 -0.1223,0.40739 -0.4888,-0.5296 z m 3.9516,0.12221 0.326,0.0815 -0.041,0.16295 -0.2852,0.0815 0,-0.0407 0,-0.28517 z m 4.8072,0.0407 0.2037,0.0407 0,0.0407 -0.2037,0 c 0,-0.0303 0,-0.052 0,-0.0815 z m -13.8104,0.0815 0.2851,0.0815 -0.082,0.61107 -0.3666,0.12222 0.041,-0.40738 0.1222,-0.40739 z m 29.5764,0.0407 0.2037,0.0407 -0.1223,0.36664 -0.2036,-0.0407 0.1222,-0.36665 z m -7.4552,0.32591 0.4073,0.1222 -0.082,0.44813 -0.4073,-0.24443 0.082,-0.3259 z m -26.3581,0.0407 0.4074,0.1222 -0.082,0.2037 -0.4074,-0.12222 0.082,-0.20368 z m 1.6703,0 0.2037,0.24442 -0.041,0.20369 -0.3259,-0.32591 0.1629,-0.1222 z m 18.1695,0.0407 c 0.1619,0.0875 0.2758,0.18386 0.4889,0.28517 -0.019,0.0576 -0.041,0.13961 -0.041,0.20369 l -0.5296,0 c 0.031,-0.17321 0.06,-0.33608 0.082,-0.48886 z m -3.2591,0.20369 0.163,0 0,0.0407 -0.163,-0.0407 z m -12.1402,0.20369 -0.082,0.57035 -0.041,0.24442 -0.2851,-0.0815 0.041,-0.61108 0.3666,-0.12222 z m -3.2998,0.0815 0.2444,0.0407 -0.1222,0.48887 -0.2852,-0.0407 0.163,-0.48887 z m 10.7143,0.0407 0.7333,0.16296 0,0.0815 -0.082,0.24444 -0.082,0.12221 0,0.16295 0,0.0407 -0.1222,0.28517 -0.082,0 -0.2037,-0.28517 c 0.017,-0.3233 -0.065,-0.59919 -0.1629,-0.81477 z m 20.0028,0 c -0.1782,0.66666 0.096,1.38754 0.6926,2.1184 l 0.2444,-0.12221 0.163,0.24443 -0.041,0.16295 c -0.2464,-0.0658 -0.4958,0.0124 -0.6926,0.16296 -0.042,-0.0157 -0.074,-0.0298 -0.1222,-0.0407 l -0.3667,0.12222 c 0.1402,-0.44387 0.062,-0.72708 -0.3259,-0.81478 l -0.4074,0.12222 -0.041,0.0815 -0.2851,-0.20369 c 0.2164,-0.51356 0.4452,-0.70985 0.8147,-0.61107 l 0.1223,-0.40739 -0.6111,-0.16296 0.8555,-0.65181 z m 2.4036,0.0407 0.3259,0.48887 -0.1222,0.44811 -0.2852,-0.57033 0.082,-0.36665 z m -17.9658,0.0815 0.2851,0.0815 -0.1222,0.40738 -0.2444,-0.32591 0.082,-0.16295 z m -14.2586,0.0407 0.2851,0.0407 -0.082,0.20369 c -0.113,0.033 -0.218,0.0873 -0.3259,0.12222 l 0.1222,-0.36665 z m 15.7659,0 0.7333,0 -0.082,0.20369 -0.6926,0.0815 c 0.022,-0.10672 0.02,-0.18393 0.041,-0.28517 z m -3.9924,0.0815 0.041,0 0,0.12222 -0.041,0 0,-0.12222 z m 19.6769,0 0.2037,0.0407 -0.2037,0.81477 -0.2037,-0.0407 0.2037,-0.81477 z m -28.4358,0.16296 0.5704,0.12222 -0.2445,0.69255 -0.3666,-0.61108 0.041,-0.20369 z m 2.1592,0.0407 -0.082,1.14068 0.6111,0.16295 0.082,-1.18141 -0.6111,-0.12222 z m 19.5546,0.12222 0.163,0.0407 -0.1222,0.44812 -0.2037,-0.0407 0,-0.0407 0.041,0 0.1222,-0.40737 z m -13.4438,0.0407 0.1222,0 0.2852,0.73329 -0.1222,0.16296 -0.163,0 -0.2037,-0.61108 c 0,-0.0113 -0.01,-0.0293 0,-0.0407 l 0,-0.0407 c 0.026,-0.0655 0.056,-0.13406 0.082,-0.20369 z m 6.3145,0 0.4074,0 -0.081,0.48886 -0.3259,0 0,-0.48886 z m 4.0332,0 0.2444,0.0407 -0.041,0.16296 -0.2444,-0.0815 0.041,-0.12221 z m -25.7062,0.0815 0.082,0.0407 -0.041,0.2037 -0.082,-0.0407 0.041,-0.2037 z m 38.1723,0.0815 -0.041,0.16296 0.041,0.0407 0,-0.20369 z m -21.5509,0.0407 0.082,0 0,0.32591 -0.2037,-0.0407 0.1222,-0.28517 z m -10.918,0.24443 c 0.2732,-0.0456 0.6795,-0.0134 1.1814,0.0407 l -0.1222,0.40739 c -0.3875,-0.0877 -0.75,0.1822 -0.937,0.77403 l -0.5703,-0.89625 c 0.053,-0.16645 0.1749,-0.28028 0.4481,-0.32591 z m 14.0957,0.0407 0.3259,0 -0.1222,0.20369 -0.2037,0 0,-0.20369 z m 0.774,0 0.082,0 0,0.20369 -0.041,0 -0.041,-0.20369 z m 15.1549,0.0407 0.4888,0.12222 -0.2852,1.01846 -0.3666,-0.48886 0.163,-0.65182 z m -17.9659,0.0407 0.2444,0.0407 -0.2851,0.0815 0.041,-0.12221 z m 10.8366,0 0.2036,0.0407 -0.041,0.12221 -0.2444,0.12222 0,0.0815 -0.041,0 0.041,-0.0815 0.082,-0.28517 z m 9.5736,0.12221 -0.1222,0.0815 -0.082,0.16296 0.2037,0.24443 0,-0.48887 z m -13.8105,0.0815 0.4074,0.0815 -0.3259,0.44812 -0.3259,-0.0815 -0.041,-0.16295 0.2851,-0.28517 z m -10.4291,0.0407 0.1222,0.0815 0,0.24443 -0.163,-0.0407 c 0.032,-0.10244 0.017,-0.18858 0.041,-0.28517 z m 13.8512,0.0407 0.6111,0.5296 0.041,0.0407 -0.1223,0.61109 c -0.1737,-0.13018 -0.3351,-0.28386 -0.4888,-0.36665 -0.043,-0.2456 -0.071,-0.51515 -0.041,-0.81477 z m -8.5552,0.0407 0.3667,0 0,0.24443 -0.3667,0 0,-0.24443 z m -16.4585,0.0815 0.163,0.0407 -0.1223,0.40737 -0.2851,-0.0815 0.082,-0.28517 0.1629,-0.0815 z m 4.1961,0.20369 0.5296,0.12221 0,1.18141 c -0.3391,-0.0767 -0.5209,-0.50903 -0.5296,-1.30362 z m 1.7925,0.16295 -0.2444,0.69256 0.6518,0.16295 0.2037,-0.69256 -0.6111,-0.16295 z m 3.0147,0.24443 c 0.5369,0.1214 0.591,1.23745 0.163,3.29982 -0.1491,0.24871 -0.3559,0.70204 -0.5704,1.14068 l -0.5703,-0.12222 -0.5296,-1.34436 c 0.3877,0.0877 0.5931,-0.0857 0.7333,-0.52961 l 0.082,-1.18142 0.2037,0.24444 0.6518,0.16295 -0.163,-1.67028 z m 9.6959,0.0407 0.1222,0.12222 -0.2445,0.28517 -0.1222,0.44811 -0.1222,0 -0.2852,-0.0815 -0.041,-0.44812 0.082,-0.12222 0.2445,0.24444 0.3666,-0.44813 z m 5.3775,0 c 0,0.306 -0.1563,0.44815 -0.5704,0.44813 l 0,0.20369 0.4074,0 -0.3666,0.65181 -0.4074,-0.0815 0.082,-0.0815 0,-0.28518 -0.041,-0.0407 0.4074,-0.77403 c 0.1595,-0.009 0.3126,-0.0407 0.4888,-0.0407 z m -13.4438,0.0407 0.2851,0.0407 -0.4481,1.26289 -0.082,0.32591 c 0.198,0.0814 0.3666,0.1667 0.5296,0.24443 l -0.2444,0.44812 -0.1223,-0.20369 -0.3259,0.16295 -0.2444,-0.0407 c 0.067,-0.14188 0.1305,-0.27251 0.2037,-0.48886 l -0.2037,0 0.163,-0.48887 0.041,0.0407 0.2851,0 0.163,-1.30363 z m -8.1886,0.0815 0.5704,0.12221 -0.163,0.40739 -0.4074,-0.5296 z m 13.1587,0.0815 0.082,0.0815 -0.163,-0.0407 0.082,-0.0407 z m 4.3591,0 0.3259,0 c -0.046,0.25428 -0.075,0.44865 -0.082,0.65181 l -0.6111,0 0.082,-0.57033 0.2852,-0.0815 z m -3.1369,0.0815 0.082,0.48886 c -0.2043,-0.10676 -0.3489,-0.23499 -0.4482,-0.40738 l 0.3667,-0.0815 z m -1.7518,0.0815 -0.1222,0.48885 -0.163,0 0,-0.40737 0.2852,-0.0815 z m 18.0066,0.0407 0.2037,0.0407 -0.163,0.65181 -0.2037,-0.0815 0.163,-0.61107 z m 0.6518,0 0.4889,0.12221 -0.4074,1.46658 -0.163,-0.0407 c -0.083,-0.0188 -0.171,0.0209 -0.2444,0.0407 l 0,-0.36664 0.3259,-1.22215 z m -21.225,0.0407 0.1223,0 0,0.0407 -0.1223,-0.0407 z m 3.5036,0.12221 c 0.081,0.0361 0.1343,0.0796 0.2037,0.12222 l -0.2445,0.0407 0.041,-0.16295 z m -12.1809,0.0815 0.2851,0.0407 -0.2851,0.89624 -0.2852,-0.0407 0.2852,-0.89625 z m 1.7925,0.16295 -0.1222,0.44812 0.611,0.12222 -0.4888,-0.57034 z m 19.5954,0 c 0.045,0.041 0.1551,0.11945 0.2037,0.16295 l -0.082,0.52961 -0.8963,2.85169 -0.5703,0.81477 0.3666,1.05921 -0.6518,-0.16296 -0.3667,2.07766 -0.5296,-0.12221 0,-0.97773 0.3259,-0.12221 0.082,-0.2037 0.163,-1.46658 0.4889,-0.57034 -0.1222,-0.12222 c 0.028,-0.0546 0.041,-0.12719 0.041,-0.20369 l 0.2036,-0.12222 -0.4073,-0.57033 0.3666,-0.12222 0.2444,0.0407 0.082,-1.14068 0.3667,-1.14068 0.5296,0.12222 0.163,-0.61108 z m 1.2629,0.0815 0.1222,0.16296 -0.163,-0.0407 0.041,-0.12222 z m 1.8332,0.12222 0.082,1.62955 0.4889,0.12221 0.2037,-0.20369 -0.2445,0.81476 c -0.1146,-0.18977 -0.1569,-0.28132 -0.2851,-0.48885 l -0.2037,0.0815 c -0.022,-0.0177 -0.055,-0.0241 -0.082,-0.0407 l -0.4074,-0.65182 0.4481,-1.2629 z m 0.5296,0 0.3667,0.0815 0,0.0815 -0.2445,0.36665 -0.2444,-0.0815 0.1222,-0.44813 z m 3.7887,0.16296 0.2037,0.0407 -0.1222,0.44813 -0.2037,-0.0815 0.1222,-0.40738 z m 1.7926,0.24443 0.2036,0.0815 0,1.0592 0,0.0407 c -0.05,0.0364 -0.1167,0.0642 -0.1629,0.12221 l -0.3667,-0.0815 0.326,-1.22216 z m -32.1023,0.0407 0.2445,0.0815 -0.9778,3.09612 -0.2444,-0.0407 0.9777,-3.13686 z m 29.5764,0.16295 0.082,0.0407 -0.1629,0.61108 -0.2037,-0.0407 0.1222,-0.44812 0.163,-0.16296 z m -14.0141,0.16296 0.2037,0 0,0.48886 -0.2037,0 0,-0.48886 z m 11.692,0.0815 0.2037,0.0815 0.041,0.24444 -0.2852,-0.2037 0.041,-0.1222 z m -24.2803,0.0815 -0.163,0.44813 0.6111,0.16296 0.1629,-0.48887 -0.611,-0.12222 z m 27.132,0.0407 0.2037,0.0407 0.041,0.69256 -0.4073,-0.12221 0.1629,-0.61109 z m -29.0468,0.0407 0.2852,0.0407 -0.2037,0.65182 -0.2444,-0.0815 0.1629,-0.61109 z m 31.5727,0.2037 0.4073,0.12221 -0.082,1.0592 -0.082,0.32591 -0.2444,-0.0815 0.082,-1.14068 c -0.055,-0.0125 -0.1121,-0.005 -0.163,0 l 0.082,-0.28517 z m -19.5547,0.24443 0.041,0 0,0.44813 -0.2037,0 0.163,-0.44813 z m -5.5405,0.0407 0.6926,0.16295 -0.5704,1.18142 -0.3259,0.44812 -0.082,0 0.2037,-0.61107 0,-1.0592 c 0.035,-0.0284 0.048,-0.0738 0.082,-0.12222 z m 5.9479,0.20369 0.4074,0 0,0.48886 0.2444,0 0.041,-0.0407 -0.041,0.28517 -0.3259,0.0815 -0.041,-0.12222 0.041,-0.20369 -0.3666,-0.0815 -0.163,0.0407 c 0.1408,-0.12156 0.2037,-0.25687 0.2037,-0.44812 z m 13.8919,0 0.2445,0.0407 0.1222,0.73329 -0.082,0.24443 -0.4074,-0.61108 0.1222,-0.40738 z m -11.8142,0.2037 0.082,0 -0.2037,0.89624 -0.082,0.0407 -0.2037,-0.20369 c -0.1035,0 -0.1645,0.009 -0.2444,0.0407 l 0.2036,-0.65183 0.4482,-0.1222 z m 0.774,0 0.4889,0 0.1629,0.0407 -0.2444,0.77402 -0.5296,0.32592 -0.2444,0 0.082,-0.2037 0.1629,0 0,-0.20369 0.2852,-0.0815 -0.2852,-0.28517 0.1222,-0.36664 z m 2.8517,0 0.6519,0 -0.082,0.20368 -0.6111,-0.12221 0.041,-0.0815 z m -22.5286,0.16294 0.6519,0.16296 -0.4889,0.61108 -0.3667,-0.0815 0.2037,-0.69256 z m 14.9512,0.12222 0.2037,0 0.3666,0.0815 -0.4073,0.20369 -0.041,0.2037 0.041,0.12221 -0.163,0.0407 -0.2037,0 0.2037,-0.65182 z m 20.0028,0.0407 0.2037,0.0407 -0.041,0.20369 -0.2037,-0.0407 0.041,-0.20369 z m -18.8214,0.16295 0.2445,0.0407 -0.041,0.2037 -0.2852,0.0407 0.082,-0.28518 z m 6.1923,0 0.2852,0.0407 -0.041,0.0815 -0.2444,-0.0815 0,-0.0407 z m 6.1516,0.2037 0.6518,0.12221 0.2852,0.85551 c 0.027,0.314 0.036,0.61618 -0.041,0.93698 l -0.2037,-0.0815 0.163,-0.44812 -0.5704,-0.12222 -0.041,0.2037 0.3259,0.81476 -0.3259,0.12222 c -0.1051,0.33294 -0.023,0.6072 0.2852,0.77403 -0.04,0.10991 -0.074,0.22 -0.1222,0.32591 l -0.2445,0.0815 0.1223,-0.40739 -0.5704,-0.12222 -0.2444,1.75176 c -0.1708,0.17433 -0.368,0.37122 -0.5704,0.5296 l 0.2037,-0.28516 c 0.09,-0.61376 -0.1265,-0.99034 -0.6111,-1.09994 l 0.1223,-0.40739 0.611,0.12222 0.1223,-0.28518 -0.3259,-0.28517 0.4481,-0.12222 0,-1.18141 0.5296,-1.79249 z m -27.3765,0.0407 0.8148,0.40739 -0.3259,1.09993 -0.2852,-0.0815 -0.3259,-1.01846 0.1222,-0.40739 z m 2.4851,0.0407 0.5703,0.12221 -0.082,0.2037 -0.5296,-0.12222 0.041,-0.20369 z m 32.0207,0.12221 0.2852,0.0407 -0.2037,0.69255 -0.2852,-0.0407 0.2037,-0.69255 z m -23.3026,0.0407 0.2037,0 0,0.2037 -0.2445,-0.0407 0.041,-0.16296 z m 10.144,0 0,0.0815 -0.041,0 0.041,-0.0815 z m 11.8142,0.28517 -0.3666,1.34437 -0.041,0 0.4074,-1.34437 z m -11.4883,0.0815 0.2444,0.0815 -0.082,0.20369 -0.2852,0.12222 0.1222,-0.40739 z m 10.3069,0 0.041,0 c 0.027,0.19875 0.01,0.41807 -0.041,0.65182 l -0.163,-0.0407 0.163,-0.61108 z m 1.5888,0 0.1222,0.0407 0,0.20369 -0.1629,-0.0407 0.041,-0.2037 z m -16.3363,0.12222 0.163,0 -0.4481,0.44812 -0.2037,0 0.4888,-0.44812 z m 3.1369,0 0.2852,0 -0.082,0.44812 -0.3259,0 0.1222,-0.44812 z m -22.4471,0.20369 0.082,0.12222 -0.041,0.0815 c -0.011,-0.0687 -0.041,-0.1361 -0.041,-0.2037 z m 20.1657,0 0.5297,0 0.082,0.0815 -0.082,0.32591 -0.6111,-0.12222 0.082,-0.28517 z m -18.9028,0.0815 0.2037,0.0407 0,0.24443 c -0.066,-0.0966 -0.1383,-0.18401 -0.2037,-0.28517 z m 10.7143,0.20369 -0.082,0.28518 -0.041,0.0815 -0.041,0.12222 -0.1629,-0.20369 0.3259,-0.28518 z m 19.7176,0 0.2037,0.0407 -0.082,0.16296 c -0.028,-0.0538 -0.092,-0.14667 -0.1222,-0.2037 z m -4.1553,0.0407 0.6111,0.12222 -0.081,0.24443 -0.6111,-0.16295 0.082,-0.2037 z m 7.9441,0 0.1629,0.0407 -0.2852,0.97772 -0.1222,-0.0407 0.2445,-0.97773 z m -29.4542,0.0815 1.2221,0.0815 -0.2037,0.61107 -1.2629,0 0.2445,-0.69255 z m 10.918,0.0407 0.6518,0 0,0.20369 -0.1222,0 -0.6111,-0.16295 c 0.029,-0.0137 0.051,-0.0271 0.082,-0.0407 z m 14.2993,0.0815 0.2852,0.40738 -0.2852,0.44812 -0.2444,-0.0407 0.2444,-0.81476 z m 1.1407,0.3259 0.1222,0.61108 -0.2852,-0.0815 0.163,-0.5296 z m 4.1554,0.0407 0.1222,0 c -0.064,0.20395 -0.057,0.39208 0,0.5296 l -0.041,0 -0.1222,0.40739 0.041,0.89625 -0.4074,0.48885 -0.2037,-0.0407 0.3259,-1.18141 -0.4481,-0.12221 0.2444,-0.81478 0.4074,0.12222 0.081,-0.28517 z m -17.2326,0.0407 0.3667,0 0,0.28517 -0.2445,0.0815 -0.1222,-0.0407 0,-0.32591 z m 0.7741,0 0.4074,0 -0.163,0.57034 -0.2444,-0.0407 -0.082,-0.0815 0.082,0 0,-0.44812 z m 2.0369,0 0.4074,0 -0.1222,0.69256 c -0.146,0.15267 -0.3488,0.24964 -0.5704,0.32591 l -0.611,-0.44813 c 0.097,0.029 0.2025,0.0644 0.3259,0.0815 0.414,0 0.5703,-0.19281 0.5703,-0.65182 z m -22.4471,0.0407 c 0.01,0.0179 0.071,0.0224 0.082,0.0407 l -0.082,0 0,-0.0407 z m 2.7702,0.0407 0.8148,0.2037 -0.082,0.20369 -0.8148,0.0815 c -0.02,-0.0217 -0.021,-0.0594 -0.041,-0.0815 l 0.1223,-0.40739 z m 21.4287,0 0.2852,0.16296 -0.082,0.20369 -0.2852,-0.0407 0.082,-0.32591 z m -2.3221,0.0815 0.2851,0.0815 -0.2851,0 0,-0.0815 z m -14.2994,0.36665 0.4889,0.5296 -0.2037,0.65182 -0.041,0 -0.2444,-0.32591 -0.5296,-0.12222 c -0.048,0.151 -0.1392,0.2794 -0.2445,0.36665 l -0.8555,-0.24443 c -0.047,-0.23182 -0.2221,-0.40088 -0.6111,-0.48886 l 0.041,-0.20369 0.5704,0.12221 0.2037,0.24443 c 0.1052,-0.33289 0.5689,-0.44605 1.4258,-0.5296 z m 3.1777,0.32591 0.3666,0.44812 -0.6518,-0.12222 0.2852,-0.3259 z m 21.673,0 0.1222,0.20369 c -0.02,0.075 -0.087,0.16363 -0.1222,0.24443 l -0.1222,-0.0407 0.1222,-0.40738 z m -1.3443,0.12222 0.2036,0.36664 -0.041,0.20369 -0.2444,-0.36665 c 0.023,-0.0703 0.061,-0.13194 0.082,-0.20368 z m -25.91,0.40738 0.2445,0.0407 -0.1223,0.40738 -0.2444,-0.0407 0.1222,-0.40739 z m -1.5073,0.0815 0.2037,0.0407 -0.041,0.12222 c -0.061,-0.0423 -0.1022,-0.11767 -0.163,-0.16296 z m -3.9109,0.0815 c 0.1983,0.0449 0.3656,0.10693 0.5296,0.12222 l 0.4888,0.61107 0,-0.48885 -0.1222,-0.12222 c 0.1736,-0.0109 0.3316,-0.0657 0.4481,-0.12222 0.1559,0.20014 0.3052,0.42706 0.4889,0.65181 l -0.3259,0.44813 -0.1222,-0.12221 -0.082,-0.16296 -0.2852,-0.0407 -0.6518,0.28517 0.041,0.61109 c -0.1697,-0.1506 -0.3284,-0.3246 -0.4889,-0.48887 l 0.082,-0.20369 -0.3666,-0.0815 c -0.1552,-0.17217 -0.3026,-0.34478 -0.4482,-0.5296 l 0.6519,0.12222 0.1629,-0.48887 z m 11.7328,0.24444 0.4481,0 0,0.48885 -0.4481,0 0,-0.48885 z m 11.692,0 0.163,0 0,0.12221 -0.163,-0.12221 z m -4.4405,0.0407 0.1629,0.28518 -0.041,0.16294 -0.9777,0 -0.2852,0 0,-0.0407 c 0.097,0.0219 0.1955,0.0613 0.2852,0.0407 0.1794,-0.0411 0.3596,-0.19638 0.4889,-0.40738 l 0.3666,-0.0407 z m -0.7333,0.0407 0,0.0407 -0.5296,0 0.5296,-0.0407 z m 2.1999,0.0407 c 0.1,0.0769 0.1569,0.22678 0.1629,0.36664 l -0.6925,0 0.1629,-0.28516 0.3667,-0.0815 z m 17.1103,0.0407 0.163,0.0407 -0.041,0.16296 -0.163,-0.0815 0.041,-0.12222 z m -21.1435,0.0407 0.1222,0 c 0.1262,0.0632 0.2198,0.1547 0.2445,0.28516 l -0.3667,0 0,-0.28516 z m 11.6921,0.44812 0.5296,0.12221 -0.082,0.24444 -0.5296,-0.12222 0.082,-0.24443 z m -13.0365,0.0815 0.163,0.12221 -0.081,0.2037 -0.082,-0.0407 0,-0.28517 z m -4.1146,0.0815 0.2445,0.0407 0.1222,0.0815 0.1629,0 -0.082,0.24443 -0.3666,0.2037 -0.1222,0.0407 0,-0.0815 0.1222,0.0407 0.041,-0.2037 -0.1222,-0.28517 0,-0.0815 z m 25.4211,0.0407 0.1222,0.44813 -0.1222,0.28516 0,-0.73329 z m -16.1734,0.16296 -0.041,0.20369 -0.041,0.48886 -0.937,-0.12222 -0.082,-0.0815 0.7741,-0.36665 -0.3667,-0.0815 0.6926,-0.0407 z m -3.5035,0.0407 -0.041,0.12221 -0.2852,-0.0815 0.3259,-0.0407 z m 4.7664,0 0.4482,0.0815 0,0.0407 0,0.2037 c -0.1905,-3e-5 -0.299,0.0478 -0.4074,0.12221 l -0.041,-0.44812 z m -2.5665,0.0407 -0.1222,0.44812 -0.6111,-0.0815 -0.2444,-0.24443 -0.082,0.2037 -0.2852,-0.0407 0.082,-0.24444 0.082,0 0.2037,0.0815 -0.041,-0.0815 0.2852,0 0.7333,-0.0407 z m 3.7887,0 0.1222,0.0407 -0.1222,0 0,-0.0407 z m -15.2771,0.0407 0.163,0.24444 0.2852,0 0.1629,-0.12222 0.2852,0.28517 -0.3259,0.36664 c -0.7619,0.018 -1.1994,0.12476 -1.2629,0.32591 l -0.082,0.2037 0.2851,0.0815 0.5297,0 -0.2445,0.28516 c -0.3067,10e-6 -0.7246,-0.15749 -1.1814,-0.36664 l 0.1222,-0.32591 -0.3666,-0.0815 -0.3259,0.16295 c -0.3254,-0.1839 -0.6736,-0.42524 -1.0593,-0.69255 0.53,0.11988 0.9409,0.021 1.2222,-0.28517 0.452,0.0971 0.8964,0.16296 1.3851,0.16296 l 0.082,0 0.163,0.0407 0.041,-0.16296 0.1222,-0.12222 z m 1.9148,0.0815 c 0.012,0.27819 0.175,0.47168 0.611,0.57034 l -0.041,0.12221 -0.1629,0.0815 c -0.4016,-0.0334 -0.7787,-0.0704 -1.1,-0.0815 0.1876,-0.17418 0.4654,-0.46551 0.6926,-0.69255 z m 25.1766,0 0.1222,0.0407 -0.2444,1.01846 -0.1223,-0.0407 0.2445,-1.01846 z m -10.9588,0.0815 0.2445,0.0815 -0.082,0.28516 -0.163,0 0,-0.36664 z m -20.8175,0.12222 c 0.2965,0.3446 0.6323,0.71224 0.9777,1.09994 l -0.7333,-0.16296 c -0.294,-0.2508 -0.5827,-0.52525 -0.8555,-0.81477 l 0.6111,-0.12221 z m -1.0592,0.24442 0.4481,0.7333 -0.3259,0 c -0.2314,-0.13532 -0.4738,-0.24994 -0.6926,-0.40739 0.047,-0.0675 0.091,-0.14686 0.1222,-0.24443 l 0.4482,-0.0815 z m 23.2211,0.16295 0.5704,0.12222 0,1.18142 -0.4482,0.12221 -0.5296,-0.12221 0.4074,-1.30364 z m 11.2847,0.12222 -0.2037,0.40739 0.082,-0.32591 0.1222,-0.0815 z m -16.2956,0.12222 0.2445,0 0,0.0815 -0.2445,-0.0407 0,-0.0407 z m -19.6768,0.12221 c 0.029,0.007 0.054,-0.005 0.081,0 l 0.082,0.0815 -0.3667,0 0.2037,-0.0815 z m 29.169,0.0407 -0.041,0.36665 -0.2852,-0.0815 c 0.1196,-0.0874 0.2148,-0.19178 0.3259,-0.28518 z m 3.8294,0 0,0.0815 -0.041,0 0.041,-0.0815 z m -0.9777,0.0407 0.2037,0.0815 c -0.072,0.0648 -0.1696,0.10081 -0.2444,0.16296 -0.192,0.1594 -0.3681,0.33852 -0.5704,0.48885 -0.078,-0.0803 -0.1397,-0.20168 -0.2037,-0.3259 0.1573,-0.0786 0.2844,-0.16146 0.4482,-0.24443 l 0.3259,0.0815 0.041,-0.2037 c 0.01,-0.003 -0.01,-0.0377 0,-0.0407 z m -23.5471,0.2037 -1.0999,0.52959 -0.163,0 0,-0.20369 c 0.1087,1e-5 0.2967,-0.11102 0.5296,-0.28516 l 0.7333,-0.0407 z m -4.9294,0.12221 c 0.1298,0.14532 0.2302,0.25608 0.3667,0.40738 l 0,0.2037 c -0.065,-0.0425 -0.139,-0.0782 -0.2037,-0.12222 l 0.041,-0.0815 -0.163,-0.0407 c -0.08,-0.0559 -0.1659,-0.10467 -0.2444,-0.16295 l 0.163,-0.0407 0.041,-0.16295 z m 10.0218,0.0815 0.3666,0.24442 -0.082,0.0815 -0.2037,0 c 0,-0.12072 -0.037,-0.22823 -0.082,-0.3259 z m -2.0369,0.3259 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m 6.6404,0 0.4074,0 0,0.0815 -0.2445,0.12222 -0.1629,0 0,-0.2037 z m -3.0962,0.12222 0.4074,0.0815 -0.4074,0 0,-0.0815 z m 5.8257,0 0.2444,0.0407 0.2445,0.28517 0.082,0 0,0.40739 c -0.3616,0.0312 -0.758,0.0611 -1.1407,0.0815 l 0.3259,-0.48886 c 0.079,-0.004 0.1557,0 0.2444,0 l 0,-0.32591 z m -6.4775,0.32591 0.6518,0 0,0.48886 -1.0184,0 0.3666,-0.48886 z m 8.1885,0.0407 0.2852,0.0815 -0.041,0.12221 c -0.1062,0.0146 -0.2175,0.0272 -0.3259,0.0407 l 0.082,-0.24443 z m 9.4107,0.0407 c -0.02,0.28762 -0.041,0.5616 0.041,0.77403 l -0.163,0.0815 -0.1222,0.40739 -0.3259,-0.44813 0.5704,-0.81476 z m -12.0587,0.0407 c 0.01,-0.004 0.03,0.004 0.041,0 l 0.041,0.0407 -0.082,0.24444 -0.2444,-0.0407 c 0.043,-0.0934 0.1037,-0.18419 0.2444,-0.24443 z m -8.6366,0.16295 0.6518,0 0,0.20369 -0.6518,0.20369 0,-0.40738 z m 1.0184,0 0.4889,0 0,0.20369 -0.4889,0 0,-0.20369 z m 3.5851,0 0.3666,0 -0.3666,0.40738 -0.4889,0 0.4889,-0.40738 z m -15.1549,0.20369 0.041,0 0,0.20369 -0.4481,0 0,-0.0407 0.4074,-0.16295 z m 3.3406,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 4.9701,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 3.911,0 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 18.0473,0.0407 0.082,0 0,0.0407 -0.082,-0.0407 z m -2.7295,0.0815 0.041,0 -0.163,0.48887 -0.5296,-0.12222 0.041,-0.0815 c 0.1755,-0.0707 0.415,-0.20082 0.6111,-0.28517 z m 5.296,0 c 0.072,0.0901 0.1611,0.14842 0.2445,0.24444 l 0,0.0407 -0.4074,-0.0815 c -0.029,-0.0236 -0.055,-0.0579 -0.082,-0.0815 l 0.2444,-0.12222 z m -32.6318,0.28517 0.6518,0 0,0.24444 -0.6518,0 0,-0.24444 z m 2.9332,0 0.3666,0 -0.3666,0.52961 0,-0.52961 z m -3.5443,0.24444 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 9.3292,0 0.6111,0 1.0185,0.28517 1.2221,-0.28517 1.3037,0 0,0.48885 -5.1739,0 0,-0.20368 1.0185,-0.28517 z m 4.522,0 4.6035,0 -0.4481,0.48885 -0.2037,-0.20368 -1.0185,0.20368 -2.4851,0 -0.4481,-0.48885 z m 5.459,0 0.5704,0 0,0.28517 -0.5704,0 0,-0.28517 z m 15.3178,0 c -0.021,0.0666 -0.029,0.1361 -0.041,0.20369 l -0.041,0 0.041,-0.16295 0.041,-0.0407 z m -30.5134,0.28517 1.0185,0 0,0.20368 -1.0185,0 0,-0.20368 z"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.49142857;fill:#fce94f;fill-opacity:1;stroke:none;display:inline;filter:url(#filter3544);font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+       inkscape:export-filename="Z:\private\général\Charte graphique\OD\OD6.0\splashscreen\png\splashscreen_OD6.0.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"
+       inkscape:connector-curvature="0" />
+    <path
+       transform="matrix(1.073713,0,0,1.073713,2.6401789,-954.90334)"
+       id="path3949"
+       d="m 589.57094,427.17868 -2.5665,0.48886 0,1.34438 0.5703,-0.61109 0.6518,0 0,0.2037 -1.2221,0.40739 0,2.07766 0.2036,0 -0.2036,0.28516 0,0.85552 c -0.1243,0.11339 -0.1889,0.18925 -0.2852,0.28516 l 0,0.48886 c 0.096,-0.0462 0.1847,-0.0603 0.2852,-0.12221 l 0,0.7333 -0.2852,0.24442 0,8.55509 0.6111,2.24062 0.082,0.57034 c -0.028,0.0807 -0.061,0.16776 -0.082,0.24443 0.066,0.0489 0.1079,0.10817 0.1629,0.16295 l 0,0.16296 -0.2444,-0.0815 c -0.024,-0.006 -0.057,-10e-4 -0.081,0 0.036,-0.12665 0.062,-0.25692 0.1222,-0.36665 l -0.163,-0.61107 -0.4073,0.0815 0,3.87016 c 0.014,-0.002 0.027,0.004 0.041,0 l 0.2037,-0.0407 0.041,-0.0407 0,0.85551 c -0.09,0.26172 -0.1903,0.50208 -0.2852,0.69255 l 0,0.97772 0.2444,0.0815 -0.041,0.16295 -0.2037,-0.0815 0,11.12163 0.163,-1.18142 0.1222,0.0407 0,1.01846 0.2037,0 0.4889,0.52959 c -0.1,0.0821 -0.1897,0.19341 -0.2445,0.36665 l -0.2037,-0.24443 -0.082,0 -0.1629,-0.65181 0,0.57033 -0.041,0 -0.2445,0.12222 0,0.89624 0.2852,-0.1222 0,0.3259 -0.1222,-0.0407 -0.1222,0.40739 0.2444,0.0407 0.3667,-0.12222 0,0.24443 -0.3667,0 0,0.85551 -0.2852,0.0815 0,0.20369 0.2852,-0.0815 0,0.0815 c 0.4141,4e-5 0.5704,-0.14215 0.5704,-0.44813 l -0.2037,-0.20369 0.5296,0 -0.1223,0.0815 -0.082,0.24443 0.1223,0 0,0.0815 0.2037,0.24443 0,0.28517 -1.0185,0 0,0.24443 3.3813,0 c 0.2347,-0.63832 0.527,-0.97773 0.937,-0.97773 l 0,-0.40737 -0.5703,0 -0.2852,0.20368 -0.163,0 -0.2444,-0.3259 0.082,-0.24443 -0.2444,0.0815 -0.6519,0 -0.3259,0.12222 0,-0.0407 -0.3666,-0.0815 -0.2852,0.2037 -0.4481,-0.2037 0,-0.24443 1.0592,0 0,-0.20369 -0.2037,-0.2037 0,-0.24442 0.4889,0.16294 -0.082,0.2037 0.5703,0.12222 0.2852,-0.0407 0.6111,0.20369 -0.082,0.24443 0.2851,0.0815 0.5704,-0.0407 0.6518,0.24444 0,0.20368 c -0.3219,7e-5 -0.8163,0.38652 -1.3851,1.18142 l 18.5769,0 c 0.082,-0.0802 0.1634,-0.16303 0.2444,-0.24443 0.2121,0.0756 0.5041,0.16493 0.7333,0.24443 l 1.4666,0 -0.2444,-0.40738 1.1407,0.0815 0.2037,0.0815 -0.041,0.16295 -0.5296,0.0815 0.7333,0 7.8626,0 0.041,-0.16295 c 0.061,0.0307 0.1355,0.0557 0.2037,0.0815 l -0.041,0.0815 1.3036,0 0.3667,-0.24443 -0.041,0.24443 2.5665,0 0.082,-0.24443 0.2444,0.0407 -0.082,0.20369 0.4482,0 0,-1.34437 -0.082,0.24443 -0.2445,-0.0407 0.1223,-0.40738 0.2037,0.0815 0,-9.04396 -0.1223,-0.0407 0.1223,-0.57033 0,-1.71103 -0.2852,0.0815 -0.041,0.2037 0.2037,0.32591 -0.6111,1.09994 -0.2037,-0.0407 0.937,-3.50351 0,-1.58881 -0.2852,0.12222 -0.041,1.0592 -0.6518,2.36283 -0.5703,0.28517 1.1814,-4.39975 0.3666,0.57033 0,-1.34436 -0.1629,-0.0407 0.1629,-0.57035 0,-1.83322 c -0.2597,-0.39209 -0.5238,-0.78278 -0.8147,-1.14068 l 0.8147,0.0407 0,-1.22216 -0.2037,0.85551 -0.2444,-0.0815 0.3259,-1.18142 0.1222,0.0407 0,-3.54425 -0.082,0.28517 -0.4481,-0.12222 0.5296,-2.03692 0,-7.98475 -0.041,0.12221 -0.8148,0 -0.6518,-0.36664 -0.8148,0 0.041,-0.20369 -0.3259,-0.52961 0.082,-0.28516 0.2037,0.0407 0.8555,0.77403 0.2852,-0.16296 0.082,-0.28517 c -0.3163,-0.38755 -1.7549,-1.08881 -4.3183,-2.07766 l -1.1,0 2.811,1.18141 -0.1222,0.40739 0.2852,-0.16295 0.6925,0.20369 -0.4888,0.81477 -0.2037,-0.0407 -0.163,-0.28517 -0.2444,-0.0407 -0.3667,0.12222 0.1222,-0.40738 0.3667,-0.16296 0,-0.0407 -0.2444,-0.28517 -0.2445,-0.0815 -0.2851,0.2037 -0.2445,-0.0407 -0.6925,-0.48887 -0.5704,0.36665 -1.5481,-1.26289 -1.8332,0 -0.082,0.32591 -0.2444,-0.0407 0.082,-0.28517 -3.2999,0 1.0185,1.54806 0.2037,0.0407 -0.163,0.69255 -0.4481,-0.12221 -0.082,0.20369 c 0.3276,0.0876 0.5624,0.55849 0.6926,1.38511 l -0.163,0.69255 -0.2444,-0.0815 0.1222,-0.44812 -0.7333,-0.2037 -0.163,0.44813 0.4889,0.12221 -0.2444,0.89625 -0.4889,-0.12221 -0.2037,0.93698 0.4481,0.12222 -0.1222,0.40738 -0.4481,-0.12221 -0.1222,0.40738 0.4481,0.12221 -0.163,0.69256 c -0.4096,-0.10951 -0.697,0.1232 -0.937,0.69256 -0.022,0.0836 -0.038,0.17514 -0.041,0.24443 l -0.2444,-0.28517 -0.2037,0.28517 c -0.01,-0.0895 -0.01,-0.18894 0,-0.28517 l 0.2037,0 0,-0.2037 -0.1629,-0.16295 c 0.014,-0.071 0.021,-0.12964 0.041,-0.2037 l 0.5296,0.16296 0.1629,-0.65181 -0.4074,-0.61109 0.937,-1.3851 -0.2037,-0.0407 0.2852,-0.16295 0.081,-0.28518 -0.2037,-1.46658 0.6518,-0.24444 -0.2444,-0.0815 0.4481,-0.61108 c 0.1537,-1.0675 -0.199,-1.68476 -1.0592,-1.9147 l 0.2852,-0.16296 0.082,-0.24443 -1.5888,0 0,0.0815 0.6925,0.16296 -0.937,0.73329 c 0.085,-0.31633 0.048,-0.64017 -0.041,-0.97772 l -1.5888,0 -0.2037,0.69255 -0.2444,-0.0407 0.1629,-0.65182 -0.937,0 0.2445,0.48886 -0.082,0.44812 -0.3667,-0.57033 0.082,-0.36665 -0.4481,0 -0.8555,3.09612 c -0.097,-0.0451 -0.1796,-0.0767 -0.2852,-0.12221 l -0.041,0 -0.1629,-0.24443 0.2851,-0.12222 0.082,-1.18141 0.3667,-1.42585 -0.4889,0 -0.6111,2.36283 -0.2444,0 0.6111,-2.36283 -2.6073,0 -0.041,0.16295 0.4481,0.12222 -0.2852,1.0592 c -0.9987,-0.37944 -1.8221,-0.65178 -2.4443,-0.65182 -0.1476,0.37417 -0.4354,0.62502 -0.774,0.77404 -0.016,-0.069 -0.022,-0.13369 -0.041,-0.2037 l -0.041,-0.20369 0.5703,-0.0815 0,-0.28517 c 10e-5,-0.20088 -0.2546,-0.36698 -0.774,-0.48886 l -0.041,-0.20369 -0.9778,0 c 10e-4,0.0136 0,0.0271 0,0.0407 l 0,0.24443 c -0.2786,-0.13728 -0.624,-0.21604 -1.0184,-0.28517 l -1.7111,0 0,0.16295 -0.2444,0.0815 -0.082,-0.24443 -0.5296,0 0.041,0.12221 -0.163,0.16296 -0.082,-0.28517 -2.7295,0 -0.2037,0.97772 -0.3259,0 0,-0.48886 c 0.085,-0.17617 0.1553,-0.35747 0.2037,-0.48886 l -2.4036,0 z m 36.2576,12.83263 0,-0.93698 -0.041,0.0407 -0.163,0.61108 0.2037,0.28517 z m -34.3429,-12.75116 -0.2851,0.44813 -0.4889,0.0815 0.082,-0.28517 0,-0.12222 0.6925,-0.12222 z m 13.4846,0.0407 0.4481,0.12222 -0.041,0.24443 -0.4481,-0.12221 0.041,-0.24444 z m -16.2956,0.36665 0,0.48886 -0.4481,0 0.4481,-0.48886 z m 7.8219,0 0.082,0.0407 0.2037,0.89625 c -0.2224,-0.0204 -0.4372,-0.0455 -0.6111,-0.0815 l 0.2037,-0.65182 -0.041,-0.16295 0.163,-0.0407 z m 1.4666,0 0.4074,0.48886 -0.4074,0 0,-0.48886 z m -2.5665,0.16296 0.082,0.28516 -0.1223,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.1516,0.0407 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 5.2146,0 0.2037,0 0,0.28517 -0.2037,0 0,-0.28517 z m -2.974,0.28517 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24443 -0.1629,0 c 0.038,-0.0691 0.088,-0.17948 0.1222,-0.24443 z m 13.0365,0 0.2037,0.0815 -0.163,0.65182 -0.3259,-0.57035 0.2852,-0.16295 z m 11.8142,0.0407 0.4482,0.12221 -0.1223,0.48887 -0.4888,-0.12222 0.1629,-0.48886 z m -5.8256,0.16295 0.2444,0.0407 -0.1629,1.58881 -0.2852,0.16295 -0.1222,0.48886 -0.5296,2.52579 -0.6519,-0.65182 1.1,-2.648 -0.2444,-0.28517 0.082,-0.20369 0.5703,-1.01847 z m 0.9777,0.0407 0.5704,0.12222 -0.2852,0.16295 -0.082,0.2037 -0.7741,3.87015 -0.2851,0.16296 -0.082,1.14067 -0.2037,0.77403 -0.5704,0 0.163,-0.57033 c 0.2449,-0.0957 0.4481,-0.21289 0.4481,-0.36665 l -0.2852,-0.28516 1.3852,-5.21454 z m -17.7214,0.2037 0.2444,0 0.041,0.16295 -0.082,0.0407 -0.1222,0 -0.082,-0.20369 z m 14.5438,0.12221 0.2037,0.0407 -0.082,0.44812 -0.2445,-0.0815 0.1223,-0.40738 z m 12.629,0.0407 0.2037,0.0815 -0.082,0.40738 -0.2444,-0.0815 0.1222,-0.40738 z m -29.8208,0.0407 0.6518,0 0,0.2037 -0.6518,0 0,-0.2037 z m -2.0777,0.2037 1.0592,0 c -0.029,0.0977 -0.082,0.18867 -0.1222,0.28516 l -0.937,0 0,-0.28516 z m 11.855,0 0,0.52959 -0.4889,0 0.4889,-0.52959 z m 24.3618,0.16294 c -0.074,0.27639 0.1418,0.51308 0.5704,0.65182 l 0,-0.5296 -0.5704,-0.12222 z m -6.07,0.32591 0.4481,0.12222 -0.3667,1.30363 -0.4481,-0.12221 0,-1.18142 0.3667,-0.12222 z m -17.0696,0.44813 0,0.48886 -0.2037,0 -1.6703,0.24443 c 0.035,-0.18638 0.074,-0.3749 0.082,-0.57034 l 1.7925,-0.16295 z m 0.3666,0 0.6518,0.20369 0,0.28517 -0.8555,0 0.2037,-0.28517 0,-0.20369 z m 1.0185,0 0.041,0 0.2852,0.44812 -0.041,0.0407 -0.2852,0 0,-0.48886 z m 1.8332,0 -0.082,0.3259 -0.2851,0.0407 0.1222,-0.3259 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.2662,0 0.6519,0.36664 -0.082,0.20369 -0.4482,0.85551 c -0.076,0.61312 0.12,0.99046 0.5296,1.09995 l -0.1222,0.40738 -0.5296,-0.12222 -0.082,0.28517 0.2445,0.28518 -0.3667,0.12221 0.041,1.18142 -0.4889,1.79249 -0.5296,-0.12222 -0.4074,-1.30363 0.1223,-0.48886 0.2444,0.0407 -0.1222,0.48886 0.4481,0.12221 0.041,-0.20369 -0.2852,-0.81477 0.2852,-0.12221 c 0.1185,-0.44345 -0.079,-0.76488 -0.5703,-0.89625 l 0.6518,-0.28517 -0.1222,0.40739 0.4888,0.12221 0.3667,-3.21834 0.041,-0.20369 z m -20.4916,0.12222 0.2444,0.0407 0.1222,0.48886 -0.3259,-0.0815 0,-0.36664 -0.041,-0.0815 z m -7.7404,0.0815 0.4481,0 -0.4481,0.5296 0,-0.5296 z m 1.3036,0 0.8148,0 c -0.013,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2572,0.20542 -0.3429,0.30401 -0.5703,0.48887 l -0.2037,-0.24443 0,-0.28517 z m 1.3037,0 0.3666,0 0.4074,0 0,0.20369 -0.082,-0.0815 -0.4888,0.12222 0,0.24443 -0.082,0.0407 -0.2037,-0.24443 -0.082,0 0.1629,-0.28517 z m 1.1407,0 0.6111,0 -0.041,0.28517 -0.5704,0 0,-0.28517 z m 7.2922,0 0.6519,0 -0.082,0.24443 0.1222,0.44812 -0.2852,0.0407 -0.4074,-0.65182 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24443 -0.2037,0.0407 -0.082,-0.28517 z m 21.1435,0 0.8148,0 0.2444,0.0407 -0.082,0.2037 -1.0999,0.16295 0.1222,-0.40738 z m -12.9142,0.0815 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m 5.2553,0 -0.082,0.2037 0.4889,0.12221 0.041,-0.20369 -0.4482,-0.12222 z m 10.144,0.36665 0.4888,0.12222 0.4074,0.57034 -0.6518,0.3259 0.2852,0.0815 -0.6111,1.01846 c -0.3277,-0.0876 -0.363,-0.37133 -0.2444,-0.81477 l 0.2851,-0.16295 0.041,-0.20369 0,-0.93699 z m -1.3851,0.28517 0.2444,0.0815 0.041,0.73329 -0.4481,-0.12222 0.1629,-0.69255 z m -25.5026,0.0407 0,0.40739 -0.2851,0 -0.082,-0.32591 0.3666,-0.0815 z m 23.9137,0.0407 0.2445,0.0815 -0.1222,0.40738 -0.2037,-0.0407 0.082,-0.44812 z m -24.7284,0.0815 0.082,0.28517 -0.2445,0 0,-0.24443 0.163,-0.0407 z m -8.2293,0.0407 1.0185,0 c -0.101,0.0837 -0.1918,0.16587 -0.2852,0.24443 l -0.7333,0 0,-0.24443 z m 2.0777,0 0.4481,0 0,0.24443 -0.6111,0 0.163,-0.24443 z m 7.8626,0 0,0.24443 -0.2037,0 -0.041,-0.16295 0.2444,-0.0815 z m 3.748,0 0.4073,0 0,0.24443 -0.4073,0 0,-0.24443 z m 1.0592,0 0.8147,0 0,0.24443 -0.8147,0 0,-0.24443 z m 22.3656,0.0407 0.4481,0.12221 0.2852,0.28517 0.082,-0.40738 0.2444,0.0407 -0.1222,0.44811 -0.2037,-0.0815 0.163,0.28517 -0.1222,0.48886 c -0.3277,-0.0875 -0.6161,0.14207 -0.7741,0.73329 l -0.3666,-0.61107 0.3666,-1.30363 z m -31.0023,0.0407 0.2852,0.20368 -0.2037,0.0815 -0.082,-0.28516 z m -4.7257,0.0815 0.041,0.0815 -0.1222,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.98,0.0407 0.5296,0.16295 -0.041,0.20369 -0.5296,-0.12221 0.041,-0.24443 z m -20.4916,0.0407 0.3666,0 0,0.28516 -0.3666,0 0,-0.28516 z m 3.5443,0 0.2037,0 c 0.2933,0.10003 0.5027,0.25431 0.6518,0.48886 l -0.082,0.12221 c 0.049,0.098 0.1128,0.18842 0.1629,0.28518 l -0.3666,0 0,0.24443 0.5296,0.0815 c 0.074,0.1378 0.1679,0.27231 0.2444,0.40739 l -1.7925,0 0,-0.2037 c 0.5521,1.1e-4 0.8148,-0.22357 0.8148,-0.52959 l -0.3667,-0.40739 0,-0.48886 z m -9.2885,0.0407 0.1222,0.44813 -0.2037,0.0407 -0.082,-0.32591 0.163,-0.16296 z m -3.5035,0.0815 0.082,0.44812 -0.4482,0.12222 -0.041,-0.16295 0.326,-0.0407 0,-0.32591 0.082,-0.0407 z m 1.6295,0.0407 c 0.2851,1.06669 0.7124,1.54314 1.3037,1.38511 l 0.081,0.16295 -0.163,0.24444 -0.2444,-0.12222 c -0.5965,0.73086 -0.8709,1.45177 -0.6926,2.1184 l -0.8555,-0.65181 0.6111,-0.16296 -0.1222,-0.40739 c -0.3696,0.0988 -0.5984,-0.0975 -0.8148,-0.61107 l 0.9777,-0.7333 -0.4481,-0.93698 -0.041,-0.16296 0.4074,-0.12221 z m 23.5878,0.24443 0.4481,0.12222 -0.082,0.24443 -0.4481,-0.12222 0.082,-0.24443 z m -14.9511,0.0815 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 4.6034,0 0,0.0815 -0.041,0.16296 -0.2036,-0.0407 0.2444,-0.20369 z m -10.5513,0.0407 c 0.1566,0.1293 0.3291,0.24633 0.5703,0.36665 l 0,-0.16296 0.082,0.36665 0,0.0815 -0.4481,0.12221 -0.2037,-0.77402 z m 23.2211,0.0407 0.4482,0.12222 0,0.97772 -0.2852,0.12222 -0.041,0.2037 -0.163,1.46658 -0.4074,0.57034 0.2037,0.24443 -0.3259,0.2037 0.3667,0.57033 -0.2852,0.12222 -0.2444,-0.0407 -0.041,1.14068 -0.3259,1.14067 -0.4482,-0.16295 -0.2037,0.69256 c 0.013,0.0242 0.029,0.0565 0.041,0.0815 l -0.1222,0.0815 0.163,0.0407 c 0.083,0.20379 0.1422,0.44083 0.1629,0.69256 l -0.041,0.2037 -0.1629,-0.24443 -0.2852,-0.0815 -0.041,0.0407 0.2444,-1.54807 0.7741,-2.85169 0.4481,-0.81478 -0.2852,-1.0592 0.5296,0.16296 0.326,-2.07767 z m -28.4357,0.0407 -0.041,0.44813 -0.2852,0.0815 -0.2851,-0.16296 -0.2037,0.0815 0.3666,0.48886 -0.4888,0.61108 -0.326,-0.48887 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48886 -0.1629,0 -0.2037,0.28516 -0.2037,0 0.3666,-0.61107 1.2629,-0.2037 z m 4.8072,0 0.1629,0.65182 -0.2036,0.0407 -0.2037,-0.61107 0.2444,-0.0815 z m -7.0886,0.28518 0.2037,0 0,0.28516 -0.2037,0.24443 -0.2444,0 0,-0.3259 c 0.078,-0.065 0.1633,-0.13004 0.2444,-0.20369 z m 32.5911,0.40737 1.5074,1.34438 -0.1223,0.44812 -0.5296,-0.16295 -0.4888,1.79249 -0.2037,-0.0407 0.4074,-2.48504 -0.2852,0.12222 -0.3259,-0.0815 0.041,-0.937 z m 4.4813,0 0.774,0 -0.1222,0.40739 -0.6925,-0.20369 0.041,-0.2037 z m -27.4173,0.12222 0.041,0 0.2037,0.2037 -0.1629,0.0407 -0.082,-0.24443 z m 3.4221,0 0.5703,0 0,0.2037 -0.5703,0 0,-0.2037 z m 5.4998,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.16296 c -0.014,0.0596 -0.024,0.0991 -0.041,0.16295 l 0.4073,0.12222 c -0.1394,0.12918 -0.3454,0.16298 -0.6518,0.16295 l -0.2037,0 0,-0.20369 0.4889,-0.24443 z m -4.6443,0.0407 0.6518,0.20369 0,0.44813 c -0.414,0 -0.6518,0.18289 -0.6518,0.48885 l -0.1629,0 c 0,-0.45891 -0.1314,-0.73323 -0.4074,-0.73329 l 0,-0.20369 0.5703,-0.20369 z m 11.4476,0.0407 0.326,0.61109 -0.041,0.20368 -0.326,-0.61107 0.041,-0.2037 z m -18.088,0.0407 0.5703,0.28518 0.6519,2.36283 0,0.0815 -0.3667,-0.52961 -0.2037,0 0.5704,0.85551 0.041,0.65182 0.2851,0.12222 -0.3666,0.57033 -1.1814,-4.39976 z m 15.44,0 0.2445,0.0407 -0.2852,1.09994 -0.2445,-0.0407 0.2852,-1.09994 z m -7.0885,0.12222 0.5703,0.20369 0,0.24444 -0.774,0 0.2037,-0.24444 0,-0.20369 z m -9.2885,0.20369 0.4889,0.48886 0.041,0.16296 -0.4889,0.12221 -0.163,-0.65181 0.1223,-0.12222 z m 1.9962,0.12222 0.3259,0.3259 0,0.0815 0.082,0.0407 0.2037,0.24443 -0.1629,0.16296 0.6518,2.36283 -0.2852,-0.16295 -0.8148,-3.05539 z m -7.8219,0.0815 0.082,0.36664 -0.2037,0.0407 -0.082,-0.36664 0.2037,-0.0407 z m 2.4444,0.20368 -0.082,0.61109 0.082,0.24443 0.2444,0.16295 c -0.776,0.20743 -1.0756,0.74803 -0.937,1.71102 l 0.3667,0.57034 -0.2037,0.0407 0.5703,0.24442 -0.1629,1.30364 0.082,0.28517 0.2444,0.12222 -0.2037,0.0407 0.5703,0.85551 c -0.1409,0.11253 -0.2863,0.23952 -0.4481,0.40739 l -0.082,-0.2037 -0.4074,0.12222 -0.082,-0.36665 0.4074,-0.12222 -0.2037,-0.81476 -0.4481,0.12221 -0.2037,-0.81476 0.4074,-0.12222 -0.1222,-0.44813 -0.6519,0.2037 0.082,0.44811 -0.2037,0.0407 -0.1629,-0.61107 c 0.1174,-0.74567 0.3563,-1.18389 0.6518,-1.26289 l -0.082,-0.16296 -0.4074,0.0815 -0.1629,-0.61108 0.2037,-0.0407 1.3444,-2.03694 z m 31.3282,0.2037 0.2444,0.0407 0.2444,0.28517 0.2852,-0.12222 0.6926,0.16296 0.4481,2.28135 -0.041,0.2037 0.2852,0.0815 0.2851,-0.12222 0.2445,0.0407 -0.6926,2.64799 c -0.6159,-0.3229 -0.8481,-0.90563 -0.6111,-1.79249 l -0.2037,-0.0815 0.2852,-0.12222 0.1222,-0.48886 0.082,-1.18141 -0.5703,-0.12222 -0.6926,2.68873 0.2444,0.28518 -0.3666,0.12221 -0.041,0.2037 0.2037,2.19988 -0.8148,0 c -0.1161,0.56732 -0.1894,1.08428 -0.2444,1.50732 -0.1694,0.10755 -0.2849,0.39716 -0.4074,0.85551 l -0.3259,0.12222 -0.4482,-0.12222 -0.1629,-0.93698 0.5703,-0.48887 0,-0.12222 c 0.055,0.0879 0.1487,0.1672 0.2852,0.2037 l 0.2037,0.0407 0.082,-0.2037 0.2444,-1.87397 0.3667,-0.5296 0.7333,-3.62573 0.2444,-0.89624 -0.4481,-0.12222 -0.3667,1.34437 -0.3666,0.12222 0.2444,0.28517 -0.1222,0.48886 -0.5296,-0.16295 0.8148,-3.09613 z m -9.207,0.12221 0.2037,0.0407 -0.2445,0.89625 -0.2851,0.16295 -0.2037,-0.0815 0.5296,-1.01847 z m 6.0701,0 0.2037,0.0407 -0.082,0.40739 -0.2445,-0.0407 0.1222,-0.40739 z m -24.973,0.0815 0.2037,0.81477 -0.2037,0.0407 -0.2444,-0.77403 0.2444,-0.0815 z m -6.7219,0.0407 0.041,0 0.1222,0.44813 -0.2037,0.0407 -0.041,-0.12222 c 0.028,-0.10614 0.05,-0.23043 0.082,-0.32591 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.2614,0.0407 0.2444,0.0407 -0.2036,0.69255 -0.2037,-0.0407 0.1629,-0.69255 z m -26.5617,0.0407 0.1222,0.44813 -0.3259,0.48885 -0.082,-0.36665 0.2851,-0.57033 z m 13.8919,0.0815 0,0.0407 -0.3259,0.2037 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1891,-0.0178 0.3782,-0.0562 0.5296,-0.0815 z m -11.7328,0.24443 0.1223,0.12222 -0.2037,0.0815 -0.041,-0.16294 0.1222,-0.0407 z m 27.1321,0.12222 0.7741,0.20368 -0.041,0.24443 -0.7741,-0.20369 0.041,-0.24442 z m -8.7181,0.0407 0.5703,0.16295 -0.082,0.20369 -0.5296,-0.12221 0.041,-0.24443 z m -15.4808,0.0407 0,0.61109 0.4482,0 c 0,0.33785 0.036,0.62661 0.1222,0.81476 -0.2102,0.0426 -0.4006,0.0946 -0.5704,0.16296 l 0,-0.0407 -0.3666,-0.40738 -0.6518,0.20369 c 0,-0.11015 -0.034,-0.2077 -0.082,-0.28517 l -0.2445,-0.89625 1.3444,-0.16296 z m 2.8925,0 0.2852,0.2037 0.2037,0 1.8739,-0.2037 0,0.2037 -0.2851,0.65182 c 0.3992,-0.22119 0.7009,-0.47342 0.8148,-0.77404 0.071,0.0934 0.1312,0.1937 0.2036,0.28517 l -0.3666,0.0407 0,0.44813 0.4074,0 0.2444,0.28517 0.163,-0.24443 c 0.093,0.10678 0.1891,0.22207 0.2851,0.3259 l 0.041,0.16295 -0.2037,-0.20369 -0.2444,0.12222 0.041,0.69256 -0.2444,0.12221 -0.082,0.16296 -0.6518,-0.12222 c -0.065,-0.12871 -0.107,-0.24434 -0.1223,-0.36665 l 0.326,0 0.3666,0.0815 0.041,-0.20369 -0.2852,-0.5296 c -0.2711,-0.0725 -0.5057,-0.0647 -0.7333,-0.0815 l -0.2037,-0.20369 -0.082,0.16295 c -0.064,0.002 -0.1436,-0.007 -0.2037,0 l -0.5296,-0.61108 -1.0592,0.2037 -0.774,-0.2037 -0.4481,0.44813 -0.163,-0.24443 0,-0.2037 c 0.2415,3e-5 0.4326,0.0163 0.6111,0 0.5354,-0.049 0.774,-0.17787 0.774,-0.40739 z m 16.2955,0 0.2445,0.0815 -0.2445,0.89626 -0.2444,-0.0815 0.2444,-0.89626 z m -19.962,0.40739 0,0.44813 0.4074,0 0,-0.44813 -0.4074,0 z m -1.5481,0.0815 0.2445,0.28517 -0.2037,0.36665 -0.163,-0.5296 0,-0.0815 0.1222,-0.0407 z m -10.5106,0.12222 0.041,0.32591 -0.163,0.0407 0.1222,-0.36665 z m 21.836,0 0.163,0 0,0.24443 -0.163,0 0,-0.24443 z m -16.6622,0.0407 0.5296,0.93698 0.041,0.16295 -0.2037,0.28518 0.7741,1.83323 -0.5296,0.32591 -0.2852,-1.50733 -0.1222,-0.44812 -0.2444,-0.12222 -0.163,-1.42585 0.2037,-0.0407 z m -0.8962,0.0407 1.1407,4.23681 -0.326,-0.0815 0,-0.0815 -0.2851,-0.16294 -0.6926,-3.46278 -0.041,-0.20369 -0.2852,-0.12222 0.4889,-0.12222 z m 19.8805,0.0815 0.2445,0.0815 -0.1222,0.40738 -0.2037,-0.0407 0.082,-0.44812 z m -7.7811,0.0815 0.6518,0 0,0.20369 c -0.1266,0.0362 -0.2232,0.0983 -0.3259,0.16295 l -0.3259,-0.0815 0,-0.28517 z m -9.207,0.12222 0.1222,0.36664 -0.2036,0.0407 -0.1223,-0.36664 0.2037,-0.0407 z m 15.1141,0.0407 0,0.12222 -0.082,0 0.082,-0.12222 z m 9.9811,0.24443 0.2444,0.0407 -0.163,0.48886 -0.2036,-0.0407 0.1222,-0.48886 z m 5.2553,0 0.2444,0.0407 -0.1629,0.48886 -0.2037,-0.0407 0.1222,-0.48886 z m -22.8138,0.0815 0.3667,0 c -0.095,0.17535 -0.2075,0.27297 -0.3667,0.28517 l 0,-0.28517 z m 7.1293,0 0.163,0 0,0.20369 -0.163,0 0,-0.20369 z m -1.5073,0.0407 0.2852,0.0815 -0.2852,0 0,-0.0815 z m 4.7257,0.0815 0.3259,0.61109 -0.1222,0.40737 -0.4481,-0.12221 0.2444,-0.89625 z m 1.0185,0.28517 0.2037,0.0407 c -0.079,0.2957 0.1602,0.56116 0.6518,0.69255 l -0.2445,0.89626 c -0.1373,-0.16028 -0.2847,-0.28993 -0.4481,-0.40739 l 0.041,-0.20369 -0.4481,-0.12222 0.2444,-0.89625 z m -5.8664,0.0407 0.1222,0 0.082,0.0407 -0.1222,0.44813 -0.163,-0.0815 0.082,-0.40739 z m 3.3813,0 0.5703,0 -0.082,0.2037 -0.2444,0 c -0.09,-0.0653 -0.1747,-0.12663 -0.2444,-0.2037 z m -7.4145,0.12222 c -0.014,0.0405 -0.029,0.0791 -0.041,0.12222 l -0.1222,-0.0407 0.1629,-0.0815 z m -15.603,0.16296 0.082,0.16295 0.3259,2.93317 0.4074,-0.12222 -0.1222,-0.36665 0.6111,0.24444 c -0.4434,0.11851 -0.6365,0.41476 -0.5296,0.81477 l 0.2444,0.12221 -0.2444,0.7333 0.041,0.20369 0.4481,-0.12221 -0.1222,-0.44813 0.2037,-0.0407 0.1222,0.44813 -0.3666,1.14068 -0.3667,-0.0815 c -0.056,0.071 -0.068,0.13431 -0.1222,0.20369 l -0.4481,-1.5888 0.041,-1.09994 -0.3259,-0.0815 0.2037,-0.28517 -0.041,-0.24442 -0.4889,0.1222 -0.082,-0.16294 0,-0.0815 0,-0.16296 c 0.3324,-0.11704 0.5134,-0.41156 0.4481,-0.93698 l -0.4481,-0.77404 -0.041,-0.16295 0.5703,-0.36664 z m 31.1653,0 0.5296,0.12221 -0.2037,0.69255 -0.5296,-0.12221 0.2037,-0.69255 z m -28.9246,0.28516 -0.4074,0.0815 0.041,0.20369 0.4074,-0.12222 -0.041,-0.16295 z m 4.7257,0 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 8.5144,0.0407 0.2037,0.0815 -0.2444,0 0.041,-0.0815 z m 16.9066,0 0.5296,0.12221 -0.1222,0.48887 0.4481,0.12222 0.163,-0.69256 0.4481,0.57034 -0.5703,0.81477 -0.163,1.87397 -0.4481,0.5296 -0.2444,-0.0407 c 0.5137,-1.92151 0.4109,-2.92094 -0.2445,-3.09612 l 0.2037,-0.69256 z m -20.0435,0.0815 0.2037,0 -0.1222,0.44813 -0.163,0 0,-0.20369 0.082,-0.24444 z m 1.7925,0 0.2037,0 c 0.1368,0.16132 0.1866,0.38537 0.163,0.65183 l -0.1222,0 -0.2445,-0.65183 z m -2.5665,0.12222 0.2037,0.36665 -0.2852,-0.0815 0.082,-0.28517 z m 12.5475,0.16296 0.2445,0.0815 0.2851,0.2037 -0.1629,0.24443 c -0.1007,-0.099 -0.2134,-0.17918 -0.3259,-0.24443 l -0.041,-0.28517 z m -7.17,0.16295 0.2852,0 c 0,0.0716 0.024,0.14662 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.7333,0.0815 0.4074,0.12222 -0.3259,0 -0.082,-0.12222 z m -6.7219,0.12222 0.2037,0.0815 -0.082,1.22216 -0.082,0.20368 -0.2037,-0.0815 0.041,-0.48887 0.2037,0 0,-0.65181 -0.082,-0.28517 z m 14.6252,0.0407 0.326,0.0815 -0.163,0.65181 -0.2037,-0.0815 -0.041,-0.5296 0.082,-0.12222 z m -15.3585,0.0407 0,0.2037 -0.1222,0 0.1222,-0.2037 z m -1.4666,0.16296 0.1222,0 0.1222,0.16294 0.082,0.28518 -0.3259,-0.40738 0,-0.0407 z m 4.522,0.0407 0.2037,0 -0.082,0.20368 -0.163,0 0.041,-0.20368 z m -5.2553,0.16294 -0.041,0.24444 c -0.1412,0.67657 -0.1364,1.03082 0.1222,1.09994 l -0.2444,0.20369 -0.082,0.16296 -0.041,0.24443 -0.1222,0.0407 -0.163,-0.57035 0.4481,-0.0815 c -0.2059,-0.77058 -0.1474,-1.24297 0.1223,-1.34438 z m 1.874,0 0.041,0.12222 0.082,-0.0815 0.1629,0.65182 0,0.12222 -0.4888,0.73329 0.2851,0.0815 -0.3259,0.12221 -0.082,0.24444 0.2445,0.28516 -0.082,0.16296 -0.4074,0.57034 0.041,0.85551 -0.6518,1.30363 0.2444,0.28517 -0.4889,-0.16295 0.3667,-1.34438 -1.1815,0.73329 0.2445,0.28518 -0.8555,0.44812 -0.082,1.01846 -0.4074,0.69255 c 0.08,-0.4994 0.011,-0.79802 -0.2037,-0.8555 l 0.2851,-0.16296 0.041,-0.20369 0.2037,-1.30363 c 0.1375,-0.12989 0.2765,-0.27148 0.4074,-0.40738 l 0.4482,0.32591 c -0.053,-0.21157 -0.1577,-0.37537 -0.2445,-0.52961 0.051,-0.0555 0.1128,-0.10648 0.163,-0.16295 l 0.2444,0.0407 0.082,-0.36665 0.3667,-0.16295 -0.163,-0.16296 c 0.072,-0.0919 0.134,-0.19121 0.2037,-0.28517 l 0.7333,0.0407 0.163,-0.61108 -0.4074,-0.12221 c 0.071,-0.1075 0.135,-0.2161 0.2037,-0.32591 l 0.2851,0.0815 0.2852,-1.0592 c 0.1084,-0.19992 0.2227,-0.4049 0.3259,-0.61108 l -0.1222,-0.16296 0.041,-0.12222 z m 11.7328,0.0407 0.2037,0.40739 0,0.0407 -0.4889,0 c 0.012,-0.0714 0.03,-0.13545 0.041,-0.20369 l 0.2444,-0.24444 z m -22.162,0.0407 0.082,0.28517 -0.082,0 0,-0.28517 z m 30.432,0.2037 0.4888,0.12221 -0.4074,0.93699 c -0.091,-0.13612 -0.2088,-0.26481 -0.3666,-0.36664 l 0.2852,-0.69256 z m -10.8773,0.16295 0.2037,0.0407 -0.2037,0 0,-0.0407 z m 0.9777,0.0407 0.4074,0.12222 -0.041,0.16295 -0.2037,0.0407 -0.1629,-0.28517 c 0.01,-0.003 -0.01,-0.0375 0,-0.0407 z m -8.3922,0.32591 0.4074,0.0815 -0.163,0.65181 -0.2851,-0.57033 0.041,-0.16296 z m 23.9137,0.0407 c 0.452,0.27923 0.6049,0.76825 0.4074,1.50732 l -0.5296,1.0592 c -0.1997,1.12233 -0.2914,1.891 -0.2852,2.40357 l -0.1629,-0.0407 0.041,-0.77403 0.1222,-0.48885 -0.3666,-0.77404 0.8962,-2.1184 -0.1222,-0.77403 z m -21.836,0.12222 0.2444,0 0,0.20368 -0.2444,0 0,-0.20368 z m 12.0994,0 0.041,0 -0.1629,0.57033 c -0.02,0.0768 -0.028,0.1306 -0.041,0.20369 l -0.041,0 0.2037,-0.77402 z m -19.962,0.0407 0.2037,0.0407 0.1222,0.24444 -0.3666,-0.12222 0.041,-0.16294 z m -4.1146,0.20368 0.041,0.20369 -0.2852,0.52961 -0.041,-0.16296 0.2852,-0.57034 z m 3.6257,0 c 0.1218,0.0561 0.2252,0.11426 0.4074,0.16295 l -0.082,0.36665 -0.1629,-0.24443 -0.082,-0.0407 -0.082,-0.24443 z m 31.1245,0.0815 0.2445,0.0815 -0.1223,0.48887 -0.2444,-0.0815 0.1222,-0.48886 z m -25.4618,0.0815 c 0.1306,0.006 0.286,0.0201 0.4482,0.0407 l -0.1223,0.36665 c -0.2956,-0.079 -0.5499,0.15923 -0.6925,0.69255 l -0.4481,-0.77402 c 0.047,-0.17471 0.2132,-0.25604 0.4888,-0.28518 l 0.3667,0 -0.041,-0.0407 z m 14.0142,0 0.082,0 0.1222,0.0407 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.24444 z m -8.1478,0.0407 0.2852,0 -0.1222,0.52961 -0.2445,-0.0815 c 0.037,-0.15395 0.063,-0.31014 0.082,-0.44813 z m 0.8555,0 0.5704,0 0,0.0815 -0.3667,0.57035 0.1223,0.16294 -0.6111,-0.16294 c 0.107,-0.16059 0.1904,-0.4143 0.2851,-0.65183 z m 1.0593,0 0.2444,0 -0.041,0.0815 -0.2037,-0.0407 0,-0.0407 z m 2.2406,0 0.4889,0 -0.1223,0.36665 -0.2037,0.0407 0,0.44812 0,0.0407 -0.082,0.16295 0.041,0.44813 -0.1629,0.0407 c -0.1809,-0.20535 -0.2427,-0.4948 -0.2037,-0.85551 0,-0.0259 0,-0.0547 0,-0.0815 0.012,-0.0827 0.017,-0.15377 0.041,-0.24444 l 0.2037,-0.36665 z m 0.8555,0 0.7333,0 0.3259,0 -0.041,0.2037 -0.2444,0 0,0.48886 0.2037,0 -0.041,0.20369 -0.3259,0.5296 0,-0.28517 -0.4889,0.12222 -0.041,-0.5296 0.2444,-0.0407 0,-0.48886 -0.2851,0.0407 -0.041,-0.24444 z m -7.6996,0.0815 0,0.77403 c -0.2653,-0.0831 -0.4074,-0.28893 -0.4074,-0.65181 0.1826,2e-5 0.2999,-0.0425 0.4074,-0.12222 z m 5.5404,0 0.4074,0.12222 -0.082,0.36665 -0.4481,-0.12222 0,-0.0407 0.163,-0.20369 -0.082,0 0.041,-0.12222 z m 11.9365,0 0.1222,0.65182 c -0.026,-0.0119 -0.051,-0.0326 -0.082,-0.0407 l -0.3259,0.0815 -0.041,0.24443 0,0.28517 -0.041,0.0815 -0.2037,-0.0407 0.041,-0.2037 0.2445,-0.36664 0.1629,-0.28517 -0.4481,-0.12222 0.5703,-0.28517 z m -18.8213,0.0815 c 0.092,0.0158 0.1761,0.0407 0.2851,0.0407 l 0,0.65181 -0.2444,-0.0815 -0.041,0.12221 -0.1222,0 0,0.44813 0,0.0815 0.4481,0.12222 0.041,-0.20369 0.163,0 -0.5296,0.77402 -0.2445,-0.3259 -0.082,0.36664 0.2445,0.0815 -0.041,0.0407 0.5296,0.12222 0.082,0.24443 -0.1222,0.20369 c -0.155,0.0762 -0.2588,0.22703 -0.2852,0.44812 l -0.041,0.12222 -0.163,0 c 0,-0.0298 0.01,-0.0522 0,-0.0815 l 0.082,-0.44812 -0.1629,-0.0407 c -0.084,-0.43313 -0.1524,-0.79239 -0.2445,-1.0592 l 0.4482,-1.62954 z m -7.2923,0.44813 c 0.2126,0.11967 0.3124,0.32244 0.2852,0.61107 l -0.2037,-0.12222 -0.082,-0.48885 z m 18.3325,0 0.041,0 c -0.01,0.0299 -0.034,0.0522 -0.041,0.0815 -0.03,0.13715 -0.06,0.28312 -0.082,0.40738 -0.092,0.0158 -0.1761,0.0407 -0.2852,0.0407 l 0,0.48887 -0.2444,0 0.082,-0.93699 0.5296,0 0,-0.0815 z m -12.3846,0.0815 0.2852,0 0.1222,0.0407 0,0.40738 -0.2037,0 0,0.2037 0.082,0.36665 c -0.1679,-0.14918 -0.2705,-0.48918 -0.2852,-1.01847 z m 25.3396,0.0407 0.4481,0.12221 -0.1222,0.40739 -0.4481,-0.12222 0.1222,-0.40738 z m -33.9355,0.0407 c -0.044,0.0495 -0.077,0.10968 -0.1222,0.16295 l -0.041,-0.12222 0.1629,-0.0407 z m -0.8963,0.0407 0.4482,0.93699 -0.2037,0.0407 -0.081,-0.0407 c 0.011,-0.0447 0.028,-0.075 0.041,-0.12221 l -0.2445,-0.0815 -0.2037,-0.69256 0.2445,-0.0407 z m 17.5178,0 0.4073,0.12222 -0.082,0.24443 -0.3666,-0.24443 0.041,-0.12222 z m 0.7332,0 0.2037,0.0815 -0.1222,0.40739 -0.2037,-0.0407 0.1222,-0.44813 z m 7.1294,0.0815 0.082,0.12222 0.2851,0.0815 0.082,-0.0407 -0.2037,1.34438 -0.6925,2.52579 -0.2444,0.48886 -0.082,-0.36665 0.2036,-0.28517 -0.2036,-0.20369 -0.2445,0.0815 -0.1629,-0.28517 0.2851,-0.1222 0.2037,0.0407 0.041,-1.0592 0.2852,-0.97772 0.4074,0.0815 0.1222,-0.5296 0.041,0 0,-0.0815 c -0.1251,-0.22969 -0.1809,-0.50833 -0.2037,-0.81478 z m 3.0554,0.0407 0.2444,0.0815 -0.082,0.24443 0,0.0407 -0.163,0.5296 -0.2037,-0.0815 0.2037,-0.81477 z m -20.2472,0.20369 0.4073,0.12222 -0.1222,0.36665 -0.2851,-0.48887 z m -10.6329,0.32591 0.041,0.16296 -0.1222,0.0407 0,-0.16296 0.082,-0.0407 z m 5.5405,0.0407 0.2037,0.0815 -0.082,0.36664 0.2037,0.0407 -0.2445,0.12221 -0.1222,0.48887 -0.1629,-0.61108 0.2037,-0.48886 z m 27.4172,0 0.3667,0.0815 c -0.05,0.18576 -0.024,0.33527 0,0.44812 l -0.3259,-0.0815 c 0.053,-0.20002 0.019,-0.3353 -0.041,-0.44812 z m -3.9516,0.0815 0.041,0 c -0.023,0.12023 -0.051,0.23874 -0.082,0.36664 l -0.041,0 0.082,-0.36664 z m -17.314,0.0407 0.2037,0.0407 -0.2445,0.81476 -0.2037,-0.0407 0.2445,-0.81477 z m 14.7474,0.0407 c 0.1068,0.0985 0.258,0.168 0.4074,0.24443 l -0.1629,0.3259 -0.163,-0.0407 -0.041,-0.0407 c -0.048,-0.0401 -0.1096,-0.0903 -0.1629,-0.12221 l 0.1222,-0.36664 z m -21.9175,0.16295 0.082,0 c 0.01,0.0632 0,0.14341 0,0.20369 l -0.082,-0.20369 z m 32.4689,0 0.3259,0.5296 -0.4481,-0.12222 0.1222,-0.40738 z m -33.2429,0.36664 0.041,0.12222 -0.163,-0.0407 0,-0.0407 0.1222,-0.0407 z m 6.7626,0.16296 0.2037,0.0815 -0.7333,2.81096 -0.2037,-0.0815 0.7333,-2.81096 z m 9.4515,0 -0.2037,0.81477 0,0.0815 c -0.07,0.01 -0.1708,0.0316 -0.2445,0.0407 l 0.2445,-0.89624 0.2037,-0.0407 z m 1.5888,0.16295 c 0,0.0512 0,0.10831 0,0.16296 -0.1404,0.17119 -0.5033,0.28724 -1.0185,0.40739 l 0.082,-0.24444 0.937,-0.32591 z m 8.5959,0.12222 c 0.1067,0.18437 0.2374,0.33745 0.3666,0.48886 l 0,0.12221 0.163,0.0407 c 0.068,0.0685 0.1301,0.14364 0.2037,0.2037 l -0.163,0.65182 -0.2037,-0.0407 c 0.071,-0.26674 -0.1676,-0.49256 -0.6111,-0.61108 l 0.2445,-0.85551 z m 1.0184,0.0407 0,0.12222 -0.082,-0.0815 0.082,-0.0407 z m 5.5813,0.0407 0.4481,0.12221 -0.041,0.2037 -0.4889,-0.12222 0.082,-0.20369 z m -24.1989,0.0407 0.1222,0.44811 0.2444,0.89626 -0.4481,0.73329 0.3259,-0.12222 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 -0.2037,-0.24443 -0.2444,-0.0815 -0.082,0.44813 -0.2445,-0.0407 0.6519,-2.40357 z m -1.2222,0.0815 0.2037,0.0815 -0.1222,0.5296 -0.2037,-0.0407 0.1222,-0.57034 z m 7.1293,0 0.2037,0.0407 -0.082,0.36664 -0.2037,-0.0407 0.082,-0.36664 z m 14.5438,0.0407 -0.082,0.24443 0.6926,0.16295 0.082,-0.20368 -0.6926,-0.2037 z m -28.6802,0.0815 c 0.026,-0.005 0.055,0.004 0.082,0 -0.1259,0.17959 -0.3023,0.32895 -0.5296,0.44812 l -0.041,-0.2037 c 0.1448,-0.11437 0.3062,-0.20676 0.4889,-0.24442 z m 13.3624,0.20369 c 0.1272,0.1138 0.2391,0.22321 0.2851,0.32591 l -0.2851,-0.0815 0,-0.24443 z m -12.955,0.20369 0.041,0 0.3259,0.12222 c 0.028,0.10641 0.051,0.19751 0.082,0.28517 l -0.2037,0.77403 -0.2037,-0.0407 c 0.1427,-0.53336 0.011,-0.85797 -0.2851,-0.93699 l -0.2037,0.0815 0.041,-0.16295 0.3259,-0.0815 0.082,0 0,-0.0407 z m -2.5665,0.0407 0.082,0.24443 -0.1223,-0.0407 0.041,-0.20369 z m 13.4438,0 0.2037,0 c -0.015,0.10051 -0.023,0.21901 -0.041,0.32591 l -0.163,0.16295 0,-0.48886 z m 8.5552,0 0.3666,0 -0.041,0.16295 -0.4074,-0.12221 c 0.02,-0.0187 0.064,-0.0211 0.082,-0.0407 z m 1.0184,0 0.4074,0 0,0.20369 c -0.1951,4e-5 -0.3609,0.0365 -0.4889,0.0815 l 0.082,-0.28517 z m -19.4324,0.0815 0.1629,0.0407 -0.082,0.32591 -0.082,-0.36665 z m 13.8105,0.12221 0,0.52961 -0.041,0.0407 -0.041,0.16294 -0.2445,0 0.2037,-0.69255 0.1222,-0.0407 z m 0.8555,0 0.937,0 -0.041,0.16296 0,0.12221 -0.2445,0 -0.2851,-0.0407 -0.082,0.0407 -0.2852,0 c 0,0.0149 0,0.026 0,0.0407 l -0.082,-0.0407 0.082,-0.28517 z m 3.0554,0.16296 -0.082,0.36665 -0.3667,0 -0.1222,-0.12222 0.041,-0.16295 c 0.2044,-0.0207 0.3677,-0.0344 0.5296,-0.0815 z m 9.044,0 c 0.6945,0.36416 0.9331,1.01469 0.6926,1.9147 l -0.4889,-0.12221 -0.1629,0.5296 0.3666,0.57034 -0.8555,1.26289 0.2037,0.0407 -0.2444,0.12222 -0.082,0.28517 0.1629,1.30363 -0.5703,0.24444 0.2037,0.0407 -0.3667,0.57033 c -0.1386,0.96297 0.1611,1.50359 0.937,1.71102 l -0.2444,0.16295 -0.082,0.24443 0.082,0.61108 -1.3444,-2.03693 -0.2037,-0.0407 0.163,-0.61108 0.4481,0.0815 0.041,-0.16296 c -0.2956,-0.079 -0.5344,-0.51721 -0.6518,-1.26289 l 0.1629,-0.61108 0.2037,0.0407 -0.082,0.44812 0.6926,0.20369 0.082,-0.44811 -0.4074,-0.12222 0.2444,-0.81478 0.4074,0.12222 0.2037,-0.81477 -0.4074,-0.12221 0.082,-0.36665 0.4481,0.12221 0.082,-0.36664 -0.4073,-0.12221 0.1629,-0.61109 c 0.3695,0.0988 0.5984,-0.13822 0.8148,-0.65181 0.1069,-0.4 -0.01,-0.61477 -0.4481,-0.7333 l 0.1629,-0.61107 z m -24.5248,0.0407 0.4889,0.12221 -0.4074,0.57034 -0.2444,-0.0815 0.1629,-0.61107 z m 23.3027,0 c 0.1376,0.0728 0.2979,0.11503 0.4481,0.16295 l -0.1222,0.40738 -0.3259,-0.52959 0,-0.0407 z m -16.703,0.0815 0.6518,0 0.2037,0.24444 0.163,0 -0.163,0.61107 -0.611,0 -0.2445,-0.85551 z m 5.7035,0.2037 0.082,0 c -0.036,0.16124 -0.082,0.31654 -0.1222,0.44812 l -0.082,0 0.1222,-0.44812 z m 4.8886,0.0407 0,0.16294 -0.082,0.24444 -0.2037,0 0.041,-0.2037 0.2445,-0.20368 z m -7.7404,0.0815 0.2037,0.0407 -0.041,0.0815 -0.2037,0 0.041,-0.1222 z m -8.6366,0.0815 0.6518,0.36665 -0.2851,1.01846 -0.2037,-0.0815 -0.2445,-0.93699 0.082,-0.36665 z m 20.899,0 0.4889,0.12222 0.3667,1.14068 -0.1223,0.44813 -0.2037,-0.0407 0.1223,-0.44813 -0.4482,-0.12221 -0.041,0.20369 0.2445,0.7333 -0.2445,0.12221 c -0.1069,0.40003 0.086,0.69626 0.5296,0.81477 l -0.5703,0.24443 0.082,-0.36665 -0.4074,-0.12221 -0.3259,2.93318 -0.082,0.16294 -0.5703,-0.3259 0.082,-0.20369 0.4073,-0.77403 c 0.069,-0.55307 -0.1193,-0.87896 -0.4888,-0.97774 l 0.1222,-0.36663 0.4889,0.12221 0.041,-0.24443 -0.2037,-0.28517 0.3259,-0.0815 -0.041,-1.09994 0.4481,-1.58881 z m -18.9843,0.0407 0.4074,0.12222 -0.041,0.20369 -0.4074,-0.12221 0.041,-0.2037 z m 11.2032,0 0.163,0 c 0.066,0.0585 0.1536,0.11741 0.2444,0.16296 l -0.041,0.12221 -0.082,0.28518 -0.2852,-0.52961 0,-0.0407 z m -19.962,0.0407 0.3259,0.48887 -0.2445,-0.24444 -0.2036,-0.0407 0.1222,-0.2037 z m 1.0999,0.0815 0.163,0.0407 0,0.16295 -0.163,0.65183 -0.2037,-0.0815 0.2037,-0.77404 z m 31.0838,0 c 0.044,0.10287 0.088,0.18377 0.1629,0.20369 l 0.2037,0.0407 0,0.44813 -1.711,6.3552 -0.4889,-0.12221 0.2852,-0.12222 0.041,-0.20368 0.6926,-3.46278 0.2851,-0.12221 0.041,-1.05921 0.4889,-1.95545 z m 1.0184,0 0.2037,0.0407 -0.2037,0.65182 -0.2036,-0.0815 0.1629,-0.57034 0.041,-0.0407 z m -15.6437,0.12222 0.041,0.44812 -0.1222,0.0407 -0.082,-0.32591 0.163,-0.16295 z m 12.792,0 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -9.5736,0.0407 c 0.1346,0.0336 0.3237,0.0613 0.4889,0.0815 l -0.1223,0.48887 -0.4481,-0.16296 0.082,-0.40739 z m -20.9805,0.32592 0.4888,0.12221 -0.082,0.2037 -0.1629,1.3851 c 0.01,-0.18441 -0.023,-0.35229 -0.082,-0.57034 l -0.2037,-0.81476 0.041,-0.32591 z m 3.2998,0.0407 0.4482,0.0815 c -0.1069,0.39998 -0.01,0.695 0.2851,0.77403 l -0.041,0.20369 c -0.4433,-0.11854 -0.7027,-0.10371 -0.774,0.16296 l -0.2037,-0.0407 -0.082,-0.61108 0.3666,-0.57034 z m 16.8252,0.0407 0.2851,0 -0.082,0.24444 -0.2037,0 0,-0.24444 z m -13.7698,0.16296 0.2037,0.0407 -0.041,1.0592 -0.4074,-0.12222 0.2445,-0.97772 z m 20.125,0.20369 0.4482,0.16295 -0.041,0.16295 -0.4889,-0.12221 0.082,-0.20369 z m 3.0962,0 0.2037,0.0407 -0.4481,0.937 -0.2037,-0.0407 0.2037,-0.81478 0.2444,-0.12221 z m -19.5139,0.12221 0.937,0.0407 -0.1222,0.57034 -0.9778,0 0.163,-0.61108 z m 8.5959,0.16295 0.2037,0 0,0.0407 -0.2037,-0.0407 z m 3.748,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.3628,0 0.3259,0 0,0.2037 -0.3666,0 0,-0.12222 0.041,-0.0815 z m -19.5139,0.0407 0.3259,0.52961 -0.2852,0.12222 -0.2037,-0.0407 c 0.062,-0.23334 0.1327,-0.43446 0.163,-0.61109 z m -4.3183,0.16296 0.2037,0.0407 -0.1223,0.36665 -0.2036,-0.0407 0.1222,-0.36665 z m 32.3059,0 0.2037,0.0407 c -0.107,0.40001 -0.01,0.69503 0.2852,0.77403 l -1.4259,3.50351 0.2037,0.24443 -0.041,0.2037 -0.5296,0.89624 -0.2037,-0.0407 0.1629,-1.42585 0.2445,-0.1222 0.1222,-0.44813 0.6926,-3.42204 0.2851,-0.20369 z m -35.3613,0.12222 0.1222,0.8555 0.2037,0.12222 c -0.012,0.0966 -0.014,0.18349 -0.041,0.28517 l 0,0.0815 -0.041,-0.0815 -0.2037,0.0815 c 0.022,0.0838 0.035,0.13719 0.041,0.20369 l -0.3667,0.16296 c -0.01,-0.0436 -0.031,-0.0797 -0.041,-0.12222 l 0.1222,-0.0407 0.041,-0.20369 0.163,-1.34437 z m 9.4514,0.0407 0.6111,0.16296 -0.041,0.20369 -0.6926,0.0815 0.1222,-0.44813 z m -4.8072,0.24444 0.2037,0.0815 -0.163,0.52959 -0.2037,-0.0407 0.163,-0.57033 z m 28.9653,0 0.2037,0.0407 -0.2852,1.01846 -0.2037,-0.0815 0.2852,-0.97772 z m -20.4916,0.12221 0.3666,0.5296 -0.1629,0.61108 -0.2037,-0.32591 -0.4074,-0.12221 c -0.1069,0.40001 -0.4121,0.56665 -0.8555,0.44812 0.1069,-0.40002 0,-0.65551 -0.4482,-0.77404 l 0.041,-0.20369 0.4074,0.12222 0.163,0.24443 c 0.08,-0.29997 0.4464,-0.4543 1.0999,-0.5296 z m 10.8365,0.20369 0.1222,0 0,0.12222 -0.1222,-0.12222 z m 13.1179,0 0.8963,0.24443 -0.4481,1.75176 c -0.2956,-0.079 -0.3768,-0.54439 -0.163,-1.34437 l -0.4481,-0.0815 0.1629,-0.57034 z m -6.1515,0.0407 0.2851,0.5296 -0.041,0.2037 -0.2851,-0.57035 0.041,-0.16295 z m -28.558,0.0815 -0.2037,1.62954 -0.8148,0.24443 0.2445,-0.89624 c 0.449,-0.22295 0.7308,-0.54687 0.774,-0.97773 z m 0.6926,0 0.2444,0.0815 -0.082,0.36665 -0.2852,-0.0815 0.1223,-0.36665 z m 21.8767,0.0407 0.163,0.0407 0,0.24444 -0.4074,0 0.2444,-0.28518 z m -9.5329,0.0407 0.2037,0 0.163,0.24444 -0.2852,0 -0.082,0 0,-0.0407 0,-0.2037 z m -6.9663,0.24444 0.4889,0.12221 -0.082,0.24444 -0.5296,0.93698 -0.163,-0.24443 -0.2037,-0.0815 -0.5296,0.28517 0.041,0.65181 c -0.2956,-0.0791 -0.5041,0.0481 -0.6111,0.44813 l -0.1629,-0.24443 -0.2037,-0.0407 -0.2445,0.12222 0.2037,-1.62954 0.6111,0.16295 0.1222,-0.40738 c 0.7391,0.19754 1.1561,0.0741 1.2629,-0.32591 z m 2.8517,0.12221 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m -7.8626,0.0407 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m 6.6405,0.0407 0.2037,0.0815 -0.082,0.40738 -0.2445,-0.0407 0.1222,-0.44813 z m -9.2885,0.12222 0.2037,0.0815 -0.2444,0.0815 0.041,-0.16295 z m -0.041,0.28517 0.163,0.12221 0,0.0407 -0.2037,-0.0407 0.041,-0.12221 z m 15.7252,0.0815 c 0,0.20653 -0.13,0.30826 -0.3259,0.36665 l -0.5296,0.0407 0,-0.16296 0,-0.0407 0.8555,-0.20369 z m 3.2591,0 c 0.013,0.005 0.029,-0.006 0.041,0 0.089,0.046 0.1749,0.11085 0.2037,0.20369 l -0.2444,0 0,-0.20369 z m 1.5481,0 0.4074,0 0.082,0.12221 -0.2037,0.81478 c -0.045,0.002 -0.075,0 -0.1222,0 l 0,0.20369 -0.2037,-0.20369 -0.4074,0 -0.163,-0.24443 0.1222,-0.44813 c 0.1893,0.0506 0.3495,-0.044 0.4889,-0.24443 z m 1.2222,0 0.3259,0 c 0.015,0.019 -0.011,0.0591 0,0.0815 -0.099,0.33787 -0.3274,0.59857 -0.6519,0.7333 l -0.1222,-0.0407 0.4482,-0.77404 z m 4.4405,0 -0.041,0.20369 -0.4889,0 0,-0.12222 c 0.2002,-0.0277 0.3723,-0.0507 0.5296,-0.0815 z m 8.8811,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m -26.847,0.0815 0.4074,0.12222 -0.1222,0.44813 -0.4074,-0.12222 0.1222,-0.44813 z m 9.7366,0.12222 0.163,0 -0.163,0.57035 0,-0.57035 z m -11.9772,0.16296 -0.082,0.36665 0.4074,0.12221 0.1222,-0.36665 -0.4481,-0.12221 z m 4.9702,0.0407 0.6925,0.20369 -0.1222,0.36665 0.4481,0.12222 0.163,-0.61109 0.3259,0.36665 c -0.3478,0.17232 -0.5887,0.44676 -0.7333,0.81477 -0.062,0.0265 -0.089,0.0462 -0.1222,0.0815 l -0.2037,-0.0407 c 0.1401,-0.44387 -0.02,-0.72708 -0.4074,-0.81477 l -0.2037,-0.0407 c 0.072,-0.11464 0.1184,-0.28147 0.163,-0.44812 z m 16.9066,0 0.4074,0.12221 -0.082,0.24444 -0.4074,-0.12222 0.082,-0.24443 z m -14.4216,0.20369 0.1222,0.0407 c -0.043,2.1e-4 -0.081,-0.002 -0.1222,0 l 0,-0.0407 z m -13.729,0.24443 0.4482,0.0815 -0.082,0.20369 -0.4074,-0.12221 0.041,-0.16296 z m 20.1658,0 0.1629,0.0815 -0.2037,0.0407 0.041,-0.12222 z m -10.4699,0.0407 0.1629,0.24443 0.2037,0.0407 c 0.1186,0.0317 0.2233,0.0419 0.3259,0.0407 -0.1473,0.0926 -0.295,0.12532 -0.4888,0.0815 l -0.2037,0.65182 c 0.3876,0.0877 0.6345,0.21898 0.774,0.44812 l -0.4889,0.24443 0.4074,0.0815 0.082,-0.28517 c 0.1221,0.22481 0.1522,0.50258 0.041,0.85552 l 0.6519,0.16294 -0.3667,1.09995 -0.6111,-0.12222 0,2.1184 -1.3444,1.14068 0.2037,0.32591 -1.7517,2.40358 0.4481,-0.12222 0.2444,0.0815 -0.1222,0.40738 -0.2852,-0.0407 -0.2851,-0.3259 -0.2852,-0.0407 -0.1222,0.48885 -0.2852,-0.0815 2.4851,-7.78106 0.2444,-0.0407 -0.2852,0.97773 0.6519,0.12221 0.4073,-1.30363 -0.4481,-0.0815 0.041,-0.12221 -0.2037,-0.0815 -0.2852,0 0.041,-0.12222 0.2852,-0.0407 0.082,-0.20368 -0.2444,-0.0815 0.1629,-0.57034 -0.2037,-0.28518 0.082,-0.20368 0.2852,-0.0815 z m 6.6811,0.0407 0.2037,0.0407 -0.041,0.12222 -0.1629,-0.16296 z m 7.8626,0 0.041,0.16296 -0.2851,-0.0815 0.2444,-0.0815 z m -20.0435,0.12222 0.4482,0.77403 -0.326,0.16295 -0.1629,-0.0407 0.041,-0.89624 z m -0.6925,0.0407 0.2037,0.0407 -0.1223,0.44812 -0.2037,-0.0407 0.1223,-0.44811 z m 19.8805,0.16294 -0.082,0.24444 -0.2037,-0.0407 0,-0.0815 0.2852,-0.12222 z m -1.3851,0.12222 0.082,0.12222 0,0.28517 -0.4481,-0.12222 0.1629,0 0.2037,-0.28517 z m 3.8702,0.12222 0.2444,0.0815 0,0.28517 0,0.65182 0,0.12221 -0.3259,0.12222 -0.4074,-0.0815 0.2852,-1.14068 0.041,0 c 0.064,-0.008 0.1028,-0.0322 0.163,-0.0407 z m -25.3803,0.12221 0.3666,0.48887 -0.4888,-0.12222 0.1222,-0.36665 z m 35.4021,0.0407 0.2037,0.0407 -0.1223,0.36665 -0.2037,-0.0407 0.1223,-0.36665 z m -11.4477,0.12222 -0.041,0.20369 -0.774,0.0815 -0.2037,-0.0815 0,-0.0407 1.0185,-0.16295 z m 6.4368,0 -0.041,0.20369 0.4074,0.0815 0.041,-0.16296 -0.4074,-0.12221 z m -27.1728,0.24443 0,0.20369 -0.4074,0.20369 0.3259,0.32591 -0.1222,0.0815 -0.2852,-0.0815 0.082,-0.32591 -0.1222,-0.0407 0,-0.0407 0.5296,-0.3259 z m 3.1369,0 0.3666,0.0815 -0.2444,0.69255 -0.3259,-0.0815 0.2037,-0.69255 z m 8.3107,0 0.4074,0 0,0.0407 -0.4074,0 0,-0.0407 z m -13.6068,0.0815 0.2037,0.0407 -0.3667,1.34436 c -0.019,-0.29821 -0.091,-0.48678 -0.2444,-0.57033 l 0.041,-0.32592 0.3667,-0.48885 z m 10.3069,0.0815 0.2445,0.0815 -0.1222,0.44812 -0.2852,-0.0407 0.1629,-0.48885 z m 2.1185,0.0407 0.2444,0.0407 -0.082,0.24443 0.041,0.16295 c -0.01,0.1969 0.032,0.3372 0.1222,0.44813 l 0,0.0815 -0.1629,0 -0.4074,0.44811 -0.2037,0 0.2444,-0.8555 0.163,-0.28517 -0.041,-0.0407 0.082,-0.24443 z m 1.3851,0.0407 0.2444,0.28517 0,0.28517 c -0.1625,-0.11746 -0.2809,-0.25347 -0.4074,-0.36665 l 0.163,-0.20369 z m -7.6997,0.20369 0.2852,0.0407 -0.163,0.48886 -0.2444,-0.0815 0.1222,-0.44813 z m 13.9735,0.0815 0.2037,0.0407 0.3259,0.48887 -0.082,0.24443 -0.2037,-0.0815 -0.082,-0.0815 0,-0.16296 -0.2037,0 c 0.013,-0.15533 0.042,-0.32188 0.041,-0.44812 z m -16.54,0.0815 -0.1222,0.36665 -0.041,1.42585 -0.6519,0.81477 0.3667,0.0815 -0.4481,0.12222 -0.082,0.24443 0.2851,0.3259 -0.041,0.20369 -0.5703,0.61109 0.082,0.97772 -0.8555,1.42585 0.2852,0.28516 -0.6111,-0.12221 0.4481,-1.54806 -1.5073,0.8555 0.2851,0.28518 -1.0184,0.44811 c -0.1112,-0.21925 -0.218,-0.41746 -0.326,-0.65181 -0.01,-0.0107 0,-0.03 0,-0.0407 l 0.1223,-0.77403 0.2851,0.0815 0.6926,0.44812 c -0.2006,-0.6795 -0.5592,-1.09061 -1.1407,-1.22216 l 0.2037,-0.69255 c 0.015,-0.0461 0.027,-0.077 0.041,-0.12221 l 0.1222,-0.0407 0.041,-0.2037 -0.081,-0.0407 c 0.068,-0.22572 0.108,-0.44974 0.163,-0.65181 l 0.1629,-0.12221 0.041,-0.2037 -0.041,-0.12221 c 0.059,-0.23984 0.045,-0.41042 0.082,-0.61108 0.2166,-0.0412 0.4501,-0.15496 0.6926,-0.36665 -0.087,0.52223 -0.036,0.83279 0.2444,0.89625 l -0.3259,0.20369 -0.041,0.0815 c -0.1805,0.11243 -0.3751,0.24349 -0.5296,0.36665 l -0.041,0.24442 0.4074,0.12222 -0.3259,1.67028 0.5703,0.12222 0.1222,-0.40739 0.4482,-0.20369 -0.2852,-0.28517 -0.2852,-0.0815 0.082,-0.2037 1.5074,0.12222 0.2037,-0.69256 -0.5296,-0.12222 0.1222,-0.40738 0.5703,0.12222 0.3667,-1.14068 0.2444,-0.16295 -0.2037,-0.0407 0.4889,-1.54807 0.3259,-0.12222 z m -6.1108,0.0407 0.2444,0.0815 -0.1222,0.36665 -0.2037,-0.0407 0.082,-0.40739 z m 24.0359,0 0.1629,0.24444 0.2037,0.0815 0.3259,-0.12221 -0.041,0.16295 c -0.3961,0.0368 -0.7256,0.11789 -0.9777,0.2037 l -0.041,0 -0.1629,-0.0407 0.2851,-0.44813 0.2445,-0.0815 z m -12.018,0.0815 0.6111,0.12222 -0.1222,0.40739 -0.4889,-0.52961 z m 3.9517,0.12222 0.3259,0.0815 -0.041,0.16296 -0.2852,0.0815 0,-0.0407 0,-0.28517 z m 4.8072,0.0407 0.2037,0.0407 0,0.0407 -0.2037,0 c 0,-0.0303 0,-0.052 0,-0.0815 z m -13.8105,0.0815 0.2852,0.0815 -0.082,0.61107 -0.3667,0.12222 0.041,-0.40738 0.1222,-0.40739 z m 29.5764,0.0407 0.2037,0.0407 -0.1222,0.36664 -0.2037,-0.0407 0.1222,-0.36665 z m -7.4552,0.32591 0.4074,0.12221 -0.082,0.44813 -0.4074,-0.24444 0.082,-0.3259 z m -26.358,0.0407 0.4073,0.12221 -0.082,0.20369 -0.4073,-0.12221 0.082,-0.20369 z m 1.6702,0 0.2037,0.24442 -0.041,0.2037 -0.3259,-0.32591 0.163,-0.12221 z m 18.1696,0.0407 c 0.1619,0.0875 0.2757,0.18387 0.4889,0.28517 -0.019,0.0576 -0.041,0.13961 -0.041,0.2037 l -0.5297,0 c 0.032,-0.17322 0.06,-0.33608 0.082,-0.48887 z m -3.2591,0.20369 0.1629,0 0,0.0407 -0.1629,-0.0407 z m -12.1402,0.2037 -0.082,0.57034 -0.041,0.24443 -0.2852,-0.0815 0.041,-0.61108 0.3667,-0.12222 z m -3.2999,0.0815 0.2445,0.0407 -0.1222,0.48886 -0.2852,-0.0407 0.1629,-0.48886 z m 10.7144,0.0407 0.7333,0.16295 0,0.0815 -0.082,0.24443 -0.082,0.12222 0,0.16294 0,0.0407 -0.1223,0.28518 -0.082,0 -0.2036,-0.28518 c 0.017,-0.32329 -0.065,-0.59918 -0.163,-0.81476 z m 20.0027,0 c -0.1782,0.66666 0.096,1.38753 0.6926,2.1184 l 0.2444,-0.12222 0.163,0.24443 -0.041,0.16296 c -0.2464,-0.0659 -0.4957,0.0124 -0.6926,0.16295 -0.042,-0.0157 -0.074,-0.0298 -0.1222,-0.0407 l -0.3666,0.12221 c 0.1402,-0.44386 0.062,-0.72708 -0.3259,-0.81478 l -0.4074,0.12222 -0.041,0.0815 -0.2852,-0.2037 c 0.2165,-0.51356 0.4453,-0.70985 0.8148,-0.61107 l 0.1222,-0.40739 -0.6111,-0.16295 0.8555,-0.65181 z m 2.4036,0.0407 0.326,0.48887 -0.1223,0.44812 -0.2851,-0.57034 0.082,-0.36665 z m -17.9658,0.0815 0.2852,0.0815 -0.1222,0.40739 -0.2445,-0.32591 0.082,-0.16296 z m -14.2586,0.0407 0.2852,0.0407 -0.082,0.20369 c -0.1131,0.033 -0.218,0.0873 -0.3259,0.12222 l 0.1222,-0.36665 z m 15.7659,0 0.7333,0 -0.082,0.2037 -0.6925,0.0815 c 0.022,-0.10671 0.02,-0.18393 0.041,-0.28517 z m -3.9924,0.0815 0.041,0 0,0.12222 -0.041,0 0,-0.12222 z m 19.6769,0 0.2037,0.0407 -0.2037,0.81477 -0.2037,-0.0407 0.2037,-0.81477 z m -28.4357,0.16295 0.5703,0.12222 -0.2444,0.69255 -0.3667,-0.61107 0.041,-0.2037 z m 2.1591,0.0407 -0.082,1.14068 0.6111,0.16296 0.082,-1.18142 -0.6111,-0.12222 z m 19.5547,0.12222 0.1629,0.0407 -0.1222,0.44812 -0.2037,-0.0407 0,-0.0407 0.041,0 0.1223,-0.40738 z m -13.4438,0.0407 0.1222,0 0.2852,0.73329 -0.1223,0.16295 -0.1629,0 -0.2037,-0.61108 c 0.01,-0.0113 0,-0.0293 0,-0.0407 l 0,-0.0407 c 0.026,-0.0655 0.056,-0.13405 0.082,-0.20368 z m 6.3145,0 0.4074,0 -0.082,0.48886 -0.3259,0 0,-0.48886 z m 4.0331,0 0.2445,0.0407 -0.041,0.16295 -0.2445,-0.0815 0.041,-0.12221 z m -25.7062,0.0815 0.082,0.0407 -0.041,0.20369 -0.082,-0.0407 0.041,-0.20369 z m 38.1723,0.0815 -0.041,0.16296 0.041,0.0407 0,-0.2037 z m -21.5508,0.0407 0.082,0 0,0.32591 -0.2037,-0.0407 0.1222,-0.28518 z m -10.918,0.24444 c 0.2732,-0.0456 0.6794,-0.0134 1.1814,0.0407 l -0.1222,0.40738 c -0.3876,-0.0877 -0.7501,0.1822 -0.937,0.77403 l -0.5704,-0.89624 c 0.053,-0.16645 0.1749,-0.28029 0.4482,-0.32591 z m 14.0956,0.0407 0.3259,0 -0.1222,0.20369 -0.2037,0 0,-0.20369 z m 0.774,0 0.082,0 0,0.20369 -0.041,0 -0.041,-0.20369 z m 15.1549,0.0407 0.4889,0.12222 -0.2852,1.01846 -0.3667,-0.48885 0.163,-0.65183 z m -17.9658,0.0407 0.2444,0.0407 -0.2852,0.0815 0.041,-0.12222 z m 10.8365,0 0.2037,0.0407 -0.041,0.12222 -0.2444,0.12222 0,0.0815 -0.041,0 0.041,-0.0815 0.082,-0.28518 z m 9.5736,0.12222 -0.1222,0.0815 -0.082,0.16295 0.2037,0.24444 0,-0.48887 z m -13.8104,0.0815 0.4073,0.0815 -0.3259,0.44811 -0.3259,-0.0815 -0.041,-0.16294 0.2852,-0.28517 z m -10.4292,0.0407 0.1222,0.0815 0,0.24444 -0.1629,-0.0407 c 0.032,-0.10244 0.017,-0.18859 0.041,-0.28517 z m 13.8512,0.0407 0.6111,0.52959 0.041,0.0407 -0.1222,0.61108 c -0.1738,-0.13018 -0.3351,-0.28385 -0.4889,-0.36665 -0.043,-0.24559 -0.071,-0.51515 -0.041,-0.81476 z m -8.5551,0.0407 0.3666,0 0,0.24444 -0.3666,0 0,-0.24444 z m -16.4585,0.0815 0.1629,0.0407 -0.1222,0.40738 -0.2852,-0.0815 0.082,-0.28516 0.163,-0.0815 z m 4.1961,0.2037 0.5296,0.1222 0,1.18142 c -0.3391,-0.0767 -0.521,-0.50904 -0.5296,-1.30362 z m 1.7925,0.16294 -0.2445,0.69256 0.6519,0.16296 0.2037,-0.69256 -0.6111,-0.16296 z m 3.0146,0.24443 c 0.537,0.1214 0.591,1.23745 0.163,3.29982 -0.149,0.24871 -0.3559,0.70204 -0.5703,1.14068 l -0.5704,-0.12222 -0.5296,-1.34436 c 0.3877,0.0877 0.5932,-0.0857 0.7333,-0.5296 l 0.082,-1.18142 0.2037,0.24443 0.6518,0.16296 -0.1629,-1.67029 z m 9.6959,0.0407 0.1222,0.12222 -0.2444,0.28517 -0.1222,0.44812 -0.1223,0 -0.2851,-0.0815 -0.041,-0.44812 0.082,-0.12221 0.2444,0.24443 0.3667,-0.44813 z m 5.3775,0 c 10e-5,0.30601 -0.1563,0.44816 -0.5703,0.44813 l 0,0.2037 0.4074,0 -0.3667,0.65181 -0.4074,-0.0815 0.082,-0.0815 0,-0.28517 -0.041,-0.0407 0.4074,-0.77403 c 0.1595,-0.009 0.3126,-0.0407 0.4889,-0.0407 z m -13.4438,0.0407 0.2852,0.0407 -0.4482,1.2629 -0.082,0.32591 c 0.198,0.0814 0.3667,0.16669 0.5297,0.24442 l -0.2445,0.44813 -0.1222,-0.2037 -0.3259,0.16296 -0.2444,-0.0407 c 0.067,-0.14188 0.1305,-0.2725 0.2037,-0.48886 l -0.2037,0 0.1629,-0.48886 0.041,0.0407 0.2852,0 0.1629,-1.30364 z m -8.1885,0.0815 0.5703,0.12222 -0.1629,0.40739 -0.4074,-0.52961 z m 13.1586,0.0815 0.082,0.0815 -0.1629,-0.0407 0.082,-0.0407 z m 4.3591,0 0.3259,0 c -0.046,0.25427 -0.075,0.44865 -0.081,0.65181 l -0.6111,0 0.082,-0.57033 0.2852,-0.0815 z m -3.1369,0.0815 0.082,0.48885 c -0.2042,-0.10676 -0.3488,-0.23498 -0.4481,-0.40738 l 0.3666,-0.0815 z m -1.7518,0.0815 -0.1222,0.48886 -0.1629,0 0,-0.40738 0.2851,-0.0815 z m 18.0066,0.0407 0.2037,0.0407 -0.1629,0.65181 -0.2037,-0.0815 0.1629,-0.61108 z m 0.6518,0 0.4889,0.12222 -0.4074,1.46658 -0.1629,-0.0407 c -0.083,-0.0188 -0.171,0.0209 -0.2445,0.0407 l 0,-0.36664 0.3259,-1.22216 z m -21.2249,0.0407 0.1222,0 0,0.0407 -0.1222,-0.0407 z m 3.5035,0.12222 c 0.081,0.0361 0.1343,0.0796 0.2037,0.12221 l -0.2444,0.0407 0.041,-0.16294 z m -12.1809,0.0815 0.2852,0.0407 -0.2852,0.89625 -0.2852,-0.0407 0.2852,-0.89624 z m 1.7925,0.16294 -0.1222,0.44813 0.6111,0.12221 -0.4889,-0.57034 z m 19.5954,0 c 0.045,0.041 0.1551,0.11945 0.2037,0.16296 l -0.082,0.5296 -0.8963,2.85169 -0.5703,0.81478 0.3667,1.0592 -0.6519,-0.16296 -0.3666,2.07767 -0.5296,-0.12222 0,-0.97772 0.3259,-0.12222 0.082,-0.20369 0.1629,-1.46658 0.4889,-0.57035 -0.1222,-0.12221 c 0.028,-0.0546 0.041,-0.1272 0.041,-0.2037 l 0.2037,-0.12221 -0.4074,-0.57034 0.3666,-0.12222 0.2445,0.0407 0.082,-1.14067 0.3666,-1.14068 0.5296,0.12221 0.163,-0.61108 z m 1.2629,0.0815 0.1222,0.16295 -0.1629,-0.0407 0.041,-0.12222 z m 1.8333,0.12222 0.082,1.62954 0.4888,0.12222 0.2037,-0.2037 -0.2444,0.81477 c -0.1147,-0.18977 -0.1569,-0.28133 -0.2852,-0.48886 l -0.2037,0.0815 c -0.022,-0.0177 -0.055,-0.0241 -0.082,-0.0407 l -0.4074,-0.65182 0.4482,-1.26289 z m 0.5296,0 0.3666,0.0815 0,0.0815 -0.2444,0.36665 -0.2444,-0.0815 0.1222,-0.44812 z m 3.7887,0.16295 0.2037,0.0407 -0.1222,0.44813 -0.2037,-0.0815 0.1222,-0.40739 z m 1.7925,0.24443 0.2037,0.0815 0,1.0592 0,0.0407 c -0.05,0.0364 -0.1167,0.0642 -0.163,0.12222 l -0.3666,-0.0815 0.3259,-1.22216 z m -32.1022,0.0407 0.2444,0.0815 -0.9777,3.09612 -0.2445,-0.0407 0.9778,-3.13687 z m 29.5764,0.16296 0.082,0.0407 -0.163,0.61107 -0.2037,-0.0407 0.1223,-0.44812 0.1629,-0.16295 z m -14.0142,0.16295 0.2037,0 0,0.48886 -0.2037,0 0,-0.48886 z m 11.6921,0.0815 0.2037,0.0815 0.041,0.24443 -0.2852,-0.20369 0.041,-0.12221 z m -24.2804,0.0815 -0.1629,0.44813 0.611,0.16295 0.163,-0.48886 -0.6111,-0.12222 z m 27.1321,0.0407 0.2037,0.0407 0.041,0.69256 -0.4074,-0.12222 0.163,-0.61108 z m -29.0468,0.0407 0.2852,0.0407 -0.2037,0.65182 -0.2445,-0.0815 0.163,-0.61108 z m 31.5726,0.20369 0.4074,0.12222 -0.082,1.0592 -0.082,0.32591 -0.2444,-0.0815 0.082,-1.14068 c -0.055,-0.0125 -0.1121,-0.005 -0.163,0 l 0.082,-0.28517 z m -19.5547,0.24443 0.041,0 0,0.44813 -0.2036,0 0.1629,-0.44813 z m -5.5404,0.0407 0.6925,0.16296 -0.5703,1.18142 -0.3259,0.44811 -0.082,0 0.2037,-0.61107 0,-1.0592 c 0.035,-0.0284 0.048,-0.0738 0.082,-0.12222 z m 5.9478,0.2037 0.4074,0 0,0.48885 0.2445,0 0.041,-0.0407 -0.041,0.28517 -0.326,0.0815 -0.041,-0.12221 0.041,-0.2037 -0.3666,-0.0815 -0.163,0.0407 c 0.1409,-0.12157 0.2037,-0.25688 0.2037,-0.44812 z m 13.892,0 0.2444,0.0407 0.1222,0.73329 -0.082,0.24443 -0.4074,-0.61108 0.1223,-0.40738 z m -11.8143,0.20369 0.082,0 -0.2037,0.89625 -0.082,0.0407 -0.2037,-0.2037 c -0.1035,0 -0.1645,0.009 -0.2444,0.0407 l 0.2037,-0.65182 0.4481,-0.12221 z m 0.7741,0 0.4888,0 0.163,0.0407 -0.2445,0.77403 -0.5296,0.32591 -0.2444,0 0.082,-0.20369 0.163,0 0,-0.2037 0.2851,-0.0815 -0.2851,-0.28517 0.1222,-0.36664 z m 2.8517,0 0.6518,0 -0.082,0.20369 -0.6111,-0.12221 0.041,-0.0815 z m -22.5286,0.16295 0.6518,0.16295 -0.4889,0.61109 -0.3666,-0.0815 0.2037,-0.69256 z m 14.9511,0.12221 0.2037,0 0.3667,0.0815 -0.4074,0.2037 -0.041,0.20369 0.041,0.12222 -0.163,0.0407 -0.2036,0 0.2036,-0.65183 z m 20.0028,0.0407 0.2037,0.0407 -0.041,0.2037 -0.2037,-0.0407 0.041,-0.2037 z m -18.8213,0.16296 0.2444,0.0407 -0.041,0.20369 -0.2852,0.0407 0.082,-0.28517 z m 6.1923,0 0.2852,0.0407 -0.041,0.0815 -0.2445,-0.0815 0,-0.0407 z m 6.1516,0.20369 0.6518,0.12222 0.2851,0.85551 c 0.027,0.31399 0.036,0.61618 -0.041,0.93698 l -0.2036,-0.0815 0.1629,-0.44812 -0.5703,-0.12221 -0.041,0.20369 0.3259,0.81477 -0.3259,0.12222 c -0.1052,0.33293 -0.023,0.6072 0.2851,0.77402 -0.041,0.10991 -0.074,0.22001 -0.1222,0.32591 l -0.2444,0.0815 0.1222,-0.40739 -0.5703,-0.12221 -0.2445,1.75176 c -0.1707,0.17432 -0.3679,0.37121 -0.5703,0.52959 l 0.2037,-0.28516 c 0.09,-0.61375 -0.1266,-0.99034 -0.6111,-1.09994 l 0.1222,-0.40739 0.6111,0.12222 0.1222,-0.28517 -0.3259,-0.28517 0.4481,-0.12222 0,-1.18142 0.5296,-1.79249 z m -27.3766,0.0407 0.8148,0.40739 -0.3259,1.09994 -0.2852,-0.0815 -0.3259,-1.01846 0.1222,-0.40739 z m 2.4851,0.0407 0.5703,0.12222 -0.082,0.20369 -0.5296,-0.12222 0.041,-0.20369 z m 32.0208,0.12222 0.2851,0.0407 -0.2037,0.69255 -0.2851,-0.0407 0.2037,-0.69255 z m -23.3027,0.0407 0.2037,0 0,0.20369 -0.2444,-0.0407 0.041,-0.16295 z m 10.144,0 0,0.0815 -0.041,0 0.041,-0.0815 z m 11.8143,0.28517 -0.3667,1.34436 -0.041,0 0.4074,-1.34436 z m -11.4884,0.0815 0.2444,0.0815 -0.082,0.2037 -0.2851,0.12221 0.1222,-0.40738 z m 10.3069,0 0.041,0 c 0.027,0.19875 0.01,0.41806 -0.041,0.65182 l -0.1629,-0.0407 0.1629,-0.61108 z m 1.5889,0 0.1222,0.0407 0,0.2037 -0.163,-0.0407 0.041,-0.20369 z m -16.3363,0.12221 0.1629,0 -0.4481,0.44813 -0.2037,0 0.4889,-0.44813 z m 3.1369,0 0.2851,0 -0.082,0.44813 -0.3259,0 0.1222,-0.44813 z m -22.4471,0.2037 0.082,0.12221 -0.041,0.0815 c -0.011,-0.0687 -0.041,-0.1361 -0.041,-0.20369 z m 20.1657,0 0.5296,0 0.082,0.0815 -0.082,0.32592 -0.6111,-0.12222 0.082,-0.28517 z m -18.9028,0.0815 0.2037,0.0407 0,0.24444 c -0.066,-0.0966 -0.1384,-0.18401 -0.2037,-0.28518 z m 10.7143,0.2037 -0.082,0.28517 -0.041,0.0815 -0.041,0.12221 -0.163,-0.20369 0.3259,-0.28517 z m 19.7176,0 0.2037,0.0407 -0.082,0.16295 c -0.028,-0.0538 -0.092,-0.14667 -0.1222,-0.20369 z m -4.1554,0.0407 0.6111,0.12221 -0.082,0.24444 -0.6111,-0.16296 0.082,-0.20369 z m 7.9441,0 0.163,0.0407 -0.2852,0.97772 -0.1222,-0.0407 0.2444,-0.97772 z m -29.4542,0.0815 1.2222,0.0815 -0.2037,0.61108 -1.2629,0 0.2444,-0.69255 z m 10.918,0.0407 0.6518,0 0,0.2037 -0.1222,0 -0.6111,-0.16296 c 0.029,-0.0137 0.051,-0.0271 0.082,-0.0407 z m 14.2994,0.0815 0.2851,0.40738 -0.2851,0.44813 -0.2445,-0.0407 0.2445,-0.81477 z m 1.1406,0.3259 0.1223,0.61109 -0.2852,-0.0815 0.1629,-0.52961 z m 4.1554,0.0407 0.1222,0 c -0.064,0.20396 -0.057,0.39209 0,0.52961 l -0.041,0 -0.1222,0.40739 0.041,0.89624 -0.4074,0.48886 -0.2037,-0.0407 0.3259,-1.18142 -0.4481,-0.12221 0.2444,-0.81477 0.4074,0.12221 0.082,-0.28517 z m -17.2325,0.0407 0.3666,0 0,0.28517 -0.2444,0.0815 -0.1222,-0.0407 0,-0.32591 z m 0.774,0 0.4074,0 -0.163,0.57034 -0.2444,-0.0407 -0.082,-0.0815 0.082,0 0,-0.44813 z m 2.037,0 0.4073,0 -0.1222,0.69256 c -0.1459,0.15267 -0.3487,0.24965 -0.5703,0.32591 l -0.6111,-0.44813 c 0.097,0.029 0.2025,0.0644 0.3259,0.0815 0.414,0 0.5704,-0.19281 0.5704,-0.65182 z m -22.4472,0.0407 c 0.01,0.0179 0.071,0.0224 0.082,0.0407 l -0.082,0 0,-0.0407 z m 2.7703,0.0407 0.8148,0.20369 -0.082,0.2037 -0.8148,0.0815 c -0.02,-0.0217 -0.021,-0.0594 -0.041,-0.0815 l 0.1222,-0.40739 z m 21.4286,0 0.2852,0.16295 -0.082,0.2037 -0.2852,-0.0407 0.082,-0.32591 z m -2.3221,0.0815 0.2852,0.0815 -0.2852,0 0,-0.0815 z m -14.2993,0.36665 0.4888,0.52959 -0.2037,0.65182 -0.041,0 -0.2444,-0.32591 -0.5296,-0.12221 c -0.048,0.151 -0.1391,0.27939 -0.2444,0.36664 l -0.8555,-0.24443 c -0.047,-0.23181 -0.2222,-0.40087 -0.6111,-0.48885 l 0.041,-0.2037 0.5703,0.12222 0.2037,0.24442 c 0.1053,-0.33289 0.5689,-0.44604 1.4259,-0.52959 z m 3.1776,0.32591 0.3667,0.44811 -0.6519,-0.12221 0.2852,-0.3259 z m 21.6731,0 0.1222,0.20368 c -0.02,0.075 -0.087,0.16363 -0.1222,0.24443 l -0.1222,-0.0407 0.1222,-0.40738 z m -1.3444,0.12221 0.2037,0.36664 -0.041,0.2037 -0.2445,-0.36665 c 0.023,-0.0703 0.061,-0.13194 0.082,-0.20369 z m -25.9099,0.40738 0.2444,0.0407 -0.1222,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -1.5074,0.0815 0.2037,0.0407 -0.041,0.12221 c -0.061,-0.0422 -0.1022,-0.11766 -0.1629,-0.16295 z m -3.9109,0.0815 c 0.1984,0.0449 0.3656,0.10692 0.5296,0.12221 l 0.4889,0.61108 0,-0.48886 -0.1222,-0.12222 c 0.1736,-0.0109 0.3316,-0.0657 0.4481,-0.12221 0.1559,0.20013 0.3052,0.42706 0.4889,0.65181 l -0.326,0.44813 -0.1222,-0.12222 -0.082,-0.16296 -0.2852,-0.0407 -0.6518,0.28517 0.041,0.61108 c -0.1697,-0.1506 -0.3284,-0.32459 -0.4888,-0.48887 l 0.082,-0.20369 -0.3667,-0.0815 c -0.1552,-0.17217 -0.3026,-0.34478 -0.4481,-0.52959 l 0.6518,0.12221 0.163,-0.48886 z m 11.7328,0.24443 0.4481,0 0,0.48886 -0.4481,0 0,-0.48886 z m 11.6921,0 0.1629,0 0,0.12222 -0.1629,-0.12222 z m -4.4406,0.0407 0.163,0.28517 -0.041,0.16295 -0.9778,0 -0.2851,0 0,-0.0407 c 0.097,0.0219 0.1954,0.0613 0.2851,0.0407 0.1795,-0.0411 0.3597,-0.19639 0.4889,-0.40738 l 0.3667,-0.0407 z m -0.7333,0.0407 0,0.0407 -0.5296,0 0.5296,-0.0407 z m 2.1999,0.0407 c 0.1,0.0769 0.157,0.22678 0.163,0.36664 l -0.6926,0 0.163,-0.28517 0.3666,-0.0815 z m 17.1103,0.0407 0.163,0.0407 -0.041,0.16296 -0.163,-0.0815 0.041,-0.12221 z m -21.1434,0.0407 0.1222,0 c 0.1262,0.0632 0.2198,0.15471 0.2444,0.28517 l -0.3666,0 0,-0.28517 z m 11.692,0.44812 0.5296,0.12222 -0.082,0.24443 -0.5296,-0.12221 0.082,-0.24444 z m -13.0364,0.0815 0.1629,0.12222 -0.082,0.20369 -0.082,-0.0407 0,-0.28517 z m -4.1146,0.0815 0.2444,0.0407 0.1222,0.0815 0.163,0 -0.082,0.24444 -0.3667,0.20369 -0.1222,0.0407 0,-0.0815 0.1222,0.0407 0.041,-0.20369 -0.1222,-0.28517 0,-0.0815 z m 25.421,0.0407 0.1222,0.44812 -0.1222,0.28517 0,-0.73329 z m -16.1733,0.16295 -0.041,0.2037 -0.041,0.48885 -0.937,-0.12221 -0.082,-0.0815 0.774,-0.36665 -0.3666,-0.0815 0.6925,-0.0407 z m -3.5036,0.0407 -0.041,0.12222 -0.2851,-0.0815 0.3259,-0.0407 z m 4.7665,0 0.4481,0.0815 0,0.0407 0,0.20369 c -0.1904,-2e-5 -0.2989,0.0479 -0.4074,0.12222 l -0.041,-0.44813 z m -2.5666,0.0407 -0.1222,0.44813 -0.6111,-0.0815 -0.2444,-0.24443 -0.082,0.20369 -0.2852,-0.0407 0.082,-0.24443 0.082,0 0.2037,0.0815 -0.041,-0.0815 0.2852,0 0.7333,-0.0407 z m 3.7888,0 0.1222,0.0407 -0.1222,0 0,-0.0407 z m -15.2771,0.0407 0.1629,0.24443 0.2852,0 0.163,-0.12221 0.2851,0.28517 -0.3259,0.36664 c -0.7618,0.018 -1.1993,0.12476 -1.2629,0.32591 l -0.082,0.20369 0.2852,0.0815 0.5296,0 -0.2444,0.28516 c -0.3068,2e-5 -0.7246,-0.15748 -1.1815,-0.36664 l 0.1223,-0.32591 -0.3667,-0.0815 -0.3259,0.16296 c -0.3254,-0.18391 -0.6735,-0.42525 -1.0592,-0.69255 0.5299,0.11987 0.9408,0.0209 1.2222,-0.28517 0.452,0.0971 0.8964,0.16295 1.3851,0.16295 l 0.082,0 0.1629,0.0407 0.041,-0.16295 0.1222,-0.12222 z m 1.9147,0.0815 c 0.012,0.27818 0.1751,0.47167 0.6111,0.57033 l -0.041,0.12222 -0.163,0.0815 c -0.4016,-0.0334 -0.7787,-0.0703 -1.0999,-0.0815 0.1875,-0.17418 0.4654,-0.46551 0.6925,-0.69255 z m 25.1766,0 0.1222,0.0407 -0.2444,1.01846 -0.1222,-0.0407 0.2444,-1.01846 z m -10.9587,0.0815 0.2444,0.0815 -0.082,0.28516 -0.1629,0 0,-0.36664 z m -20.8176,0.12222 c 0.2965,0.34461 0.6324,0.71225 0.9777,1.09994 l -0.7333,-0.16296 c -0.2939,-0.25079 -0.5827,-0.52525 -0.8555,-0.81476 l 0.6111,-0.12222 z m -1.0592,0.24442 0.4481,0.7333 -0.3259,0 c -0.2313,-0.13531 -0.4738,-0.24993 -0.6925,-0.40739 0.047,-0.0675 0.091,-0.14685 0.1222,-0.24443 l 0.4481,-0.0815 z m 23.2212,0.16296 0.5703,0.12222 0,1.18141 -0.4481,0.12222 -0.5296,-0.12222 0.4074,-1.30363 z m 11.2846,0.12222 -0.2037,0.40738 0.082,-0.32591 0.1222,-0.0815 z m -16.2955,0.12221 0.2444,0 0,0.0815 -0.2444,-0.0407 0,-0.0407 z m -19.6769,0.12222 c 0.029,0.007 0.054,-0.005 0.082,0 l 0.082,0.0815 -0.3666,0 0.2037,-0.0815 z m 29.169,0.0407 -0.041,0.36665 -0.2852,-0.0815 c 0.1196,-0.0874 0.2149,-0.19178 0.326,-0.28517 z m 3.8295,0 0,0.0815 -0.041,0 0.041,-0.0815 z m -0.9777,0.0407 0.2036,0.0815 c -0.072,0.0648 -0.1696,0.10082 -0.2444,0.16296 -0.1919,0.15941 -0.368,0.33852 -0.5703,0.48886 -0.078,-0.0803 -0.1398,-0.20169 -0.2037,-0.3259 0.1572,-0.0786 0.2843,-0.16146 0.4481,-0.24444 l 0.3259,0.0815 0.041,-0.20369 c 0.01,-0.003 -0.01,-0.0377 0,-0.0407 z m -23.5471,0.20369 -1.1,0.5296 -0.1629,0 0,-0.2037 c 0.1087,2e-5 0.2966,-0.11102 0.5296,-0.28516 l 0.7333,-0.0407 z m -4.9294,0.12222 c 0.1297,0.14532 0.2301,0.25608 0.3666,0.40738 l 0,0.20369 c -0.066,-0.0425 -0.1389,-0.0782 -0.2037,-0.12222 l 0.041,-0.0815 -0.1629,-0.0407 c -0.08,-0.0559 -0.166,-0.10467 -0.2445,-0.16296 l 0.163,-0.0407 0.041,-0.16294 z m 10.0217,0.0815 0.3667,0.24442 -0.082,0.0815 -0.2037,0 c 0,-0.12072 -0.037,-0.22823 -0.082,-0.3259 z m -2.0369,0.3259 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 6.6404,0 0.4074,0 0,0.0815 -0.2444,0.12222 -0.163,0 0,-0.20369 z m -3.0961,0.12221 0.4074,0.0815 -0.4074,0 0,-0.0815 z m 5.8256,0 0.2445,0.0407 0.2444,0.28517 0.082,0 0,0.40739 c -0.3615,0.0312 -0.758,0.0611 -1.1407,0.0815 l 0.3259,-0.48886 c 0.079,-0.004 0.1557,0 0.2445,0 l 0,-0.32591 z m -6.4774,0.32591 0.6518,0 0,0.48886 -1.0185,0 0.3667,-0.48886 z m 8.1885,0.0407 0.2851,0.0815 -0.041,0.12222 c -0.1062,0.0146 -0.2175,0.0272 -0.3259,0.0407 l 0.082,-0.24444 z m 9.4107,0.0407 c -0.02,0.28762 -0.042,0.5616 0.041,0.77403 l -0.163,0.0815 -0.1222,0.40739 -0.3259,-0.44813 0.5703,-0.81477 z m -12.0588,0.0407 c 0.01,-0.004 0.03,0.004 0.041,0 l 0.041,0.0407 -0.082,0.24443 -0.2444,-0.0407 c 0.043,-0.0934 0.1038,-0.18419 0.2444,-0.24443 z m -8.6366,0.16296 0.6518,0 0,0.20368 -0.6518,0.20369 0,-0.40737 z m 1.0185,0 0.4888,0 0,0.20368 -0.4888,0 0,-0.20368 z m 3.585,0 0.3666,0 -0.3666,0.40737 -0.4889,0 0.4889,-0.40737 z m -15.1549,0.20368 0.041,0 0,0.20369 -0.4481,0 0,-0.0407 0.4074,-0.16296 z m 3.3406,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 4.9702,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 3.9109,0 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 18.0473,0.0407 0.082,0 0,0.0407 -0.082,-0.0407 z m -2.7295,0.0815 0.041,0 -0.1629,0.48886 -0.5296,-0.12221 0.041,-0.0815 c 0.1754,-0.0707 0.4149,-0.20083 0.611,-0.28517 z m 5.2961,0 c 0.072,0.0901 0.1611,0.14842 0.2444,0.24443 l 0,0.0407 -0.4074,-0.0815 c -0.029,-0.0236 -0.055,-0.0579 -0.082,-0.0815 l 0.2444,-0.12221 z m -32.6319,0.28517 0.6519,0 0,0.24443 -0.6519,0 0,-0.24443 z m 2.9332,0 0.3667,0 -0.3667,0.5296 0,-0.5296 z m -3.5442,0.24443 0.4481,0 0,0.28517 -0.4481,0 0,-0.28517 z m 9.3292,0 0.611,0 1.0185,0.28517 1.2222,-0.28517 1.3036,0 0,0.48886 -5.1738,0 0,-0.20369 1.0185,-0.28517 z m 4.522,0 4.6035,0 -0.4482,0.48886 -0.2037,-0.20369 -1.0184,0.20369 -2.4851,0 -0.4481,-0.48886 z m 5.459,0 0.5703,0 0,0.28517 -0.5703,0 0,-0.28517 z m 15.3178,0 c -0.021,0.0666 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.16296 0.041,-0.0407 z m -30.5134,0.28517 1.0184,0 0,0.20369 -1.0184,0 0,-0.20369 z"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke:none;display:inline;filter:url(#filter3530);font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+       inkscape:export-filename="Z:\private\général\Charte graphique\OD\OD6.0\splashscreen\png\splashscreen_OD6.0.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"
+       inkscape:connector-curvature="0" />
+    <path
+       transform="matrix(1.0736958,0,0,1.073713,-1.6436711,-956.29964)"
+       id="path3955"
+       d="m 652.3953,410.51549 -2.56647,0.48885 0,1.34438 0.57029,-0.61109 0.6518,0 0,0.2037 -1.22209,0.40739 0,2.07766 0.2037,0 -0.2037,0.28517 0,0.85551 c -0.1243,0.11339 -0.1889,0.18925 -0.2852,0.28517 l 0,0.48885 c 0.096,-0.0462 0.1847,-0.0603 0.2852,-0.12221 l 0,0.73331 -0.2852,0.24442 0,8.55509 0.6111,2.24062 0.082,0.57033 c -0.028,0.0807 -0.061,0.16777 -0.082,0.24444 0.066,0.0489 0.10789,0.10817 0.16289,0.16295 l 0,0.16296 -0.24439,-0.0815 c -0.024,-0.006 -0.057,-10e-4 -0.082,0 0.036,-0.12665 0.062,-0.25692 0.1222,-0.36665 l -0.1629,-0.61107 -0.4074,0.0815 0,3.87016 c 0.014,-0.002 0.027,0.004 0.041,0 l 0.2037,-0.0407 0.041,-0.0407 0,0.85551 c -0.09,0.26172 -0.1903,0.50209 -0.2852,0.69256 l 0,0.97773 0.2444,0.0815 -0.041,0.16295 -0.2036,-0.0815 0,11.12161 0.1629,-1.18141 0.1222,0.0407 0,1.01847 0.2037,0 0.48889,0.52959 c -0.1,0.0821 -0.1897,0.19341 -0.2444,0.36665 l -0.20369,-0.24443 -0.082,0 -0.163,-0.65181 0,0.57033 -0.041,0 -0.2444,0.12222 0,0.89624 0.2851,-0.12221 0,0.32591 -0.1222,-0.0407 -0.1222,0.40739 0.2444,0.0407 0.36669,-0.12222 0,0.24442 -0.36669,0 0,0.85552 -0.2851,0.0815 0,0.20368 0.2851,-0.0815 0,0.0815 c 0.41409,4e-5 0.57039,-0.14214 0.57039,-0.44812 l -0.2037,-0.20369 0.5296,0 -0.1222,0.0815 -0.082,0.24443 0.1222,0 0,0.0815 0.2037,0.24442 0,0.28517 -1.01849,0 0,0.24444 3.38127,0 c 0.2347,-0.63833 0.52699,-0.97773 0.93699,-0.97773 l 0,-0.40738 -0.5703,0 -0.28519,0.20369 -0.1629,0 -0.2445,-0.32591 0.082,-0.24442 -0.2444,0.0815 -0.65179,0 -0.3259,0.12222 0,-0.0407 -0.3667,-0.0815 -0.28519,0.2037 -0.4481,-0.2037 0,-0.24442 1.05919,0 0,-0.20369 -0.2037,-0.2037 0,-0.24443 0.4889,0.16295 -0.082,0.2037 0.57029,0.12222 0.2852,-0.0407 0.6111,0.20369 -0.082,0.24442 0.28519,0.0815 0.5703,-0.0407 0.65179,0.24444 0,0.20369 c -0.32189,7e-5 -0.81619,0.38652 -1.38508,1.18142 l 18.57674,0 c 0.082,-0.0802 0.16349,-0.16304 0.24449,-0.24444 0.212,0.0756 0.504,0.16494 0.7333,0.24444 l 1.46658,0 -0.24449,-0.40739 1.14069,0.0815 0.20369,0.0815 -0.041,0.16296 -0.52959,0.0815 0.73329,0 7.86254,0 0.041,-0.16296 c 0.061,0.0307 0.1356,0.0557 0.2037,0.0815 l -0.041,0.0815 1.30369,0 0.36659,-0.24444 -0.041,0.24444 2.56658,0 0.082,-0.24444 0.2444,0.0407 -0.082,0.2037 0.44809,0 0,-1.34438 -0.082,0.24444 -0.24439,-0.0407 0.1222,-0.40739 0.20369,0.0815 0,-9.04394 -0.12219,-0.0407 0.12219,-0.57034 0,-1.71102 -0.28519,0.0815 -0.041,0.20369 0.2037,0.32591 -0.6111,1.09994 -0.2037,-0.0407 0.93699,-3.50351 0,-1.58881 -0.28509,0.12222 -0.041,1.05921 -0.6519,2.36283 -0.57029,0.28516 1.18139,-4.39976 0.36669,0.57034 0,-1.34437 -0.16299,-0.0407 0.16299,-0.57034 0,-1.83323 c -0.25979,-0.39208 -0.52389,-0.78277 -0.81479,-1.14068 l 0.81479,0.0407 0,-1.22216 -0.20369,0.85552 -0.2445,-0.0815 0.326,-1.18142 0.12219,0.0407 0,-3.54425 -0.082,0.28517 -0.44819,-0.12222 0.52969,-2.03692 0,-7.98476 -0.041,0.12222 -0.81479,0 -0.65179,-0.36665 -0.81479,0 0.041,-0.20369 -0.3259,-0.5296 0.082,-0.28517 0.2037,0.0407 0.85549,0.77403 0.28509,-0.16296 0.082,-0.28516 c -0.31619,-0.38756 -1.75488,-1.08881 -4.31826,-2.07766 l -1.09989,0 2.81098,1.18141 -0.1223,0.40738 0.2852,-0.16295 0.69259,0.20369 -0.4889,0.81477 -0.20369,-0.0407 -0.1629,-0.28516 -0.2445,-0.0407 -0.3666,0.12222 0.1222,-0.40739 0.3666,-0.16296 0,-0.0407 -0.2444,-0.28517 -0.2444,-0.0815 -0.28519,0.2037 -0.2444,-0.0407 -0.6926,-0.48886 -0.57029,0.36664 -1.54809,-1.26288 -1.83329,0 -0.082,0.3259 -0.2444,-0.0407 0.082,-0.28516 -3.29977,0 1.01839,1.54805 0.2037,0.0407 -0.1629,0.69256 -0.44819,-0.12221 -0.082,0.20368 c 0.3277,0.0876 0.56239,0.55849 0.69259,1.38511 l -0.163,0.69256 -0.24439,-0.0815 0.12219,-0.44812 -0.73329,-0.2037 -0.1629,0.44813 0.4888,0.12222 -0.2444,0.89624 -0.4889,-0.12221 -0.20369,0.93698 0.44819,0.12223 -0.1222,0.40738 -0.44819,-0.12221 -0.1222,0.40738 0.44809,0.12221 -0.16289,0.69256 c -0.4097,-0.10951 -0.6971,0.12321 -0.937,0.69255 -0.022,0.0836 -0.038,0.17515 -0.041,0.24444 l -0.2444,-0.28517 -0.2037,0.28517 c -0.01,-0.0895 -0.01,-0.18894 0,-0.28517 l 0.2037,0 0,-0.2037 -0.163,-0.16295 c 0.014,-0.071 0.021,-0.12964 0.041,-0.20369 l 0.52959,0.16295 0.163,-0.65181 -0.40739,-0.61108 0.93699,-1.38512 -0.2037,-0.0407 0.2851,-0.16295 0.082,-0.28518 -0.2037,-1.46657 0.65189,-0.24444 -0.2445,-0.0815 0.4482,-0.61108 c 0.1537,-1.0675 -0.199,-1.68476 -1.05919,-1.9147 l 0.2851,-0.16296 0.082,-0.24442 -1.58879,0 0,0.0815 0.69259,0.16295 -0.93699,0.7333 c 0.085,-0.31634 0.048,-0.64018 -0.041,-0.97772 l -1.58878,0 -0.2037,0.69255 -0.2445,-0.0407 0.163,-0.65181 -0.93699,0 0.2444,0.48885 -0.081,0.44813 -0.3666,-0.57034 0.082,-0.36664 -0.4481,0 -0.85559,3.09612 c -0.097,-0.0451 -0.1796,-0.0767 -0.2851,-0.12222 l -0.041,0 -0.163,-0.24443 0.28519,-0.12222 0.082,-1.18141 0.3666,-1.42584 -0.4888,0 -0.61109,2.36282 -0.2444,0 0.611,-2.36282 -2.60718,0 -0.041,0.16294 0.4481,0.12222 -0.2852,1.0592 c -0.99879,-0.37943 -1.82208,-0.65177 -2.44428,-0.65181 -0.1476,0.37417 -0.43549,0.62501 -0.77409,0.77403 -0.016,-0.069 -0.022,-0.13369 -0.041,-0.2037 l -0.041,-0.20368 0.57039,-0.0815 0,-0.28517 c 0,-0.20089 -0.25459,-0.36699 -0.77409,-0.48887 l -0.041,-0.20368 -0.9777,0 c 10e-4,0.0136 0,0.0271 0,0.0407 l 0,0.24442 c -0.2787,-0.13728 -0.62399,-0.21603 -1.01849,-0.28516 l -1.71098,0 0,0.16294 -0.2444,0.0815 -0.082,-0.24442 -0.5296,0 0.041,0.1222 -0.163,0.16296 -0.082,-0.28516 -2.72948,0 -0.2037,0.97772 -0.3259,0 0,-0.48887 c 0.085,-0.17617 0.1553,-0.35747 0.2037,-0.48885 l -2.40358,0 z m 36.25729,12.83263 0,-0.93698 -0.041,0.0407 -0.16289,0.61108 0.20369,0.28517 z m -34.3426,-12.75116 -0.2851,0.44812 -0.4889,0.0815 0.082,-0.28517 0,-0.12222 0.6926,-0.12221 z m 13.48448,0.0407 0.4481,0.12222 -0.041,0.24443 -0.4481,-0.12221 0.041,-0.24444 z m -16.29536,0.36665 0,0.48887 -0.44819,0 0.44819,-0.48887 z m 7.82173,0 0.082,0.0407 0.2037,0.89625 c -0.2224,-0.0204 -0.4372,-0.0455 -0.6111,-0.0815 l 0.2037,-0.65181 -0.041,-0.16296 0.163,-0.0407 z m 1.46659,0 0.40739,0.48887 -0.40739,0 0,-0.48887 z m -2.56648,0.16296 0.082,0.28517 -0.1222,0.0407 c -0.071,-0.0791 -0.082,-0.18955 -0.082,-0.28517 l 0.1222,-0.0407 z m -6.15154,0.0407 0.44809,0 0,0.28517 -0.44809,0 0,-0.28517 z m 5.21455,0 0.2037,0 0,0.28517 -0.2037,0 0,-0.28517 z m -2.97397,0.28517 c 0,-0.005 0.038,0.005 0.041,0 l 0,0.24442 -0.1629,0 c 0.038,-0.0691 0.088,-0.17947 0.1222,-0.24442 z m 13.03639,0 0.2037,0.0815 -0.163,0.65181 -0.3259,-0.57034 0.2852,-0.16295 z m 11.81419,0.0407 0.4481,0.12221 -0.1222,0.48886 -0.4889,-0.12222 0.163,-0.48885 z m -5.82565,0.16295 0.2444,0.0407 -0.1629,1.58881 -0.28519,0.16295 -0.1222,0.48886 -0.5296,2.52579 -0.65179,-0.65181 1.09989,-2.64801 -0.2444,-0.28517 0.082,-0.20368 0.57029,-1.01847 z m 0.97769,0.0407 0.5704,0.12222 -0.2852,0.16295 -0.082,0.2037 -0.77399,3.87015 -0.2852,0.16296 -0.082,1.14068 -0.20369,0.77404 -0.5703,0 0.1629,-0.57034 c 0.2449,-0.0957 0.44809,-0.21289 0.44809,-0.36665 l -0.28509,-0.28516 1.38508,-5.21455 z m -17.72124,0.2037 0.24449,0 0.041,0.16295 -0.082,0.0407 -0.12229,0 -0.082,-0.20369 z m 14.54367,0.12221 0.2037,0.0407 -0.082,0.44813 -0.24439,-0.0815 0.12219,-0.40739 z m 12.6289,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2444,-0.0815 0.1222,-0.40739 z m -29.82055,0.0407 0.65179,0 0,0.2037 -0.65179,0 0,-0.2037 z m -2.07768,0.2037 1.05919,0 c -0.029,0.0977 -0.082,0.18868 -0.1222,0.28517 l -0.93699,0 0,-0.28517 z m 11.8549,0 0,0.52959 -0.48879,0 0.48879,-0.52959 z m 24.36169,0.16295 c -0.074,0.27639 0.1417,0.51307 0.57029,0.65181 l 0,-0.52959 -0.57029,-0.12222 z m -6.07005,0.3259 0.4481,0.12222 -0.3666,1.30363 -0.44819,-0.12221 0,-1.18142 0.36669,-0.12222 z m -17.06945,0.44813 0,0.48887 -0.2037,0 -1.67028,0.24442 c 0.035,-0.18637 0.074,-0.37489 0.082,-0.57034 l 1.79248,-0.16295 z m 0.3666,0 0.65189,0.20369 0,0.28518 -0.85559,0 0.2037,-0.28518 0,-0.20369 z m 1.01849,0 0.041,0 0.28519,0.44813 -0.041,0.0407 -0.2852,0 0,-0.48887 z m 1.83328,0 -0.082,0.32591 -0.2852,0.0407 0.1222,-0.32591 c 0.073,-0.01 0.1596,-0.0357 0.2444,-0.0407 z m 10.26611,0 0.65179,0.36665 -0.082,0.20369 -0.44819,0.85551 c -0.076,0.61311 0.12,0.99045 0.52959,1.09994 l -0.1222,0.40738 -0.52959,-0.12222 -0.082,0.28517 0.2445,0.28519 -0.3667,0.12221 0.041,1.18142 -0.4889,1.79249 -0.52959,-0.12222 -0.4073,-1.30363 0.1222,-0.48886 0.2444,0.0407 -0.1222,0.48886 0.4481,0.12221 0.041,-0.20369 -0.2852,-0.81477 0.2852,-0.12221 c 0.11849,-0.44345 -0.079,-0.76488 -0.5703,-0.89626 l 0.65179,-0.28517 -0.12219,0.40739 0.48879,0.12222 0.3667,-3.21835 0.041,-0.20369 z m -20.49153,0.12222 0.2444,0.0407 0.1223,0.48886 -0.326,-0.0815 0,-0.36665 -0.041,-0.0815 z m -7.74033,0.0815 0.4481,0 -0.4481,0.5296 0,-0.5296 z m 1.30369,0 0.8147,0 c -0.012,0.0156 -0.028,0.0252 -0.041,0.0407 -0.2572,0.20542 -0.3429,0.30401 -0.5703,0.48886 l -0.2037,-0.24442 0,-0.28518 z m 1.30359,0 0.3667,0 0.40729,0 0,0.2037 -0.082,-0.0815 -0.48879,0.12222 0,0.24442 -0.082,0.0407 -0.2037,-0.24442 -0.082,0 0.1629,-0.28518 z m 1.14069,0 0.6111,0 -0.041,0.28518 -0.5704,0 0,-0.28518 z m 7.29223,0 0.6518,0 -0.082,0.24444 0.1222,0.44811 -0.2852,0.0407 -0.4074,-0.65181 0,-0.0815 z m 1.2629,0 0.2037,0 0.082,0.24444 -0.2037,0.0407 -0.082,-0.28518 z m 21.14322,0 0.81479,0 0.2444,0.0407 -0.082,0.2037 -1.09989,0.16294 0.1222,-0.40738 z m -12.91409,0.0815 0.2037,0.0815 -0.082,0.40738 -0.2444,-0.0815 0.1222,-0.40738 z m 5.25525,0 -0.082,0.2037 0.4889,0.1222 0.041,-0.20368 -0.4481,-0.12222 z m 10.14392,0.36664 0.48889,0.12222 0.4074,0.57034 -0.6519,0.32591 0.2852,0.0815 -0.61109,1.01847 c -0.3277,-0.0876 -0.3629,-0.37134 -0.2444,-0.81478 l 0.2852,-0.16295 0.041,-0.20369 0,-0.93699 z m -1.38509,0.28517 0.2444,0.0815 0.041,0.73329 -0.4481,-0.12221 0.1629,-0.69256 z m -25.50229,0.0407 0,0.40739 -0.28519,0 -0.082,-0.32591 0.36659,-0.0815 z m 23.9135,0.0407 0.2444,0.0815 -0.1222,0.40739 -0.20369,-0.0407 0.082,-0.44813 z m -24.72829,0.0815 0.082,0.28517 -0.2445,0 0,-0.24443 0.163,-0.0407 z m -8.22923,0.0407 1.0185,0 c -0.101,0.0837 -0.1917,0.16587 -0.2852,0.24443 l -0.7333,0 0,-0.24443 z m 2.07769,0 0.44809,0 0,0.24443 -0.61109,0 0.163,-0.24443 z m 7.86252,0 0,0.24443 -0.20369,0 -0.041,-0.16295 0.24439,-0.0815 z m 3.74798,0 0.4074,0 0,0.24443 -0.4074,0 0,-0.24443 z m 1.05919,0 0.81479,0 0,0.24443 -0.81479,0 0,-0.24443 z m 22.36541,0.0407 0.44819,0.12221 0.2851,0.28517 0.082,-0.40738 0.2445,0.0407 -0.1223,0.44812 -0.2037,-0.0815 0.163,0.28517 -0.1222,0.48886 c -0.3277,-0.0875 -0.616,0.14207 -0.77409,0.73329 l -0.3666,-0.61107 0.3666,-1.30363 z m -31.00194,0.0407 0.2851,0.20369 -0.2037,0.0815 -0.082,-0.28517 z m -4.72576,0.0815 0.041,0.0815 -0.1222,0 c 0.027,-0.0311 0.054,-0.0496 0.082,-0.0815 z m 31.97983,0.0407 0.5296,0.16296 -0.041,0.20368 -0.5296,-0.12221 0.041,-0.24443 z m -20.49152,0.0407 0.36669,0 0,0.28517 -0.36669,0 0,-0.28517 z m 3.54427,0 0.20369,0 c 0.2933,0.10004 0.5027,0.25432 0.6518,0.48886 l -0.082,0.12221 c 0.049,0.098 0.1128,0.18842 0.163,0.28518 l -0.3667,0 0,0.24443 0.5296,0.0815 c 0.074,0.1378 0.16789,0.2723 0.24439,0.40738 l -1.79248,0 0,-0.2037 c 0.55219,1.1e-4 0.81479,-0.22356 0.81479,-0.52959 l -0.36659,-0.40739 0,-0.48886 z m -9.28843,0.0407 0.1222,0.44812 -0.2037,0.0407 -0.082,-0.32591 0.163,-0.16295 z m -3.50347,0.0815 0.081,0.44811 -0.44809,0.12222 -0.041,-0.16295 0.32589,-0.0407 0,-0.3259 0.082,-0.0407 z m 1.62949,0.0407 c 0.28519,1.06669 0.71239,1.54313 1.30369,1.3851 l 0.082,0.16295 -0.16299,0.24445 -0.2444,-0.12223 c -0.5964,0.73087 -0.87079,1.45178 -0.6926,2.11841 l -0.85549,-0.65181 0.6111,-0.16296 -0.1222,-0.40739 c -0.3695,0.0988 -0.5984,-0.0975 -0.81479,-0.61107 l 0.97769,-0.7333 -0.4481,-0.93699 -0.041,-0.16295 0.4074,-0.12221 z m 23.58759,0.24442 0.4482,0.12222 -0.082,0.24443 -0.4482,-0.12222 0.082,-0.24443 z m -14.95096,0.0815 0.65179,0 0,0.20369 -0.65179,0 0,-0.20369 z m 4.60346,0 0,0.0815 -0.041,0.16296 -0.2037,-0.0407 0.2444,-0.20369 z m -10.55132,0.0407 c 0.1566,0.1293 0.3291,0.24633 0.5703,0.36665 l 0,-0.16296 0.082,0.36665 0,0.0815 -0.4481,0.12221 -0.2037,-0.77403 z m 23.22101,0.0407 0.4481,0.12222 0,0.97772 -0.2852,0.12222 -0.041,0.20371 -0.1629,1.46658 -0.4074,0.57034 0.2037,0.24443 -0.32589,0.2037 0.36659,0.57033 -0.28519,0.12222 -0.2444,-0.0407 -0.041,1.14068 -0.3259,1.14067 -0.44811,-0.16295 -0.20369,0.69256 c 0.013,0.0242 0.029,0.0565 0.041,0.0815 l -0.1223,0.0815 0.163,0.0407 c 0.083,0.20379 0.14219,0.44083 0.16299,0.69256 l -0.041,0.2037 -0.16299,-0.24443 -0.2852,-0.0815 -0.041,0.0407 0.2445,-1.54807 0.774,-2.85169 0.4481,-0.81477 -0.2851,-1.0592 0.52959,0.16295 0.3259,-2.07768 z m -28.43556,0.0407 -0.041,0.44813 -0.2851,0.0815 -0.28519,-0.16296 -0.2037,0.0815 0.36659,0.48886 -0.48879,0.61109 -0.3259,-0.48888 c 0.071,-0.0167 0.1278,-0.0407 0.2037,-0.0407 l 0,-0.48886 -0.163,0 -0.2037,0.28516 -0.2037,0 0.3667,-0.61107 1.26289,-0.2037 z m 4.80716,0 0.16299,0.65183 -0.20369,0.0407 -0.2037,-0.61108 0.2444,-0.0815 z m -7.08854,0.28518 0.2037,0 0,0.28517 -0.2037,0.24442 -0.2444,0 0,-0.3259 c 0.078,-0.065 0.1634,-0.13004 0.2444,-0.20369 z m 32.59082,0.40738 1.50739,1.34438 -0.1222,0.44812 -0.52959,-0.16295 -0.4889,1.79249 -0.2037,-0.0407 0.4074,-2.48505 -0.2852,0.12222 -0.3259,-0.0815 0.041,-0.937 z m 4.48126,0 0.7741,0 -0.1223,0.40738 -0.6925,-0.20369 0.041,-0.20369 z m -27.41697,0.12221 0.041,0 0.2037,0.2037 -0.163,0.0407 -0.082,-0.24443 z m 3.42198,0 0.5704,0 0,0.2037 -0.5704,0 0,-0.2037 z m 5.49975,0 0.041,0 0,0.2037 -0.082,0 0.041,-0.2037 z m 0.5296,0.16296 c -0.014,0.0596 -0.024,0.0991 -0.041,0.16295 l 0.40739,0.12222 c -0.1395,0.12919 -0.34549,0.16299 -0.65189,0.16296 l -0.2036,0 0,-0.2037 0.4888,-0.24443 z m -4.64426,0.0407 0.65189,0.20369 0,0.44814 c -0.41409,0 -0.65179,0.1829 -0.65189,0.48885 l -0.1629,0 c 0,-0.45891 -0.1314,-0.73323 -0.4074,-0.73329 l 0,-0.2037 0.5703,-0.20369 z m 11.44759,0.0407 0.3259,0.6111 -0.041,0.20369 -0.3259,-0.61109 0.041,-0.2037 z m -18.08794,0.0407 0.57039,0.28519 0.6518,2.36283 0,0.0815 -0.3667,-0.52961 -0.2037,0 0.5704,0.85551 0.041,0.65182 0.2851,0.12222 -0.3666,0.57033 -1.18139,-4.39977 z m 15.43987,0 0.2445,0.0407 -0.2852,1.09995 -0.2444,-0.0407 0.2851,-1.09995 z m -7.08844,0.12222 0.5703,0.2037 0,0.24444 -0.77399,0 0.20369,-0.24444 0,-0.2037 z m -9.28842,0.2037 0.48889,0.48886 0.041,0.16296 -0.48889,0.12221 -0.1629,-0.65181 0.1222,-0.12222 z m 1.99618,0.12222 0.3259,0.32591 0,0.0815 0.082,0.0407 0.20369,0.24443 -0.16289,0.16296 0.65179,2.36283 -0.2852,-0.16295 -0.81479,-3.05539 z m -7.82173,0.0815 0.082,0.36664 -0.2037,0.0407 -0.082,-0.36664 0.2037,-0.0407 z m 2.44428,0.20369 -0.082,0.61108 0.082,0.24443 0.2444,0.16295 c -0.7759,0.20743 -1.07559,0.74802 -0.93699,1.71102 l 0.36669,0.57034 -0.2037,0.0407 0.5703,0.24442 -0.1629,1.30364 0.082,0.28517 0.2444,0.12222 -0.2037,0.0407 0.57039,0.85551 c -0.141,0.11253 -0.28639,0.23952 -0.44819,0.40739 l -0.082,-0.2037 -0.4074,0.12222 -0.082,-0.36665 0.4074,-0.12222 -0.2037,-0.81476 -0.44809,0.12221 -0.2037,-0.81477 0.40739,-0.12221 -0.1222,-0.44813 -0.65179,0.2037 0.082,0.44811 -0.2037,0.0407 -0.163,-0.61107 c 0.1174,-0.74567 0.3563,-1.18389 0.6518,-1.26289 l -0.082,-0.16296 -0.4074,0.0815 -0.1629,-0.61108 0.2037,-0.0407 1.34439,-2.03693 z m 31.32793,0.20369 0.2444,0.0407 0.2444,0.28517 0.2852,-0.12222 0.69259,0.16296 0.4481,2.28135 -0.041,0.2037 0.28519,0.0815 0.2852,-0.12222 0.2444,0.0407 -0.6926,2.64799 c -0.61589,-0.3229 -0.84809,-0.90563 -0.61109,-1.79249 l -0.2037,-0.0815 0.2852,-0.12222 0.1222,-0.48886 0.082,-1.18141 -0.5703,-0.12222 -0.69259,2.68873 0.2445,0.28518 -0.3667,0.12221 -0.041,0.2037 0.2037,2.19988 -0.81479,0 c -0.1161,0.56731 -0.1894,1.08428 -0.2444,1.50731 -0.1694,0.10755 -0.2849,0.39717 -0.4074,0.85552 l -0.32589,0.12222 -0.4481,-0.12222 -0.163,-0.93698 0.5704,-0.48887 0,-0.12222 c 0.055,0.0879 0.14859,0.1672 0.28509,0.2037 l 0.2037,0.0407 0.082,-0.2037 0.2445,-1.87397 0.36659,-0.5296 0.7333,-3.62572 0.2444,-0.89625 -0.4481,-0.12222 -0.3666,1.34437 -0.36669,0.12222 0.24439,0.28517 -0.12219,0.48886 -0.5296,-0.16295 0.81479,-3.09613 z m -9.20692,0.12221 0.2037,0.0407 -0.2444,0.89625 -0.2852,0.16295 -0.2037,-0.0815 0.5296,-1.01847 z m 6.07005,0 0.2037,0.0407 -0.082,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -24.97269,0.0815 0.2037,0.81477 -0.2037,0.0407 -0.2445,-0.77403 0.2445,-0.0815 z m -6.72194,0.0407 0.041,0 0.1223,0.44813 -0.2037,0.0407 -0.041,-0.12222 c 0.028,-0.10614 0.05,-0.23043 0.082,-0.32591 0,-0.0133 0,-0.0277 0,-0.0407 z m 34.26111,0.0407 0.2445,0.0407 -0.2037,0.69255 -0.2037,-0.0407 0.1629,-0.69255 z m -26.56148,0.0407 0.1222,0.44813 -0.3259,0.48885 -0.082,-0.36664 0.2852,-0.57034 z m 13.89178,0.0815 0,0.0407 -0.32589,0.2037 -0.2037,-0.0407 c 0.011,-0.0409 -0.01,-0.0837 0,-0.12222 0.1892,-0.0178 0.3783,-0.0562 0.52959,-0.0815 z m -11.7326,0.24443 0.1222,0.12222 -0.2037,0.0815 -0.041,-0.16295 0.1222,-0.0407 z m 27.13177,0.12222 0.7741,0.20368 -0.041,0.24443 -0.7741,-0.20369 0.041,-0.24442 z m -8.71803,0.0407 0.5704,0.16295 -0.082,0.20369 -0.5296,-0.12221 0.041,-0.24443 z m -15.48056,0.0407 0,0.61108 0.4481,0 c 0,0.33785 0.036,0.62661 0.1222,0.81476 -0.2101,0.0427 -0.4005,0.0946 -0.5703,0.16296 l 0,-0.0407 -0.36669,-0.40738 -0.6518,0.20369 c 0,-0.11015 -0.034,-0.2077 -0.082,-0.28517 l -0.2444,-0.89625 1.34429,-0.16295 z m 2.89238,0 0.2852,0.20369 0.20369,0 1.87399,-0.20369 0,0.20369 -0.2852,0.65182 c 0.3992,-0.22119 0.70099,-0.47342 0.81479,-0.77403 0.071,0.0934 0.1312,0.19369 0.2037,0.28516 l -0.3667,0.0407 0,0.44813 0.4074,0 0.2444,0.28517 0.163,-0.24443 c 0.093,0.10678 0.18909,0.22207 0.28519,0.3259 l 0.041,0.16295 -0.2037,-0.20368 -0.24449,0.12221 0.041,0.69256 -0.2444,0.12221 -0.082,0.16296 -0.65179,-0.12222 c -0.065,-0.12871 -0.1069,-0.24434 -0.1222,-0.36665 l 0.32589,0 0.3666,0.0815 0.041,-0.20369 -0.2851,-0.5296 c -0.2712,-0.0725 -0.50579,-0.0647 -0.73329,-0.0815 l -0.2037,-0.20369 -0.082,0.16295 c -0.064,0.002 -0.1437,-0.007 -0.2037,0 l -0.52959,-0.61108 -1.05919,0.2037 -0.7741,-0.2037 -0.44809,0.44813 -0.163,-0.24443 0,-0.2037 c 0.2416,3e-5 0.4327,0.0164 0.61109,0 0.5354,-0.049 0.7741,-0.17787 0.7741,-0.40738 z m 16.29546,0 0.2444,0.0815 -0.2444,0.89625 -0.2445,-0.0815 0.2445,-0.89625 z m -19.96193,0.40738 0,0.44813 0.4074,0 0,-0.44813 -0.4074,0 z m -1.54809,0.0815 0.24449,0.28517 -0.2037,0.36665 -0.16299,-0.5296 0,-0.0815 0.1222,-0.0407 z m -10.51051,0.12222 0.041,0.32591 -0.1629,0.0407 0.1222,-0.36665 z m 21.83581,0 0.163,0 0,0.24443 -0.163,0 0,-0.24443 z m -16.66206,0.0407 0.5297,0.93699 0.041,0.16295 -0.2037,0.28518 0.77399,1.83323 -0.52959,0.32591 -0.2852,-1.50733 -0.1222,-0.44812 -0.2444,-0.12222 -0.16299,-1.42585 0.20369,-0.0407 z m -0.89619,0.0407 1.14069,4.23681 -0.3259,-0.0815 0,-0.0815 -0.28519,-0.16296 -0.6926,-3.46276 -0.041,-0.20369 -0.28509,-0.12222 0.48879,-0.12222 z m 19.88043,0.0815 0.2444,0.0815 -0.1222,0.40738 -0.2037,-0.0407 0.082,-0.44812 z m -7.78113,0.0815 0.6519,0 0,0.20369 c -0.1266,0.0362 -0.2233,0.0983 -0.326,0.16295 l -0.3259,-0.0815 0,-0.28517 z m -9.20682,0.12222 0.12219,0.36664 -0.20369,0.0407 -0.1222,-0.36664 0.2037,-0.0407 z m 15.11397,0.0407 0,0.12222 -0.082,0 0.082,-0.12222 z m 9.98092,0.24443 0.24439,0.0407 -0.16289,0.48886 -0.2037,-0.0407 0.1222,-0.48886 z m 5.25525,0 0.2444,0.0407 -0.1629,0.48886 -0.2037,-0.0407 0.1222,-0.48886 z m -22.8136,0.0815 0.36669,0 c -0.095,0.17535 -0.20739,0.27297 -0.36669,0.28517 l 0,-0.28517 z m 7.12923,0 0.163,0 0,0.20369 -0.163,0 0,-0.20369 z m -1.50728,0.0407 0.28519,0.0815 -0.28519,0 0,-0.0815 z m 4.72565,0.0815 0.3259,0.61109 -0.1222,0.40737 -0.4481,-0.12221 0.2444,-0.89625 z m 1.01849,0.28517 0.2037,0.0407 c -0.079,0.2957 0.1602,0.56116 0.6518,0.69255 l -0.2444,0.89626 c -0.1374,-0.16028 -0.2848,-0.28993 -0.4482,-0.40739 l 0.041,-0.20369 -0.44809,-0.12222 0.24449,-0.89625 z m -5.86634,0.0407 0.1222,0 0.082,0.0407 -0.1222,0.44813 -0.163,-0.0815 0.082,-0.40739 z m 3.38127,0 0.57039,0 -0.082,0.2037 -0.2445,0 c -0.09,-0.0653 -0.17469,-0.12663 -0.24439,-0.2037 z m -7.41444,0.12222 c -0.014,0.0405 -0.029,0.0791 -0.041,0.12222 l -0.12219,-0.0407 0.16299,-0.0815 z m -15.60276,0.16296 0.082,0.16295 0.32589,2.93317 0.4074,-0.12222 -0.1223,-0.36665 0.61109,0.24444 c -0.44339,0.11851 -0.63649,0.41476 -0.52959,0.81476 l 0.2444,0.12222 -0.2444,0.7333 0.041,0.20368 0.44809,-0.1222 -0.12219,-0.44813 0.20369,-0.0407 0.1222,0.44813 -0.36659,1.14068 -0.3667,-0.0815 c -0.056,0.0711 -0.069,0.1343 -0.1222,0.20368 l -0.4481,-1.58879 0.041,-1.09994 -0.32589,-0.0815 0.2037,-0.28517 -0.041,-0.24444 -0.4889,0.12222 -0.082,-0.16295 0,-0.0815 0,-0.16296 c 0.3324,-0.11704 0.5134,-0.41156 0.4481,-0.93698 l -0.4481,-0.77404 -0.041,-0.16295 0.5704,-0.36664 z m 31.16493,0 0.5296,0.12221 -0.2037,0.69255 -0.5296,-0.12221 0.2037,-0.69255 z m -28.92435,0.28516 -0.4074,0.0815 0.041,0.20369 0.4074,-0.12222 -0.041,-0.16295 z m 4.72565,0 0.1222,0.36665 -0.2037,0.0407 -0.1222,-0.36665 0.2037,-0.0407 z m 8.51433,0.0407 0.2037,0.0815 -0.24439,0 0.041,-0.0815 z m 16.90656,0 0.5296,0.12221 -0.1223,0.48887 0.44819,0.12222 0.1629,-0.69256 0.4482,0.57034 -0.5704,0.81477 -0.1629,1.87396 -0.44819,0.52961 -0.2444,-0.0407 c 0.5137,-1.92151 0.4109,-2.92094 -0.2444,-3.09612 l 0.2037,-0.69256 z m -20.04343,0.0815 0.2037,0 -0.1222,0.44813 -0.1629,0 0,-0.20369 0.082,-0.24444 z m 1.79249,0 0.2037,0 c 0.13689,0.16132 0.18659,0.38537 0.16299,0.65183 l -0.1222,0 -0.24449,-0.65183 z m -2.56648,0.12222 0.2037,0.36665 -0.2852,-0.0815 0.082,-0.28517 z m 12.54749,0.16296 0.24439,0.0815 0.2852,0.2037 -0.163,0.24443 c -0.1007,-0.099 -0.2134,-0.17918 -0.32589,-0.24443 l -0.041,-0.28517 z m -7.17004,0.16295 0.2852,0 c 0,0.0716 0.024,0.14662 0.041,0.2037 l -0.4074,0 0.082,-0.2037 z m 0.73329,0.0815 0.4074,0.12222 -0.3259,0 -0.081,-0.12222 z m -6.72184,0.12222 0.2037,0.0815 -0.082,1.22216 -0.082,0.20368 -0.2037,-0.0815 0.041,-0.48886 0.2037,0 0,-0.65182 -0.082,-0.28516 z m 14.62517,0.0407 0.3259,0.0815 -0.163,0.65181 -0.2037,-0.0815 -0.041,-0.5296 0.082,-0.12222 z m -15.35847,0.0407 0,0.20369 -0.1222,0 0.1222,-0.20369 z m -1.46658,0.16296 0.12219,0 0.1222,0.16294 0.082,0.28518 -0.32589,-0.40739 0,-0.0407 z m 4.52196,0.0407 0.2037,0 -0.082,0.20369 -0.16289,0 0.041,-0.20369 z m -5.25526,0.16295 -0.041,0.24444 c -0.1412,0.67656 -0.1364,1.03082 0.1222,1.09994 l -0.2444,0.20369 -0.082,0.16296 -0.041,0.24443 -0.1222,0.0407 -0.163,-0.57035 0.44819,-0.0815 c -0.20599,-0.77058 -0.14749,-1.24297 0.1222,-1.34438 z m 1.87399,0 0.041,0.12222 0.082,-0.0815 0.163,0.65182 0,0.12222 -0.48889,0.73329 0.28519,0.0815 -0.32599,0.12221 -0.082,0.24444 0.2445,0.28516 -0.082,0.16296 -0.4074,0.57034 0.041,0.85551 -0.65179,1.30363 0.24439,0.28516 -0.48889,-0.16294 0.3667,-1.34438 -1.18139,0.73329 0.24439,0.28517 -0.85549,0.44812 -0.082,1.01846 -0.40739,0.69256 c 0.08,-0.49941 0.011,-0.79802 -0.2037,-0.8555 l 0.2852,-0.16296 0.041,-0.20369 0.20369,-1.30363 c 0.1374,-0.1299 0.2764,-0.27149 0.4074,-0.40738 l 0.4481,0.3259 c -0.053,-0.21157 -0.1577,-0.37536 -0.2445,-0.5296 0.051,-0.0555 0.1128,-0.10648 0.163,-0.16295 l 0.24439,0.0407 0.082,-0.36665 0.3667,-0.16296 -0.163,-0.16296 c 0.072,-0.0919 0.134,-0.1912 0.2037,-0.28516 l 0.73329,0.0407 0.163,-0.61108 -0.4074,-0.12222 c 0.071,-0.1075 0.135,-0.21609 0.2037,-0.3259 l 0.2852,0.0815 0.2851,-1.0592 c 0.1085,-0.19992 0.2227,-0.4049 0.32589,-0.61108 l -0.12219,-0.16296 0.041,-0.12222 z m 11.7327,0.0407 0.2037,0.40739 0,0.0407 -0.4889,0 c 0.012,-0.0714 0.03,-0.13545 0.041,-0.20369 l 0.2445,-0.24444 z m -22.16181,0.0407 0.082,0.28517 -0.082,0 0,-0.28517 z m 30.43174,0.2037 0.4888,0.12221 -0.4073,0.93699 c -0.091,-0.13612 -0.2088,-0.26481 -0.36669,-0.36665 l 0.28519,-0.69255 z m -10.87721,0.16295 0.2037,0.0407 -0.2037,0 0,-0.0407 z m 0.97769,0.0407 0.4074,0.12222 -0.041,0.16295 -0.2037,0.0407 -0.1629,-0.28517 c 0.01,-0.003 -0.01,-0.0375 0,-0.0407 z m -8.39212,0.32591 0.4074,0.0815 -0.1629,0.65181 -0.2852,-0.57034 0.041,-0.16295 z m 23.91349,0.0407 c 0.452,0.27923 0.6049,0.76825 0.4074,1.50732 l -0.5296,1.0592 c -0.1997,1.12233 -0.29139,1.89099 -0.28509,2.40357 l -0.163,-0.0407 0.041,-0.77403 0.1222,-0.48886 -0.3666,-0.77403 0.89619,-2.1184 -0.1222,-0.77403 z m -21.83581,0.12221 0.2444,0 0,0.20369 -0.2444,0 0,-0.20369 z m 12.09939,0 0.041,0 -0.163,0.57034 c -0.021,0.0768 -0.028,0.1306 -0.041,0.20369 l -0.041,0 0.2037,-0.77403 z m -19.96193,0.0407 0.2037,0.0407 0.1222,0.24444 -0.3666,-0.12222 0.041,-0.16296 z m -4.11456,0.2037 0.041,0.20369 -0.2852,0.52961 -0.041,-0.16296 0.2852,-0.57034 z m 3.62567,0 c 0.1218,0.0561 0.2253,0.11426 0.40739,0.16295 l -0.082,0.36665 -0.16289,-0.24443 -0.082,-0.0407 -0.082,-0.24443 z m 31.12423,0.0815 0.2445,0.0815 -0.1222,0.48887 -0.2445,-0.0815 0.1222,-0.48886 z m -25.46158,0.0815 c 0.1306,0.006 0.286,0.0201 0.4482,0.0407 l -0.1222,0.36665 c -0.2956,-0.079 -0.55,0.15923 -0.6926,0.69255 l -0.4481,-0.77402 c 0.047,-0.17471 0.2132,-0.25604 0.4888,-0.28518 l 0.3667,0 -0.041,-0.0407 z m 14.01408,0 0.082,0 0.1222,0.0407 -0.041,0.2037 -0.041,0 -0.3259,0 0.2037,-0.24444 z m -8.14773,0.0407 0.2852,0 -0.1222,0.52961 -0.2444,-0.0815 c 0.037,-0.15395 0.063,-0.31014 0.082,-0.44813 z m 0.85559,0 0.5703,0 0,0.0815 -0.3666,0.57034 0.1222,0.16295 -0.61109,-0.16295 c 0.107,-0.16058 0.1904,-0.41429 0.28519,-0.65182 z m 1.05919,0 0.2444,0 -0.041,0.0815 -0.2037,-0.0407 0,-0.0407 z m 2.24058,0 0.4889,0 -0.1222,0.36665 -0.2037,0.0407 0,0.44812 0,0.0407 -0.081,0.16295 0.041,0.44813 -0.163,0.0407 c -0.18079,-0.20535 -0.24269,-0.4948 -0.20369,-0.85552 0,-0.0259 0,-0.0547 0,-0.0815 0.012,-0.0828 0.016,-0.15376 0.041,-0.24443 l 0.20369,-0.36665 z m 0.8555,0 0.73329,0 0.3259,0 -0.041,0.2037 -0.2444,0 0,0.48885 0.2037,0 -0.041,0.2037 -0.3259,0.5296 0,-0.28517 -0.48889,0.12222 -0.041,-0.52961 0.24449,-0.0407 0,-0.48885 -0.28519,0.0407 -0.041,-0.24444 z m -7.69953,0.0815 0,0.77403 c -0.2652,-0.0831 -0.4074,-0.28893 -0.4074,-0.65181 0.1827,2e-5 0.2999,-0.0425 0.4074,-0.12222 z m 5.54045,0 0.40739,0.12222 -0.082,0.36665 -0.44819,-0.12222 0,-0.0407 0.163,-0.20369 -0.082,0 0.041,-0.12222 z m 11.9364,0 0.1222,0.65181 c -0.026,-0.0119 -0.051,-0.0326 -0.082,-0.0407 l -0.3259,0.0815 -0.041,0.24444 0,0.28517 -0.041,0.0815 -0.2037,-0.0407 0.041,-0.2037 0.2444,-0.36665 0.163,-0.28516 -0.4482,-0.12222 0.5704,-0.28517 z m -18.82124,0.0815 c 0.092,0.0158 0.1761,0.0407 0.2852,0.0407 l 0,0.65181 -0.2445,-0.0815 -0.041,0.12222 -0.1222,0 0,0.44813 0,0.0815 0.4481,0.12222 0.041,-0.20369 0.16299,0 -0.52959,0.77402 -0.2444,-0.32591 -0.082,0.36665 0.2444,0.0815 -0.041,0.0407 0.5296,0.12222 0.082,0.24443 -0.12219,0.20368 c -0.155,0.0761 -0.2587,0.22703 -0.2852,0.44813 l -0.041,0.12222 -0.1629,0 c -0.01,-0.0298 0,-0.0522 0,-0.0815 l 0.082,-0.44813 -0.163,-0.0407 c -0.084,-0.43312 -0.1524,-0.79238 -0.2444,-1.0592 l 0.4481,-1.62953 z m -7.29224,0.44812 c 0.21259,0.11967 0.31239,0.32245 0.28519,0.61108 l -0.2037,-0.12222 -0.082,-0.48886 z m 18.33234,0 0.041,0 c -0.01,0.0299 -0.034,0.0522 -0.041,0.0815 -0.03,0.13716 -0.06,0.28313 -0.082,0.40739 -0.092,0.0158 -0.1761,0.0407 -0.2851,0.0407 l 0,0.48887 -0.2445,0 0.082,-0.937 0.5296,0 0,-0.0815 z m -12.38449,0.0815 0.2852,0 0.1222,0.0407 0,0.40739 -0.2037,0 0,0.2037 0.082,0.36664 c -0.1679,-0.14917 -0.2705,-0.48917 -0.2852,-1.01847 z m 25.33938,0.0407 0.4481,0.12222 -0.1222,0.40739 -0.4481,-0.12222 0.1222,-0.40739 z m -33.93521,0.0407 c -0.044,0.0495 -0.077,0.10969 -0.1222,0.16296 l -0.041,-0.12222 0.163,-0.0407 z m -0.89619,0.0407 0.44809,0.93698 -0.20369,0.0407 -0.082,-0.0407 c 0.011,-0.0447 0.028,-0.075 0.041,-0.1222 l -0.2444,-0.0815 -0.2037,-0.69256 0.2444,-0.0407 z m 17.51755,0 0.40739,0.12222 -0.082,0.24443 -0.3667,-0.24443 0.041,-0.12222 z m 0.73329,0 0.2037,0.0815 -0.1223,0.40739 -0.2036,-0.0407 0.1222,-0.44813 z m 7.12924,0.0815 0.082,0.12222 0.28509,0.0815 0.081,-0.0407 -0.2037,1.34438 -0.69249,2.52579 -0.2444,0.48885 -0.082,-0.36665 0.2036,-0.28516 -0.2036,-0.20369 -0.24449,0.0815 -0.1629,-0.28517 0.28509,-0.12221 0.2037,0.0407 0.041,-1.0592 0.2852,-0.97772 0.4074,0.0815 0.12219,-0.52961 0.041,0 0,-0.0815 c -0.12509,-0.22968 -0.18089,-0.50832 -0.20369,-0.81477 z m 3.05538,0.0407 0.2444,0.0815 -0.082,0.24443 0,0.0407 -0.1629,0.52959 -0.2037,-0.0815 0.2037,-0.81476 z m -20.24704,0.20369 0.4074,0.12222 -0.1223,0.36665 -0.2851,-0.48887 z m -10.6328,0.32591 0.041,0.16296 -0.1222,0.0407 0,-0.16296 0.082,-0.0407 z m 5.54045,0.0407 0.2037,0.0815 -0.082,0.36664 0.2037,0.0407 -0.2444,0.12221 -0.1222,0.48887 -0.163,-0.61108 0.2037,-0.48886 z m 27.41707,0 0.3666,0.0815 c -0.05,0.18575 -0.024,0.33526 0,0.44812 l -0.3259,-0.0815 c 0.053,-0.20003 0.019,-0.3353 -0.041,-0.44812 z m -3.95167,0.0815 0.041,0 c -0.023,0.12022 -0.051,0.23873 -0.082,0.36664 l -0.041,0 0.082,-0.36664 z m -17.31385,0.0407 0.2037,0.0407 -0.2445,0.81476 -0.2037,-0.0407 0.2445,-0.81477 z m 14.74737,0.0407 c 0.1067,0.0985 0.2579,0.16799 0.4073,0.24442 l -0.1629,0.32591 -0.163,-0.0407 -0.041,-0.0407 c -0.048,-0.0401 -0.1096,-0.0903 -0.1629,-0.12221 l 0.1222,-0.36664 z m -21.91741,0.16294 0.082,0 c 0.01,0.0632 0,0.14342 0,0.2037 l -0.082,-0.2037 z m 32.46862,0 0.3259,0.52961 -0.4481,-0.12222 0.1222,-0.40739 z m -33.24261,0.36665 0.041,0.12222 -0.163,-0.0407 0,-0.0407 0.1223,-0.0407 z m 6.76263,0.16296 0.2036,0.0815 -0.73329,2.81095 -0.2036,-0.0815 0.73329,-2.81095 z m 9.45133,0 -0.2037,0.81477 0,0.0815 c -0.07,0.01 -0.1708,0.0316 -0.2445,0.0407 l 0.2445,-0.89624 0.2037,-0.0407 z m 1.58878,0.16295 c 0,0.0512 0,0.10831 0,0.16296 -0.1404,0.17118 -0.50329,0.28723 -1.01849,0.40738 l 0.082,-0.24444 0.93699,-0.3259 z m 8.59584,0.12222 c 0.10669,0.18436 0.23739,0.33744 0.36659,0.48886 l 0,0.12221 0.163,0.0407 c 0.068,0.0685 0.1302,0.14364 0.2037,0.2037 l -0.163,0.65181 -0.2037,-0.0407 c 0.071,-0.26673 -0.1676,-0.49255 -0.61099,-0.61107 l 0.2444,-0.85551 z m 1.01849,0.0407 0,0.12221 -0.082,-0.0815 0.082,-0.0407 z m 5.58114,0.0407 0.4481,0.1222 -0.041,0.2037 -0.48889,-0.12222 0.082,-0.20368 z m -24.19868,0.0407 0.12219,0.44811 0.2444,0.89625 -0.44809,0.7333 0.32589,-0.12222 0.2037,0.0407 -0.1222,0.36664 -0.2037,-0.0407 -0.20369,-0.24442 -0.2444,-0.0815 -0.082,0.44812 -0.2444,-0.0407 0.6518,-2.40356 z m -1.2222,0.0815 0.20369,0.0815 -0.12219,0.52961 -0.2037,-0.0407 0.1222,-0.57035 z m 7.12924,0 0.2037,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m 14.54368,0.0407 -0.082,0.24444 0.69259,0.16295 0.082,-0.20369 -0.69259,-0.2037 z m -28.67996,0.0815 c 0.026,-0.005 0.055,0.004 0.082,0 -0.1259,0.1796 -0.3023,0.32896 -0.5296,0.44813 l -0.041,-0.2037 c 0.14479,-0.11438 0.30619,-0.20677 0.48889,-0.24443 z m 13.36229,0.2037 c 0.1272,0.1138 0.2391,0.2232 0.2852,0.32591 l -0.2852,-0.0815 0,-0.24443 z m -12.95489,0.20369 0.041,0 0.32589,0.12222 c 0.029,0.10641 0.051,0.19751 0.082,0.28517 l -0.2037,0.77403 -0.20359,-0.0407 c 0.1426,-0.53338 0.01,-0.85797 -0.2852,-0.93699 l -0.2037,0.0815 0.041,-0.16295 0.3259,-0.0815 0.081,0 0,-0.0407 z m -2.56648,0.0407 0.082,0.24443 -0.1222,-0.0407 0.041,-0.20369 z m 13.44369,0 0.2037,0 c -0.015,0.10051 -0.023,0.21901 -0.041,0.32591 l -0.1629,0.16294 0,-0.48885 z m 8.55512,0 0.3666,0 -0.041,0.16295 -0.4074,-0.12221 c 0.02,-0.0187 0.064,-0.0211 0.082,-0.0407 z m 1.01839,0 0.4074,0 0,0.20369 c -0.1951,4e-5 -0.3609,0.0365 -0.4888,0.0815 l 0.082,-0.28517 z m -19.43223,0.0815 0.163,0.0407 -0.082,0.32592 -0.082,-0.36665 z m 13.81038,0.12221 0,0.5296 -0.041,0.0407 -0.041,0.16295 -0.2444,0 0.2036,-0.69255 0.1223,-0.0407 z m 0.85549,0 0.937,0 -0.041,0.16296 0,0.1222 -0.2444,0 -0.2852,-0.0407 -0.082,0.0407 -0.2852,0 c 0,0.0149 0,0.026 0,0.0407 l -0.082,-0.0407 0.082,-0.28516 z m 3.05538,0.16296 -0.082,0.36664 -0.3666,0 -0.1222,-0.12222 0.041,-0.16294 c 0.2044,-0.0207 0.3677,-0.0344 0.5296,-0.0815 z m 9.04392,0 c 0.6945,0.36415 0.9332,1.01469 0.6926,1.9147 l -0.4889,-0.12221 -0.1629,0.52959 0.3666,0.57035 -0.85549,1.26289 0.2037,0.0407 -0.2444,0.12222 -0.082,0.28516 0.1629,1.30363 -0.5703,0.24444 0.2037,0.0407 -0.3667,0.57033 c -0.13859,0.96299 0.1611,1.5036 0.937,1.71103 l -0.2444,0.16296 -0.082,0.24442 0.082,0.61108 -1.34439,-2.03692 -0.2037,-0.0407 0.163,-0.61109 0.4481,0.0815 0.041,-0.16296 c -0.2956,-0.079 -0.5344,-0.51721 -0.6518,-1.26288 l 0.1629,-0.61109 0.2037,0.0407 -0.082,0.44813 0.69259,0.20369 0.082,-0.44812 -0.40739,-0.12222 0.24439,-0.81477 0.4074,0.12222 0.2037,-0.81478 -0.4074,-0.1222 0.082,-0.36665 0.4482,0.12221 0.082,-0.36665 -0.4074,-0.12221 0.1629,-0.61108 c 0.3696,0.0988 0.59839,-0.13822 0.81479,-0.65182 0.1069,-0.39999 -0.01,-0.61476 -0.44809,-0.73329 l 0.16289,-0.61107 z m -24.52459,0.0407 0.48889,0.1222 -0.40739,0.57035 -0.2444,-0.0815 0.1629,-0.61107 z m 23.3025,0 c 0.1376,0.0728 0.2979,0.11502 0.4481,0.16294 l -0.1222,0.40739 -0.3259,-0.52959 0,-0.0407 z m -16.70285,0.0815 0.65189,0 0.2037,0.24444 0.1629,0 -0.1629,0.61108 -0.6111,0 -0.24449,-0.85552 z m 5.70345,0.2037 0.082,0 c -0.036,0.16125 -0.082,0.31655 -0.12219,0.44813 l -0.082,0 0.1222,-0.44813 z m 4.88855,0.0407 0,0.16295 -0.082,0.24444 -0.2036,0 0.041,-0.2037 0.2444,-0.20369 z m -7.74023,0.0815 0.2037,0.0407 -0.041,0.0815 -0.2037,0 0.041,-0.12221 z m -8.63663,0.0815 0.65179,0.36665 -0.28509,1.01846 -0.2037,-0.0815 -0.2445,-0.93699 0.082,-0.36665 z m 20.89893,0 0.48879,0.12222 0.3667,1.14068 -0.1222,0.44813 -0.2037,-0.0407 0.1222,-0.44813 -0.44809,-0.12222 -0.041,0.2037 0.2444,0.73329 -0.2444,0.12221 c -0.1069,0.40004 0.086,0.69626 0.52959,0.81477 l -0.57039,0.24443 0.082,-0.36665 -0.4074,-0.1222 -0.3259,2.93317 -0.082,0.16295 -0.57029,-0.32591 0.082,-0.20369 0.4074,-0.77403 c 0.069,-0.55307 -0.1194,-0.87895 -0.4889,-0.97773 l 0.1222,-0.36665 0.48889,0.12222 0.041,-0.24443 -0.2037,-0.28516 0.3259,-0.0815 -0.041,-1.09994 0.4481,-1.58881 z m -18.98425,0.0407 0.4074,0.12222 -0.041,0.20369 -0.4073,-0.12221 0.041,-0.2037 z m 11.20311,0 0.163,0 c 0.066,0.0585 0.1536,0.11741 0.2444,0.16296 l -0.041,0.12221 -0.082,0.28518 -0.2851,-0.52961 0,-0.0407 z m -19.96183,0.0407 0.3259,0.48887 -0.2444,-0.24444 -0.2037,-0.0407 0.1222,-0.2037 z m 1.09989,0.0815 0.163,0.0407 0,0.16295 -0.163,0.65181 -0.2037,-0.0815 0.2037,-0.77403 z m 31.08354,0 c 0.044,0.10287 0.088,0.18377 0.163,0.20369 l 0.2036,0.0407 0,0.44812 -1.71099,6.35522 -0.48889,-0.12221 0.28519,-0.12222 0.041,-0.20369 0.6926,-3.46279 0.28519,-0.12222 0.041,-1.0592 0.4888,-1.95544 z m 1.01849,0 0.2037,0.0407 -0.2037,0.65181 -0.2037,-0.0815 0.1629,-0.57033 0.041,-0.0407 z m -15.64367,0.12222 0.041,0.44811 -0.1222,0.0407 -0.082,-0.3259 0.163,-0.16295 z m 12.7919,0 0.20369,0.0407 -0.1222,0.36664 -0.20369,-0.0407 0.1222,-0.36664 z m -9.57353,0.0407 c 0.1347,0.0336 0.3237,0.0613 0.4889,0.0815 l -0.1222,0.48886 -0.4482,-0.16296 0.082,-0.40738 z m -20.98032,0.32591 0.4889,0.12221 -0.082,0.2037 -0.163,1.38511 c 0.01,-0.18442 -0.023,-0.3523 -0.082,-0.57035 l -0.2037,-0.81476 0.041,-0.32591 z m 3.29977,0.0407 0.4482,0.0815 c -0.1069,0.39999 -0.01,0.69501 0.2851,0.77404 l -0.041,0.20368 c -0.4433,-0.11853 -0.7027,-0.1037 -0.774,0.16296 l -0.20369,-0.0407 -0.082,-0.61107 0.36669,-0.57035 z m 16.82506,0.0407 0.2852,0 -0.082,0.24444 -0.2037,0 0,-0.24444 z m -13.76958,0.16296 0.20369,0.0407 -0.041,1.0592 -0.40739,-0.12222 0.2444,-0.97772 z m 20.12482,0.20369 0.4481,0.16296 -0.041,0.16295 -0.4889,-0.12221 0.082,-0.2037 z m 3.09608,0 0.2037,0.0407 -0.44809,0.93699 -0.2037,-0.0407 0.2037,-0.81477 0.24439,-0.12222 z m -19.51373,0.12222 0.93699,0.0407 -0.1222,0.57033 -0.97779,0 0.163,-0.61107 z m 8.59582,0.16295 0.2037,0 0,0.0407 -0.2037,-0.0407 z m 3.74797,0 0.3259,0 -0.041,0.2037 -0.2852,0 0,-0.2037 z m 2.36278,0 0.3259,0 0,0.2037 -0.3666,0 0,-0.12222 0.041,-0.0815 z m -19.51373,0.0407 0.32589,0.5296 -0.28509,0.12222 -0.2037,-0.0407 c 0.062,-0.23334 0.1326,-0.43445 0.1629,-0.61108 z m -4.31826,0.16296 0.20369,0.0407 -0.1222,0.36664 -0.20369,-0.0407 0.1222,-0.36664 z m 32.30562,0 0.2037,0.0407 c -0.1069,0.4 -0.01,0.69503 0.2852,0.77403 l -1.42589,3.50351 0.2037,0.24442 -0.041,0.2037 -0.5296,0.89625 -0.2037,-0.0407 0.163,-1.42586 0.2444,-0.12221 0.1222,-0.44813 0.69259,-3.42204 0.2852,-0.20368 z m -35.361,0.12222 0.1222,0.8555 0.2037,0.12222 c -0.012,0.0966 -0.014,0.18348 -0.041,0.28516 l 0,0.0815 -0.041,-0.0815 -0.2037,0.0815 c 0.022,0.0838 0.035,0.13719 0.041,0.20369 l -0.36669,0.1646 c -0.01,-0.0436 -0.032,-0.0797 -0.041,-0.12222 l 0.1222,-0.0407 0.041,-0.20369 0.163,-1.34436 z m 9.45132,0.0407 0.61109,0.16296 -0.041,0.20369 -0.69259,0.0815 0.1222,-0.44813 z m -4.80716,0.24444 0.2037,0.0815 -0.163,0.5296 -0.2036,-0.0407 0.1629,-0.57034 z m 28.96506,0 0.2037,0.0407 -0.2851,1.01846 -0.2037,-0.0815 0.2851,-0.97772 z m -20.49143,0.12221 0.3666,0.52961 -0.1629,0.61107 -0.2037,-0.32591 -0.40739,-0.1222 c -0.1069,0.4 -0.4121,0.56664 -0.8555,0.44811 0.107,-0.40002 -0.01,-0.6555 -0.4481,-0.77403 l 0.041,-0.20369 0.4074,0.12222 0.1629,0.24443 c 0.08,-0.29997 0.4464,-0.45431 1.09999,-0.52961 z m 10.8364,0.2037 0.1222,0 0,0.12222 -0.1222,-0.12222 z m 13.1178,0 0.89629,0.24443 -0.4481,1.75175 c -0.2956,-0.079 -0.3768,-0.54438 -0.163,-1.34437 l -0.44809,-0.0815 0.1629,-0.57033 z m -6.15145,0.0407 0.2851,0.52959 -0.041,0.2037 -0.2851,-0.57034 0.041,-0.16295 z m -28.55776,0.0815 -0.2037,1.62953 -0.81469,0.24443 0.2444,-0.89624 c 0.44909,-0.22295 0.73079,-0.54687 0.77399,-0.97772 z m 0.6926,0 0.24439,0.0815 -0.082,0.36664 -0.28509,-0.0815 0.1222,-0.36665 z m 21.87661,0.0407 0.16289,0.0407 0,0.24444 -0.40739,0 0.2445,-0.28518 z m -9.53282,0.0407 0.2037,0 0.1629,0.24444 -0.2852,0 -0.082,0 0,-0.0407 0,-0.2037 z m -6.96634,0.24444 0.48889,0.1222 -0.082,0.24444 -0.52959,0.93698 -0.163,-0.24442 -0.2037,-0.0815 -0.52959,0.28516 0.041,0.65182 c -0.2956,-0.0791 -0.5041,0.0481 -0.6111,0.44812 l -0.1629,-0.24442 -0.2037,-0.0407 -0.24439,0.12221 0.20359,-1.62954 0.6111,0.16296 0.1222,-0.40739 c 0.73909,0.19754 1.15609,0.0741 1.26299,-0.3259 z m 2.85167,0.1222 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m -7.86253,0.0407 0.2037,0.0815 -0.082,0.36665 -0.2444,-0.0407 0.1222,-0.40739 z m 6.64044,0.0407 0.2037,0.0815 -0.082,0.40739 -0.2445,-0.0407 0.1223,-0.44813 z m -9.28841,0.12222 0.20369,0.0815 -0.24439,0.0815 0.041,-0.16295 z m -0.041,0.28517 0.163,0.12222 0,0.0407 -0.2037,-0.0407 0.041,-0.12222 z m 15.72506,0.0815 c 0,0.20653 -0.1299,0.30826 -0.32589,0.36665 l -0.5296,0.0407 0,-0.16296 0,-0.0407 0.85549,-0.20369 z m 3.25907,0 c 0.013,0.005 0.029,-0.006 0.041,0 0.089,0.046 0.1749,0.11085 0.2037,0.20369 l -0.2444,0 0,-0.20369 z m 1.54809,0 0.4074,0 0.082,0.12221 -0.20369,0.81477 c -0.045,0.002 -0.075,0 -0.1222,0 l 0,0.2037 -0.2037,-0.2037 -0.4074,0 -0.16299,-0.24443 0.12229,-0.44812 c 0.1892,0.0506 0.3495,-0.044 0.4888,-0.24443 z m 1.22219,0 0.3259,0 c 0.015,0.019 -0.011,0.0591 0,0.0815 -0.099,0.33787 -0.3274,0.59856 -0.6518,0.73329 l -0.1223,-0.0407 0.4482,-0.77403 z m 4.44046,0 -0.041,0.20369 -0.4889,0 0,-0.12222 c 0.2002,-0.0277 0.3723,-0.0507 0.5296,-0.0815 z m 8.88103,0 0.20369,0.0407 -0.082,0.36665 -0.2037,-0.0407 0.082,-0.36665 z m -26.84668,0.0815 0.4074,0.12222 -0.1223,0.44812 -0.4073,-0.12222 0.1222,-0.44812 z m 9.73652,0.12222 0.1629,0 -0.1629,0.57034 0,-0.57034 z m -11.9772,0.16296 -0.082,0.36664 0.4074,0.12221 0.1222,-0.36665 -0.4481,-0.1222 z m 4.97016,0.0407 0.6925,0.20368 -0.1222,0.36665 0.4481,0.12222 0.163,-0.61109 0.32589,0.36665 c -0.34769,0.17232 -0.58869,0.44677 -0.73329,0.81477 -0.062,0.0265 -0.089,0.0462 -0.1222,0.0815 l -0.2037,-0.0407 c 0.1402,-0.44386 -0.02,-0.72708 -0.4074,-0.81477 l -0.2037,-0.0407 c 0.072,-0.11464 0.1184,-0.28147 0.163,-0.44811 z m 16.90645,0 0.4074,0.1222 -0.082,0.24444 -0.4074,-0.12222 0.082,-0.24442 z m -14.42147,0.20368 0.1223,0.0407 c -0.043,2.1e-4 -0.081,-0.002 -0.1223,0 l 0,-0.0407 z m -13.72888,0.24443 0.4482,0.0815 -0.082,0.2037 -0.4074,-0.12222 0.041,-0.16296 z m 20.16563,0 0.16289,0.0815 -0.20369,0.0407 0.041,-0.12222 z m -10.46982,0.0407 0.163,0.24444 0.2036,0.0407 c 0.1186,0.0317 0.2233,0.0419 0.32599,0.0407 -0.14739,0.0926 -0.29509,0.12532 -0.48889,0.0815 l -0.2037,0.65181 c 0.3876,0.0877 0.6345,0.21898 0.77399,0.44813 l -0.48879,0.24443 0.40739,0.0815 0.082,-0.28516 c 0.122,0.22481 0.1522,0.50257 0.041,0.85552 l 0.6518,0.16295 -0.3667,1.09994 -0.61109,-0.12222 0,2.1184 -1.34429,1.14068 0.2037,0.32591 -1.75179,2.40357 0.4481,-0.12221 0.2444,0.0815 -0.1222,0.40739 -0.2851,-0.0407 -0.2852,-0.32591 -0.28519,-0.0407 -0.1222,0.48886 -0.2852,-0.0815 2.48508,-7.78107 0.24439,-0.0407 -0.28509,0.97774 0.65179,0.12221 0.4074,-1.30364 -0.4482,-0.0815 0.041,-0.1222 -0.2037,-0.0815 -0.28509,0 0.041,-0.12222 0.2851,-0.0407 0.082,-0.20369 -0.2444,-0.0815 0.163,-0.57033 -0.2037,-0.28518 0.082,-0.20369 0.2851,-0.0815 z m 6.68115,0.0407 0.2037,0.0407 -0.041,0.12222 -0.163,-0.16296 z m 7.86253,0 0.041,0.16296 -0.2852,-0.0815 0.2444,-0.0815 z m -20.04343,0.12222 0.4482,0.77403 -0.3259,0.16295 -0.163,-0.0407 0.041,-0.89624 z m -0.69249,0.0407 0.2037,0.0407 -0.1222,0.44811 -0.2037,-0.0407 0.1222,-0.44812 z m 19.88043,0.16295 -0.082,0.24443 -0.2037,-0.0407 0,-0.0815 0.2851,-0.12222 z m -1.38519,0.12222 0.082,0.12221 0,0.28517 -0.4481,-0.12222 0.163,0 0.2037,-0.28516 z m 3.87016,0.12221 0.2445,0.0815 0,0.28517 0,0.65183 0,0.12221 -0.326,0.12221 -0.40729,-0.0815 0.2851,-1.14067 0.041,0 c 0.064,-0.008 0.1028,-0.0322 0.163,-0.0407 z m -25.38008,0.12221 0.3667,0.48887 -0.48889,-0.12222 0.12219,-0.36665 z m 35.4018,0.0407 0.2037,0.0407 -0.1222,0.36665 -0.2037,-0.0407 0.1222,-0.36665 z m -11.4475,0.12222 -0.041,0.20369 -0.7741,0.0815 -0.20369,-0.0815 0,-0.0407 1.01849,-0.16295 z m 6.43665,0 -0.041,0.20369 0.40739,0.0815 0.041,-0.16296 -0.40739,-0.12221 z m -27.17257,0.24443 0,0.20369 -0.4074,0.2037 0.3259,0.3259 -0.1222,0.0815 -0.2852,-0.0815 0.082,-0.3259 -0.1222,-0.0407 0,-0.0407 0.5296,-0.32591 z m 3.13687,0 0.36659,0.0815 -0.24439,0.69255 -0.3259,-0.0815 0.2037,-0.69255 z m 8.31063,0 0.4074,0 0,0.0407 -0.4074,0 0,-0.0407 z m -13.60668,0.0815 0.20369,0.0407 -0.36659,1.34438 c -0.019,-0.29823 -0.091,-0.4868 -0.2445,-0.57035 l 0.041,-0.32591 0.3667,-0.48886 z m 10.30691,0.0815 0.2444,0.0815 -0.1222,0.44812 -0.2852,-0.0407 0.163,-0.48885 z m 2.11838,0.0407 0.2444,0.0407 -0.082,0.24444 0.041,0.16294 c -0.01,0.1969 0.032,0.3372 0.1222,0.44813 l 0,0.0815 -0.1629,0 -0.4074,0.44813 -0.20369,0 0.24439,-0.85552 0.163,-0.28516 -0.041,-0.0407 0.082,-0.24444 z m 1.38509,0.0407 0.2444,0.28518 0,0.28516 c -0.1625,-0.11746 -0.2809,-0.25346 -0.4074,-0.36664 l 0.163,-0.2037 z m -7.69954,0.2037 0.2851,0.0407 -0.1629,0.48885 -0.2445,-0.0815 0.1223,-0.44812 z m 13.97328,0.0815 0.2037,0.0407 0.3259,0.48886 -0.082,0.24444 -0.2037,-0.0815 -0.082,-0.0815 0,-0.16296 -0.2037,0 c 0.013,-0.15533 0.042,-0.32188 0.041,-0.44811 z m -16.53986,0.0815 -0.1222,0.36664 -0.041,1.42586 -0.65179,0.81477 0.3666,0.0815 -0.4481,0.12221 -0.082,0.24444 0.2852,0.3259 -0.041,0.20369 -0.5704,0.61109 0.082,0.97772 -0.85549,1.42585 0.2852,0.28516 -0.6111,-0.12222 0.4481,-1.54805 -1.50729,0.8555 0.2851,0.28518 -1.01839,0.44811 c -0.1112,-0.21925 -0.218,-0.41747 -0.3259,-0.65181 0,-0.0107 0.01,-0.03 0,-0.0407 l 0.1222,-0.77403 0.2851,0.0815 0.69259,0.44812 c -0.20059,-0.6795 -0.55919,-1.09061 -1.14069,-1.22216 l 0.2037,-0.69255 c 0.015,-0.0461 0.027,-0.077 0.041,-0.12221 l 0.1222,-0.0407 0.041,-0.2037 -0.082,-0.0407 c 0.068,-0.22572 0.108,-0.44974 0.163,-0.65181 l 0.1629,-0.12221 0.041,-0.2037 -0.041,-0.12221 c 0.059,-0.23983 0.045,-0.41041 0.082,-0.61108 0.2166,-0.0412 0.45009,-0.15496 0.69259,-0.36665 -0.087,0.52224 -0.036,0.83279 0.2444,0.89625 l -0.3259,0.20369 -0.041,0.0815 c -0.1805,0.11243 -0.37509,0.24349 -0.52959,0.36665 l -0.041,0.24443 0.40739,0.12221 -0.32589,1.67028 0.57029,0.12222 0.1222,-0.40739 0.4482,-0.20369 -0.2852,-0.28517 -0.2852,-0.0815 0.082,-0.2037 1.50739,0.12222 0.2037,-0.69256 -0.5296,-0.12221 0.1222,-0.40739 0.57029,0.12222 0.3667,-1.14068 0.2444,-0.16295 -0.2037,-0.0407 0.4889,-1.54808 0.32589,-0.12221 z m -6.11074,0.0407 0.2444,0.0815 -0.1222,0.36665 -0.2037,-0.0407 0.082,-0.40739 z m 24.03569,0 0.163,0.24444 0.2037,0.0815 0.32589,-0.12221 -0.041,0.16295 c -0.39619,0.0368 -0.72569,0.11789 -0.97779,0.20371 l -0.041,0 -0.1629,-0.0407 0.2852,-0.44813 0.2444,-0.0815 z m -12.0179,0.0815 0.6111,0.12222 -0.1222,0.4074 -0.4889,-0.52962 z m 3.95167,0.12222 0.3259,0.0815 -0.041,0.16296 -0.2852,0.0815 0,-0.0407 0,-0.28517 z m 4.80716,0.0407 0.2037,0.0407 0,0.0407 -0.2037,0 c 0,-0.0303 0,-0.052 0,-0.0815 z m -13.81038,0.0815 0.28519,0.0815 -0.082,0.61109 -0.36669,0.12221 0.041,-0.40738 0.1223,-0.4074 z m 29.57615,0.0407 0.20369,0.0407 -0.1222,0.36666 -0.20369,-0.0407 0.1222,-0.36666 z m -7.45515,0.32592 0.4074,0.12222 -0.082,0.44812 -0.4074,-0.24443 0.082,-0.32591 z m -26.35777,0.0407 0.4074,0.12222 -0.082,0.20369 -0.4074,-0.12221 0.082,-0.2037 z m 1.67029,0 0.2037,0.24443 -0.041,0.20369 -0.3259,-0.3259 0.1629,-0.12222 z m 18.16934,0.0407 c 0.1619,0.0875 0.2758,0.18387 0.4889,0.28517 -0.019,0.0576 -0.041,0.1396 -0.041,0.20369 l -0.5296,0 c 0.031,-0.17322 0.06,-0.33607 0.082,-0.48886 z m -3.25907,0.20369 0.163,0 0,0.0407 -0.163,-0.0407 z m -12.1401,0.20369 -0.082,0.57034 -0.041,0.24444 -0.28519,-0.0815 0.041,-0.61108 0.36669,-0.12222 z m -3.29977,0.0815 0.2444,0.0407 -0.1222,0.48886 -0.2852,-0.0407 0.163,-0.48886 z m 10.71422,0.0407 0.73329,0.16295 0,0.0815 -0.082,0.24443 -0.082,0.12222 0,0.16295 0,0.0407 -0.1222,0.28517 -0.082,0 -0.2037,-0.28517 c 0.017,-0.3233 -0.065,-0.59919 -0.16299,-0.81477 z m 20.00262,0 c -0.1782,0.66667 0.096,1.38753 0.6925,2.1184 l 0.24449,-0.12222 0.1629,0.24443 -0.041,0.16296 c -0.24629,-0.0658 -0.49569,0.0124 -0.69249,0.16295 -0.042,-0.0157 -0.074,-0.0298 -0.1223,-0.0407 l -0.3666,0.12221 c 0.1402,-0.44386 0.062,-0.72707 -0.32589,-0.81477 l -0.4074,0.12222 -0.041,0.0815 -0.2852,-0.20369 c 0.2165,-0.51357 0.4453,-0.70986 0.8148,-0.61108 l 0.1222,-0.40738 -0.6111,-0.16295 0.85559,-0.65182 z m 2.40358,0.0407 0.3259,0.48887 -0.1222,0.44812 -0.2852,-0.57034 0.082,-0.36665 z m -17.96574,0.0815 0.28519,0.0815 -0.1222,0.40739 -0.24449,-0.32591 0.082,-0.16296 z m -14.25848,0.0407 0.28519,0.0407 -0.082,0.20369 c -0.1131,0.033 -0.21799,0.0873 -0.32589,0.12222 l 0.1222,-0.36665 z m 15.76586,0 0.73329,0 -0.082,0.2037 -0.6926,0.0815 c 0.022,-0.10671 0.02,-0.18393 0.041,-0.28517 z m -3.99236,0.0815 0.041,0 0,0.12222 -0.041,0 0,-0.12222 z m 19.67663,0 0.2037,0.0407 -0.2037,0.81477 -0.2037,-0.0407 0.2037,-0.81477 z m -28.43546,0.16295 0.57029,0.12222 -0.2444,0.69255 -0.36659,-0.61107 0.041,-0.2037 z m 2.15918,0.0407 -0.082,1.14068 0.61099,0.16296 0.082,-1.18142 -0.61099,-0.12222 z m 19.55443,0.12222 0.163,0.0407 -0.1222,0.44812 -0.2037,-0.0407 0,-0.0407 0.041,0 0.1222,-0.40738 z m -13.44368,0.0407 0.1222,0 0.2852,0.73329 -0.1222,0.16295 -0.163,0 -0.2037,-0.61108 c 0.01,-0.0113 0,-0.0293 0,-0.0407 l 0,-0.0407 c 0.026,-0.0655 0.056,-0.13405 0.082,-0.20369 z m 6.31444,0 0.4074,0 -0.082,0.48886 -0.3259,0 0,-0.48886 z m 4.03317,0 0.2444,0.0407 -0.041,0.16295 -0.2444,-0.0815 0.041,-0.12222 z m -25.70608,0.0815 0.082,0.0407 -0.041,0.20368 -0.082,-0.0407 0.041,-0.20368 z m 38.17207,0.0815 -0.041,0.16295 0.041,0.0407 0,-0.20369 z m -21.55071,0.0407 0.082,0 0,0.3259 -0.2037,-0.0407 0.1222,-0.28517 z m -10.91791,0.24443 c 0.2732,-0.0456 0.67939,-0.0134 1.18139,0.0407 l -0.1222,0.40738 c -0.3876,-0.0877 -0.75009,0.1822 -0.93699,0.77403 l -0.5704,-0.89624 c 0.053,-0.16645 0.175,-0.28029 0.4482,-0.32591 z m 14.09548,0.0407 0.3259,0 -0.1222,0.20369 -0.2037,0 0,-0.20369 z m 0.77409,0 0.082,0 0,0.20369 -0.041,0 -0.041,-0.20369 z m 15.15468,0.0407 0.48889,0.12222 -0.2852,1.01846 -0.36659,-0.48885 0.1629,-0.65183 z m -17.96565,0.0407 0.2444,0.0407 -0.2852,0.0815 0.041,-0.12222 z m 10.8364,0 0.2037,0.0407 -0.041,0.12222 -0.2444,0.12221 0,0.0815 -0.041,0 0.041,-0.0815 0.082,-0.28517 z m 9.57362,0.12222 -0.12229,0.0815 -0.082,0.16295 0.20369,0.24444 0,-0.48887 z m -13.81038,0.0815 0.4074,0.0815 -0.3259,0.44813 -0.326,-0.0815 -0.041,-0.16295 0.2852,-0.28517 z m -10.4291,0.0407 0.12219,0.0815 0,0.24444 -0.16289,-0.0407 c 0.032,-0.10244 0.017,-0.18859 0.041,-0.28517 z m 13.85107,0.0407 0.61109,0.5296 0.041,0.0407 -0.1222,0.61108 c -0.17379,-0.13018 -0.33509,-0.28385 -0.48889,-0.36665 -0.043,-0.24559 -0.071,-0.51515 -0.041,-0.81477 z m -8.55502,0.0407 0.36659,0 0,0.24444 -0.36659,0 0,-0.24444 z m -16.45836,0.0815 0.1629,0.0407 -0.1222,0.40738 -0.2852,-0.0815 0.082,-0.28517 0.163,-0.0815 z m 4.19606,0.2037 0.52959,0.12221 0,1.18141 c -0.33909,-0.0767 -0.52099,-0.50904 -0.52959,-1.30362 z m 1.79248,0.16295 -0.2444,0.69255 0.6518,0.16296 0.2037,-0.69256 -0.6111,-0.16295 z m 3.01467,0.24442 c 0.53691,0.1214 0.59101,1.23745 0.16291,3.29982 -0.149,0.24871 -0.3559,0.70204 -0.5703,1.14068 l -0.5704,-0.12222 -0.52959,-1.34436 c 0.3877,0.0877 0.59319,-0.0857 0.73329,-0.5296 l 0.082,-1.18142 0.2037,0.24443 0.6518,0.16296 -0.16291,-1.67029 z m 9.69573,0.0407 0.1222,0.12222 -0.2444,0.28517 -0.1222,0.44812 -0.1222,0 -0.2852,-0.0815 -0.041,-0.44813 0.082,-0.12221 0.2444,0.24443 0.3667,-0.44813 z m 5.37745,0 c 10e-5,0.30601 -0.1563,0.44816 -0.5703,0.44813 l 0,0.2037 0.4074,0 -0.3667,0.65181 -0.40729,-0.0815 0.082,-0.0815 0,-0.28517 -0.041,-0.0407 0.40729,-0.77404 c 0.1596,-0.009 0.3126,-0.0407 0.4889,-0.0407 z m -13.44368,0.0407 0.2852,0.0407 -0.4481,1.2629 -0.082,0.32591 c 0.1979,0.0814 0.3666,0.16669 0.5296,0.24443 l -0.2445,0.44812 -0.1222,-0.2037 -0.3259,0.16296 -0.24439,-0.0407 c 0.067,-0.14188 0.13049,-0.2725 0.20369,-0.48886 l -0.20369,0 0.16289,-0.48886 0.041,0.0407 0.2852,0 0.163,-1.30364 z m -8.18844,0.0815 0.5704,0.12222 -0.163,0.40739 -0.4074,-0.52961 z m 13.15859,0.0815 0.082,0.0815 -0.16299,-0.0407 0.082,-0.0407 z m 4.35896,0 0.3259,0 c -0.047,0.25427 -0.075,0.44865 -0.082,0.65181 l -0.61099,0 0.082,-0.57033 0.28509,-0.0815 z m -3.13687,0.0815 0.082,0.48886 c -0.2042,-0.10677 -0.34879,-0.23499 -0.44809,-0.40739 l 0.36659,-0.0815 z m -1.75168,0.0815 -0.1223,0.48886 -0.1629,0 0,-0.40738 0.2852,-0.0815 z m 18.00635,0.0407 0.20369,0.0407 -0.1629,0.65181 -0.20369,-0.0815 0.1629,-0.61107 z m 0.65189,0 0.48879,0.12222 -0.40739,1.46658 -0.1629,-0.0407 c -0.083,-0.0189 -0.171,0.0209 -0.2445,0.0407 l 0,-0.36664 0.326,-1.22216 z m -21.22482,0.0407 0.1222,0 0,0.0407 -0.1222,-0.0407 z m 3.50357,0.12222 c 0.081,0.0361 0.1343,0.0796 0.2036,0.12221 l -0.2444,0.0407 0.041,-0.16295 z m -12.1809,0.0815 0.2852,0.0407 -0.2852,0.89625 -0.2851,-0.0407 0.2851,-0.89624 z m 1.79249,0.16295 -0.1222,0.44812 0.61109,0.12221 -0.48889,-0.57033 z m 19.59523,0 c 0.045,0.041 0.1551,0.11944 0.2037,0.16295 l -0.082,0.5296 -0.8962,2.85169 -0.57039,0.81478 0.3667,1.0592 -0.6518,-0.16296 -0.36669,2.07767 -0.5296,-0.12222 0,-0.97772 0.3259,-0.12222 0.082,-0.20369 0.16299,-1.46659 0.4888,-0.57034 -0.1222,-0.12221 c 0.028,-0.0546 0.041,-0.1272 0.041,-0.2037 l 0.2037,-0.12221 -0.4074,-0.57034 0.3667,-0.12222 0.2444,0.0407 0.082,-1.14067 0.36659,-1.14068 0.5296,0.12221 0.163,-0.61107 z m 1.26289,0.0815 0.12229,0.16295 -0.16299,-0.0407 0.041,-0.12221 z m 1.83329,0.12221 0.082,1.62955 0.48889,0.12222 0.2036,-0.2037 -0.2444,0.81477 c -0.11469,-0.18977 -0.15689,-0.28133 -0.28519,-0.48886 l -0.2037,0.0815 c -0.022,-0.0177 -0.055,-0.0241 -0.082,-0.0407 l -0.4073,-0.65182 0.4481,-1.2629 z m 0.52959,0 0.3666,0.0815 0,0.0815 -0.2444,0.36665 -0.24439,-0.0815 0.12219,-0.44813 z m 3.78867,0.16296 0.2037,0.0407 -0.1222,0.44813 -0.2037,-0.0815 0.1222,-0.40739 z m 1.79248,0.24443 0.2037,0.0815 0,1.0592 0,0.0407 c -0.05,0.0364 -0.1167,0.0642 -0.1629,0.12222 l -0.36669,-0.0815 0.32589,-1.22216 z m -32.10192,0.0407 0.24439,0.0815 -0.97769,3.09612 -0.2444,-0.0407 0.9777,-3.13687 z m 29.57615,0.16296 0.082,0.0407 -0.1629,0.61107 -0.2037,-0.0407 0.1222,-0.44812 0.1629,-0.16295 z m -14.01409,0.16295 0.2037,0 0,0.48886 -0.2037,0 0,-0.48886 z m 11.69201,0.0815 0.2037,0.0815 0.041,0.24443 -0.2852,-0.20369 0.041,-0.12221 z m -24.2802,0.0815 -0.1629,0.44813 0.61109,0.16295 0.1629,-0.48886 -0.61109,-0.12222 z m 27.13187,0.0407 0.2037,0.0407 0.041,0.69256 -0.4074,-0.12222 0.163,-0.61108 z m -29.04655,0.0407 0.28519,0.0407 -0.20369,0.65182 -0.2445,-0.0815 0.163,-0.61108 z m 31.57233,0.20369 0.40739,0.12222 -0.082,1.0592 -0.082,0.32591 -0.2444,-0.0815 0.082,-1.14068 c -0.055,-0.0125 -0.1121,-0.005 -0.163,0 l 0.082,-0.28517 z m -19.55443,0.24443 0.041,0 0,0.44813 -0.2037,0 0.1629,-0.44813 z m -5.54045,0.0407 0.69249,0.16296 -0.57029,1.18142 -0.3259,0.44811 -0.082,0 0.2037,-0.61107 0,-1.0592 c 0.035,-0.0284 0.048,-0.0737 0.082,-0.12222 z m 5.94784,0.2037 0.4073,0 0,0.48885 0.2445,0 0.041,-0.0407 -0.041,0.28518 -0.3259,0.0815 -0.041,-0.12221 0.041,-0.2037 -0.3667,-0.0815 -0.1629,0.0407 c 0.1408,-0.12156 0.2037,-0.25687 0.2037,-0.44811 z m 13.89179,0 0.24439,0.0407 0.1223,0.73329 -0.082,0.24443 -0.40739,-0.61108 0.1222,-0.40738 z m -11.81421,0.20369 0.082,0 -0.20369,0.89625 -0.082,0.0407 -0.2036,-0.2037 c -0.1036,0 -0.1645,0.009 -0.2445,0.0407 l 0.2037,-0.65182 0.44809,-0.12221 z m 0.7741,0 0.48879,0 0.163,0.0407 -0.2444,0.77403 -0.52959,0.32591 -0.2445,0 0.082,-0.20369 0.163,0 0,-0.2037 0.2852,-0.0815 -0.2852,-0.28517 0.1222,-0.36664 z m 2.85167,0 0.65179,0 -0.082,0.20369 -0.6111,-0.12221 0.041,-0.0815 z m -22.5284,0.16295 0.65179,0.16295 -0.4888,0.61109 -0.36669,-0.0815 0.2037,-0.69256 z m 14.95107,0.12221 0.2037,0 0.36659,0.0815 -0.40739,0.2037 -0.041,0.20369 0.041,0.12222 -0.1629,0.0407 -0.2037,0 0.2037,-0.65183 z m 20.00263,0.0407 0.2036,0.0407 -0.041,0.2037 -0.2036,-0.0407 0.041,-0.2037 z m -18.82124,0.16296 0.2444,0.0407 -0.041,0.20369 -0.2852,0.0407 0.082,-0.28517 z m 6.19224,0 0.2852,0.0407 -0.041,0.0815 -0.2445,-0.0815 0,-0.0407 z m 6.15156,0.20369 0.65179,0.12222 0.2852,0.85551 c 0.027,0.31399 0.036,0.61617 -0.041,0.93698 l -0.2037,-0.0815 0.1629,-0.44812 -0.5703,-0.12221 -0.041,0.20369 0.3259,0.81477 -0.3259,0.12222 c -0.10509,0.33292 -0.023,0.6072 0.2852,0.77402 -0.04,0.10991 -0.074,0.22001 -0.1223,0.32591 l -0.24439,0.0815 0.12219,-0.40739 -0.57029,-0.12221 -0.2445,1.75176 c -0.1707,0.17431 -0.36791,0.3712 -0.5703,0.52959 l 0.20369,-0.28517 c 0.09,-0.61374 -0.12659,-0.99033 -0.61109,-1.09994 l 0.1222,-0.40738 0.6111,0.12222 0.1222,-0.28517 -0.3259,-0.28517 0.4481,-0.12222 0,-1.18142 0.5297,-1.79249 z m -27.37627,0.0407 0.81469,0.40739 -0.3259,1.09994 -0.2852,-0.0815 -0.32589,-1.01846 0.1223,-0.40739 z m 2.48497,0.0407 0.5704,0.12222 -0.082,0.20369 -0.5296,-0.12222 0.041,-0.20369 z m 32.02053,0.12222 0.2851,0.0407 -0.2036,0.69255 -0.2852,-0.0407 0.2037,-0.69255 z m -23.3025,0.0407 0.2037,0 0,0.20369 -0.2444,-0.0407 0.041,-0.16295 z m 10.14391,0 0,0.0815 -0.041,0 0.041,-0.0815 z m 11.8142,0.28516 -0.36669,1.34437 -0.041,0 0.40739,-1.34437 z m -11.4883,0.0815 0.2445,0.0815 -0.082,0.2037 -0.2852,0.12221 0.1222,-0.40738 z m 10.30691,0 0.041,0 c 0.027,0.19875 0.01,0.41806 -0.041,0.65182 l -0.16299,-0.0407 0.16299,-0.61108 z m 1.58879,0 0.1222,0.0407 0,0.2037 -0.163,-0.0407 0.041,-0.20369 z m -16.33616,0.12221 0.163,0 -0.4482,0.44813 -0.2037,0 0.4889,-0.44813 z m 3.13687,0 0.2852,0 -0.082,0.44813 -0.326,0 0.1223,-0.44813 z m -22.4469,0.2037 0.082,0.12221 -0.041,0.0815 c -0.011,-0.0687 -0.041,-0.1361 -0.041,-0.20369 z m 20.16552,0 0.5296,0 0.082,0.0815 -0.082,0.32591 -0.6111,-0.12221 0.082,-0.28517 z m -18.90264,0.0815 0.2037,0.0407 0,0.24444 c -0.066,-0.0966 -0.1384,-0.18401 -0.2037,-0.28518 z m 10.71422,0.2037 -0.082,0.28517 -0.041,0.0815 -0.041,0.12221 -0.163,-0.20368 0.3259,-0.28517 z m 19.71743,0 0.20369,0.0407 -0.082,0.16295 c -0.028,-0.0538 -0.092,-0.14667 -0.1222,-0.20369 z m -4.15538,0.0407 0.6111,0.12221 -0.082,0.24443 -0.6111,-0.16295 0.082,-0.20369 z m 7.94404,0 0.163,0.0407 -0.2852,0.97772 -0.1222,-0.0407 0.2444,-0.97772 z m -29.45395,0.0815 1.22219,0.0815 -0.2037,0.61108 -1.26289,0 0.2444,-0.69256 z m 10.91791,0.0407 0.65189,0 0,0.20369 -0.12229,0 -0.611,-0.16295 c 0.029,-0.0137 0.051,-0.0271 0.082,-0.0407 z m 14.29928,0.0815 0.2852,0.40738 -0.2852,0.44813 -0.2445,-0.0407 0.2445,-0.81477 z m 1.14069,0.3259 0.1222,0.61109 -0.2852,-0.0815 0.163,-0.52961 z m 4.15526,0.0407 0.1223,0 c -0.064,0.20396 -0.057,0.39209 0,0.52961 l -0.041,0 -0.1223,0.40738 0.041,0.89625 -0.40739,0.48886 -0.2036,-0.0407 0.32589,-1.18142 -0.44819,-0.12222 0.2445,-0.81476 0.40739,0.12221 0.082,-0.28517 z m -17.23235,0.0407 0.3666,0 0,0.28517 -0.2444,0.0815 -0.1222,-0.0407 0,-0.32591 z m 0.77399,0 0.4074,0 -0.1629,0.57034 -0.2445,-0.0407 -0.082,-0.0815 0.082,0 0,-0.44813 z m 2.03698,0 0.4074,0 -0.1223,0.69256 c -0.1459,0.15266 -0.3487,0.24964 -0.57029,0.3259 l -0.6111,-0.44812 c 0.097,0.029 0.2025,0.0644 0.3259,0.0815 0.41409,0 0.57039,-0.19281 0.57039,-0.65182 z m -22.4469,0.0407 c 0.01,0.0179 0.071,0.0224 0.082,0.0407 l -0.082,0 0,-0.0407 z m 2.77017,0.0407 0.8148,0.20369 -0.082,0.2037 -0.8148,0.0815 c -0.02,-0.0217 -0.021,-0.0594 -0.041,-0.0815 l 0.1222,-0.40739 z m 21.42842,0 0.28519,0.16295 -0.082,0.2037 -0.2851,-0.0407 0.082,-0.32591 z m -2.32208,0.0815 0.2852,0.0815 -0.2852,0 0,-0.0815 z m -14.29918,0.36665 0.48889,0.52959 -0.20369,0.65182 -0.041,0 -0.2445,-0.32591 -0.5296,-0.12221 c -0.048,0.151 -0.13909,0.27939 -0.24439,0.36664 l -0.8555,-0.24443 c -0.047,-0.23181 -0.22219,-0.40088 -0.61109,-0.48886 l 0.041,-0.20369 0.57029,0.12221 0.2037,0.24443 c 0.1053,-0.33289 0.569,-0.44604 1.42589,-0.52959 z m 3.17757,0.3259 0.3667,0.44812 -0.6518,-0.12221 0.2851,-0.32591 z m 21.67292,0 0.1222,0.20369 c -0.02,0.075 -0.087,0.16363 -0.1222,0.24443 l -0.1222,-0.0407 0.1222,-0.40739 z m -1.34439,0.12221 0.2037,0.36665 -0.041,0.2037 -0.24439,-0.36665 c 0.023,-0.0703 0.061,-0.13194 0.082,-0.2037 z m -25.90968,0.40739 0.2444,0.0407 -0.1222,0.40739 -0.2444,-0.0407 0.1222,-0.40739 z m -1.50729,0.0815 0.2037,0.0407 -0.041,0.12221 c -0.061,-0.0422 -0.1022,-0.11766 -0.163,-0.16295 z m -3.91096,0.0815 c 0.1984,0.0449 0.3656,0.10692 0.5296,0.12221 l 0.48889,0.61108 0,-0.48886 -0.1222,-0.12222 c 0.1736,-0.0109 0.3316,-0.0657 0.4481,-0.12221 0.1559,0.20013 0.3052,0.42705 0.48889,0.65181 l -0.32589,0.44813 -0.1222,-0.12222 -0.082,-0.16296 -0.2852,-0.0407 -0.65179,0.28517 0.041,0.61107 c -0.1698,-0.1506 -0.3285,-0.32458 -0.4889,-0.48886 l 0.082,-0.20369 -0.3667,-0.0815 c -0.15509,-0.17217 -0.30249,-0.34479 -0.44809,-0.5296 l 0.65179,0.12221 0.163,-0.48885 z m 11.7327,0.24443 0.4481,0 0,0.48886 -0.4481,0 0,-0.48886 z m 11.692,0 0.1629,0 0,0.12221 -0.1629,-0.12221 z m -4.44056,0.0407 0.163,0.28516 -0.041,0.16296 -0.97769,0 -0.2852,0 0,-0.0407 c 0.097,0.0219 0.1955,0.0613 0.2852,0.0407 0.17939,-0.0411 0.35959,-0.1964 0.48879,-0.40738 l 0.3667,-0.0407 z m -0.7333,0.0407 0,0.0407 -0.52959,0 0.52959,-0.0407 z m 2.19988,0.0407 c 0.1,0.0769 0.157,0.22678 0.163,0.36665 l -0.69259,0 0.163,-0.28518 0.36659,-0.0815 z m 17.11026,0.0407 0.1629,0.0407 -0.041,0.16296 -0.1629,-0.0815 0.041,-0.12221 z m -21.14332,0.0407 0.1222,0 c 0.1262,0.0632 0.2198,0.15471 0.2444,0.28518 l -0.3666,0 0,-0.28518 z m 11.69189,0.44813 0.5297,0.12222 -0.082,0.24443 -0.5297,-0.12221 0.082,-0.24444 z m -13.03628,0.0815 0.163,0.12222 -0.082,0.20369 -0.082,-0.0407 0,-0.28517 z m -4.11457,0.0815 0.2444,0.0407 0.1222,0.0815 0.163,0 -0.082,0.24444 -0.3667,0.20368 -0.1222,0.0407 0,-0.0815 0.1222,0.0407 0.041,-0.20368 -0.1222,-0.28517 0,-0.0815 z m 25.42079,0.0407 0.1223,0.44811 -0.1223,0.28518 0,-0.73329 z m -16.17316,0.16295 -0.041,0.20369 -0.041,0.48886 -0.93699,-0.12221 -0.082,-0.0815 0.77409,-0.36664 -0.3667,-0.0815 0.6926,-0.0407 z m -3.50347,0.0407 -0.041,0.12222 -0.2852,-0.0815 0.3259,-0.0407 z m 4.76635,0 0.4481,0.0815 0,0.0407 0,0.20368 c -0.1904,-2e-5 -0.2989,0.0479 -0.4074,0.12222 l -0.041,-0.44812 z m -2.56647,0.0407 -0.1223,0.44812 -0.611,-0.0815 -0.24449,-0.24443 -0.082,0.20369 -0.2852,-0.0407 0.082,-0.24442 0.082,0 0.2037,0.0815 -0.041,-0.0815 0.28519,0 0.7333,-0.0407 z m 3.78866,0 0.1222,0.0407 -0.1222,0 0,-0.0407 z m -15.27697,0.0407 0.163,0.24442 0.2851,0 0.163,-0.12221 0.28519,0.28517 -0.32599,0.36665 c -0.7618,0.018 -1.19929,0.12476 -1.26289,0.32591 l -0.082,0.20368 0.2852,0.0815 0.52959,0 -0.2444,0.28517 c -0.30679,2e-5 -0.72459,-0.15749 -1.18138,-0.36665 l 0.12219,-0.3259 -0.36669,-0.0815 -0.3259,0.16296 c -0.3253,-0.18391 -0.67349,-0.42525 -1.05919,-0.69256 0.53,0.11988 0.94079,0.021 1.22219,-0.28517 0.452,0.0971 0.89639,0.16295 1.38509,0.16295 l 0.082,0 0.16289,0.0407 0.041,-0.16295 0.1223,-0.12221 z m 1.91469,0.0815 c 0.012,0.27818 0.17509,0.47168 0.61109,0.57034 l -0.041,0.12222 -0.1629,0.0815 c -0.40169,-0.0334 -0.77869,-0.0703 -1.09999,-0.0815 0.1875,-0.17418 0.4654,-0.46552 0.6926,-0.69256 z m 25.17639,0 0.12229,0.0407 -0.24449,1.01847 -0.1222,-0.0407 0.2444,-1.01847 z m -10.95861,0.0815 0.24439,0.0815 -0.082,0.28517 -0.16289,0 0,-0.36665 z m -20.81742,0.12222 c 0.29649,0.34462 0.63239,0.71226 0.97779,1.09994 l -0.7333,-0.16296 c -0.29399,-0.25078 -0.58279,-0.52524 -0.85559,-0.81476 l 0.6111,-0.12222 z m -1.05919,0.24443 0.44809,0.73329 -0.3259,0 c -0.23129,-0.1353 -0.47379,-0.24992 -0.69249,-0.40738 0.047,-0.0675 0.091,-0.14685 0.1222,-0.24443 l 0.4481,-0.0815 z m 23.22099,0.16296 0.5703,0.12222 0,1.18141 -0.4481,0.12222 -0.52959,-0.12222 0.40739,-1.30363 z m 11.28451,0.12222 -0.2037,0.40737 0.082,-0.3259 0.1223,-0.0815 z m -16.29536,0.12221 0.2444,0 0,0.0815 -0.2444,-0.0407 0,-0.0407 z m -19.67673,0.12222 c 0.029,0.006 0.054,-0.005 0.082,0 l 0.082,0.0815 -0.3666,0 0.2037,-0.0815 z m 29.16885,0.0407 -0.041,0.36664 -0.2852,-0.0815 c 0.11949,-0.0874 0.2148,-0.19178 0.3259,-0.28516 z m 3.82937,0 0,0.0815 -0.041,0 0.041,-0.0815 z m -0.97769,0.0407 0.20369,0.0815 c -0.072,0.0648 -0.16969,0.10082 -0.24449,0.16296 -0.1919,0.15941 -0.368,0.33853 -0.5703,0.48887 -0.078,-0.0803 -0.1398,-0.20169 -0.2037,-0.32591 0.1573,-0.0786 0.2843,-0.16146 0.4481,-0.24444 l 0.3259,0.0815 0.041,-0.20369 c 0.01,-0.003 -0.01,-0.0377 0,-0.0407 z m -23.54691,0.20368 -1.09989,0.52961 -0.163,0 0,-0.2037 c 0.1087,2e-5 0.2966,-0.11103 0.5296,-0.28517 l 0.73329,-0.0407 z m -4.92935,0.12222 c 0.1297,0.14533 0.23019,0.25609 0.36669,0.40739 l 0,0.20369 c -0.065,-0.0425 -0.139,-0.0782 -0.2037,-0.12222 l 0.041,-0.0815 -0.16299,-0.0407 c -0.08,-0.0559 -0.166,-0.10467 -0.2444,-0.16296 l 0.1629,-0.0407 0.041,-0.16295 z m 10.02171,0.0815 0.3666,0.24443 -0.082,0.0815 -0.2037,0 c 0,-0.12072 -0.037,-0.22823 -0.082,-0.32591 z m -2.03698,0.32591 0.6518,0 0,0.20369 -0.6518,0 0,-0.20369 z m 6.64044,0 0.4073,0 0,0.0815 -0.2444,0.12222 -0.1629,0 0,-0.20369 z m -3.09617,0.12221 0.4074,0.0815 -0.4074,0 0,-0.0815 z m 5.82565,0 0.2444,0.0407 0.24439,0.28516 0.081,0 0,0.40739 c -0.36149,0.0312 -0.75799,0.0611 -1.14069,0.0815 l 0.3259,-0.48887 c 0.079,-0.004 0.1558,0 0.2445,0 l 0,-0.3259 z m -6.47744,0.3259 0.65179,0 0,0.48887 -1.01849,0 0.3667,-0.48887 z m 8.18842,0.0407 0.2852,0.0815 -0.041,0.12222 c -0.1063,0.0146 -0.2176,0.0272 -0.3259,0.0407 l 0.082,-0.24444 z m 9.41063,0.0407 c -0.02,0.28762 -0.042,0.56161 0.041,0.77404 l -0.163,0.0815 -0.1222,0.40738 -0.3259,-0.44812 0.5703,-0.81478 z m -12.0586,0.0407 c 0.01,-0.004 0.03,0.004 0.041,0 l 0.041,0.0407 -0.082,0.24443 -0.2445,-0.0407 c 0.043,-0.0934 0.1038,-0.18419 0.2445,-0.24443 z m -8.63663,0.16296 0.6518,0 0,0.20369 -0.6518,0.20369 0,-0.40738 z m 1.0185,0 0.48889,0 0,0.20369 -0.48889,0 0,-0.20369 z m 3.58496,0 0.3667,0 -0.3667,0.40738 -0.48879,0 0.48879,-0.40738 z m -15.15467,0.20369 0.041,0 0,0.20369 -0.44819,0 0,-0.0407 0.40739,-0.16296 z m 3.34047,0 0.6111,0 0,0.20369 -0.6111,0 0,-0.20369 z m 4.97016,0 0.61109,0 0,0.20369 -0.61109,0 0,-0.20369 z m 3.91087,0 0.65179,0 0,0.20369 -0.65179,0 0,-0.20369 z m 18.04715,0.0407 0.082,0 0,0.0407 -0.082,-0.0407 z m -2.72949,0.0815 0.041,0 -0.1629,0.48885 -0.52959,-0.1222 0.041,-0.0815 c 0.17549,-0.0707 0.41489,-0.20083 0.61109,-0.28517 z m 5.29606,0 c 0.072,0.0901 0.1611,0.14842 0.2444,0.24443 l 0,0.0407 -0.4074,-0.0815 c -0.029,-0.0236 -0.055,-0.0578 -0.082,-0.0815 l 0.2445,-0.12221 z m -32.63152,0.28517 0.65179,0 0,0.24442 -0.65179,0 0,-0.24442 z m 2.93317,0 0.3666,0 -0.3666,0.52959 0,-0.52959 z m -3.54426,0.24442 0.44809,0 0,0.28517 -0.44809,0 0,-0.28517 z m 9.32911,0 0.61109,0 1.0184,0.28517 1.22219,-0.28517 1.30359,0 0,0.48887 -5.17376,0 0,-0.2037 1.01849,-0.28517 z m 4.52197,0 4.60346,0 -0.4481,0.48887 -0.2037,-0.2037 -1.01849,0.2037 -2.48508,0 -0.44809,-0.48887 z m 5.45895,0 0.57029,0 0,0.28517 -0.57029,0 0,-0.28517 z m 15.31767,0 c -0.021,0.0666 -0.029,0.1361 -0.041,0.2037 l -0.041,0 0.041,-0.16296 0.041,-0.0407 z m -30.51314,0.28517 1.01849,0 0,0.2037 -1.01849,0 0,-0.2037 z"
+       style="font-size:51.30051804px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.22999998;fill:#8ae234;fill-opacity:1;stroke:none;display:inline;filter:url(#filter4332);font-family:'karabinE.';-inkscape-font-specification:'karabinE.'"
+       inkscape:export-filename="Z:\private\général\Charte graphique\OD\OD6.0\splashscreen\png\splashscreen_OD6.0.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"
+       inkscape:connector-curvature="0" />
+    <text
+       id="text3967"
+       y="-445.37497"
+       x="567.12866"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:RondaEF;-inkscape-font-specification:RondaEF;letter-spacing:0px;word-spacing:0px;fill:#faa542;fill-opacity:1;stroke:#faa542;stroke-width:0.88416499;stroke-opacity:1"
+       xml:space="preserve"><tspan
+         style="font-size:33.28510284px;line-height:1.25;fill:#faa542;fill-opacity:1;stroke:#faa542;stroke-width:0.88416499;stroke-opacity:1"
+         y="-445.37497"
+         x="567.12866"
+         id="tspan3969"
+         sodipodi:role="line">1.0</tspan></text>
+    <g
+       transform="translate(166.47751,-231.23334)"
+       id="g4593"
+       inkscape:export-filename="/Volumes/partage/private/marketing/Design/ChartesGraphiques/ModelWriter/png/logo_modelwriter_HD.png"
+       inkscape:export-xdpi="600"
+       inkscape:export-ydpi="600">
+      <g
+         transform="matrix(1.0083233,0,0,1.0083233,11.632425,-451.09721)"
+         id="g4324">
+        <text
+           xml:space="preserve"
+           style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'Open Sans Condensed';-inkscape-font-specification:'Open Sans Condensed';letter-spacing:0px;word-spacing:0px;fill:#5a5a5a;fill-opacity:1;stroke:none"
+           x="156.92473"
+           y="118.44344"
+           id="text4326"><tspan
+             sodipodi:role="line"
+             id="tspan4328"
+             x="156.92473"
+             y="118.44344"
+             style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:52.10993958px;line-height:1.25;font-family:'Merriweather Sans';-inkscape-font-specification:'Merriweather Sans Bold';letter-spacing:-1.36148632px;fill:#5a5a5a;fill-opacity:1">Intent</tspan></text>
+      </g>
+      <g
+         transform="translate(30.581957,-101.5825)"
+         id="g4400">
+        <g
+           id="g4376"
+           transform="matrix(0.62138123,0.05946504,-0.05946504,0.62138123,93.923956,-868.76894)">
+          <path
+             style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#5a5a5a;fill-opacity:1;stroke:none"
+             sodipodi:nodetypes="ccscscscsc"
+             inkscape:connector-curvature="0"
+             id="path4378"
+             d="m 353.76798,912.84277 c 0.31366,-0.42982 0.46098,-0.98102 0.44194,-1.65363 -5.04243,-14.72576 -9.38414,-30.88636 -16.84097,-44.34698 -1.02954,-1.85847 -1.62482,1.6687 -1.54396,2.60599 1.20755,8.12703 6.20172,30.20172 3.44674,33.9138 -2.60067,3.50433 -23.74398,6.82552 -33.41569,8.55038 -0.91725,0.2089 -4.05999,2.11778 -2.11516,2.40873 15.1165,2.26136 32.6588,0.12757 48.42072,-0.67442 0.81271,-0.0656 1.29274,-0.37405 1.50184,-0.66059 l 0.10452,-0.14329" />
+          <path
+             style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#5a5a5a;fill-opacity:1;stroke:none"
+             sodipodi:nodetypes="ccccscc"
+             inkscape:connector-curvature="0"
+             id="path4380"
+             d="m 332.28429,899.14379 c -0.44809,0.59109 -1.09318,1.03281 -1.93535,1.3252 -15.83787,-10.26458 -37.79549,-16.07602 -71.04317,0.78365 -0.6928,0.0953 -0.74044,-0.25108 -0.78811,-0.59743 21.48247,-15.37477 37.15247,-19.80437 54.84276,-17.61836 9.28662,1.14756 22.17176,8.81004 19.07325,15.90992 l -0.14929,0.19702" />
+        </g>
+        <g
+           transform="matrix(-0.62138123,-0.05946504,0.05946504,-0.62138123,366.91998,366.23079)"
+           id="g4394"
+           style="fill:#faa542;fill-opacity:1">
+          <path
+             d="m 353.76798,912.84277 c 0.31366,-0.42982 0.46098,-0.98102 0.44194,-1.65363 -5.04243,-14.72576 -9.38414,-30.88636 -16.84097,-44.34698 -1.02954,-1.85847 -1.62482,1.6687 -1.54396,2.60599 1.20755,8.12703 6.20172,30.20172 3.44674,33.9138 -2.60067,3.50433 -23.74398,6.82552 -33.41569,8.55038 -0.91725,0.2089 -4.05999,2.11778 -2.11516,2.40873 15.1165,2.26136 32.6588,0.12757 48.42072,-0.67442 0.81271,-0.0656 1.29274,-0.37405 1.50184,-0.66059 l 0.10452,-0.14329"
+             id="path4396"
+             inkscape:connector-curvature="0"
+             sodipodi:nodetypes="ccscscscsc"
+             style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#faa542;fill-opacity:1;stroke:none" />
+          <path
+             d="m 332.28429,899.14379 c -0.44809,0.59109 -1.09318,1.03281 -1.93535,1.3252 -15.83787,-10.26458 -37.79549,-16.07602 -71.04317,0.78365 -0.6928,0.0953 -0.74044,-0.25108 -0.78811,-0.59743 21.48247,-15.37477 37.15247,-19.80437 54.84276,-17.61836 9.28662,1.14756 22.17176,8.81004 19.07325,15.90992 l -0.14929,0.19702"
+             id="path4398"
+             inkscape:connector-curvature="0"
+             sodipodi:nodetypes="ccccscc"
+             style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:109.29399872px;line-height:125%;font-family:'Nueva Std';-inkscape-font-specification:'Nueva Std Bold';letter-spacing:0px;word-spacing:0px;fill:#faa542;fill-opacity:1;stroke:none" />
+        </g>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/mapping/releng/org.eclipse.intent.codestyle/.project b/mapping/releng/org.eclipse.intent.codestyle/.project
new file mode 100644
index 0000000..00c04e6
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.codestyle/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.codestyle</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+	</buildSpec>
+	<natures>
+	</natures>
+</projectDescription>
diff --git a/mapping/releng/org.eclipse.intent.codestyle/codestyle/Intent.importorder b/mapping/releng/org.eclipse.intent.codestyle/codestyle/Intent.importorder
new file mode 100644
index 0000000..2e51487
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.codestyle/codestyle/Intent.importorder
@@ -0,0 +1,8 @@
+#Organize Import Order
+#Fri Jun 28 10:00:06 CEST 2013
+5=\#org.junit
+4=org
+3=javax
+2=java
+1=fr
+0=com
diff --git a/mapping/releng/org.eclipse.intent.codestyle/codestyle/IntentCheckstyle6Configuration.xml b/mapping/releng/org.eclipse.intent.codestyle/codestyle/IntentCheckstyle6Configuration.xml
new file mode 100644
index 0000000..f1bb905
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.codestyle/codestyle/IntentCheckstyle6Configuration.xml
@@ -0,0 +1,340 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.3//EN" "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
+
+<!--
+    This configuration file was written by the eclipse-cs plugin configuration editor
+-->
+<!--
+    Checkstyle-Configuration: Intent Checkstyle 6
+    Description: 
+Intent Checkstyle 6 configuration.
+-->
+<module name="Checker">
+  <property name="severity" value="warning"/>
+  <module name="TreeWalker">
+    <module name="FileContentsHolder"/>
+    <module name="SuppressWarningsHolder"/>
+    <module name="JavadocMethod">
+      <property name="severity" value="error"/>
+      <property name="allowMissingPropertyJavadoc" value="true"/>
+      <property name="suppressLoadErrors" value="true"/>
+    </module>
+    <module name="JavadocStyle">
+      <property name="severity" value="error"/>
+      <property name="checkEmptyJavadoc" value="true"/>
+      <property name="checkHtml" value="false"/>
+    </module>
+    <module name="JavadocType">
+      <property name="severity" value="error"/>
+      <property name="authorFormat" value="(&lt;a href=&quot;mailto:[a-z.]+@[a-z.]+\.[a-z]{2,4}\&quot;&gt;)?[A-Z][a-z]+\s[A-Z][a-z]+(&lt;/a&gt;)?"/>
+      <property name="allowUnknownTags" value="true"/>
+    </module>
+    <module name="JavadocVariable">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="ConstantName">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="LocalFinalVariableName">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="LocalVariableName">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="MemberName">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="MethodName">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="MethodTypeParameterName">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="PackageName">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="ParameterName">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="StaticVariableName">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="TypeName">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="AvoidStarImport">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="IllegalImport">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="ImportOrder">
+      <property name="severity" value="error"/>
+      <property name="option" value="above"/>
+    </module>
+    <module name="RedundantImport">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="UnusedImports">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="AnonInnerLength">
+      <property name="severity" value="error"/>
+      <property name="max" value="25"/>
+    </module>
+    <module name="ExecutableStatementCount">
+      <property name="severity" value="error"/>
+      <property name="max" value="70"/>
+      <property name="tokens" value="INSTANCE_INIT,STATIC_INIT,METHOD_DEF,CTOR_DEF"/>
+    </module>
+    <module name="MethodLength">
+      <property name="severity" value="error"/>
+      <property name="max" value="140"/>
+    </module>
+    <module name="ParameterNumber">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="OuterTypeNumber">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="EmptyForInitializerPad">
+      <property name="severity" value="ignore"/>
+      <property name="option" value="space"/>
+      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="error"/>
+    </module>
+    <module name="EmptyForIteratorPad">
+      <property name="severity" value="error"/>
+      <property name="option" value="space"/>
+    </module>
+    <module name="NoWhitespaceBefore">
+      <property name="severity" value="error"/>
+      <property name="allowLineBreaks" value="true"/>
+      <property name="tokens" value="SEMI,DOT,POST_DEC,POST_INC"/>
+      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="error"/>
+    </module>
+    <module name="MethodParamPad">
+      <property name="severity" value="error"/>
+      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="error"/>
+    </module>
+    <module name="ParenPad">
+      <property name="severity" value="error"/>
+      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="error"/>
+    </module>
+    <module name="TypecastParenPad">
+      <property name="severity" value="error"/>
+      <property name="tokens" value="RPAREN,TYPECAST"/>
+      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="error"/>
+    </module>
+    <module name="WhitespaceAfter">
+      <property name="severity" value="error"/>
+      <property name="tokens" value="COMMA,SEMI"/>
+      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="error"/>
+    </module>
+    <module name="WhitespaceAround">
+      <property name="severity" value="error"/>
+      <property name="tokens" value="ASSIGN,BAND,BAND_ASSIGN,BOR,BOR_ASSIGN,BSR,BSR_ASSIGN,BXOR,BXOR_ASSIGN,COLON,DIV,DIV_ASSIGN,EQUAL,GE,GT,LAND,LCURLY,LE,LITERAL_ASSERT,LITERAL_CATCH,LITERAL_DO,LITERAL_ELSE,LITERAL_FINALLY,LITERAL_FOR,LITERAL_IF,LITERAL_RETURN,LITERAL_TRY,LITERAL_WHILE,LOR,LT,MINUS,MINUS_ASSIGN,MOD,MOD_ASSIGN,NOT_EQUAL,PLUS,PLUS_ASSIGN,QUESTION,RCURLY,SL,SLIST,SL_ASSIGN,SR,SR_ASSIGN,STAR,STAR_ASSIGN,TYPE_EXTENSION_AND"/>
+      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="error"/>
+    </module>
+    <module name="ModifierOrder">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="RedundantModifier">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="AvoidNestedBlocks">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="EmptyBlock">
+      <property name="severity" value="error"/>
+      <property name="option" value="text"/>
+    </module>
+    <module name="LeftCurly">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="NeedBraces">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="RightCurly">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="RightCurly"/>
+    <module name="LeftCurly">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="AvoidInlineConditionals">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="CovariantEquals">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="DefaultComesLast">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="DeclarationOrder">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="FinalLocalVariable">
+      <property name="severity" value="ignore"/>
+      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
+    </module>
+    <module name="EmptyStatement">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="EqualsAvoidNull">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="EqualsHashCode">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="ExplicitInitialization">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="FallThrough">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="HiddenField">
+      <property name="severity" value="error"/>
+      <property name="ignoreConstructorParameter" value="true"/>
+      <property name="ignoreSetter" value="true"/>
+    </module>
+    <module name="IllegalInstantiation">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="IllegalCatch">
+      <property name="severity" value="error"/>
+      <property name="illegalClassNames" value="java.lang.Exception, java.lang.Throwable, java.lang.RuntimeException, java.lang.Error"/>
+    </module>
+    <module name="IllegalThrows">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="InnerAssignment">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="MagicNumber">
+      <property name="severity" value="error"/>
+      <property name="ignoreNumbers" value="-100, -10, -1, -0.75, -0.5, -0.1, 0, 0.1, 0.5, 0.75, 1, 2, 3, 4, 5, 6, 10, 11, 13, 100, 1000, 10000"/>
+    </module>
+    <module name="MissingSwitchDefault">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="ModifiedControlVariable">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="MultipleStringLiterals">
+      <property name="severity" value="error"/>
+      <property name="allowedDuplicates" value="2"/>
+    </module>
+    <module name="MultipleVariableDeclarations">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="NestedForDepth">
+      <property name="severity" value="error"/>
+      <property name="max" value="2"/>
+    </module>
+    <module name="NestedIfDepth">
+      <property name="severity" value="error"/>
+      <property name="max" value="2"/>
+    </module>
+    <module name="NestedTryDepth">
+      <property name="severity" value="error"/>
+      <property name="max" value="2"/>
+    </module>
+    <module name="NoClone">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="NoFinalizer">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="PackageDeclaration">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="ParameterAssignment">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="ReturnCount">
+      <property name="severity" value="error"/>
+      <property name="format" value="^$"/>
+    </module>
+    <module name="SimplifyBooleanExpression">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="SimplifyBooleanReturn">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="StringLiteralEquality">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="SuperClone">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="SuperFinalize">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="ArrayTrailingComma">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="UnnecessaryParentheses">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="OneStatementPerLine">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="FinalClass">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="HideUtilityClassConstructor">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="MutableException">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="ThrowsCount">
+      <property name="severity" value="error"/>
+      <property name="max" value="3"/>
+    </module>
+    <module name="VisibilityModifier">
+      <property name="severity" value="error"/>
+      <property name="packageAllowed" value="true"/>
+      <property name="protectedAllowed" value="true"/>
+    </module>
+    <module name="BooleanExpressionComplexity">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="ClassDataAbstractionCoupling">
+      <property name="severity" value="info"/>
+      <property name="max" value="12"/>
+    </module>
+    <module name="ClassFanOutComplexity">
+      <property name="severity" value="info"/>
+      <property name="max" value="30"/>
+    </module>
+    <module name="CyclomaticComplexity">
+      <property name="severity" value="info"/>
+    </module>
+    <module name="JavaNCSS">
+      <property name="severity" value="info"/>
+    </module>
+    <module name="NPathComplexity">
+      <property name="severity" value="info"/>
+    </module>
+    <module name="ArrayTypeStyle">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="UpperEll">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="OuterTypeFilename">
+      <property name="severity" value="error"/>
+    </module>
+    <module name="AbstractClassName">
+      <property name="severity" value="error"/>
+      <property name="format" value="^Abstract.*$"/>
+    </module>
+  </module>
+  <module name="FileLength">
+    <property name="severity" value="error"/>
+    <property name="max" value="3000"/>
+  </module>
+  <module name="SuppressionCommentFilter"/>
+  <module name="SuppressWarningsFilter"/>
+</module>
diff --git a/mapping/releng/org.eclipse.intent.codestyle/codestyle/IntentCodeTemplates.xml b/mapping/releng/org.eclipse.intent.codestyle/codestyle/IntentCodeTemplates.xml
new file mode 100644
index 0000000..dbf10d3
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.codestyle/codestyle/IntentCodeTemplates.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><templates><template autoinsert="true" context="gettercomment_context" deleted="false" description="Comment for getter method" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name="gettercomment">/**
+ * @return the ${bare_field_name}
+ */</template><template autoinsert="true" context="settercomment_context" deleted="false" description="Comment for setter method" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.settercomment" name="settercomment">/**
+ * @param ${param} the ${bare_field_name} to set
+ */</template><template autoinsert="true" context="constructorcomment_context" deleted="false" description="Comment for created constructors" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name="constructorcomment">/**
+ * ${tags}
+ */</template><template autoinsert="false" context="filecomment_context" deleted="false" description="Comment for created Java files" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.filecomment" name="filecomment">/*******************************************************************************
+ * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+name="typecomment">/**
+ * @author &lt;a href="mailto:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;
+ */</template><template autoinsert="true" context="fieldcomment_context" deleted="false" description="Comment for fields" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name="fieldcomment">/**
+ * 
+ */</template><template autoinsert="true" context="methodcomment_context" deleted="false" description="Comment for non-overriding methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name="methodcomment">/**
+ * ${tags}
+ */</template><template autoinsert="false" context="overridecomment_context" deleted="false" description="Comment for overriding methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name="overridecomment">/**{@inheritDoc}
+ *
+ * ${see_to_overridden}
+ */</template><template autoinsert="true" context="delegatecomment_context" deleted="false" description="Comment for delegate methods" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name="delegatecomment">/**
+ * ${tags}
+ * ${see_to_target}
+ */</template><template autoinsert="false" context="newtype_context" deleted="false" description="Newly created files" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.newtype" name="newtype">/*******************************************************************************
+ * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+${filecomment}
+${package_declaration}
+
+${typecomment}
+${type_declaration}</template><template autoinsert="true" context="classbody_context" deleted="false" description="Code in new class type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.classbody" name="classbody">
+</template><template autoinsert="true" context="interfacebody_context" deleted="false" description="Code in new interface type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name="interfacebody">
+</template><template autoinsert="true" context="enumbody_context" deleted="false" description="Code in new enum type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.enumbody" name="enumbody">
+</template><template autoinsert="true" context="annotationbody_context" deleted="false" description="Code in new annotation type bodies" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name="annotationbody">
+</template><template autoinsert="true" context="catchblock_context" deleted="false" description="Code in new catch blocks" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.catchblock" name="catchblock">// ${todo} Auto-generated catch block
+${exception_var}.printStackTrace();</template><template autoinsert="true" context="methodbody_context" deleted="false" description="Code in created method stubs" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.methodbody" name="methodbody">// ${todo} Auto-generated method stub
+${body_statement}</template><template autoinsert="true" context="constructorbody_context" deleted="false" description="Code in created constructor stubs" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name="constructorbody">${body_statement}
+// ${todo} Auto-generated constructor stub</template><template autoinsert="true" context="getterbody_context" deleted="false" description="Code in created getters" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.getterbody" name="getterbody">return ${field};</template><template autoinsert="true" context="setterbody_context" deleted="false" description="Code in created setters" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.setterbody" name="setterbody">${field} = ${param};</template></templates>
diff --git a/mapping/releng/org.eclipse.intent.codestyle/codestyle/IntentFormatter.xml b/mapping/releng/org.eclipse.intent.codestyle/codestyle/IntentFormatter.xml
new file mode 100644
index 0000000..4874360
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.codestyle/codestyle/IntentFormatter.xml
@@ -0,0 +1,279 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<profiles version="11">
+<profile kind="CodeFormatterProfile" name="Intent" version="11">
+<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter:off"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.use_on_off_tags" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression" value="80"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_binary_operator" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="2"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_binary_operator" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_package" value="0"/>
+<setting id="org.eclipse.jdt.core.compiler.source" value="1.5"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_line_comments" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_member_type" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.indent_parameter_description" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.lineSplit" value="110"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.indentation.size" value="8"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.enabling_tag" value="@formatter:on"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_assignment" value="0"/>
+<setting id="org.eclipse.jdt.core.compiler.problem.assertIdentifier" value="error"/>
+<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="tab"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_method" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_method_declaration" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.compiler.problem.enumIdentifier" value="error"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.compact_else_if" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.indent_root_tags" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.tabulation.size" value="4"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_empty_lines" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression" value="16"/>
+<setting id="org.eclipse.jdt.core.compiler.compliance" value="1.5"/>
+<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_binary_expression" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode" value="enabled"/>
+<setting id="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_label" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.line_length" value="110"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_import_groups" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.wrap_before_binary_operator" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.join_lines_in_comments" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_html" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_source_code" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration" value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer" value="insert"/>
+<setting id="org.eclipse.jdt.core.compiler.codegen.targetPlatform" value="1.5"/>
+<setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_header" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration" value="end_of_line"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports" value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header" value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments" value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column" value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line" value="false"/>
+</profile>
+</profiles>
diff --git a/mapping/releng/org.eclipse.intent.product/.project b/mapping/releng/org.eclipse.intent.product/.project
new file mode 100644
index 0000000..4e6f6d1
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.product</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.UpdateSiteBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.UpdateSiteNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/releng/org.eclipse.intent.product/.settings/org.eclipse.core.resources.prefs b/mapping/releng/org.eclipse.intent.product/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/mapping/releng/org.eclipse.intent.product/.settings/org.eclipse.core.runtime.prefs b/mapping/releng/org.eclipse.intent.product/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 0000000..5a0ad22
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/mapping/releng/org.eclipse.intent.product/category.xml b/mapping/releng/org.eclipse.intent.product/category.xml
new file mode 100644
index 0000000..ff97a74
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/category.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<site>
+   <feature id="org.eclipse.intent.product.feature" version="0.0.0">
+      <category name="org.eclipse.intent"/>
+   </feature>
+   <category-def name="org.eclipse.intent" label="Intent">
+      <description>
+         [Enter Catergory Description here.]
+      </description>
+   </category-def>
+</site>
diff --git a/mapping/releng/org.eclipse.intent.product/icons/ModelWriter.icns b/mapping/releng/org.eclipse.intent.product/icons/ModelWriter.icns
new file mode 100644
index 0000000..6367694
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/ModelWriter.icns
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.product/icons/about.gif b/mapping/releng/org.eclipse.intent.product/icons/about.gif
new file mode 100644
index 0000000..65d4f3f
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/about.gif
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.product/icons/logo_128.png b/mapping/releng/org.eclipse.intent.product/icons/logo_128.png
new file mode 100644
index 0000000..a98c5e6
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/logo_128.png
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.product/icons/logo_16.gif b/mapping/releng/org.eclipse.intent.product/icons/logo_16.gif
new file mode 100644
index 0000000..aff9faa
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/logo_16.gif
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.product/icons/logo_16.png b/mapping/releng/org.eclipse.intent.product/icons/logo_16.png
new file mode 100644
index 0000000..14d5073
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/logo_16.png
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.product/icons/logo_32.gif b/mapping/releng/org.eclipse.intent.product/icons/logo_32.gif
new file mode 100644
index 0000000..a1832ba
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/logo_32.gif
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.product/icons/logo_32.png b/mapping/releng/org.eclipse.intent.product/icons/logo_32.png
new file mode 100644
index 0000000..8bf2b44
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/logo_32.png
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.product/icons/logo_48.png b/mapping/releng/org.eclipse.intent.product/icons/logo_48.png
new file mode 100644
index 0000000..4806d5b
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/logo_48.png
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.product/icons/logo_64.gif b/mapping/releng/org.eclipse.intent.product/icons/logo_64.gif
new file mode 100644
index 0000000..f1f2600
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/logo_64.gif
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.product/icons/logo_64.png b/mapping/releng/org.eclipse.intent.product/icons/logo_64.png
new file mode 100644
index 0000000..20eb791
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/logo_64.png
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.product/icons/logo_64.xpm b/mapping/releng/org.eclipse.intent.product/icons/logo_64.xpm
new file mode 100644
index 0000000..3145c8e
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/logo_64.xpm
@@ -0,0 +1,90 @@
+/* XPM */
+static char * logo_64_xpm[] = {
+"64 64 23 1",
+" 	c None",
+".	c #5A5A5A",
+"+	c #5B5B5B",
+"@	c #595959",
+"#	c #F9A542",
+"$	c #F9A643",
+"%	c #FAA542",
+"&	c #FAA541",
+"*	c #FBA542",
+"=	c #FAA443",
+"-	c #F9A543",
+";	c #FAA641",
+">	c #FAA441",
+",	c #FAA442",
+"'	c #FAA643",
+")	c #F9A641",
+"!	c #FBA642",
+"~	c #FAA543",
+"{	c #F9A442",
+"]	c #F9A443",
+"^	c #FBA543",
+"/	c #F9A541",
+"(	c #F9A441",
+"                                                                ",
+"                                                                ",
+"                                           .                    ",
+"                                           .                    ",
+"                                           .                    ",
+"                              .            ..                   ",
+"                        .............      ..                   ",
+"                      ................     ..                   ",
+"                   +...          @......   ..                   ",
+"                  +                 ....   +.+                  ",
+"                                      ...  @..                  ",
+"                                       ..  ...                  ",
+"                                           ...                  ",
+"                                          .....                 ",
+"                                      @........                 ",
+"                               ................                 ",
+"                                   .....@......                 ",
+"                                                                ",
+"      .......         .......                                   ",
+"      ........       ........                                   ",
+"      ........       ........                                   ",
+"      ........+      ........                                   ",
+"      .........     .........                                   ",
+"      .........     .........                                   ",
+"      ..... ....   +... .....                                   ",
+"      ..... @...   .... .....                                   ",
+"      .....  .... @...  .....     ####        ####        ###$  ",
+"      .....  @... ....  .....     %%%%%      &%%%%%      %%%%%  ",
+"      .....   .......   .....     %%%%%      %%%%%*      %%%%=  ",
+"      .....   .......   .....     *%%%%      %%%%%%     -%%%%   ",
+"      .....   @.....+   .....      %%%%%     %%%%%%     ;%%%%   ",
+"      .....    .....    .....      %%%%%    #%%%%%%>    %%%%%   ",
+"      .....    +....    .....      ,%%%%    %%%'&%%%    %%%%,   ",
+"      .....     ...     .....      #%%%%    %%% $%%%    %%%%    ",
+"      .....             .....       %%%%=   %%%  %%%   #%%%%    ",
+"      .....             .....       %%%%%  %%%%  %%%)  %%%%%    ",
+"      .....             .....       %%%%%  &%%!  ~%%,  %%%%*    ",
+"       ....             ....        >%%%%  %%%   ,%%%  %%%%     ",
+"                                     %%%%# %%%    %%% ,%%%%     ",
+"                                     %%%%,>%%%    %%% &%%%%     ",
+"                                     %%%%%%%%#    %%%,%%%%%     ",
+"                                     &%%%%%%%     '%%%%%%%{     ",
+"                                      %%%%%%%      %%%%%%%      ",
+"                                      %%%%%%%      %%%%%%%      ",
+"                                      %%%%%%~      *%%%%%~      ",
+"                                      !%%%%%]      ,%%%%%,      ",
+"                                                                ",
+"                 %%%%!%%%;!=#                                   ",
+"                 %%%%%%%%%%%%%%%&                               ",
+"                 %%%%%%%%>                                      ",
+"                 %%%%&                                          ",
+"                  %%%                                           ",
+"                  %%*  &%                                       ",
+"                  %%%  %%%                                      ",
+"                  #%!   %%%*                 >                  ",
+"                   %%   &%%%%%^          $&-/                   ",
+"                   %%     %%%%%%%%%!%%%%%%                      ",
+"                   {%      (%%%%%%%%%%%~                        ",
+"                   ,%            #                              ",
+"                    %                                           ",
+"                    %                                           ",
+"                    %                                           ",
+"                                                                ",
+"                                                                "};
diff --git a/mapping/releng/org.eclipse.intent.product/icons/logo_title_256.png b/mapping/releng/org.eclipse.intent.product/icons/logo_title_256.png
new file mode 100644
index 0000000..50c12eb
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/icons/logo_title_256.png
Binary files differ
diff --git a/mapping/releng/org.eclipse.intent.product/index.html b/mapping/releng/org.eclipse.intent.product/index.html
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/index.html
diff --git a/mapping/releng/org.eclipse.intent.product/intent.p2.inf b/mapping/releng/org.eclipse.intent.product/intent.p2.inf
new file mode 100644
index 0000000..3de2d76
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/intent.p2.inf
@@ -0,0 +1,74 @@
+instructions.configure=\
+  mkdir(path:${installFolder}/dropins);
+
+requires.1.namespace=org.eclipse.equinox.p2.iu
+requires.1.name=toolingorg.eclipse.configuration.macosx
+requires.1.filter=(osgi.os=macosx)
+requires.1.range=[1.0.0,1.0.0]
+requires.1.greedy=true
+
+requires.2.namespace=org.eclipse.equinox.p2.iu
+requires.2.name=toolingorg.eclipse.configuration
+requires.2.filter=(!(osgi.os=macosx))
+requires.2.range=[1.0.0,1.0.0]
+requires.2.greedy=true
+
+requires.3.namespace=org.eclipse.equinox.p2.iu
+requires.3.name=toolingorg.eclipse.configuration.macosx.x86_64
+requires.3.filter=(&(osgi.os=macosx) (osgi.arch=x86_64))
+requires.3.range=[1.0.0,1.0.0]
+requires.3.greedy=true
+
+requires.4.namespace=org.eclipse.equinox.p2.iu
+requires.4.name=toolingorg.eclipse.configuration.aix.ppc64
+requires.4.filter=(&(osgi.os=aix) (osgi.arch=ppc64))
+requires.4.range=[1.0.0,1.0.0]
+requires.4.greedy=true
+
+requires.5.namespace=org.eclipse.equinox.p2.iu
+requires.5.name=org.eclipse.ui.views.log
+
+units.1.id=toolingorg.eclipse.configuration.macosx-collab
+units.1.version=1.0.0
+units.1.provides.1.namespace=org.eclipse.equinox.p2.iu
+units.1.provides.1.name=toolingorg.eclipse.configuration.macosx
+units.1.provides.1.version=1.0.0
+units.1.filter=(osgi.os=macosx)
+units.1.touchpoint.id=org.eclipse.equinox.p2.osgi
+units.1.touchpoint.version=1.0.0
+units.1.instructions.configure=setProgramProperty(propName:osgi.instance.area.default,propValue:workspace);
+units.1.instructions.unconfigure=setProgramProperty(propName:osgi.instance.area.default,propValue:);
+
+units.2.id=toolingorg.eclipse.configuration-collab
+units.2.version=1.0.0
+units.2.provides.1.namespace=org.eclipse.equinox.p2.iu
+units.2.provides.1.name=toolingorg.eclipse.configuration
+units.2.provides.1.version=1.0.0
+units.2.filter=(!(osgi.os=macosx))
+units.2.touchpoint.id=org.eclipse.equinox.p2.osgi
+units.2.touchpoint.version=1.0.0
+units.2.instructions.configure=setProgramProperty(propName:osgi.instance.area.default,propValue:workspace);
+units.2.instructions.unconfigure=setProgramProperty(propName:osgi.instance.area.default,propValue:);
+
+units.3.id=toolingorg.eclipse.configuration.macosx.x86_64-collab
+units.3.version=1.0.0
+units.3.provides.1.namespace=org.eclipse.equinox.p2.iu
+units.3.provides.1.name=toolingorg.eclipse.configuration.macosx.x86_64
+units.3.provides.1.version=1.0.0
+units.3.filter=(&(osgi.os=macosx) (osgi.arch=x86_64))
+units.3.touchpoint.id=org.eclipse.equinox.p2.osgi
+units.3.touchpoint.version=1.0.0
+units.3.instructions.configure=addJvmArg(jvmArg:-Xms40m);addJvmArg(jvmArg:-Xmx512m);
+units.3.instructions.unconfigure=removeJvmArg(jvmArg:-Xms40m);removeJvmArg(jvmArg:-Xmx512m);
+units.3.instructions.configure=setJvm(jvm:../Eclipse/jre/lib/jli/libjli.dylib);\
+
+units.4.id=toolingorg.eclipse.configuration.aix.ppc64-collab
+units.4.version=1.0.0
+units.4.provides.1.namespace=org.eclipse.equinox.p2.iu
+units.4.provides.1.name=toolingorg.eclipse.configuration.aix.ppc64
+units.4.provides.1.version=1.0.0
+units.4.filter=(&(osgi.os=aix) (osgi.arch=ppc64))
+units.4.touchpoint.id=org.eclipse.equinox.p2.osgi
+units.4.touchpoint.version=1.0.0
+units.4.instructions.configure=addJvmArg(jvmArg:-Xms40m);addJvmArg(jvmArg:-Xmx512m);
+units.4.instructions.unconfigure=removeJvmArg(jvmArg:-Xms40m);removeJvmArg(jvmArg:-Xmx512m);
diff --git a/mapping/releng/org.eclipse.intent.product/intent.product b/mapping/releng/org.eclipse.intent.product/intent.product
new file mode 100644
index 0000000..b962937
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/intent.product
@@ -0,0 +1,160 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product name="Intent" uid="org.eclipse.intent.product" id="org.eclipse.intent.product" application="org.eclipse.ui.ide.workbench" version="0.10.0.qualifier" useFeatures="true" includeLaunchers="true">
+
+   <aboutInfo>
+      <image path="icons/about.gif"/>
+      <text>
+         Intent
+
+Version  0.10.0
+
+
+Visit https://www.eclipse.org/intent/
+      </text>
+   </aboutInfo>
+
+   <configIni use="default">
+   </configIni>
+
+   <launcherArgs>
+      <programArgs>--launcher.XXMaxPermSize
+256m
+      </programArgs>
+      <vmArgs>-Xms256m
+-Xmx1024m
+-XX:MaxPermSize=256m
+      </vmArgs>
+      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
+      </vmArgsMac>
+   </launcherArgs>
+
+   <windowImages i16="icons/logo_16.png" i32="icons/logo_32.png" i48="icons/logo_48.png" i64="icons/logo_64.png" i128="icons/logo_128.png"/>
+
+   <splash
+      location="org.eclipse.intent.branding"
+      startupProgressRect="0,328,458,18"
+      startupMessageRect="7,308,458,18"
+      startupForegroundColor="000000" />
+   <launcher name="Intent">
+      <linux icon="/icons/logo_64.xpm"/>
+      <macosx icon="/icons/Intent.icns"/>
+      <win useIco="false">
+         <bmp/>
+      </win>
+   </launcher>
+
+   <intro introId="eu.intent.welcome.intro"/>
+
+   <vm>
+      <linux include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6</linux>
+      <macos include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6</macos>
+      <solaris include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6</solaris>
+      <windows include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6</windows>
+   </vm>
+
+   <license>
+        <url>https://www.eclipse.org/legal/epl-v10.html</url>
+        <text>
+   Eclipse Public License - v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT&apos;S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+&quot;Contribution&quot; means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+b) in the case of each subsequent Contributor:
+i) changes to the Program, and
+ii) additions to the Program;
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution &apos;originates&apos; from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor&apos;s behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.
+&quot;Contributor&quot; means any person or entity that distributes the Program.
+
+&quot;Licensed Patents&quot; mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.
+
+&quot;Program&quot; means the Contributions distributed in accordance with this Agreement.
+
+&quot;Recipient&quot; means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient&apos;s responsibility to acquire that license before distributing the Program.
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+b) its license agreement:
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+b) a copy of this Agreement must be included with each copy of the Program.
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor (&quot;Commercial Contributor&quot;) hereby agrees to defend and indemnify every other Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor&apos;s responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), 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 OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient&apos;s patent(s), then such Recipient&apos;s rights granted under Section 2(b) shall terminate as of the date such litigation is filed.
+
+All Recipient&apos;s rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient&apos;s rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient&apos;s obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.
+         </text>
+   </license>
+
+   <plugins>
+   </plugins>
+
+   <features>
+      <feature id="org.eclipse.intent.product.feature"/>
+      <feature id="org.eclipse.platform"/>
+      <feature id="org.eclipse.epp.mpc"/>
+   </features>
+
+   <configurations>
+      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="4" />
+      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.p2.reconciler.dropins" autoStart="true" startLevel="4" />
+      <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
+      <plugin id="org.eclipse.update.configurator" autoStart="true" startLevel="3" />
+      <property name="osgi.instance.area.default" value="@user.home/intentws" os="macosx" />
+   </configurations>
+
+   <preferencesInfo>
+      <targetfile overwrite="false"/>
+   </preferencesInfo>
+
+   <cssInfo>
+   </cssInfo>
+
+</product>
diff --git a/mapping/releng/org.eclipse.intent.product/pom.xml b/mapping/releng/org.eclipse.intent.product/pom.xml
new file mode 100644
index 0000000..4a1754f
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/pom.xml
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2016 Obeo.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+    Obeo - initial API and implementation
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.product</artifactId>
+  <packaging>eclipse-repository</packaging>
+
+  <name>Intent Product Repository</name>
+
+  <properties>
+    <product-id>org.eclipse.intent.product</product-id>
+  </properties>
+
+  <pluginRepositories>
+    <pluginRepository>
+      <id>buchen-maven-repo</id>
+      <url>http://buchen.github.io/maven-repo</url>
+      <layout>default</layout>
+    </pluginRepository>
+  </pluginRepositories>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-p2-director-plugin</artifactId>
+        <version>${tycho-version}</version>
+        <executions>
+          <execution>
+            <!-- install the product for all configured os/ws/arch environments 
+              using p2 director -->
+            <id>materialize-products</id>
+            <goals>
+              <goal>materialize-products</goal>
+            </goals>
+          </execution>
+          <execution>
+            <!-- (optional) create product zips (one per os/ws/arch) -->
+            <id>archive-products</id>
+            <goals>
+              <goal>archive-products</goal>
+            </goals>
+          </execution>
+        </executions>
+        <!-- (optional) customize the root folder name of the product zip -->
+        <configuration>
+          <products>
+            <product>
+              <id>${product-id}</id>
+              <rootFolder>Intent</rootFolder>
+              <rootFolders>
+              	<macosx>Intent.app</macosx>
+              </rootFolders>
+              <archiveFileName>Intent</archiveFileName>
+            </product>
+          </products>
+        </configuration>
+      </plugin>
+      <!-- workaround for https://bugs.eclipse.org/bugs/show_bug.cgi?id=349421 -->
+      <plugin>
+        <artifactId>maven-resources-plugin</artifactId>
+        <version>2.5</version>
+        <executions>
+          <execution>
+            <id>copy-resources</id>
+            <phase>generate-resources</phase>
+            <goals>
+              <goal>copy-resources</goal>
+            </goals>
+            <configuration>
+              <outputDirectory>${project.build.directory}/products/${product-id}/icons/</outputDirectory>
+              <nonFilteredFileExtensions>
+                <nonFilteredFileExtension>ico</nonFilteredFileExtension>
+                <nonFilteredFileExtension>xpm</nonFilteredFileExtension>
+                <nonFilteredFileExtension>icns</nonFilteredFileExtension>
+                <nonFilteredFileExtension>png</nonFilteredFileExtension>
+                <nonFilteredFileExtension>gif</nonFilteredFileExtension>
+                <nonFilteredFileExtension>bmp</nonFilteredFileExtension>
+              </nonFilteredFileExtensions>
+              <resources>
+                <resource>
+                  <directory>../icons</directory>
+                </resource>
+              </resources>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+
+    </plugins>
+  </build>
+
+</project>
diff --git a/mapping/releng/org.eclipse.intent.product/site.xml b/mapping/releng/org.eclipse.intent.product/site.xml
new file mode 100644
index 0000000..8c5965b
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.product/site.xml
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<site>
+</site>
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/.project b/mapping/releng/org.eclipse.intent.targetplatforms/.project
new file mode 100644
index 0000000..e5749bd
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.targetplatforms</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+	</buildSpec>
+	<natures>
+	</natures>
+</projectDescription>
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/luna/intent-luna.target b/mapping/releng/org.eclipse.intent.targetplatforms/luna/intent-luna.target
new file mode 100644
index 0000000..55b7877
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/luna/intent-luna.target
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde?>
+<!-- generated with https://github.com/mbarbero/fr.obeo.releng.targetplatform -->
+<target name="Intent Luna Target Platform" sequenceNumber="1506936012">
+  <locations>
+    <location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+      <unit id="org.eclipse.ui" version="0.0.0"/>
+      <unit id="org.eclipse.platform.sdk" version="0.0.0"/>
+      <unit id="org.eclipse.equinox.executable.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.ui.views.log" version="0.0.0"/>
+      <unit id="org.eclipse.epp.mpc.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.core.runtime" version="0.0.0"/>
+      <unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.emf.cdo.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.junit" version="4.11.0.v201303080030"/>
+      <unit id="org.eclipse.emf.compare" version="0.0.0"/>
+      <unit id="org.eclipse.sirius.runtime.feature.group" version="0.0.0"/>
+      <repository id="Eclipse" location="http://download.eclipse.org/releases/luna"/>
+    </location>
+  </locations>
+</target>
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/luna/intent-luna.tpd b/mapping/releng/org.eclipse.intent.targetplatforms/luna/intent-luna.tpd
new file mode 100644
index 0000000..6b47260
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/luna/intent-luna.tpd
@@ -0,0 +1,21 @@
+target "Intent Luna Target Platform"
+
+with source requirements
+
+location Eclipse "http://download.eclipse.org/releases/luna" {
+	org.eclipse.ui lazy
+	org.eclipse.platform.sdk lazy
+	org.eclipse.equinox.executable.feature.group lazy
+	org.eclipse.ui.views.log lazy
+	org.eclipse.epp.mpc.feature.group lazy
+	org.eclipse.core.runtime lazy
+
+	org.eclipse.emf.sdk.feature.group lazy
+	org.eclipse.emf.cdo.sdk.feature.group lazy
+	
+	org.junit [4.0.0,5.0.0)
+	
+	org.eclipse.emf.compare lazy
+	
+	org.eclipse.sirius.runtime.feature.group lazy
+}
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/luna/pom.xml b/mapping/releng/org.eclipse.intent.targetplatforms/luna/pom.xml
new file mode 100644
index 0000000..0c68451
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/luna/pom.xml
@@ -0,0 +1,18 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../../..</relativePath>
+  </parent>
+
+  <groupId>org.eclipse.intent</groupId>
+  <artifactId>intent-luna</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-target-definition</packaging>
+
+</project>
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/mars/intent-mars.target b/mapping/releng/org.eclipse.intent.targetplatforms/mars/intent-mars.target
new file mode 100644
index 0000000..f05ba83
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/mars/intent-mars.target
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde?>
+<!-- generated with https://github.com/mbarbero/fr.obeo.releng.targetplatform -->
+<target name="Intent Mars Target Platform" sequenceNumber="1506936009">
+  <locations>
+    <location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+      <unit id="org.eclipse.ui" version="0.0.0"/>
+      <unit id="org.eclipse.platform.sdk" version="0.0.0"/>
+      <unit id="org.eclipse.equinox.executable.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.ui.views.log" version="0.0.0"/>
+      <unit id="org.eclipse.epp.mpc.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.core.runtime" version="0.0.0"/>
+      <unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.emf.cdo.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.junit" version="4.12.0.v201504281640"/>
+      <unit id="org.eclipse.emf.compare" version="0.0.0"/>
+      <unit id="org.eclipse.sirius.runtime.feature.group" version="0.0.0"/>
+      <repository location="http://download.eclipse.org/releases/mars"/>
+    </location>
+  </locations>
+</target>
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/mars/intent-mars.tpd b/mapping/releng/org.eclipse.intent.targetplatforms/mars/intent-mars.tpd
new file mode 100644
index 0000000..e034536
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/mars/intent-mars.tpd
@@ -0,0 +1,21 @@
+target "Intent Mars Target Platform"
+
+with source requirements
+
+location "http://download.eclipse.org/releases/mars" {
+	org.eclipse.ui lazy
+	org.eclipse.platform.sdk lazy
+	org.eclipse.equinox.executable.feature.group lazy
+	org.eclipse.ui.views.log lazy
+	org.eclipse.epp.mpc.feature.group lazy
+	org.eclipse.core.runtime lazy
+
+	org.eclipse.emf.sdk.feature.group lazy
+	org.eclipse.emf.cdo.sdk.feature.group lazy
+	
+	org.junit [4.0.0,5.0.0)
+	
+	org.eclipse.emf.compare lazy
+	
+	org.eclipse.sirius.runtime.feature.group lazy
+}
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/mars/pom.xml b/mapping/releng/org.eclipse.intent.targetplatforms/mars/pom.xml
new file mode 100644
index 0000000..2604a9e
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/mars/pom.xml
@@ -0,0 +1,18 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../../..</relativePath>
+  </parent>
+
+  <groupId>org.eclipse.intent</groupId>
+  <artifactId>intent-mars</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-target-definition</packaging>
+
+</project>
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/neon/intent-neon.target b/mapping/releng/org.eclipse.intent.targetplatforms/neon/intent-neon.target
new file mode 100644
index 0000000..1142c1b
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/neon/intent-neon.target
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde?>
+<!-- generated with https://github.com/mbarbero/fr.obeo.releng.targetplatform -->
+<target name="Intent Neon Target Platform" sequenceNumber="1506936020">
+  <locations>
+    <location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+      <unit id="org.eclipse.ui" version="0.0.0"/>
+      <unit id="org.eclipse.platform.sdk" version="0.0.0"/>
+      <unit id="org.eclipse.equinox.executable.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.ui.views.log" version="0.0.0"/>
+      <unit id="org.eclipse.epp.mpc.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.core.runtime" version="0.0.0"/>
+      <unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.emf.cdo.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.junit" version="4.12.0.v201504281640"/>
+      <unit id="org.eclipse.emf.compare" version="0.0.0"/>
+      <unit id="org.eclipse.sirius.runtime.feature.group" version="0.0.0"/>
+      <repository location="http://download.eclipse.org/releases/neon"/>
+    </location>
+  </locations>
+</target>
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/neon/intent-neon.tpd b/mapping/releng/org.eclipse.intent.targetplatforms/neon/intent-neon.tpd
new file mode 100644
index 0000000..43be50b
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/neon/intent-neon.tpd
@@ -0,0 +1,21 @@
+target "Intent Neon Target Platform"
+
+with source requirements
+
+location "http://download.eclipse.org/releases/neon" {
+	org.eclipse.ui lazy
+	org.eclipse.platform.sdk lazy
+	org.eclipse.equinox.executable.feature.group lazy
+	org.eclipse.ui.views.log lazy
+	org.eclipse.epp.mpc.feature.group lazy
+	org.eclipse.core.runtime lazy
+
+	org.eclipse.emf.sdk.feature.group lazy
+	org.eclipse.emf.cdo.sdk.feature.group lazy
+	
+	org.junit [4.0.0,5.0.0)
+	
+	org.eclipse.emf.compare lazy
+	
+	org.eclipse.sirius.runtime.feature.group lazy
+}
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/neon/pom.xml b/mapping/releng/org.eclipse.intent.targetplatforms/neon/pom.xml
new file mode 100644
index 0000000..853bdf1
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/neon/pom.xml
@@ -0,0 +1,18 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../../..</relativePath>
+  </parent>
+
+  <groupId>org.eclipse.intent</groupId>
+  <artifactId>intent-neon</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-target-definition</packaging>
+
+</project>
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/oxygen/intent-oxygen.target b/mapping/releng/org.eclipse.intent.targetplatforms/oxygen/intent-oxygen.target
new file mode 100644
index 0000000..334eb0d
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/oxygen/intent-oxygen.target
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde?>
+<!-- generated with https://github.com/mbarbero/fr.obeo.releng.targetplatform -->
+<target name="Intent Oxygen Target Platform" sequenceNumber="1506936009">
+  <locations>
+    <location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+      <unit id="org.eclipse.ui" version="0.0.0"/>
+      <unit id="org.eclipse.platform.sdk" version="0.0.0"/>
+      <unit id="org.eclipse.equinox.executable.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.ui.views.log" version="0.0.0"/>
+      <unit id="org.eclipse.epp.mpc.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.core.runtime" version="0.0.0"/>
+      <unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.emf.cdo.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.junit" version="4.12.0.v201504281640"/>
+      <unit id="org.eclipse.emf.compare" version="0.0.0"/>
+      <unit id="org.eclipse.sirius.runtime.feature.group" version="0.0.0"/>
+      <repository location="http://download.eclipse.org/releases/oxygen"/>
+    </location>
+  </locations>
+</target>
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/oxygen/intent-oxygen.tpd b/mapping/releng/org.eclipse.intent.targetplatforms/oxygen/intent-oxygen.tpd
new file mode 100644
index 0000000..3642bbe
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/oxygen/intent-oxygen.tpd
@@ -0,0 +1,21 @@
+target "Intent Oxygen Target Platform"
+
+with source requirements
+
+location "http://download.eclipse.org/releases/oxygen" {
+	org.eclipse.ui lazy
+	org.eclipse.platform.sdk lazy
+	org.eclipse.equinox.executable.feature.group lazy
+	org.eclipse.ui.views.log lazy
+	org.eclipse.epp.mpc.feature.group lazy
+	org.eclipse.core.runtime lazy
+
+	org.eclipse.emf.sdk.feature.group lazy
+	org.eclipse.emf.cdo.sdk.feature.group lazy
+	
+	org.junit [4.0.0,5.0.0)
+	
+	org.eclipse.emf.compare lazy
+	
+	org.eclipse.sirius.runtime.feature.group lazy
+}
diff --git a/mapping/releng/org.eclipse.intent.targetplatforms/oxygen/pom.xml b/mapping/releng/org.eclipse.intent.targetplatforms/oxygen/pom.xml
new file mode 100644
index 0000000..bd30e06
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.targetplatforms/oxygen/pom.xml
@@ -0,0 +1,18 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../../..</relativePath>
+  </parent>
+
+  <groupId>org.eclipse.intent</groupId>
+  <artifactId>intent-oxygen</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <packaging>eclipse-target-definition</packaging>
+
+</project>
diff --git a/mapping/releng/org.eclipse.intent.updatesite/.project b/mapping/releng/org.eclipse.intent.updatesite/.project
new file mode 100644
index 0000000..ed07fa8
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.updatesite/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.updatesite</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.UpdateSiteBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.UpdateSiteNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/releng/org.eclipse.intent.updatesite/category.xml b/mapping/releng/org.eclipse.intent.updatesite/category.xml
new file mode 100644
index 0000000..c606208
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.updatesite/category.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<site>
+   <feature id="org.eclipse.intent.mapping" version="0.0.0">
+      <category name="org.eclipse.intent"/>
+   </feature>
+   <feature id="org.eclipse.intent.mapping.source" version="0.0.0">
+      <category name="org.eclipse.intent"/>
+   </feature>
+   <feature id="org.eclipse.intent.mapping.sirius" version="0.0.0">
+      <category name="org.eclipse.intent"/>
+   </feature>
+   <feature id="org.eclipse.intent.mapping.sirius.source" version="0.0.0">
+      <category name="org.eclipse.intent"/>
+   </feature>
+   <category-def name="org.eclipse.intent" label="Intent">
+      <description>
+         [Enter Catergory Description here.]
+      </description>
+   </category-def>
+</site>
diff --git a/mapping/releng/org.eclipse.intent.updatesite/pom.xml b/mapping/releng/org.eclipse.intent.updatesite/pom.xml
new file mode 100644
index 0000000..85db1c3
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.updatesite/pom.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2011, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.updatesite</artifactId>
+  <packaging>eclipse-repository</packaging>
+  <version>0.10.0-SNAPSHOT</version>
+
+  <name>Intent Repository</name>
+
+  <build>
+    <resources>
+      <resource>
+        <directory>.</directory>
+        <filtering>true</filtering>
+        <includes>
+          <include>publisher.properties</include>
+        </includes>
+      </resource>
+    </resources>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-p2-repository-plugin</artifactId>
+        <version>${tycho-version}</version>
+        <configuration>
+          <createArtifactRepository>true</createArtifactRepository>
+          <finalName>repository/${project.artifactId}</finalName>
+          <compress>true</compress>
+          <repositoryName>Intent ${unqualifiedVersion}.${buildQualifier}</repositoryName>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-resources-plugin</artifactId>
+        <executions>
+          <execution>
+            <phase>verify</phase>
+            <goals>
+              <goal>resources</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <outputDirectory>${project.build.directory}</outputDirectory>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/mapping/releng/org.eclipse.intent.updatesite/publisher.properties b/mapping/releng/org.eclipse.intent.updatesite/publisher.properties
new file mode 100644
index 0000000..b12af24
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.updatesite/publisher.properties
@@ -0,0 +1,5 @@
+# Intent publisher properties
+UPDATE_SITE__UNQUALIFIED_VERSION=${unqualifiedVersion}
+UPDATE_SITE__QUALIFIED_VERSION=${unqualifiedVersion}.${buildQualifier}
+UPDATE_SITE__ARTIFACT_NAME=${project.groupId}-${unqualifiedVersion}.${buildQualifier}.zip
+UPDATE_SITE__ARTIFACT_URL=${env.JOB_URL}${env.BUILD_NUMBER}/artifact/releng/org.eclipse.intent.updatesite/target/${project.groupId}-${unqualifiedVersion}.${buildQualifier}.zip
diff --git a/mapping/releng/org.eclipse.intent.updatesite/site.xml b/mapping/releng/org.eclipse.intent.updatesite/site.xml
new file mode 100644
index 0000000..8c5965b
--- /dev/null
+++ b/mapping/releng/org.eclipse.intent.updatesite/site.xml
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<site>
+</site>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.checkstyle b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.checkstyle
new file mode 100644
index 0000000..5ddb099
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.checkstyle
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter Tests" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6ConfigurationTests.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter Tests" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+</fileset-config>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.classpath b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.classpath
new file mode 100644
index 0000000..304e861
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.project b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.project
new file mode 100644
index 0000000..7f433ef
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.emf.ide.tests</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.settings/org.eclipse.jdt.core.prefs b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3433b02
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,315 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.settings/org.eclipse.jdt.ui.prefs b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..99aaf4f
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=com;eu;fr;java;javax;org;\#org.junit;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/META-INF/MANIFEST.MF b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..5664362
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,23 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Tests
+Bundle-SymbolicName: org.eclipse.intent.mapping.emf.ide.tests
+Bundle-Version: 0.10.0.qualifier
+Export-Package: org.eclipse.intent.mapping.emf.ide.tests,
+ org.eclipse.intent.mapping.emf.ide.tests.adapter,
+ org.eclipse.intent.mapping.emf.ide.tests.connector,
+ org.eclipse.intent.mapping.emf.ide.tests.resource
+Require-Bundle: org.junit,
+ org.eclipse.intent.mapping.ide.tests,
+ org.eclipse.intent.mapping.tests,
+ org.eclipse.intent.mapping.ide,
+ org.eclipse.intent.mapping,
+ org.eclipse.core.contenttype,
+ org.eclipse.equinox.registry,
+ org.eclipse.intent.mapping.emf.ide,
+ org.eclipse.core.runtime,
+ org.eclipse.core.resources,
+ org.eclipse.emf.ecore,
+ org.eclipse.emf.ecore.xmi,
+ org.eclipse.intent.mapping.emf.tests
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/build.properties b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/build.properties
new file mode 100644
index 0000000..b107977
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/build.properties
@@ -0,0 +1,3 @@
+source.. = src/
+bin.includes = META-INF/,\
+               .
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/org.eclipse.intent.mapping.emf.ide.tests.launch b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/org.eclipse.intent.mapping.emf.ide.tests.launch
new file mode 100644
index 0000000..79408b5
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/org.eclipse.intent.mapping.emf.ide.tests.launch
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
+<booleanAttribute key="append.args" value="true"/>
+<stringAttribute key="application" value="org.eclipse.pde.junit.runtime.coretestapplication"/>
+<booleanAttribute key="askclear" value="false"/>
+<booleanAttribute key="automaticAdd" value="true"/>
+<booleanAttribute key="automaticValidate" value="true"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="true"/>
+<booleanAttribute key="clearws" value="true"/>
+<booleanAttribute key="clearwslog" value="false"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
+<booleanAttribute key="default" value="true"/>
+<booleanAttribute key="includeOptional" value="true"/>
+<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/mylyn/docs/intent/mapping/emf/ide/tests/AllTests.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+<listEntry value="com.mountainminds.eclemma.ui.launchGroup.coverage"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.intent.mapping.emf.ide.tests.AllTests"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.intent.mapping.emf.ide.tests"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<stringAttribute key="product" value="org.eclipse.intent.branding.product"/>
+<booleanAttribute key="run_in_ui_thread" value="true"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useCustomFeatures" value="false"/>
+<booleanAttribute key="useDefaultConfig" value="true"/>
+<booleanAttribute key="useDefaultConfigArea" value="false"/>
+<booleanAttribute key="useProduct" value="false"/>
+</launchConfiguration>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/pom.xml b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/pom.xml
new file mode 100644
index 0000000..678e0d5
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/pom.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping.emf.ide.tests</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <name>Mapping EMF IDE Tests</name>
+
+  <packaging>eclipse-test-plugin</packaging>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-surefire-plugin</artifactId>
+        <version>${tycho-version}</version>
+        <configuration>
+          <includes>
+            <include>**/AllTests.class</include>
+          </includes>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/AllTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/AllTests.java
new file mode 100644
index 0000000..10f6abe
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/AllTests.java
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests;
+
+import org.eclipse.intent.mapping.emf.ide.tests.adapter.EObjectLocationToMarkerAdapterFactoryTests;
+import org.eclipse.intent.mapping.emf.ide.tests.adapter.MarkerToEObjectLocationTests;
+import org.eclipse.intent.mapping.emf.ide.tests.connector.EObjectContainerProviderTests;
+import org.eclipse.intent.mapping.emf.ide.tests.connector.EObjectFileConnectorDelegateTests;
+import org.eclipse.intent.mapping.emf.ide.tests.connector.IdeCDOContainerProviderTests;
+import org.eclipse.intent.mapping.emf.ide.tests.connector.IdeCDOResourceNodeConnectorTests;
+import org.eclipse.intent.mapping.emf.ide.tests.connector.IdeCDOViewConnectorTests;
+import org.eclipse.intent.mapping.emf.ide.tests.connector.IdeEObjectConnectorCDOTests;
+import org.eclipse.intent.mapping.emf.ide.tests.connector.IdeEObjectConnectorParametrizedCDOTests;
+import org.eclipse.intent.mapping.emf.ide.tests.connector.IdeEObjectConnectorParametrizedTests;
+import org.eclipse.intent.mapping.emf.ide.tests.connector.IdeEObjectConnectorTests;
+import org.eclipse.intent.mapping.emf.ide.tests.resource.EMFEObjectFileLocationTests;
+import org.eclipse.intent.mapping.emf.ide.tests.resource.EMFResourceLocationTests;
+import org.eclipse.intent.mapping.emf.ide.tests.resource.EMFTextFileLocationTests;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+/**
+ * Aggregates tests for the org.eclipse.intent.mapping.emf.ide plug-in.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@RunWith(Suite.class)
+@SuiteClasses(value = {EMFResourceLocationTests.class, EMFTextFileLocationTests.class,
+		EMFEObjectFileLocationTests.class, EObjectFileConnectorDelegateTests.class,
+		WorkspaceMappingBaseListenerTests.class, IdeEObjectConnectorTests.class,
+		IdeEObjectConnectorCDOTests.class, IdeCDOContainerProviderTests.class,
+		EObjectContainerProviderTests.class, IdeEObjectConnectorParametrizedTests.class,
+		IdeEObjectConnectorParametrizedCDOTests.class, EObjectLocationToMarkerAdapterFactoryTests.class,
+		MarkerToEObjectLocationTests.class, IdeCDOViewConnectorTests.class,
+		IdeCDOResourceNodeConnectorTests.class, })
+
+public class AllTests {
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/WorkspaceMappingBaseListenerTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/WorkspaceMappingBaseListenerTests.java
new file mode 100644
index 0000000..5def8c2
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/WorkspaceMappingBaseListenerTests.java
@@ -0,0 +1,719 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests;
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.IBaseRegistryListener;
+import org.eclipse.intent.mapping.emf.ide.WorkspaceMappingBaseListener;
+import org.junit.Before;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+/**
+ * Tests {@link WorkspaceMappingBaseListener}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class WorkspaceMappingBaseListenerTests {
+
+	/**
+	 * Make sure org.eclipse.intent.mapping.emf.ide is activated.
+	 */
+	private static final WorkspaceMappingBaseListener LISTENER = new WorkspaceMappingBaseListener(false);
+
+	/**
+	 * Test {@link IBaseRegistryListener}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private class TestBaseRegistryListener implements IBaseRegistryListener {
+
+		/**
+		 * Registered {@link IBase}.
+		 */
+		private List<IBase> bases = new ArrayList<IBase>();
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseRegistryListener#baseRegistred(org.eclipse.intent.mapping.base.IBase)
+		 */
+		public void baseRegistred(IBase base) {
+			bases.add(base);
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseRegistryListener#baseUnregistred(org.eclipse.intent.mapping.base.IBase)
+		 */
+		public void baseUnregistred(IBase base) {
+			bases.remove(base);
+		}
+
+		/**
+		 * Gets the {@link List} of registered {@link IBase}.
+		 * 
+		 * @return the {@link List} of registered {@link IBase}
+		 */
+		public List<IBase> getBases() {
+			return bases;
+		}
+
+	}
+
+	/**
+	 * Creates an {@link IFile} that is not a {@link Base} resource in the given {@link IContainer}.
+	 * 
+	 * @param container
+	 *            the {@link IContainer}
+	 * @return the created {@link IFile} if any, <code>null</code> otherwise
+	 */
+	private IFile createNotBaseFile(IContainer container) {
+		IFile res = container.getFile(new Path("test.txt"));
+
+		try {
+			res.create(new ByteArrayInputStream("text".getBytes()), true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Creates an {@link IProject}.
+	 * 
+	 * @return
+	 * @throws CoreException
+	 */
+	private IProject createProject() throws CoreException {
+		IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("test");
+		if (project.exists()) {
+			project.delete(true, new NullProgressMonitor());
+		}
+		project.create(new NullProgressMonitor());
+		project.open(new NullProgressMonitor());
+		return project;
+	}
+
+	/**
+	 * Creates a {@link Base} {@link IFile} in the given container containing the given {@link Base}.
+	 * 
+	 * @param container
+	 *            the {@link IContainer}
+	 * @param base
+	 *            the {@link Base}
+	 * @return the created {@link IFile} if any, <code>null</code> otherwise
+	 */
+	private IFile createBaseFile(IContainer container, Base base) {
+		final String fileName = "test.mapping";
+		IFile res = container.getFile(new Path(fileName));
+
+		try {
+			final ResourceSet resourceSet = new ResourceSetImpl();
+			resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put(MappingPackage.eNAME,
+					new XMIResourceFactoryImpl());
+
+			final Resource resource = resourceSet.createResource(URI.createPlatformResourceURI(container
+					.getFullPath().toString() + "/" + fileName, true));
+			if (base != null) {
+				resource.getContents().add(base);
+			}
+			resource.save(null);
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Clears the workspace after each test.
+	 */
+	@Before
+	public void beforeTest() {
+		try {
+			for (IResource resource : ResourcesPlugin.getWorkspace().getRoot().members()) {
+				((IProject)resource).open(new NullProgressMonitor());
+				resource.delete(true, new NullProgressMonitor());
+			}
+		} catch (CoreException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+	}
+
+	@Test
+	public void resourceChangedAddProject() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedAddFile() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+			final IFile file = createNotBaseFile(project);
+
+			assertTrue(file != null);
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedAddBaseFileWithoutBase() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+			final IFile file = createBaseFile(project, null);
+
+			assertTrue(file != null);
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedAddBaseFileWithBase() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final Base base = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+			base.setName("test");
+			final IProject project = createProject();
+			final IFile file = createBaseFile(project, base);
+
+			assertTrue(file != null);
+			assertEquals(1, registeryListener.getBases().size());
+			assertEquals("test", registeryListener.getBases().get(0).getName());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedRemoveProject() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.delete(true, new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedRemoveFile() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+			final IFile file = createNotBaseFile(project);
+
+			assertTrue(file != null);
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.delete(true, new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedRemoveBaseFileWithoutBase() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+			final IFile file = createBaseFile(project, null);
+
+			assertTrue(file != null);
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.delete(true, new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedRemoveBaseFileWithBase() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final Base base = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+			base.setName("test");
+			final IProject project = createProject();
+			final IFile file = createBaseFile(project, base);
+
+			assertTrue(file != null);
+			assertEquals(1, registeryListener.getBases().size());
+			assertEquals("test", registeryListener.getBases().get(0).getName());
+
+			project.delete(true, new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedMoveProject() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.move(new Path("/project"), true, new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedMoveFile() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+			final IFile file = createNotBaseFile(project);
+
+			assertTrue(file != null);
+			assertEquals(0, registeryListener.getBases().size());
+
+			file.move(new Path("/test/file.txt"), true, new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedMoveBaseFileWithoutBase() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+			final IFile file = createBaseFile(project, null);
+
+			assertTrue(file != null);
+			assertEquals(0, registeryListener.getBases().size());
+
+			file.move(new Path("/test/file.mapping"), true, new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedMoveBaseFileWithBase() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final Base base = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+			base.setName("test");
+			final IProject project = createProject();
+			final IFile file = createBaseFile(project, base);
+
+			assertTrue(file != null);
+			assertEquals(1, registeryListener.getBases().size());
+			assertEquals("test", registeryListener.getBases().get(0).getName());
+
+			file.move(new Path("/test/file.mapping"), true, new NullProgressMonitor());
+
+			assertEquals(1, registeryListener.getBases().size());
+			assertEquals("test", registeryListener.getBases().get(0).getName());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedMoveBaseFileWithBaseToNoBaseThenToBase() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final Base base = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+			base.setName("test");
+			final IProject project = createProject();
+			IFile file = createBaseFile(project, base);
+
+			assertTrue(file != null);
+			assertEquals(1, registeryListener.getBases().size());
+			assertEquals("test", registeryListener.getBases().get(0).getName());
+
+			file.move(new Path("/test/file.txt"), true, new NullProgressMonitor());
+			file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path("/test/file.txt"));
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			file.move(new Path("/test/file.mapping"), true, new NullProgressMonitor());
+
+			assertEquals(1, registeryListener.getBases().size());
+			assertEquals("test", registeryListener.getBases().get(0).getName());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedOpenProject() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.open(new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedOpenFile() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+			final IFile file = createNotBaseFile(project);
+
+			assertTrue(file != null);
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.open(new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedOpenBaseFileWithoutBase() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+			final IFile file = createBaseFile(project, null);
+
+			assertTrue(file != null);
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.open(new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedOpenBaseFileWithBase() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final Base base = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+			base.setName("test");
+			final IProject project = createProject();
+			final IFile file = createBaseFile(project, base);
+
+			assertTrue(file != null);
+			assertEquals(1, registeryListener.getBases().size());
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.open(new NullProgressMonitor());
+
+			assertEquals(1, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedCloseProject() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedCloseFile() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+			final IFile file = createNotBaseFile(project);
+
+			assertTrue(file != null);
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedCloseBaseFileWithoutBase() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final IProject project = createProject();
+			final IFile file = createBaseFile(project, null);
+
+			assertTrue(file != null);
+			assertEquals(0, registeryListener.getBases().size());
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+	@Test
+	public void resourceChangedCloseBaseFileWithBase() {
+
+		final TestBaseRegistryListener registeryListener = new TestBaseRegistryListener();
+		try {
+			MappingUtils.getMappingRegistry().addListener(registeryListener);
+
+			final Base base = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+			base.setName("test");
+			final IProject project = createProject();
+			final IFile file = createBaseFile(project, base);
+
+			assertTrue(file != null);
+			assertEquals(1, registeryListener.getBases().size());
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(0, registeryListener.getBases().size());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		} finally {
+			MappingUtils.getMappingRegistry().removeListener(registeryListener);
+		}
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/adapter/EObjectLocationToMarkerAdapterFactoryTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/adapter/EObjectLocationToMarkerAdapterFactoryTests.java
new file mode 100644
index 0000000..82f1cf2
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/adapter/EObjectLocationToMarkerAdapterFactoryTests.java
@@ -0,0 +1,111 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.adapter;
+
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.eclipse.intent.mapping.emf.IEObjectLocation;
+import org.eclipse.intent.mapping.emf.connector.EObjectConnector.EObjectContainerHelper;
+import org.eclipse.intent.mapping.emf.ide.adapter.EObjectLocationToMarkerAdapterFactory;
+import org.eclipse.intent.mapping.emf.ide.marker.IEObjectLocationMaker;
+import org.eclipse.intent.mapping.emf.ide.tests.connector.EObjectFileConnectorDelegateTests.TestEObjectFileLocation;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorParametrizedTests;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestCouple;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests.TestBase;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+
+/**
+ * Tests {@link EObjectLocationToMarkerAdapterFactory}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EObjectLocationToMarkerAdapterFactoryTests {
+
+	/**
+	 * Makes sure org.eclipse.intent.mapping.emf.ide is activated.
+	 */
+	private static final EObjectLocationToMarkerAdapterFactory FACTORY = new EObjectLocationToMarkerAdapterFactory();
+
+	/**
+	 * The {@link EObjectContainerHelper}.
+	 */
+	private final EObjectContainerHelper eObjectContainerHelper = new EObjectContainerHelper();
+
+	@Test
+	public void getAdapter() throws Exception {
+		final IProject project = createProject();
+		final ResourceSet rs = new ResourceSetImpl();
+		final org.eclipse.emf.ecore.resource.Resource r = rs.createResource(URI.createPlatformResourceURI(
+				"/test/test.xmi", true));
+		final EPackage ePackage = EcorePackage.eINSTANCE.getEcoreFactory().createEPackage();
+		r.getContents().add(ePackage);
+		r.save(null);
+		project.refreshLocal(1, new NullProgressMonitor());
+
+		final IBase base = new TestBase();
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+
+		TestEObjectFileLocation container = new TestEObjectFileLocation();
+		container.setContainer(base);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, r);
+		container.setResource(r);
+		container.setFullPath("/test/test.xmi");
+
+		final IEObjectLocation location = new EObjectConnectorParametrizedTests.TestEObjectLocation();
+		location.setURIFragment(ePackage.eResource().getURIFragment(ePackage));
+		container.getContents().add(location);
+		location.setContainer(container);
+
+		IMarker marker = (IMarker)Platform.getAdapterManager().getAdapter(location, IMarker.class);
+
+		assertNotNull(marker);
+		assertEquals(IEObjectLocationMaker.EOBJECT_LOCATION_ID, marker.getType());
+		assertEquals("/test/test.xmi", marker.getResource().getFullPath().toString());
+		assertEquals("platform:/resource/test/test.xmi#/", marker.getAttribute(
+				IEObjectLocationMaker.URI_ATTRIBUTE));
+
+		project.delete(true, true, new NullProgressMonitor());
+	}
+
+	/**
+	 * Creates an {@link IProject}.
+	 * 
+	 * @return the created {@link IProject}
+	 * @throws CoreException
+	 */
+	private IProject createProject() throws CoreException {
+		IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("test");
+		if (project.exists()) {
+			project.delete(true, new NullProgressMonitor());
+		}
+		project.create(new NullProgressMonitor());
+		project.open(new NullProgressMonitor());
+		return project;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/adapter/MarkerToEObjectLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/adapter/MarkerToEObjectLocationTests.java
new file mode 100644
index 0000000..b79815d
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/adapter/MarkerToEObjectLocationTests.java
@@ -0,0 +1,113 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.adapter;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EValidator;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.emf.ide.adapter.MarkerToEObjectLocationDescriptor;
+import org.eclipse.intent.mapping.emf.ide.marker.IEObjectLocationMaker;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.adapter.MarkerToLocationDescriptorAdapterFactory;
+import org.junit.Ignore;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link MarkerToEObjectLocationDescriptor}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class MarkerToEObjectLocationTests {
+
+	/**
+	 * Makes sure org.eclipse.intent.mapping.ide is activated.
+	 */
+	private static final MarkerToLocationDescriptorAdapterFactory FACTORY = new MarkerToLocationDescriptorAdapterFactory();
+
+	/**
+	 * Makes sure org.eclipse.intent.mapping.emf.ide is activated.
+	 */
+	private static final MarkerToEObjectLocationDescriptor ADAPTER = new MarkerToEObjectLocationDescriptor();
+
+	@Test
+	@Ignore
+	// TODO fix this test
+	public void getAdapter() throws CoreException, IOException {
+		final IProject project = createProject();
+		final ResourceSet rs = new ResourceSetImpl();
+		final org.eclipse.emf.ecore.resource.Resource r = rs.createResource(URI.createPlatformResourceURI(
+				"/test/test.xmi", true));
+		final EPackage ePackage = EcorePackage.eINSTANCE.getEcoreFactory().createEPackage();
+		ePackage.setName("testPackage");
+		r.getContents().add(ePackage);
+		r.save(null);
+		project.refreshLocal(1, new NullProgressMonitor());
+		final IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path("/test/test.xmi"));
+		final IMarker marker = file.createMarker(EValidator.MARKER);
+		marker.setAttribute(IEObjectLocationMaker.URI_ATTRIBUTE, EcoreUtil.getURI(ePackage).toString());
+
+		final Base base = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+		MappingUtils.getMappingRegistry().register(base);
+		IdeMappingUtils.setCurrentBase(base);
+
+		ILocationDescriptor locationDescriptor = (ILocationDescriptor)Platform.getAdapterManager().getAdapter(
+				marker, ILocationDescriptor.class);
+
+		assertNotNull(locationDescriptor);
+		assertTrue(locationDescriptor.getElement() instanceof EPackage);
+		assertEquals("testPackage", ((EPackage)locationDescriptor.getElement()).getName());
+		assertTrue(locationDescriptor.getContainerDescriptor().getElement() instanceof IFile);
+		final IFile container = (IFile)locationDescriptor.getContainerDescriptor().getElement();
+		assertEquals("/test/test.xmi", container.getFullPath().toString());
+
+		project.delete(true, true, new NullProgressMonitor());
+	}
+
+	/**
+	 * Creates an {@link IProject}.
+	 * 
+	 * @return the created {@link IProject}
+	 * @throws CoreException
+	 */
+	private IProject createProject() throws CoreException {
+		IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("test");
+		if (project.exists()) {
+			project.delete(true, new NullProgressMonitor());
+		}
+		project.create(new NullProgressMonitor());
+		project.open(new NullProgressMonitor());
+		return project;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/EObjectContainerProviderTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/EObjectContainerProviderTests.java
new file mode 100644
index 0000000..5e1897b
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/EObjectContainerProviderTests.java
@@ -0,0 +1,99 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.connector;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+import org.eclipse.intent.mapping.emf.ide.connector.EObjectContainerProvider;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link EObjectContainerProvider}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EObjectContainerProviderTests {
+
+	@Test
+	public void getContainerNull() {
+		final EObjectContainerProvider provider = new EObjectContainerProvider();
+
+		final Object result = provider.getContainer(null);
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getContainerObject() {
+		final EObjectContainerProvider provider = new EObjectContainerProvider();
+
+		final Object element = new Object();
+		final Object result = provider.getContainer(element);
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getContainerEObjectNoResource() {
+		final EObjectContainerProvider provider = new EObjectContainerProvider();
+
+		final EObject element = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+		final Object result = provider.getContainer(element);
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getContainerEObject() throws IOException, CoreException {
+		final EObjectContainerProvider provider = new EObjectContainerProvider();
+
+		final EObject element = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+		final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(
+				EObjectContainerProviderTests.class.getCanonicalName());
+		project.create(new NullProgressMonitor());
+		project.open(new NullProgressMonitor());
+		final IFile file = project.getFile(new Path("test.xmi"));
+
+		final Resource resource = new XMIResourceImpl(URI.createPlatformResourceURI(file.getFullPath()
+				.toString(), true));
+		resource.getContents().add(element);
+		resource.save(null);
+		final Object result = provider.getContainer(element);
+
+		assertEquals(file, result);
+	}
+
+	@Test
+	public void isRegistered() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final IContainerProvider provider = MappingUtils.getContainerProviderFactory().createProvider(
+				EObjectContainerProvider.class.getCanonicalName());
+		assertTrue(provider instanceof EObjectContainerProvider);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/EObjectFileConnectorDelegateTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/EObjectFileConnectorDelegateTests.java
new file mode 100644
index 0000000..3803f69
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/EObjectFileConnectorDelegateTests.java
@@ -0,0 +1,185 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.connector;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.content.IContentType;
+import org.eclipse.core.runtime.content.IContentTypeManager;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.content.IFileType;
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.eclipse.intent.mapping.emf.ide.connector.EObjectFileConnectorDelegate;
+import org.eclipse.intent.mapping.emf.ide.resource.IEObjectFileLocation;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate;
+import org.eclipse.intent.mapping.ide.tests.connector.ResourceConnectorTests.TestResourceLocation;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestCouple;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests.TestBase;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link EObjectFileConnectorDelegate}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EObjectFileConnectorDelegateTests {
+
+	/**
+	 * Test {@link IEObjectFileLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestEObjectFileLocation extends TestResourceLocation implements IEObjectFileLocation {
+
+		/**
+		 * The XMI content.
+		 */
+		private String xmiContent;
+
+		/**
+		 * The {@link Resource}.
+		 */
+		private Resource resource;
+
+		/**
+		 * The {@link List} of saved {@link URI} fragments.
+		 */
+		private List<ICouple> savedURIFragments = new ArrayList<ICouple>();
+
+		public void setResource(Resource resource) {
+			this.resource = resource;
+		}
+
+		public Resource getResrouce() {
+			return resource;
+		}
+
+		public String getXMIContent() {
+			return xmiContent;
+		}
+
+		public void setXMIContent(String content) {
+			this.xmiContent = content;
+		}
+
+		public List<ICouple> getSavedURIFragments() {
+			return savedURIFragments;
+		}
+
+	}
+
+	/**
+	 * The {@link EObjectFileConnectorDelegate} to test.
+	 */
+	private final EObjectFileConnectorDelegate delegate = new EObjectFileConnectorDelegate();
+
+	@BeforeClass
+	public static void beforeClass() throws CoreException, IOException {
+		final NullProgressMonitor monitor = new NullProgressMonitor();
+
+		final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("TestProject");
+		project.create(monitor);
+		project.open(monitor);
+
+		final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(
+				"TestProject/TestFolder"));
+		folder.create(true, true, monitor);
+
+		final Resource resource = new XMIResourceImpl(URI.createPlatformResourceURI(
+				"TestProject/TestFolder/TestFile.xmi", true));
+		resource.getContents().add(EcorePackage.eINSTANCE.getEcoreFactory().createEClass());
+		resource.getContents().add(EcorePackage.eINSTANCE.getEcoreFactory().createEClass());
+		resource.getContents().add(EcorePackage.eINSTANCE.getEcoreFactory().createEClass());
+		resource.save(null);
+	}
+
+	@AfterClass
+	public static void afterClass() throws CoreException {
+		final NullProgressMonitor monitor = new NullProgressMonitor();
+
+		final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("TestProject");
+		project.delete(true, monitor);
+
+		final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(
+				"TestProject/TestFolder"));
+		folder.delete(true, monitor);
+
+		final IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.xmi"));
+		file.delete(true, monitor);
+	}
+
+	@Test
+	public void getContentType() {
+		final IContentTypeManager contentTypeManager = Platform.getContentTypeManager();
+		final IContentType contentType = contentTypeManager.getContentType("org.eclipse.emf.ecore.xmi");
+		final IFileType expected = MappingUtils.getFileTypeRegistry().getFileType(contentType.getId());
+
+		assertEquals(expected, delegate.getFileType());
+	}
+
+	@Test
+	public void getFileLocationType() {
+		assertEquals(IEObjectFileLocation.class, delegate.getFileLocationType());
+	}
+
+	@Test
+	public void initLocation() {
+		final IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.xmi"));
+		final IBase base = new TestBase();
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		TestEObjectFileLocation location = new TestEObjectFileLocation();
+		location.setContainer(base);
+
+		delegate.initLocation(location.getContainer(), location, file);
+
+		assertEquals(180, location.getXMIContent().length());
+	}
+
+	@Test
+	public void registred() {
+		boolean registred = false;
+		for (IFileConnectorDelegate d : IdeMappingUtils.getFileConectorDelegateRegistry()
+				.getConnectorDelegates()) {
+			if (d instanceof EObjectFileConnectorDelegate) {
+				registred = true;
+				break;
+			}
+		}
+		assertTrue(registred);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeCDOContainerProviderTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeCDOContainerProviderTests.java
new file mode 100644
index 0000000..44ca358
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeCDOContainerProviderTests.java
@@ -0,0 +1,36 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.connector;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+import org.eclipse.intent.mapping.emf.connector.CDOContainerProvider;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOContainerProviderTests;
+import org.junit.Test;
+
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link CDOContainerProvider} in Ide environment.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeCDOContainerProviderTests extends CDOContainerProviderTests {
+
+	@Test
+	public void isRegistered() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final IContainerProvider provider = MappingUtils.getContainerProviderFactory().createProvider(
+				CDOContainerProvider.class.getCanonicalName());
+		assertTrue(provider instanceof CDOContainerProvider);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeCDOResourceNodeConnectorTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeCDOResourceNodeConnectorTests.java
new file mode 100644
index 0000000..2745519
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeCDOResourceNodeConnectorTests.java
@@ -0,0 +1,48 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.connector;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.emf.ICDOResourceNodeLocation;
+import org.eclipse.intent.mapping.emf.connector.CDOResourceNodeConnector;
+import org.eclipse.intent.mapping.emf.ide.connector.IdeCDOResourceNodeConnector;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link IdeCDOResourceNodeConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeCDOResourceNodeConnectorTests extends CDOResourceNodeConnectorTests {
+
+	@BeforeClass
+	public static void beforeClass() throws Exception {
+		CDOResourceNodeConnectorTests.beforeClass();
+	}
+
+	@AfterClass
+	public static void afterClass() throws Exception {
+		CDOResourceNodeConnectorTests.afterClass();
+	}
+
+	@Test
+	public void isRegistred() {
+		assertTrue(MappingUtils.getConnectorRegistry().getConnector(
+				ICDOResourceNodeLocation.class) instanceof CDOResourceNodeConnector);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeCDOViewConnectorTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeCDOViewConnectorTests.java
new file mode 100644
index 0000000..1970c60
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeCDOViewConnectorTests.java
@@ -0,0 +1,48 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.connector;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.emf.ICDORepositoryLocation;
+import org.eclipse.intent.mapping.emf.connector.CDOViewConnector;
+import org.eclipse.intent.mapping.emf.ide.connector.IdeCDOViewConnector;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOViewConnectorTests;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link IdeCDOViewConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeCDOViewConnectorTests extends CDOViewConnectorTests {
+
+	@BeforeClass
+	public static void beforeClass() {
+		CDOViewConnectorTests.beforeClass();
+	}
+
+	@AfterClass
+	public static void afterClass() {
+		CDOViewConnectorTests.afterClass();
+	}
+
+	@Test
+	public void isRegistred() {
+		assertTrue(MappingUtils.getConnectorRegistry().getConnector(
+				ICDORepositoryLocation.class) instanceof CDOViewConnector);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorCDOTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorCDOTests.java
new file mode 100644
index 0000000..fa7a93b
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorCDOTests.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.connector;
+
+import org.eclipse.intent.mapping.emf.ide.connector.IdeEObjectConnector;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorCDOTests;
+
+/**
+ * Tests {@link IdeEObjectConnector} with CDO.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeEObjectConnectorCDOTests extends EObjectConnectorCDOTests {
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorParametrizedCDOTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorParametrizedCDOTests.java
new file mode 100644
index 0000000..4eed57c
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorParametrizedCDOTests.java
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.connector;
+
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorParametrizedCDOTests;
+
+/**
+ * Tests {@link org.eclipse.intent.mapping.emf.ide.connector.IdeEObjectConnector IdeEObjectConnector} with
+ * CDO.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeEObjectConnectorParametrizedCDOTests extends EObjectConnectorParametrizedCDOTests {
+
+	public IdeEObjectConnectorParametrizedCDOTests(Object[] original, Object[] altered) {
+		super(original, altered);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorParametrizedTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorParametrizedTests.java
new file mode 100644
index 0000000..807fc78
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorParametrizedTests.java
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.connector;
+
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorParametrizedTests;
+
+/**
+ * Tests {@link org.eclipse.intent.mapping.emf.ide.connector.IdeEObjectConnector IdeEObjectConnector}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeEObjectConnectorParametrizedTests extends EObjectConnectorParametrizedTests {
+
+	public IdeEObjectConnectorParametrizedTests(Object[] original, Object[] altered) {
+		super(original, altered);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorTests.java
new file mode 100644
index 0000000..e6164fb
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/connector/IdeEObjectConnectorTests.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.connector;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.emf.IEObjectLocation;
+import org.eclipse.intent.mapping.emf.ide.connector.IdeEObjectConnector;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorTests;
+import org.junit.Test;
+
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link IdeEObjectConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeEObjectConnectorTests extends EObjectConnectorTests {
+
+	@Test
+	public void isRegistred() {
+		assertTrue(MappingUtils.getConnectorRegistry().getConnector(
+				IEObjectLocation.class) instanceof IdeEObjectConnector);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/AbstractEObjectFileLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/AbstractEObjectFileLocationTests.java
new file mode 100644
index 0000000..fbb55c5
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/AbstractEObjectFileLocationTests.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.resource;
+
+import org.eclipse.intent.mapping.emf.ide.resource.IEObjectFileLocation;
+import org.eclipse.intent.mapping.ide.tests.resource.AbstractResourceLocationTests;
+
+/**
+ * Tests for {@link IEObjectFileLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractEObjectFileLocationTests extends AbstractResourceLocationTests {
+
+	protected IEObjectFileLocation createLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(IEObjectFileLocation.class);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/EMFEObjectFileLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/EMFEObjectFileLocationTests.java
new file mode 100644
index 0000000..55fa6b0
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/EMFEObjectFileLocationTests.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.resource;
+
+import org.eclipse.intent.mapping.emf.tests.base.Factory;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * Tests {@link org.eclipse.intent.mapping.ide.EObjectFileLocation EObjectFileLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFEObjectFileLocationTests extends AbstractEObjectFileLocationTests {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/EMFResourceLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/EMFResourceLocationTests.java
new file mode 100644
index 0000000..78b7a5c
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/EMFResourceLocationTests.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.resource;
+
+import org.eclipse.intent.mapping.emf.tests.base.Factory;
+import org.eclipse.intent.mapping.ide.tests.resource.AbstractResourceLocationTests;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * Tests {@link org.eclipse.intent.mapping.ide.ResourceLocation ResourceLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFResourceLocationTests extends AbstractResourceLocationTests {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/EMFTextFileLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/EMFTextFileLocationTests.java
new file mode 100644
index 0000000..cdaf107
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.ide.tests/src/org/eclipse/intent/mapping/emf/ide/tests/resource/EMFTextFileLocationTests.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.ide.tests.resource;
+
+import org.eclipse.intent.mapping.emf.tests.base.Factory;
+import org.eclipse.intent.mapping.ide.tests.resource.AbstractTextFileLocationTests;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * Tests {@link org.eclipse.intent.mapping.ide.TextFileLocation TextFileLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFTextFileLocationTests extends AbstractTextFileLocationTests {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/.checkstyle b/mapping/tests/org.eclipse.intent.mapping.emf.tests/.checkstyle
new file mode 100644
index 0000000..d1b4112
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/.checkstyle
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter Tests" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6ConfigurationTests.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter Tests" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+  <filter name="FilesFromPackage" enabled="true">
+    <filter-data value="src-gen"/>
+  </filter>
+</fileset-config>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/.classpath b/mapping/tests/org.eclipse.intent.mapping.emf.tests/.classpath
new file mode 100644
index 0000000..756f428
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src-gen"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/.project b/mapping/tests/org.eclipse.intent.mapping.emf.tests/.project
new file mode 100644
index 0000000..d8cf9d9
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.emf.tests</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/.settings/org.eclipse.jdt.core.prefs b/mapping/tests/org.eclipse.intent.mapping.emf.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3433b02
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,315 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/.settings/org.eclipse.jdt.ui.prefs b/mapping/tests/org.eclipse.intent.mapping.emf.tests/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..feaf373
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=anydsl;com;eu;fr;java;javax;org;\#org.junit;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/META-INF/MANIFEST.MF b/mapping/tests/org.eclipse.intent.mapping.emf.tests/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..c99ba2a
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,28 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.intent.mapping.emf.tests;singleton:=true
+Bundle-Version: 0.10.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.intent.mapping.emf;bundle-version="0.10.0";visibility:=reexport,
+ org.eclipse.intent.mapping.tests;bundle-version="0.10.0",
+ org.junit;bundle-version="4.0.0",
+ org.eclipse.intent.mapping,
+ org.eclipse.emf.ecore.xmi,
+ org.eclipse.emf.cdo.server,
+ org.eclipse.net4j,
+ org.eclipse.net4j.tcp,
+ org.eclipse.emf.cdo.server.net4j,
+ org.eclipse.emf.cdo.net4j
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.intent.mapping.emf.tests,
+ org.eclipse.intent.mapping.emf.tests.base,
+ org.eclipse.intent.mapping.emf.tests.connector,
+ anydsl,
+ anydsl.impl,
+ anydsl.util
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/build.properties b/mapping/tests/org.eclipse.intent.mapping.emf.tests/build.properties
new file mode 100644
index 0000000..7f0c2ff
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/build.properties
@@ -0,0 +1,11 @@
+#
+
+bin.includes = .,\
+               model/,\
+               META-INF/,\
+               plugin.xml,\
+               plugin.properties
+jars.compile.order = .
+source.. = src-gen/,\
+           src/
+output.. = bin/
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/model/anydsl.ecore b/mapping/tests/org.eclipse.intent.mapping.emf.tests/model/anydsl.ecore
new file mode 100644
index 0000000..ad60384
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/model/anydsl.ecore
@@ -0,0 +1,167 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="anydsl" nsURI="http://www.eclipse.org/acceleo/anydsl" nsPrefix="anydsl">
+  <eClassifiers xsi:type="ecore:EClass" name="World">
+    <eAnnotations source="http://www.obeo.fr/dsl/dnc/archetype">
+      <details key="archetype" value="MomentInterval"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="companies" upperBound="-1"
+        eType="#//Company" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="foods" upperBound="-1"
+        eType="#//Food" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="sources" upperBound="-1"
+        eType="#//Source" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="MultiNamedElement" abstract="true" interface="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" upperBound="-1" eType="#//SingleString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="NamedElement" abstract="true" interface="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="#//SingleString"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Producer" eSuperTypes="#//NamedElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="adress" eType="#//Adress"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="company" eType="#//Company"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="foods" upperBound="-1"
+        eType="#//Food" eOpposite="#//Food/producers"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Adress">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="zipCode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="city" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="country" eType="#//CountryData"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Company" abstract="true" interface="true"
+      eSuperTypes="#//NamedElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="adress" eType="#//Adress"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="world" eType="#//World"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ProductionCompany" eSuperTypes="#//Company">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="producers" upperBound="-1"
+        eType="#//Producer" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Restaurant" eSuperTypes="#//Company">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="chefs" upperBound="-1"
+        eType="#//Chef" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="menu" upperBound="-1" eType="#//EStringToRecipeMap"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Chef" eSuperTypes="#//NamedElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="adress" eType="#//Adress"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="recipes" upperBound="-1"
+        eType="#//Recipe" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Recipe" eSuperTypes="#//NamedElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ingredients" upperBound="-1"
+        eType="#//Food"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Food" eSuperTypes="#//NamedElement">
+    <eOperations name="ripen" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
+      <eParameters name="color" eType="#//Color"/>
+    </eOperations>
+    <eOperations name="preferredColor" eType="#//Color"/>
+    <eOperations name="newFood" eType="#//Food"/>
+    <eOperations name="setColor">
+      <eParameters name="food" eType="#//Food"/>
+      <eParameters name="newColor" eType="#//Color"/>
+    </eOperations>
+    <eOperations name="setCaliber">
+      <eParameters name="food" eType="#//Food"/>
+      <eParameters name="newCaliber" upperBound="-1" eType="#//Caliber"/>
+    </eOperations>
+    <eOperations name="acceptedCaliber" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
+      <eParameters name="caliber" eType="#//Caliber"/>
+    </eOperations>
+    <eOperations name="label">
+      <eParameters name="text" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    </eOperations>
+    <eOperations name="preferredLabel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+      <eParameters name="text" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    </eOperations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="color" upperBound="-1"
+        eType="#//Color"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="caliber" eType="#//Caliber"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="relatedFoods" upperBound="-1"
+        eType="#//Food"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="group" eType="#//Group"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="source" eType="#//Source"
+        eOpposite="#//Source/foods"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="producers" upperBound="-1"
+        eType="#//Producer" eOpposite="#//Producer/foods"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Source" abstract="true" interface="true"
+      eSuperTypes="#//MultiNamedElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="foods" upperBound="-1"
+        eType="#//Food" eOpposite="#//Food/source"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="origin" upperBound="-1"
+        eType="#//CountryData"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Plant" eSuperTypes="#//Source">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//Kind"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Animal" eSuperTypes="#//Source">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="part" upperBound="-1" eType="#//Part"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="Color">
+    <eLiterals name="black"/>
+    <eLiterals name="red" value="1"/>
+    <eLiterals name="green" value="2"/>
+    <eLiterals name="yellow" value="3"/>
+    <eLiterals name="orange" value="4"/>
+    <eLiterals name="brown" value="5"/>
+    <eLiterals name="pink" value="6"/>
+    <eLiterals name="palPink" value="7" literal="palPink"/>
+    <eLiterals name="veryYellow" value="8"/>
+    <eLiterals name="white" value="9"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="Caliber">
+    <eLiterals name="S"/>
+    <eLiterals name="M" value="1"/>
+    <eLiterals name="L" value="2"/>
+    <eLiterals name="XL" value="3"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="Group">
+    <eLiterals name="Water"/>
+    <eLiterals name="Dairy" value="1"/>
+    <eLiterals name="Fruit" value="2"/>
+    <eLiterals name="Grain" value="3"/>
+    <eLiterals name="Protein" value="4"/>
+    <eLiterals name="Sweet" value="5"/>
+    <eLiterals name="Vegetable" value="6"/>
+    <eLiterals name="Alcohol" value="7"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="Continent">
+    <eLiterals name="Europe"/>
+    <eLiterals name="Asia" value="1"/>
+    <eLiterals name="Africa" value="2"/>
+    <eLiterals name="America" value="3"/>
+    <eLiterals name="Australia" value="4"/>
+    <eLiterals name="Antarctica" value="5"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="Kind">
+    <eLiterals name="Other"/>
+    <eLiterals name="Seed" value="1"/>
+    <eLiterals name="Oilseed" value="2"/>
+    <eLiterals name="Tree" value="3"/>
+    <eLiterals name="Root" value="4"/>
+    <eLiterals name="Bulb" value="5"/>
+    <eLiterals name="Leaf" value="6"/>
+    <eLiterals name="Stem" value="7"/>
+    <eLiterals name="Flower" value="8"/>
+    <eLiterals name="Inflorescence" value="9"/>
+    <eLiterals name="Spice" value="10"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="Part">
+    <eLiterals name="Other"/>
+    <eLiterals name="Muscle" value="1"/>
+    <eLiterals name="Organ" value="2"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EDataType" name="CountryData" instanceClassName="anydsl.Country"/>
+  <eClassifiers xsi:type="ecore:EDataType" name="SingleString" instanceClassName="java.lang.String"/>
+  <eClassifiers xsi:type="ecore:EClass" name="EStringToRecipeMap" instanceClassName="java.util.Map$Entry">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//Recipe"/>
+  </eClassifiers>
+</ecore:EPackage>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/model/anydsl.genmodel b/mapping/tests/org.eclipse.intent.mapping.emf.tests/model/anydsl.genmodel
new file mode 100644
index 0000000..5739b99
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/model/anydsl.genmodel
@@ -0,0 +1,153 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.intent.mapping.emf.tests/src-gen"
+    editDirectory="/org.eclipse.intent.mapping.emf.tests.edit/src-gen"
+    editorDirectory="/org.eclipse.intent.mapping.emf.tests.editor/src-gen"
+    modelPluginID="org.eclipse.intent.mapping.emf.tests" modelName="Anydsl"
+    rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" testsDirectory="/org.eclipse.intent.mapping.emf.tests.tests/src-gen"
+    importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" copyrightFields="false"
+    operationReflection="true" importOrganizing="true">
+  <foreignModel>anydsl.ecore</foreignModel>
+  <genPackages prefix="Anydsl" disposableProviderFactory="true" ecorePackage="anydsl.ecore#/">
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="anydsl.ecore#//Color">
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Color/black"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Color/red"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Color/green"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Color/yellow"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Color/orange"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Color/brown"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Color/pink"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Color/palPink"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Color/veryYellow"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Color/white"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="anydsl.ecore#//Caliber">
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Caliber/S"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Caliber/M"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Caliber/L"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Caliber/XL"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="anydsl.ecore#//Group">
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Group/Water"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Group/Dairy"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Group/Fruit"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Group/Grain"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Group/Protein"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Group/Sweet"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Group/Vegetable"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Group/Alcohol"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="anydsl.ecore#//Continent">
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Continent/Europe"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Continent/Asia"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Continent/Africa"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Continent/America"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Continent/Australia"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Continent/Antarctica"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="anydsl.ecore#//Kind">
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Kind/Other"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Kind/Seed"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Kind/Oilseed"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Kind/Tree"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Kind/Root"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Kind/Bulb"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Kind/Leaf"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Kind/Stem"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Kind/Flower"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Kind/Inflorescence"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Kind/Spice"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="anydsl.ecore#//Part">
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Part/Other"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Part/Muscle"/>
+      <genEnumLiterals ecoreEnumLiteral="anydsl.ecore#//Part/Organ"/>
+    </genEnums>
+    <genDataTypes ecoreDataType="anydsl.ecore#//CountryData"/>
+    <genDataTypes ecoreDataType="anydsl.ecore#//SingleString"/>
+    <genClasses ecoreClass="anydsl.ecore#//World">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference anydsl.ecore#//World/companies"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference anydsl.ecore#//World/foods"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference anydsl.ecore#//World/sources"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="anydsl.ecore#//MultiNamedElement">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//MultiNamedElement/name"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="anydsl.ecore#//NamedElement">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//NamedElement/name"/>
+    </genClasses>
+    <genClasses ecoreClass="anydsl.ecore#//Producer">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference anydsl.ecore#//Producer/adress"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference anydsl.ecore#//Producer/company"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference anydsl.ecore#//Producer/foods"/>
+    </genClasses>
+    <genClasses ecoreClass="anydsl.ecore#//Adress">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//Adress/zipCode"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//Adress/city"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//Adress/country"/>
+    </genClasses>
+    <genClasses image="false" ecoreClass="anydsl.ecore#//Company">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference anydsl.ecore#//Company/adress"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference anydsl.ecore#//Company/world"/>
+    </genClasses>
+    <genClasses ecoreClass="anydsl.ecore#//ProductionCompany">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference anydsl.ecore#//ProductionCompany/producers"/>
+    </genClasses>
+    <genClasses ecoreClass="anydsl.ecore#//Restaurant">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference anydsl.ecore#//Restaurant/chefs"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference anydsl.ecore#//Restaurant/menu"/>
+    </genClasses>
+    <genClasses ecoreClass="anydsl.ecore#//Chef">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference anydsl.ecore#//Chef/adress"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference anydsl.ecore#//Chef/recipes"/>
+    </genClasses>
+    <genClasses ecoreClass="anydsl.ecore#//Recipe">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference anydsl.ecore#//Recipe/ingredients"/>
+    </genClasses>
+    <genClasses ecoreClass="anydsl.ecore#//Food">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//Food/color"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//Food/caliber"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference anydsl.ecore#//Food/relatedFoods"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//Food/group"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//Food/label.1"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference anydsl.ecore#//Food/source"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference anydsl.ecore#//Food/producers"/>
+      <genOperations ecoreOperation="anydsl.ecore#//Food/ripen">
+        <genParameters ecoreParameter="anydsl.ecore#//Food/ripen/color"/>
+      </genOperations>
+      <genOperations ecoreOperation="anydsl.ecore#//Food/preferredColor"/>
+      <genOperations ecoreOperation="anydsl.ecore#//Food/newFood"/>
+      <genOperations ecoreOperation="anydsl.ecore#//Food/setColor">
+        <genParameters ecoreParameter="anydsl.ecore#//Food/setColor/food"/>
+        <genParameters ecoreParameter="anydsl.ecore#//Food/setColor/newColor"/>
+      </genOperations>
+      <genOperations ecoreOperation="anydsl.ecore#//Food/setCaliber">
+        <genParameters ecoreParameter="anydsl.ecore#//Food/setCaliber/food"/>
+        <genParameters ecoreParameter="anydsl.ecore#//Food/setCaliber/newCaliber"/>
+      </genOperations>
+      <genOperations ecoreOperation="anydsl.ecore#//Food/acceptedCaliber">
+        <genParameters ecoreParameter="anydsl.ecore#//Food/acceptedCaliber/caliber"/>
+      </genOperations>
+      <genOperations ecoreOperation="anydsl.ecore#//Food/label">
+        <genParameters ecoreParameter="anydsl.ecore#//Food/label/text"/>
+      </genOperations>
+      <genOperations ecoreOperation="anydsl.ecore#//Food/preferredLabel">
+        <genParameters ecoreParameter="anydsl.ecore#//Food/preferredLabel/text"/>
+      </genOperations>
+    </genClasses>
+    <genClasses image="false" ecoreClass="anydsl.ecore#//Source">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference anydsl.ecore#//Source/foods"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//Source/origin"/>
+    </genClasses>
+    <genClasses ecoreClass="anydsl.ecore#//Plant">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//Plant/kind"/>
+    </genClasses>
+    <genClasses ecoreClass="anydsl.ecore#//Animal">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//Animal/part"/>
+    </genClasses>
+    <genClasses ecoreClass="anydsl.ecore#//EStringToRecipeMap">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute anydsl.ecore#//EStringToRecipeMap/key"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference anydsl.ecore#//EStringToRecipeMap/value"/>
+    </genClasses>
+  </genPackages>
+</genmodel:GenModel>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/org.eclipse.intent.mapping.emf.tests.launch b/mapping/tests/org.eclipse.intent.mapping.emf.tests/org.eclipse.intent.mapping.emf.tests.launch
new file mode 100644
index 0000000..3687611
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/org.eclipse.intent.mapping.emf.tests.launch
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
+<listAttribute key="com.mountainminds.eclemma.core.SCOPE_IDS">
+<listEntry value="=org.eclipse.intent.mapping.emf/src"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/mylyn/docs/intent/mapping/emf/tests/AllTests.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+<listEntry value="com.mountainminds.eclemma.ui.launchGroup.coverage"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.intent.mapping.emf.tests.AllTests"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.intent.mapping.emf.tests"/>
+</launchConfiguration>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/plugin.properties b/mapping/tests/org.eclipse.intent.mapping.emf.tests/plugin.properties
new file mode 100644
index 0000000..eb89588
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/plugin.properties
@@ -0,0 +1,13 @@
+#  Copyright (c) 2015 Obeo.
+#  All rights reserved. This program and the accompanying materials
+#  are made available under the terms of the Eclipse Public License v1.0
+#  which accompanies this distribution, and is available at
+#  http://www.eclipse.org/legal/epl-v10.html
+# 
+#  Contributors:
+#     Obeo - initial API and implementation and/or initial documentation
+#     ...
+# 
+
+pluginName = EMF Mapping Test Model
+providerName = Obeo
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/plugin.xml b/mapping/tests/org.eclipse.intent.mapping.emf.tests/plugin.xml
new file mode 100644
index 0000000..360acd7
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/plugin.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+-->
+
+<plugin>
+
+   <extension point="org.eclipse.emf.ecore.generated_package">
+      <!-- @generated anydsl -->
+      <package
+            uri="http://www.eclipse.org/acceleo/anydsl"
+            class="anydsl.AnydslPackage"
+            genModel="model/anydsl.genmodel"/>
+   </extension>
+
+</plugin>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/pom.xml b/mapping/tests/org.eclipse.intent.mapping.emf.tests/pom.xml
new file mode 100644
index 0000000..ec43a5e
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/pom.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping.emf.tests</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <name>Mapping EMF Tests</name>
+
+  <packaging>eclipse-test-plugin</packaging>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-surefire-plugin</artifactId>
+        <version>${tycho-version}</version>
+        <configuration>
+          <includes>
+            <include>**/AllTests.class</include>
+          </includes>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Adress.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Adress.java
new file mode 100644
index 0000000..bd1e853
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Adress.java
@@ -0,0 +1,105 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Adress</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.Adress#getZipCode <em>Zip Code</em>}</li>
+ * <li>{@link anydsl.Adress#getCity <em>City</em>}</li>
+ * <li>{@link anydsl.Adress#getCountry <em>Country</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getAdress()
+ * @model
+ * @generated
+ */
+public interface Adress extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Zip Code</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Zip Code</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Zip Code</em>' attribute.
+	 * @see #setZipCode(String)
+	 * @see anydsl.AnydslPackage#getAdress_ZipCode()
+	 * @model
+	 * @generated
+	 */
+	String getZipCode();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Adress#getZipCode <em>Zip Code</em>}' attribute. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Zip Code</em>' attribute.
+	 * @see #getZipCode()
+	 * @generated
+	 */
+	void setZipCode(String value);
+
+	/**
+	 * Returns the value of the '<em><b>City</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>City</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>City</em>' attribute.
+	 * @see #setCity(String)
+	 * @see anydsl.AnydslPackage#getAdress_City()
+	 * @model
+	 * @generated
+	 */
+	String getCity();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Adress#getCity <em>City</em>}' attribute. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>City</em>' attribute.
+	 * @see #getCity()
+	 * @generated
+	 */
+	void setCity(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Country</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Country</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Country</em>' attribute.
+	 * @see #setCountry(anydsl.Country)
+	 * @see anydsl.AnydslPackage#getAdress_Country()
+	 * @model dataType="anydsl.CountryData"
+	 * @generated
+	 */
+	anydsl.Country getCountry();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Adress#getCountry <em>Country</em>}' attribute. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Country</em>' attribute.
+	 * @see #getCountry()
+	 * @generated
+	 */
+	void setCountry(anydsl.Country value);
+
+} // Adress
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Animal.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Animal.java
new file mode 100644
index 0000000..48c0754
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Animal.java
@@ -0,0 +1,39 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Animal</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.Animal#getPart <em>Part</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getAnimal()
+ * @model
+ * @generated
+ */
+public interface Animal extends Source {
+	/**
+	 * Returns the value of the '<em><b>Part</b></em>' attribute list. The list contents are of type
+	 * {@link anydsl.Part}. The literals are from the enumeration {@link anydsl.Part}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Part</em>' attribute list isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Part</em>' attribute list.
+	 * @see anydsl.Part
+	 * @see anydsl.AnydslPackage#getAnimal_Part()
+	 * @model
+	 * @generated
+	 */
+	EList<Part> getPart();
+
+} // Animal
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/AnydslFactory.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/AnydslFactory.java
new file mode 100644
index 0000000..da14594
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/AnydslFactory.java
@@ -0,0 +1,111 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc --> The <b>Factory</b> for the model. It provides a create method for each non-abstract
+ * class of the model. <!-- end-user-doc -->
+ * 
+ * @see anydsl.AnydslPackage
+ * @generated
+ */
+public interface AnydslFactory extends EFactory {
+	/**
+	 * The singleton instance of the factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	AnydslFactory eINSTANCE = anydsl.impl.AnydslFactoryImpl.init();
+
+	/**
+	 * Returns a new object of class '<em>World</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>World</em>'.
+	 * @generated
+	 */
+	World createWorld();
+
+	/**
+	 * Returns a new object of class '<em>Producer</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Producer</em>'.
+	 * @generated
+	 */
+	Producer createProducer();
+
+	/**
+	 * Returns a new object of class '<em>Adress</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Adress</em>'.
+	 * @generated
+	 */
+	Adress createAdress();
+
+	/**
+	 * Returns a new object of class '<em>Production Company</em>'. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @return a new object of class '<em>Production Company</em>'.
+	 * @generated
+	 */
+	ProductionCompany createProductionCompany();
+
+	/**
+	 * Returns a new object of class '<em>Restaurant</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Restaurant</em>'.
+	 * @generated
+	 */
+	Restaurant createRestaurant();
+
+	/**
+	 * Returns a new object of class '<em>Chef</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Chef</em>'.
+	 * @generated
+	 */
+	Chef createChef();
+
+	/**
+	 * Returns a new object of class '<em>Recipe</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Recipe</em>'.
+	 * @generated
+	 */
+	Recipe createRecipe();
+
+	/**
+	 * Returns a new object of class '<em>Food</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Food</em>'.
+	 * @generated
+	 */
+	Food createFood();
+
+	/**
+	 * Returns a new object of class '<em>Plant</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Plant</em>'.
+	 * @generated
+	 */
+	Plant createPlant();
+
+	/**
+	 * Returns a new object of class '<em>Animal</em>'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Animal</em>'.
+	 * @generated
+	 */
+	Animal createAnimal();
+
+	/**
+	 * Returns the package supported by this factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the package supported by this factory.
+	 * @generated
+	 */
+	AnydslPackage getAnydslPackage();
+
+} // AnydslFactory
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/AnydslPackage.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/AnydslPackage.java
new file mode 100644
index 0000000..e41ddea
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/AnydslPackage.java
@@ -0,0 +1,2291 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc --> The <b>Package</b> for the model. It contains accessors for the meta objects to
+ * represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * 
+ * @see anydsl.AnydslFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface AnydslPackage extends EPackage {
+	/**
+	 * The package name. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNAME = "anydsl";
+
+	/**
+	 * The package namespace URI. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNS_URI = "http://www.eclipse.org/acceleo/anydsl";
+
+	/**
+	 * The package namespace name. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNS_PREFIX = "anydsl";
+
+	/**
+	 * The singleton instance of the package. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	AnydslPackage eINSTANCE = anydsl.impl.AnydslPackageImpl.init();
+
+	/**
+	 * The meta object id for the '{@link anydsl.impl.WorldImpl <em>World</em>}' class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.impl.WorldImpl
+	 * @see anydsl.impl.AnydslPackageImpl#getWorld()
+	 * @generated
+	 */
+	int WORLD = 0;
+
+	/**
+	 * The feature id for the '<em><b>Companies</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int WORLD__COMPANIES = 0;
+
+	/**
+	 * The feature id for the '<em><b>Foods</b></em>' containment reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int WORLD__FOODS = 1;
+
+	/**
+	 * The feature id for the '<em><b>Sources</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int WORLD__SOURCES = 2;
+
+	/**
+	 * The number of structural features of the '<em>World</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int WORLD_FEATURE_COUNT = 3;
+
+	/**
+	 * The number of operations of the '<em>World</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int WORLD_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.MultiNamedElement <em>Multi Named Element</em>}' class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.MultiNamedElement
+	 * @see anydsl.impl.AnydslPackageImpl#getMultiNamedElement()
+	 * @generated
+	 */
+	int MULTI_NAMED_ELEMENT = 1;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute list. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int MULTI_NAMED_ELEMENT__NAME = 0;
+
+	/**
+	 * The number of structural features of the '<em>Multi Named Element</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int MULTI_NAMED_ELEMENT_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Multi Named Element</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int MULTI_NAMED_ELEMENT_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.NamedElement <em>Named Element</em>}' class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.NamedElement
+	 * @see anydsl.impl.AnydslPackageImpl#getNamedElement()
+	 * @generated
+	 */
+	int NAMED_ELEMENT = 2;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int NAMED_ELEMENT__NAME = 0;
+
+	/**
+	 * The number of structural features of the '<em>Named Element</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int NAMED_ELEMENT_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Named Element</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int NAMED_ELEMENT_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.impl.ProducerImpl <em>Producer</em>}' class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.impl.ProducerImpl
+	 * @see anydsl.impl.AnydslPackageImpl#getProducer()
+	 * @generated
+	 */
+	int PRODUCER = 3;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCER__NAME = NAMED_ELEMENT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Adress</b></em>' containment reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCER__ADRESS = NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Company</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCER__COMPANY = NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Foods</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCER__FOODS = NAMED_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of structural features of the '<em>Producer</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCER_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of operations of the '<em>Producer</em>' class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCER_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.impl.AdressImpl <em>Adress</em>}' class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.impl.AdressImpl
+	 * @see anydsl.impl.AnydslPackageImpl#getAdress()
+	 * @generated
+	 */
+	int ADRESS = 4;
+
+	/**
+	 * The feature id for the '<em><b>Zip Code</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ADRESS__ZIP_CODE = 0;
+
+	/**
+	 * The feature id for the '<em><b>City</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ADRESS__CITY = 1;
+
+	/**
+	 * The feature id for the '<em><b>Country</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ADRESS__COUNTRY = 2;
+
+	/**
+	 * The number of structural features of the '<em>Adress</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ADRESS_FEATURE_COUNT = 3;
+
+	/**
+	 * The number of operations of the '<em>Adress</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ADRESS_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.Company <em>Company</em>}' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.Company
+	 * @see anydsl.impl.AnydslPackageImpl#getCompany()
+	 * @generated
+	 */
+	int COMPANY = 5;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int COMPANY__NAME = NAMED_ELEMENT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Adress</b></em>' containment reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int COMPANY__ADRESS = NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>World</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int COMPANY__WORLD = NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Company</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int COMPANY_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Company</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int COMPANY_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.impl.ProductionCompanyImpl <em>Production Company</em>}'
+	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.impl.ProductionCompanyImpl
+	 * @see anydsl.impl.AnydslPackageImpl#getProductionCompany()
+	 * @generated
+	 */
+	int PRODUCTION_COMPANY = 6;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCTION_COMPANY__NAME = COMPANY__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Adress</b></em>' containment reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCTION_COMPANY__ADRESS = COMPANY__ADRESS;
+
+	/**
+	 * The feature id for the '<em><b>World</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCTION_COMPANY__WORLD = COMPANY__WORLD;
+
+	/**
+	 * The feature id for the '<em><b>Producers</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCTION_COMPANY__PRODUCERS = COMPANY_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Production Company</em>' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCTION_COMPANY_FEATURE_COUNT = COMPANY_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Production Company</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PRODUCTION_COMPANY_OPERATION_COUNT = COMPANY_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.impl.RestaurantImpl <em>Restaurant</em>}' class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.impl.RestaurantImpl
+	 * @see anydsl.impl.AnydslPackageImpl#getRestaurant()
+	 * @generated
+	 */
+	int RESTAURANT = 7;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESTAURANT__NAME = COMPANY__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Adress</b></em>' containment reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESTAURANT__ADRESS = COMPANY__ADRESS;
+
+	/**
+	 * The feature id for the '<em><b>World</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESTAURANT__WORLD = COMPANY__WORLD;
+
+	/**
+	 * The feature id for the '<em><b>Chefs</b></em>' containment reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESTAURANT__CHEFS = COMPANY_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Menu</b></em>' map. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESTAURANT__MENU = COMPANY_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Restaurant</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESTAURANT_FEATURE_COUNT = COMPANY_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Restaurant</em>' class. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RESTAURANT_OPERATION_COUNT = COMPANY_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.impl.ChefImpl <em>Chef</em>}' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.impl.ChefImpl
+	 * @see anydsl.impl.AnydslPackageImpl#getChef()
+	 * @generated
+	 */
+	int CHEF = 8;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CHEF__NAME = NAMED_ELEMENT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Adress</b></em>' containment reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CHEF__ADRESS = NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Recipes</b></em>' containment reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CHEF__RECIPES = NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Chef</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CHEF_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Chef</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CHEF_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.impl.RecipeImpl <em>Recipe</em>}' class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.impl.RecipeImpl
+	 * @see anydsl.impl.AnydslPackageImpl#getRecipe()
+	 * @generated
+	 */
+	int RECIPE = 9;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RECIPE__NAME = NAMED_ELEMENT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Ingredients</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RECIPE__INGREDIENTS = NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Recipe</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RECIPE_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Recipe</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RECIPE_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.impl.FoodImpl <em>Food</em>}' class. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.impl.FoodImpl
+	 * @see anydsl.impl.AnydslPackageImpl#getFood()
+	 * @generated
+	 */
+	int FOOD = 10;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD__NAME = NAMED_ELEMENT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Color</b></em>' attribute list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD__COLOR = NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Caliber</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD__CALIBER = NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Related Foods</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD__RELATED_FOODS = NAMED_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Group</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD__GROUP = NAMED_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD__LABEL = NAMED_ELEMENT_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Source</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD__SOURCE = NAMED_ELEMENT_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Producers</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD__PRODUCERS = NAMED_ELEMENT_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of structural features of the '<em>Food</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 7;
+
+	/**
+	 * The operation id for the '<em>Ripen</em>' operation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD___RIPEN__COLOR = NAMED_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The operation id for the '<em>Preferred Color</em>' operation. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD___PREFERRED_COLOR = NAMED_ELEMENT_OPERATION_COUNT + 1;
+
+	/**
+	 * The operation id for the '<em>New Food</em>' operation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD___NEW_FOOD = NAMED_ELEMENT_OPERATION_COUNT + 2;
+
+	/**
+	 * The operation id for the '<em>Set Color</em>' operation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD___SET_COLOR__FOOD_COLOR = NAMED_ELEMENT_OPERATION_COUNT + 3;
+
+	/**
+	 * The operation id for the '<em>Set Caliber</em>' operation. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD___SET_CALIBER__FOOD_ELIST = NAMED_ELEMENT_OPERATION_COUNT + 4;
+
+	/**
+	 * The operation id for the '<em>Accepted Caliber</em>' operation. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD___ACCEPTED_CALIBER__CALIBER = NAMED_ELEMENT_OPERATION_COUNT + 5;
+
+	/**
+	 * The operation id for the '<em>Label</em>' operation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD___LABEL__STRING = NAMED_ELEMENT_OPERATION_COUNT + 6;
+
+	/**
+	 * The operation id for the '<em>Preferred Label</em>' operation. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD___PREFERRED_LABEL__STRING = NAMED_ELEMENT_OPERATION_COUNT + 7;
+
+	/**
+	 * The number of operations of the '<em>Food</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FOOD_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 8;
+
+	/**
+	 * The meta object id for the '{@link anydsl.Source <em>Source</em>}' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see anydsl.Source
+	 * @see anydsl.impl.AnydslPackageImpl#getSource()
+	 * @generated
+	 */
+	int SOURCE = 11;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute list. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SOURCE__NAME = MULTI_NAMED_ELEMENT__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Foods</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SOURCE__FOODS = MULTI_NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Origin</b></em>' attribute list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SOURCE__ORIGIN = MULTI_NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Source</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SOURCE_FEATURE_COUNT = MULTI_NAMED_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Source</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SOURCE_OPERATION_COUNT = MULTI_NAMED_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.impl.PlantImpl <em>Plant</em>}' class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.impl.PlantImpl
+	 * @see anydsl.impl.AnydslPackageImpl#getPlant()
+	 * @generated
+	 */
+	int PLANT = 12;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute list. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PLANT__NAME = SOURCE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Foods</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PLANT__FOODS = SOURCE__FOODS;
+
+	/**
+	 * The feature id for the '<em><b>Origin</b></em>' attribute list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PLANT__ORIGIN = SOURCE__ORIGIN;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PLANT__KIND = SOURCE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Plant</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PLANT_FEATURE_COUNT = SOURCE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Plant</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PLANT_OPERATION_COUNT = SOURCE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.impl.AnimalImpl <em>Animal</em>}' class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.impl.AnimalImpl
+	 * @see anydsl.impl.AnydslPackageImpl#getAnimal()
+	 * @generated
+	 */
+	int ANIMAL = 13;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute list. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ANIMAL__NAME = SOURCE__NAME;
+
+	/**
+	 * The feature id for the '<em><b>Foods</b></em>' reference list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ANIMAL__FOODS = SOURCE__FOODS;
+
+	/**
+	 * The feature id for the '<em><b>Origin</b></em>' attribute list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ANIMAL__ORIGIN = SOURCE__ORIGIN;
+
+	/**
+	 * The feature id for the '<em><b>Part</b></em>' attribute list. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ANIMAL__PART = SOURCE_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Animal</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ANIMAL_FEATURE_COUNT = SOURCE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Animal</em>' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ANIMAL_OPERATION_COUNT = SOURCE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.impl.EStringToRecipeMapImpl <em>EString To Recipe Map</em>}'
+	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.impl.EStringToRecipeMapImpl
+	 * @see anydsl.impl.AnydslPackageImpl#getEStringToRecipeMap()
+	 * @generated
+	 */
+	int ESTRING_TO_RECIPE_MAP = 14;
+
+	/**
+	 * The feature id for the '<em><b>Key</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ESTRING_TO_RECIPE_MAP__KEY = 0;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ESTRING_TO_RECIPE_MAP__VALUE = 1;
+
+	/**
+	 * The number of structural features of the '<em>EString To Recipe Map</em>' class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ESTRING_TO_RECIPE_MAP_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>EString To Recipe Map</em>' class. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ESTRING_TO_RECIPE_MAP_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link anydsl.Color <em>Color</em>}' enum. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see anydsl.Color
+	 * @see anydsl.impl.AnydslPackageImpl#getColor()
+	 * @generated
+	 */
+	int COLOR = 15;
+
+	/**
+	 * The meta object id for the '{@link anydsl.Caliber <em>Caliber</em>}' enum. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see anydsl.Caliber
+	 * @see anydsl.impl.AnydslPackageImpl#getCaliber()
+	 * @generated
+	 */
+	int CALIBER = 16;
+
+	/**
+	 * The meta object id for the '{@link anydsl.Group <em>Group</em>}' enum. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see anydsl.Group
+	 * @see anydsl.impl.AnydslPackageImpl#getGroup()
+	 * @generated
+	 */
+	int GROUP = 17;
+
+	/**
+	 * The meta object id for the '{@link anydsl.Continent <em>Continent</em>}' enum. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see anydsl.Continent
+	 * @see anydsl.impl.AnydslPackageImpl#getContinent()
+	 * @generated
+	 */
+	int CONTINENT = 18;
+
+	/**
+	 * The meta object id for the '{@link anydsl.Kind <em>Kind</em>}' enum. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see anydsl.Kind
+	 * @see anydsl.impl.AnydslPackageImpl#getKind()
+	 * @generated
+	 */
+	int KIND = 19;
+
+	/**
+	 * The meta object id for the '{@link anydsl.Part <em>Part</em>}' enum. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see anydsl.Part
+	 * @see anydsl.impl.AnydslPackageImpl#getPart()
+	 * @generated
+	 */
+	int PART = 20;
+
+	/**
+	 * The meta object id for the '<em>Country Data</em>' data type. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @see anydsl.Country
+	 * @see anydsl.impl.AnydslPackageImpl#getCountryData()
+	 * @generated
+	 */
+	int COUNTRY_DATA = 21;
+
+	/**
+	 * The meta object id for the '<em>Single String</em>' data type. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see java.lang.String
+	 * @see anydsl.impl.AnydslPackageImpl#getSingleString()
+	 * @generated
+	 */
+	int SINGLE_STRING = 22;
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.World <em>World</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>World</em>'.
+	 * @see anydsl.World
+	 * @generated
+	 */
+	EClass getWorld();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link anydsl.World#getCompanies
+	 * <em>Companies</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Companies</em>'.
+	 * @see anydsl.World#getCompanies()
+	 * @see #getWorld()
+	 * @generated
+	 */
+	EReference getWorld_Companies();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link anydsl.World#getFoods
+	 * <em>Foods</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Foods</em>'.
+	 * @see anydsl.World#getFoods()
+	 * @see #getWorld()
+	 * @generated
+	 */
+	EReference getWorld_Foods();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link anydsl.World#getSources
+	 * <em>Sources</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Sources</em>'.
+	 * @see anydsl.World#getSources()
+	 * @see #getWorld()
+	 * @generated
+	 */
+	EReference getWorld_Sources();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.MultiNamedElement <em>Multi Named Element</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Multi Named Element</em>'.
+	 * @see anydsl.MultiNamedElement
+	 * @generated
+	 */
+	EClass getMultiNamedElement();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link anydsl.MultiNamedElement#getName <em>Name</em>}
+	 * '. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute list '<em>Name</em>'.
+	 * @see anydsl.MultiNamedElement#getName()
+	 * @see #getMultiNamedElement()
+	 * @generated
+	 */
+	EAttribute getMultiNamedElement_Name();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.NamedElement <em>Named Element</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Named Element</em>'.
+	 * @see anydsl.NamedElement
+	 * @generated
+	 */
+	EClass getNamedElement();
+
+	/**
+	 * Returns the meta object for the attribute '{@link anydsl.NamedElement#getName <em>Name</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see anydsl.NamedElement#getName()
+	 * @see #getNamedElement()
+	 * @generated
+	 */
+	EAttribute getNamedElement_Name();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.Producer <em>Producer</em>}'. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Producer</em>'.
+	 * @see anydsl.Producer
+	 * @generated
+	 */
+	EClass getProducer();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link anydsl.Producer#getAdress
+	 * <em>Adress</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference '<em>Adress</em>'.
+	 * @see anydsl.Producer#getAdress()
+	 * @see #getProducer()
+	 * @generated
+	 */
+	EReference getProducer_Adress();
+
+	/**
+	 * Returns the meta object for the reference '{@link anydsl.Producer#getCompany <em>Company</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Company</em>'.
+	 * @see anydsl.Producer#getCompany()
+	 * @see #getProducer()
+	 * @generated
+	 */
+	EReference getProducer_Company();
+
+	/**
+	 * Returns the meta object for the reference list '{@link anydsl.Producer#getFoods <em>Foods</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference list '<em>Foods</em>'.
+	 * @see anydsl.Producer#getFoods()
+	 * @see #getProducer()
+	 * @generated
+	 */
+	EReference getProducer_Foods();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.Adress <em>Adress</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Adress</em>'.
+	 * @see anydsl.Adress
+	 * @generated
+	 */
+	EClass getAdress();
+
+	/**
+	 * Returns the meta object for the attribute '{@link anydsl.Adress#getZipCode <em>Zip Code</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Zip Code</em>'.
+	 * @see anydsl.Adress#getZipCode()
+	 * @see #getAdress()
+	 * @generated
+	 */
+	EAttribute getAdress_ZipCode();
+
+	/**
+	 * Returns the meta object for the attribute '{@link anydsl.Adress#getCity <em>City</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>City</em>'.
+	 * @see anydsl.Adress#getCity()
+	 * @see #getAdress()
+	 * @generated
+	 */
+	EAttribute getAdress_City();
+
+	/**
+	 * Returns the meta object for the attribute '{@link anydsl.Adress#getCountry <em>Country</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Country</em>'.
+	 * @see anydsl.Adress#getCountry()
+	 * @see #getAdress()
+	 * @generated
+	 */
+	EAttribute getAdress_Country();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.Company <em>Company</em>}'. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Company</em>'.
+	 * @see anydsl.Company
+	 * @generated
+	 */
+	EClass getCompany();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link anydsl.Company#getAdress <em>Adress</em>}
+	 * '. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference '<em>Adress</em>'.
+	 * @see anydsl.Company#getAdress()
+	 * @see #getCompany()
+	 * @generated
+	 */
+	EReference getCompany_Adress();
+
+	/**
+	 * Returns the meta object for the reference '{@link anydsl.Company#getWorld <em>World</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>World</em>'.
+	 * @see anydsl.Company#getWorld()
+	 * @see #getCompany()
+	 * @generated
+	 */
+	EReference getCompany_World();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.ProductionCompany <em>Production Company</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Production Company</em>'.
+	 * @see anydsl.ProductionCompany
+	 * @generated
+	 */
+	EClass getProductionCompany();
+
+	/**
+	 * Returns the meta object for the containment reference list '
+	 * {@link anydsl.ProductionCompany#getProducers <em>Producers</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Producers</em>'.
+	 * @see anydsl.ProductionCompany#getProducers()
+	 * @see #getProductionCompany()
+	 * @generated
+	 */
+	EReference getProductionCompany_Producers();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.Restaurant <em>Restaurant</em>}'. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Restaurant</em>'.
+	 * @see anydsl.Restaurant
+	 * @generated
+	 */
+	EClass getRestaurant();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link anydsl.Restaurant#getChefs
+	 * <em>Chefs</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Chefs</em>'.
+	 * @see anydsl.Restaurant#getChefs()
+	 * @see #getRestaurant()
+	 * @generated
+	 */
+	EReference getRestaurant_Chefs();
+
+	/**
+	 * Returns the meta object for the map '{@link anydsl.Restaurant#getMenu <em>Menu</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the map '<em>Menu</em>'.
+	 * @see anydsl.Restaurant#getMenu()
+	 * @see #getRestaurant()
+	 * @generated
+	 */
+	EReference getRestaurant_Menu();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.Chef <em>Chef</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Chef</em>'.
+	 * @see anydsl.Chef
+	 * @generated
+	 */
+	EClass getChef();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link anydsl.Chef#getAdress <em>Adress</em>}'.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference '<em>Adress</em>'.
+	 * @see anydsl.Chef#getAdress()
+	 * @see #getChef()
+	 * @generated
+	 */
+	EReference getChef_Adress();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link anydsl.Chef#getRecipes
+	 * <em>Recipes</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Recipes</em>'.
+	 * @see anydsl.Chef#getRecipes()
+	 * @see #getChef()
+	 * @generated
+	 */
+	EReference getChef_Recipes();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.Recipe <em>Recipe</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Recipe</em>'.
+	 * @see anydsl.Recipe
+	 * @generated
+	 */
+	EClass getRecipe();
+
+	/**
+	 * Returns the meta object for the reference list '{@link anydsl.Recipe#getIngredients
+	 * <em>Ingredients</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference list '<em>Ingredients</em>'.
+	 * @see anydsl.Recipe#getIngredients()
+	 * @see #getRecipe()
+	 * @generated
+	 */
+	EReference getRecipe_Ingredients();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.Food <em>Food</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Food</em>'.
+	 * @see anydsl.Food
+	 * @generated
+	 */
+	EClass getFood();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link anydsl.Food#getColor <em>Color</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute list '<em>Color</em>'.
+	 * @see anydsl.Food#getColor()
+	 * @see #getFood()
+	 * @generated
+	 */
+	EAttribute getFood_Color();
+
+	/**
+	 * Returns the meta object for the attribute '{@link anydsl.Food#getCaliber <em>Caliber</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Caliber</em>'.
+	 * @see anydsl.Food#getCaliber()
+	 * @see #getFood()
+	 * @generated
+	 */
+	EAttribute getFood_Caliber();
+
+	/**
+	 * Returns the meta object for the reference list '{@link anydsl.Food#getRelatedFoods <em>Related
+	 * Foods</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference list '<em>Related Foods</em>'.
+	 * @see anydsl.Food#getRelatedFoods()
+	 * @see #getFood()
+	 * @generated
+	 */
+	EReference getFood_RelatedFoods();
+
+	/**
+	 * Returns the meta object for the attribute '{@link anydsl.Food#getGroup <em>Group</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Group</em>'.
+	 * @see anydsl.Food#getGroup()
+	 * @see #getFood()
+	 * @generated
+	 */
+	EAttribute getFood_Group();
+
+	/**
+	 * Returns the meta object for the attribute '{@link anydsl.Food#getLabel <em>Label</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Label</em>'.
+	 * @see anydsl.Food#getLabel()
+	 * @see #getFood()
+	 * @generated
+	 */
+	EAttribute getFood_Label();
+
+	/**
+	 * Returns the meta object for the reference '{@link anydsl.Food#getSource <em>Source</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Source</em>'.
+	 * @see anydsl.Food#getSource()
+	 * @see #getFood()
+	 * @generated
+	 */
+	EReference getFood_Source();
+
+	/**
+	 * Returns the meta object for the reference list '{@link anydsl.Food#getProducers <em>Producers</em>}'.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference list '<em>Producers</em>'.
+	 * @see anydsl.Food#getProducers()
+	 * @see #getFood()
+	 * @generated
+	 */
+	EReference getFood_Producers();
+
+	/**
+	 * Returns the meta object for the '{@link anydsl.Food#ripen(anydsl.Color) <em>Ripen</em>}' operation.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the '<em>Ripen</em>' operation.
+	 * @see anydsl.Food#ripen(anydsl.Color)
+	 * @generated
+	 */
+	EOperation getFood__Ripen__Color();
+
+	/**
+	 * Returns the meta object for the '{@link anydsl.Food#preferredColor() <em>Preferred Color</em>}'
+	 * operation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the '<em>Preferred Color</em>' operation.
+	 * @see anydsl.Food#preferredColor()
+	 * @generated
+	 */
+	EOperation getFood__PreferredColor();
+
+	/**
+	 * Returns the meta object for the '{@link anydsl.Food#newFood() <em>New Food</em>}' operation. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the '<em>New Food</em>' operation.
+	 * @see anydsl.Food#newFood()
+	 * @generated
+	 */
+	EOperation getFood__NewFood();
+
+	/**
+	 * Returns the meta object for the '{@link anydsl.Food#setColor(anydsl.Food, anydsl.Color) <em>Set
+	 * Color</em>}' operation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the '<em>Set Color</em>' operation.
+	 * @see anydsl.Food#setColor(anydsl.Food, anydsl.Color)
+	 * @generated
+	 */
+	EOperation getFood__SetColor__Food_Color();
+
+	/**
+	 * Returns the meta object for the '
+	 * {@link anydsl.Food#setCaliber(anydsl.Food, org.eclipse.emf.common.util.EList) <em>Set Caliber</em>}'
+	 * operation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the '<em>Set Caliber</em>' operation.
+	 * @see anydsl.Food#setCaliber(anydsl.Food, org.eclipse.emf.common.util.EList)
+	 * @generated
+	 */
+	EOperation getFood__SetCaliber__Food_EList();
+
+	/**
+	 * Returns the meta object for the '{@link anydsl.Food#acceptedCaliber(anydsl.Caliber) <em>Accepted
+	 * Caliber</em>}' operation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the '<em>Accepted Caliber</em>' operation.
+	 * @see anydsl.Food#acceptedCaliber(anydsl.Caliber)
+	 * @generated
+	 */
+	EOperation getFood__AcceptedCaliber__Caliber();
+
+	/**
+	 * Returns the meta object for the '{@link anydsl.Food#label(java.lang.String) <em>Label</em>}' operation.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the '<em>Label</em>' operation.
+	 * @see anydsl.Food#label(java.lang.String)
+	 * @generated
+	 */
+	EOperation getFood__Label__String();
+
+	/**
+	 * Returns the meta object for the '{@link anydsl.Food#preferredLabel(java.lang.String) <em>Preferred
+	 * Label</em>}' operation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the '<em>Preferred Label</em>' operation.
+	 * @see anydsl.Food#preferredLabel(java.lang.String)
+	 * @generated
+	 */
+	EOperation getFood__PreferredLabel__String();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.Source <em>Source</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Source</em>'.
+	 * @see anydsl.Source
+	 * @generated
+	 */
+	EClass getSource();
+
+	/**
+	 * Returns the meta object for the reference list '{@link anydsl.Source#getFoods <em>Foods</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference list '<em>Foods</em>'.
+	 * @see anydsl.Source#getFoods()
+	 * @see #getSource()
+	 * @generated
+	 */
+	EReference getSource_Foods();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link anydsl.Source#getOrigin <em>Origin</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute list '<em>Origin</em>'.
+	 * @see anydsl.Source#getOrigin()
+	 * @see #getSource()
+	 * @generated
+	 */
+	EAttribute getSource_Origin();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.Plant <em>Plant</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Plant</em>'.
+	 * @see anydsl.Plant
+	 * @generated
+	 */
+	EClass getPlant();
+
+	/**
+	 * Returns the meta object for the attribute '{@link anydsl.Plant#getKind <em>Kind</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Kind</em>'.
+	 * @see anydsl.Plant#getKind()
+	 * @see #getPlant()
+	 * @generated
+	 */
+	EAttribute getPlant_Kind();
+
+	/**
+	 * Returns the meta object for class '{@link anydsl.Animal <em>Animal</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Animal</em>'.
+	 * @see anydsl.Animal
+	 * @generated
+	 */
+	EClass getAnimal();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link anydsl.Animal#getPart <em>Part</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute list '<em>Part</em>'.
+	 * @see anydsl.Animal#getPart()
+	 * @see #getAnimal()
+	 * @generated
+	 */
+	EAttribute getAnimal_Part();
+
+	/**
+	 * Returns the meta object for class '{@link java.util.Map.Entry <em>EString To Recipe Map</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>EString To Recipe Map</em>'.
+	 * @see java.util.Map.Entry
+	 * @model keyDataType="org.eclipse.emf.ecore.EString" valueType="anydsl.Recipe"
+	 * @generated
+	 */
+	EClass getEStringToRecipeMap();
+
+	/**
+	 * Returns the meta object for the attribute '{@link java.util.Map.Entry <em>Key</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Key</em>'.
+	 * @see java.util.Map.Entry
+	 * @see #getEStringToRecipeMap()
+	 * @generated
+	 */
+	EAttribute getEStringToRecipeMap_Key();
+
+	/**
+	 * Returns the meta object for the reference '{@link java.util.Map.Entry <em>Value</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Value</em>'.
+	 * @see java.util.Map.Entry
+	 * @see #getEStringToRecipeMap()
+	 * @generated
+	 */
+	EReference getEStringToRecipeMap_Value();
+
+	/**
+	 * Returns the meta object for enum '{@link anydsl.Color <em>Color</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Color</em>'.
+	 * @see anydsl.Color
+	 * @generated
+	 */
+	EEnum getColor();
+
+	/**
+	 * Returns the meta object for enum '{@link anydsl.Caliber <em>Caliber</em>}'. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Caliber</em>'.
+	 * @see anydsl.Caliber
+	 * @generated
+	 */
+	EEnum getCaliber();
+
+	/**
+	 * Returns the meta object for enum '{@link anydsl.Group <em>Group</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Group</em>'.
+	 * @see anydsl.Group
+	 * @generated
+	 */
+	EEnum getGroup();
+
+	/**
+	 * Returns the meta object for enum '{@link anydsl.Continent <em>Continent</em>}'. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Continent</em>'.
+	 * @see anydsl.Continent
+	 * @generated
+	 */
+	EEnum getContinent();
+
+	/**
+	 * Returns the meta object for enum '{@link anydsl.Kind <em>Kind</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Kind</em>'.
+	 * @see anydsl.Kind
+	 * @generated
+	 */
+	EEnum getKind();
+
+	/**
+	 * Returns the meta object for enum '{@link anydsl.Part <em>Part</em>}'. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Part</em>'.
+	 * @see anydsl.Part
+	 * @generated
+	 */
+	EEnum getPart();
+
+	/**
+	 * Returns the meta object for data type '{@link anydsl.Country <em>Country Data</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for data type '<em>Country Data</em>'.
+	 * @see anydsl.Country
+	 * @model instanceClass="anydsl.Country"
+	 * @generated
+	 */
+	EDataType getCountryData();
+
+	/**
+	 * Returns the meta object for data type '{@link java.lang.String <em>Single String</em>}'. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for data type '<em>Single String</em>'.
+	 * @see java.lang.String
+	 * @model instanceClass="java.lang.String"
+	 * @generated
+	 */
+	EDataType getSingleString();
+
+	/**
+	 * Returns the factory that creates the instances of the model. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @return the factory that creates the instances of the model.
+	 * @generated
+	 */
+	AnydslFactory getAnydslFactory();
+
+	/**
+	 * <!-- begin-user-doc --> Defines literals for the meta objects that represent
+	 * <ul>
+	 * <li>each class,</li>
+	 * <li>each feature of each class,</li>
+	 * <li>each operation of each class,</li>
+	 * <li>each enum,</li>
+	 * <li>and each data type</li>
+	 * </ul>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	interface Literals {
+		/**
+		 * The meta object literal for the '{@link anydsl.impl.WorldImpl <em>World</em>}' class. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.impl.WorldImpl
+		 * @see anydsl.impl.AnydslPackageImpl#getWorld()
+		 * @generated
+		 */
+		EClass WORLD = eINSTANCE.getWorld();
+
+		/**
+		 * The meta object literal for the '<em><b>Companies</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference WORLD__COMPANIES = eINSTANCE.getWorld_Companies();
+
+		/**
+		 * The meta object literal for the '<em><b>Foods</b></em>' containment reference list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference WORLD__FOODS = eINSTANCE.getWorld_Foods();
+
+		/**
+		 * The meta object literal for the '<em><b>Sources</b></em>' containment reference list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference WORLD__SOURCES = eINSTANCE.getWorld_Sources();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.MultiNamedElement <em>Multi Named Element</em>}'
+		 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.MultiNamedElement
+		 * @see anydsl.impl.AnydslPackageImpl#getMultiNamedElement()
+		 * @generated
+		 */
+		EClass MULTI_NAMED_ELEMENT = eINSTANCE.getMultiNamedElement();
+
+		/**
+		 * The meta object literal for the '<em><b>Name</b></em>' attribute list feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute MULTI_NAMED_ELEMENT__NAME = eINSTANCE.getMultiNamedElement_Name();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.NamedElement <em>Named Element</em>}' class. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.NamedElement
+		 * @see anydsl.impl.AnydslPackageImpl#getNamedElement()
+		 * @generated
+		 */
+		EClass NAMED_ELEMENT = eINSTANCE.getNamedElement();
+
+		/**
+		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute NAMED_ELEMENT__NAME = eINSTANCE.getNamedElement_Name();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.impl.ProducerImpl <em>Producer</em>}' class. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.impl.ProducerImpl
+		 * @see anydsl.impl.AnydslPackageImpl#getProducer()
+		 * @generated
+		 */
+		EClass PRODUCER = eINSTANCE.getProducer();
+
+		/**
+		 * The meta object literal for the '<em><b>Adress</b></em>' containment reference feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference PRODUCER__ADRESS = eINSTANCE.getProducer_Adress();
+
+		/**
+		 * The meta object literal for the '<em><b>Company</b></em>' reference feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference PRODUCER__COMPANY = eINSTANCE.getProducer_Company();
+
+		/**
+		 * The meta object literal for the '<em><b>Foods</b></em>' reference list feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference PRODUCER__FOODS = eINSTANCE.getProducer_Foods();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.impl.AdressImpl <em>Adress</em>}' class. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.impl.AdressImpl
+		 * @see anydsl.impl.AnydslPackageImpl#getAdress()
+		 * @generated
+		 */
+		EClass ADRESS = eINSTANCE.getAdress();
+
+		/**
+		 * The meta object literal for the '<em><b>Zip Code</b></em>' attribute feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ADRESS__ZIP_CODE = eINSTANCE.getAdress_ZipCode();
+
+		/**
+		 * The meta object literal for the '<em><b>City</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ADRESS__CITY = eINSTANCE.getAdress_City();
+
+		/**
+		 * The meta object literal for the '<em><b>Country</b></em>' attribute feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ADRESS__COUNTRY = eINSTANCE.getAdress_Country();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.Company <em>Company</em>}' class. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.Company
+		 * @see anydsl.impl.AnydslPackageImpl#getCompany()
+		 * @generated
+		 */
+		EClass COMPANY = eINSTANCE.getCompany();
+
+		/**
+		 * The meta object literal for the '<em><b>Adress</b></em>' containment reference feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference COMPANY__ADRESS = eINSTANCE.getCompany_Adress();
+
+		/**
+		 * The meta object literal for the '<em><b>World</b></em>' reference feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference COMPANY__WORLD = eINSTANCE.getCompany_World();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.impl.ProductionCompanyImpl <em>Production
+		 * Company</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.impl.ProductionCompanyImpl
+		 * @see anydsl.impl.AnydslPackageImpl#getProductionCompany()
+		 * @generated
+		 */
+		EClass PRODUCTION_COMPANY = eINSTANCE.getProductionCompany();
+
+		/**
+		 * The meta object literal for the '<em><b>Producers</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference PRODUCTION_COMPANY__PRODUCERS = eINSTANCE.getProductionCompany_Producers();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.impl.RestaurantImpl <em>Restaurant</em>}' class.
+		 * <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.impl.RestaurantImpl
+		 * @see anydsl.impl.AnydslPackageImpl#getRestaurant()
+		 * @generated
+		 */
+		EClass RESTAURANT = eINSTANCE.getRestaurant();
+
+		/**
+		 * The meta object literal for the '<em><b>Chefs</b></em>' containment reference list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference RESTAURANT__CHEFS = eINSTANCE.getRestaurant_Chefs();
+
+		/**
+		 * The meta object literal for the '<em><b>Menu</b></em>' map feature. <!-- begin-user-doc --> <!--
+		 * end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference RESTAURANT__MENU = eINSTANCE.getRestaurant_Menu();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.impl.ChefImpl <em>Chef</em>}' class. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.impl.ChefImpl
+		 * @see anydsl.impl.AnydslPackageImpl#getChef()
+		 * @generated
+		 */
+		EClass CHEF = eINSTANCE.getChef();
+
+		/**
+		 * The meta object literal for the '<em><b>Adress</b></em>' containment reference feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference CHEF__ADRESS = eINSTANCE.getChef_Adress();
+
+		/**
+		 * The meta object literal for the '<em><b>Recipes</b></em>' containment reference list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference CHEF__RECIPES = eINSTANCE.getChef_Recipes();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.impl.RecipeImpl <em>Recipe</em>}' class. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.impl.RecipeImpl
+		 * @see anydsl.impl.AnydslPackageImpl#getRecipe()
+		 * @generated
+		 */
+		EClass RECIPE = eINSTANCE.getRecipe();
+
+		/**
+		 * The meta object literal for the '<em><b>Ingredients</b></em>' reference list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference RECIPE__INGREDIENTS = eINSTANCE.getRecipe_Ingredients();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.impl.FoodImpl <em>Food</em>}' class. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.impl.FoodImpl
+		 * @see anydsl.impl.AnydslPackageImpl#getFood()
+		 * @generated
+		 */
+		EClass FOOD = eINSTANCE.getFood();
+
+		/**
+		 * The meta object literal for the '<em><b>Color</b></em>' attribute list feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute FOOD__COLOR = eINSTANCE.getFood_Color();
+
+		/**
+		 * The meta object literal for the '<em><b>Caliber</b></em>' attribute feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute FOOD__CALIBER = eINSTANCE.getFood_Caliber();
+
+		/**
+		 * The meta object literal for the '<em><b>Related Foods</b></em>' reference list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference FOOD__RELATED_FOODS = eINSTANCE.getFood_RelatedFoods();
+
+		/**
+		 * The meta object literal for the '<em><b>Group</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute FOOD__GROUP = eINSTANCE.getFood_Group();
+
+		/**
+		 * The meta object literal for the '<em><b>Label</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute FOOD__LABEL = eINSTANCE.getFood_Label();
+
+		/**
+		 * The meta object literal for the '<em><b>Source</b></em>' reference feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference FOOD__SOURCE = eINSTANCE.getFood_Source();
+
+		/**
+		 * The meta object literal for the '<em><b>Producers</b></em>' reference list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference FOOD__PRODUCERS = eINSTANCE.getFood_Producers();
+
+		/**
+		 * The meta object literal for the '<em><b>Ripen</b></em>' operation. <!-- begin-user-doc --> <!--
+		 * end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EOperation FOOD___RIPEN__COLOR = eINSTANCE.getFood__Ripen__Color();
+
+		/**
+		 * The meta object literal for the '<em><b>Preferred Color</b></em>' operation. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EOperation FOOD___PREFERRED_COLOR = eINSTANCE.getFood__PreferredColor();
+
+		/**
+		 * The meta object literal for the '<em><b>New Food</b></em>' operation. <!-- begin-user-doc --> <!--
+		 * end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EOperation FOOD___NEW_FOOD = eINSTANCE.getFood__NewFood();
+
+		/**
+		 * The meta object literal for the '<em><b>Set Color</b></em>' operation. <!-- begin-user-doc --> <!--
+		 * end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EOperation FOOD___SET_COLOR__FOOD_COLOR = eINSTANCE.getFood__SetColor__Food_Color();
+
+		/**
+		 * The meta object literal for the '<em><b>Set Caliber</b></em>' operation. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EOperation FOOD___SET_CALIBER__FOOD_ELIST = eINSTANCE.getFood__SetCaliber__Food_EList();
+
+		/**
+		 * The meta object literal for the '<em><b>Accepted Caliber</b></em>' operation. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EOperation FOOD___ACCEPTED_CALIBER__CALIBER = eINSTANCE.getFood__AcceptedCaliber__Caliber();
+
+		/**
+		 * The meta object literal for the '<em><b>Label</b></em>' operation. <!-- begin-user-doc --> <!--
+		 * end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EOperation FOOD___LABEL__STRING = eINSTANCE.getFood__Label__String();
+
+		/**
+		 * The meta object literal for the '<em><b>Preferred Label</b></em>' operation. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EOperation FOOD___PREFERRED_LABEL__STRING = eINSTANCE.getFood__PreferredLabel__String();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.Source <em>Source</em>}' class. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.Source
+		 * @see anydsl.impl.AnydslPackageImpl#getSource()
+		 * @generated
+		 */
+		EClass SOURCE = eINSTANCE.getSource();
+
+		/**
+		 * The meta object literal for the '<em><b>Foods</b></em>' reference list feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference SOURCE__FOODS = eINSTANCE.getSource_Foods();
+
+		/**
+		 * The meta object literal for the '<em><b>Origin</b></em>' attribute list feature. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute SOURCE__ORIGIN = eINSTANCE.getSource_Origin();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.impl.PlantImpl <em>Plant</em>}' class. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.impl.PlantImpl
+		 * @see anydsl.impl.AnydslPackageImpl#getPlant()
+		 * @generated
+		 */
+		EClass PLANT = eINSTANCE.getPlant();
+
+		/**
+		 * The meta object literal for the '<em><b>Kind</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute PLANT__KIND = eINSTANCE.getPlant_Kind();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.impl.AnimalImpl <em>Animal</em>}' class. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.impl.AnimalImpl
+		 * @see anydsl.impl.AnydslPackageImpl#getAnimal()
+		 * @generated
+		 */
+		EClass ANIMAL = eINSTANCE.getAnimal();
+
+		/**
+		 * The meta object literal for the '<em><b>Part</b></em>' attribute list feature. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ANIMAL__PART = eINSTANCE.getAnimal_Part();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.impl.EStringToRecipeMapImpl <em>EString To Recipe
+		 * Map</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.impl.EStringToRecipeMapImpl
+		 * @see anydsl.impl.AnydslPackageImpl#getEStringToRecipeMap()
+		 * @generated
+		 */
+		EClass ESTRING_TO_RECIPE_MAP = eINSTANCE.getEStringToRecipeMap();
+
+		/**
+		 * The meta object literal for the '<em><b>Key</b></em>' attribute feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ESTRING_TO_RECIPE_MAP__KEY = eINSTANCE.getEStringToRecipeMap_Key();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' reference feature. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference ESTRING_TO_RECIPE_MAP__VALUE = eINSTANCE.getEStringToRecipeMap_Value();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.Color <em>Color</em>}' enum. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.Color
+		 * @see anydsl.impl.AnydslPackageImpl#getColor()
+		 * @generated
+		 */
+		EEnum COLOR = eINSTANCE.getColor();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.Caliber <em>Caliber</em>}' enum. <!-- begin-user-doc
+		 * --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.Caliber
+		 * @see anydsl.impl.AnydslPackageImpl#getCaliber()
+		 * @generated
+		 */
+		EEnum CALIBER = eINSTANCE.getCaliber();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.Group <em>Group</em>}' enum. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.Group
+		 * @see anydsl.impl.AnydslPackageImpl#getGroup()
+		 * @generated
+		 */
+		EEnum GROUP = eINSTANCE.getGroup();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.Continent <em>Continent</em>}' enum. <!--
+		 * begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.Continent
+		 * @see anydsl.impl.AnydslPackageImpl#getContinent()
+		 * @generated
+		 */
+		EEnum CONTINENT = eINSTANCE.getContinent();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.Kind <em>Kind</em>}' enum. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.Kind
+		 * @see anydsl.impl.AnydslPackageImpl#getKind()
+		 * @generated
+		 */
+		EEnum KIND = eINSTANCE.getKind();
+
+		/**
+		 * The meta object literal for the '{@link anydsl.Part <em>Part</em>}' enum. <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see anydsl.Part
+		 * @see anydsl.impl.AnydslPackageImpl#getPart()
+		 * @generated
+		 */
+		EEnum PART = eINSTANCE.getPart();
+
+		/**
+		 * The meta object literal for the '<em>Country Data</em>' data type. <!-- begin-user-doc --> <!--
+		 * end-user-doc -->
+		 * 
+		 * @see anydsl.Country
+		 * @see anydsl.impl.AnydslPackageImpl#getCountryData()
+		 * @generated
+		 */
+		EDataType COUNTRY_DATA = eINSTANCE.getCountryData();
+
+		/**
+		 * The meta object literal for the '<em>Single String</em>' data type. <!-- begin-user-doc --> <!--
+		 * end-user-doc -->
+		 * 
+		 * @see java.lang.String
+		 * @see anydsl.impl.AnydslPackageImpl#getSingleString()
+		 * @generated
+		 */
+		EDataType SINGLE_STRING = eINSTANCE.getSingleString();
+
+	}
+
+} // AnydslPackage
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Caliber.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Caliber.java
new file mode 100644
index 0000000..b5219e6
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Caliber.java
@@ -0,0 +1,254 @@
+/**
+ */
+package anydsl;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>Caliber</b></em>', and
+ * utility methods for working with them. <!-- end-user-doc -->
+ * 
+ * @see anydsl.AnydslPackage#getCaliber()
+ * @model
+ * @generated
+ */
+public enum Caliber implements Enumerator {
+	/**
+	 * The '<em><b>S</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #S_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	S(0, "S", "S"),
+
+	/**
+	 * The '<em><b>M</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #M_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	M(1, "M", "M"),
+
+	/**
+	 * The '<em><b>L</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #L_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	L(2, "L", "L"),
+
+	/**
+	 * The '<em><b>XL</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #XL_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	XL(3, "XL", "XL");
+
+	/**
+	 * The '<em><b>S</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>S</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #S
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int S_VALUE = 0;
+
+	/**
+	 * The '<em><b>M</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>M</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #M
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int M_VALUE = 1;
+
+	/**
+	 * The '<em><b>L</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>L</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #L
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int L_VALUE = 2;
+
+	/**
+	 * The '<em><b>XL</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>XL</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #XL
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int XL_VALUE = 3;
+
+	/**
+	 * An array of all the '<em><b>Caliber</b></em>' enumerators. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	private static final Caliber[] VALUES_ARRAY = new Caliber[] {S, M, L, XL, };
+
+	/**
+	 * A public read-only list of all the '<em><b>Caliber</b></em>' enumerators. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<Caliber> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Caliber</b></em>' literal with the specified literal value. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Caliber get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Caliber result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Caliber</b></em>' literal with the specified name. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Caliber getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Caliber result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Caliber</b></em>' literal with the specified integer value. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Caliber get(int value) {
+		switch (value) {
+			case S_VALUE:
+				return S;
+			case M_VALUE:
+				return M;
+			case L_VALUE:
+				return L;
+			case XL_VALUE:
+				return XL;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private Caliber(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // Caliber
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Chef.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Chef.java
new file mode 100644
index 0000000..6528423
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Chef.java
@@ -0,0 +1,65 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Chef</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.Chef#getAdress <em>Adress</em>}</li>
+ * <li>{@link anydsl.Chef#getRecipes <em>Recipes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getChef()
+ * @model
+ * @generated
+ */
+public interface Chef extends NamedElement {
+	/**
+	 * Returns the value of the '<em><b>Adress</b></em>' containment reference. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Adress</em>' containment reference isn't clear, there really should be more
+	 * of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Adress</em>' containment reference.
+	 * @see #setAdress(Adress)
+	 * @see anydsl.AnydslPackage#getChef_Adress()
+	 * @model containment="true"
+	 * @generated
+	 */
+	Adress getAdress();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Chef#getAdress <em>Adress</em>}' containment reference. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Adress</em>' containment reference.
+	 * @see #getAdress()
+	 * @generated
+	 */
+	void setAdress(Adress value);
+
+	/**
+	 * Returns the value of the '<em><b>Recipes</b></em>' containment reference list. The list contents are of
+	 * type {@link anydsl.Recipe}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Recipes</em>' containment reference list isn't clear, there really should be
+	 * more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Recipes</em>' containment reference list.
+	 * @see anydsl.AnydslPackage#getChef_Recipes()
+	 * @model containment="true"
+	 * @generated
+	 */
+	EList<Recipe> getRecipes();
+
+} // Chef
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Color.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Color.java
new file mode 100644
index 0000000..b0710da
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Color.java
@@ -0,0 +1,410 @@
+/**
+ */
+package anydsl;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>Color</b></em>', and
+ * utility methods for working with them. <!-- end-user-doc -->
+ * 
+ * @see anydsl.AnydslPackage#getColor()
+ * @model
+ * @generated
+ */
+public enum Color implements Enumerator {
+	/**
+	 * The '<em><b>Black</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #BLACK_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	BLACK(0, "black", "black"),
+
+	/**
+	 * The '<em><b>Red</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #RED_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	RED(1, "red", "red"),
+
+	/**
+	 * The '<em><b>Green</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #GREEN_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	GREEN(2, "green", "green"),
+
+	/**
+	 * The '<em><b>Yellow</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #YELLOW_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	YELLOW(3, "yellow", "yellow"),
+
+	/**
+	 * The '<em><b>Orange</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #ORANGE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ORANGE(4, "orange", "orange"),
+
+	/**
+	 * The '<em><b>Brown</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #BROWN_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	BROWN(5, "brown", "brown"),
+
+	/**
+	 * The '<em><b>Pink</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #PINK_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	PINK(6, "pink", "pink"),
+
+	/**
+	 * The '<em><b>Pal Pink</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #PAL_PINK_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	PAL_PINK(7, "palPink", "palPink"),
+
+	/**
+	 * The '<em><b>Very Yellow</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #VERY_YELLOW_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	VERY_YELLOW(8, "veryYellow", "veryYellow"),
+
+	/**
+	 * The '<em><b>White</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #WHITE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	WHITE(9, "white", "white");
+
+	/**
+	 * The '<em><b>Black</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Black</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #BLACK
+	 * @model name="black"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int BLACK_VALUE = 0;
+
+	/**
+	 * The '<em><b>Red</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Red</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #RED
+	 * @model name="red"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int RED_VALUE = 1;
+
+	/**
+	 * The '<em><b>Green</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Green</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #GREEN
+	 * @model name="green"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int GREEN_VALUE = 2;
+
+	/**
+	 * The '<em><b>Yellow</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Yellow</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #YELLOW
+	 * @model name="yellow"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int YELLOW_VALUE = 3;
+
+	/**
+	 * The '<em><b>Orange</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Orange</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ORANGE
+	 * @model name="orange"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ORANGE_VALUE = 4;
+
+	/**
+	 * The '<em><b>Brown</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Brown</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #BROWN
+	 * @model name="brown"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int BROWN_VALUE = 5;
+
+	/**
+	 * The '<em><b>Pink</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Pink</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #PINK
+	 * @model name="pink"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int PINK_VALUE = 6;
+
+	/**
+	 * The '<em><b>Pal Pink</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Pal Pink</b></em>' literal object isn't clear, there really should be more of
+	 * a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #PAL_PINK
+	 * @model name="palPink"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int PAL_PINK_VALUE = 7;
+
+	/**
+	 * The '<em><b>Very Yellow</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Very Yellow</b></em>' literal object isn't clear, there really should be more
+	 * of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #VERY_YELLOW
+	 * @model name="veryYellow"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int VERY_YELLOW_VALUE = 8;
+
+	/**
+	 * The '<em><b>White</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>White</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #WHITE
+	 * @model name="white"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int WHITE_VALUE = 9;
+
+	/**
+	 * An array of all the '<em><b>Color</b></em>' enumerators. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final Color[] VALUES_ARRAY = new Color[] {BLACK, RED, GREEN, YELLOW, ORANGE, BROWN, PINK,
+			PAL_PINK, VERY_YELLOW, WHITE, };
+
+	/**
+	 * A public read-only list of all the '<em><b>Color</b></em>' enumerators. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<Color> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Color</b></em>' literal with the specified literal value. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Color get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Color result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Color</b></em>' literal with the specified name. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Color getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Color result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Color</b></em>' literal with the specified integer value. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Color get(int value) {
+		switch (value) {
+			case BLACK_VALUE:
+				return BLACK;
+			case RED_VALUE:
+				return RED;
+			case GREEN_VALUE:
+				return GREEN;
+			case YELLOW_VALUE:
+				return YELLOW;
+			case ORANGE_VALUE:
+				return ORANGE;
+			case BROWN_VALUE:
+				return BROWN;
+			case PINK_VALUE:
+				return PINK;
+			case PAL_PINK_VALUE:
+				return PAL_PINK;
+			case VERY_YELLOW_VALUE:
+				return VERY_YELLOW;
+			case WHITE_VALUE:
+				return WHITE;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private Color(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // Color
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Company.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Company.java
new file mode 100644
index 0000000..bc8940c
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Company.java
@@ -0,0 +1,75 @@
+/**
+ */
+package anydsl;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Company</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.Company#getAdress <em>Adress</em>}</li>
+ * <li>{@link anydsl.Company#getWorld <em>World</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getCompany()
+ * @model interface="true" abstract="true"
+ * @generated
+ */
+public interface Company extends NamedElement {
+	/**
+	 * Returns the value of the '<em><b>Adress</b></em>' containment reference. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Adress</em>' containment reference isn't clear, there really should be more
+	 * of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Adress</em>' containment reference.
+	 * @see #setAdress(Adress)
+	 * @see anydsl.AnydslPackage#getCompany_Adress()
+	 * @model containment="true"
+	 * @generated
+	 */
+	Adress getAdress();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Company#getAdress <em>Adress</em>}' containment reference. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Adress</em>' containment reference.
+	 * @see #getAdress()
+	 * @generated
+	 */
+	void setAdress(Adress value);
+
+	/**
+	 * Returns the value of the '<em><b>World</b></em>' reference. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>World</em>' reference isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>World</em>' reference.
+	 * @see #setWorld(World)
+	 * @see anydsl.AnydslPackage#getCompany_World()
+	 * @model
+	 * @generated
+	 */
+	World getWorld();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Company#getWorld <em>World</em>}' reference. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>World</em>' reference.
+	 * @see #getWorld()
+	 * @generated
+	 */
+	void setWorld(World value);
+
+} // Company
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Continent.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Continent.java
new file mode 100644
index 0000000..db28fc5
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Continent.java
@@ -0,0 +1,307 @@
+/**
+ */
+package anydsl;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>Continent</b></em>',
+ * and utility methods for working with them. <!-- end-user-doc -->
+ * 
+ * @see anydsl.AnydslPackage#getContinent()
+ * @model
+ * @generated
+ */
+public enum Continent implements Enumerator {
+	/**
+	 * The '<em><b>Europe</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #EUROPE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	EUROPE(0, "Europe", "Europe"),
+
+	/**
+	 * The '<em><b>Asia</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #ASIA_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ASIA(1, "Asia", "Asia"),
+
+	/**
+	 * The '<em><b>Africa</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #AFRICA_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	AFRICA(2, "Africa", "Africa"),
+
+	/**
+	 * The '<em><b>America</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #AMERICA_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	AMERICA(3, "America", "America"),
+
+	/**
+	 * The '<em><b>Australia</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #AUSTRALIA_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	AUSTRALIA(4, "Australia", "Australia"),
+
+	/**
+	 * The '<em><b>Antarctica</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #ANTARCTICA_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ANTARCTICA(5, "Antarctica", "Antarctica");
+
+	/**
+	 * The '<em><b>Europe</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Europe</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #EUROPE
+	 * @model name="Europe"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int EUROPE_VALUE = 0;
+
+	/**
+	 * The '<em><b>Asia</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Asia</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ASIA
+	 * @model name="Asia"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ASIA_VALUE = 1;
+
+	/**
+	 * The '<em><b>Africa</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Africa</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #AFRICA
+	 * @model name="Africa"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int AFRICA_VALUE = 2;
+
+	/**
+	 * The '<em><b>America</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>America</b></em>' literal object isn't clear, there really should be more of
+	 * a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #AMERICA
+	 * @model name="America"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int AMERICA_VALUE = 3;
+
+	/**
+	 * The '<em><b>Australia</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Australia</b></em>' literal object isn't clear, there really should be more
+	 * of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #AUSTRALIA
+	 * @model name="Australia"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int AUSTRALIA_VALUE = 4;
+
+	/**
+	 * The '<em><b>Antarctica</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Antarctica</b></em>' literal object isn't clear, there really should be more
+	 * of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ANTARCTICA
+	 * @model name="Antarctica"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ANTARCTICA_VALUE = 5;
+
+	/**
+	 * An array of all the '<em><b>Continent</b></em>' enumerators. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	private static final Continent[] VALUES_ARRAY = new Continent[] {EUROPE, ASIA, AFRICA, AMERICA, AUSTRALIA,
+			ANTARCTICA, };
+
+	/**
+	 * A public read-only list of all the '<em><b>Continent</b></em>' enumerators. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<Continent> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Continent</b></em>' literal with the specified literal value. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Continent get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Continent result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Continent</b></em>' literal with the specified name. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Continent getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Continent result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Continent</b></em>' literal with the specified integer value. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Continent get(int value) {
+		switch (value) {
+			case EUROPE_VALUE:
+				return EUROPE;
+			case ASIA_VALUE:
+				return ASIA;
+			case AFRICA_VALUE:
+				return AFRICA;
+			case AMERICA_VALUE:
+				return AMERICA;
+			case AUSTRALIA_VALUE:
+				return AUSTRALIA;
+			case ANTARCTICA_VALUE:
+				return ANTARCTICA;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private Continent(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // Continent
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Country.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Country.java
new file mode 100644
index 0000000..a6b0be1
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Country.java
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 
+ * Contributors:
+ *     Obeo - initial API and implementation
+ *******************************************************************************/
+package anydsl;
+
+import java.io.Serializable;
+
+public class Country implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+
+	private String name;
+
+	private Continent continent;
+
+	public Country() {
+	}
+
+	public Country(String name, Continent continent) {
+		this.name = name;
+		this.continent = continent;
+	}
+
+	public Continent getContinent() {
+		return continent;
+	}
+
+	public void setContinent(Continent continent) {
+		this.continent = continent;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Food.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Food.java
new file mode 100644
index 0000000..a438050
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Food.java
@@ -0,0 +1,259 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Food</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.Food#getColor <em>Color</em>}</li>
+ * <li>{@link anydsl.Food#getCaliber <em>Caliber</em>}</li>
+ * <li>{@link anydsl.Food#getRelatedFoods <em>Related Foods</em>}</li>
+ * <li>{@link anydsl.Food#getGroup <em>Group</em>}</li>
+ * <li>{@link anydsl.Food#getLabel <em>Label</em>}</li>
+ * <li>{@link anydsl.Food#getSource <em>Source</em>}</li>
+ * <li>{@link anydsl.Food#getProducers <em>Producers</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getFood()
+ * @model
+ * @generated
+ */
+public interface Food extends NamedElement {
+	/**
+	 * Returns the value of the '<em><b>Color</b></em>' attribute list. The list contents are of type
+	 * {@link anydsl.Color}. The literals are from the enumeration {@link anydsl.Color}. <!-- begin-user-doc
+	 * -->
+	 * <p>
+	 * If the meaning of the '<em>Color</em>' attribute list isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Color</em>' attribute list.
+	 * @see anydsl.Color
+	 * @see anydsl.AnydslPackage#getFood_Color()
+	 * @model
+	 * @generated
+	 */
+	EList<Color> getColor();
+
+	/**
+	 * Returns the value of the '<em><b>Caliber</b></em>' attribute. The literals are from the enumeration
+	 * {@link anydsl.Caliber}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Caliber</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Caliber</em>' attribute.
+	 * @see anydsl.Caliber
+	 * @see #setCaliber(Caliber)
+	 * @see anydsl.AnydslPackage#getFood_Caliber()
+	 * @model
+	 * @generated
+	 */
+	Caliber getCaliber();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Food#getCaliber <em>Caliber</em>}' attribute. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Caliber</em>' attribute.
+	 * @see anydsl.Caliber
+	 * @see #getCaliber()
+	 * @generated
+	 */
+	void setCaliber(Caliber value);
+
+	/**
+	 * Returns the value of the '<em><b>Related Foods</b></em>' reference list. The list contents are of type
+	 * {@link anydsl.Food}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Related Foods</em>' reference list isn't clear, there really should be more
+	 * of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Related Foods</em>' reference list.
+	 * @see anydsl.AnydslPackage#getFood_RelatedFoods()
+	 * @model
+	 * @generated
+	 */
+	EList<Food> getRelatedFoods();
+
+	/**
+	 * Returns the value of the '<em><b>Group</b></em>' attribute. The literals are from the enumeration
+	 * {@link anydsl.Group}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Group</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Group</em>' attribute.
+	 * @see anydsl.Group
+	 * @see #setGroup(Group)
+	 * @see anydsl.AnydslPackage#getFood_Group()
+	 * @model
+	 * @generated
+	 */
+	Group getGroup();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Food#getGroup <em>Group</em>}' attribute. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Group</em>' attribute.
+	 * @see anydsl.Group
+	 * @see #getGroup()
+	 * @generated
+	 */
+	void setGroup(Group value);
+
+	/**
+	 * Returns the value of the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Label</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Label</em>' attribute.
+	 * @see #setLabel(String)
+	 * @see anydsl.AnydslPackage#getFood_Label()
+	 * @model
+	 * @generated
+	 */
+	String getLabel();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Food#getLabel <em>Label</em>}' attribute. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Label</em>' attribute.
+	 * @see #getLabel()
+	 * @generated
+	 */
+	void setLabel(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Source</b></em>' reference. It is bidirectional and its opposite is '
+	 * {@link anydsl.Source#getFoods <em>Foods</em>}'. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Source</em>' reference isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Source</em>' reference.
+	 * @see #setSource(Source)
+	 * @see anydsl.AnydslPackage#getFood_Source()
+	 * @see anydsl.Source#getFoods
+	 * @model opposite="foods"
+	 * @generated
+	 */
+	Source getSource();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Food#getSource <em>Source</em>}' reference. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Source</em>' reference.
+	 * @see #getSource()
+	 * @generated
+	 */
+	void setSource(Source value);
+
+	/**
+	 * Returns the value of the '<em><b>Producers</b></em>' reference list. The list contents are of type
+	 * {@link anydsl.Producer}. It is bidirectional and its opposite is '{@link anydsl.Producer#getFoods
+	 * <em>Foods</em>}'. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Producers</em>' reference list isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Producers</em>' reference list.
+	 * @see anydsl.AnydslPackage#getFood_Producers()
+	 * @see anydsl.Producer#getFoods
+	 * @model opposite="foods"
+	 * @generated
+	 */
+	EList<Producer> getProducers();
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @model
+	 * @generated
+	 */
+	boolean ripen(Color color);
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @model
+	 * @generated
+	 */
+	Color preferredColor();
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @model
+	 * @generated
+	 */
+	Food newFood();
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @model
+	 * @generated
+	 */
+	void setColor(Food food, Color newColor);
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @model newCaliberMany="true"
+	 * @generated
+	 */
+	void setCaliber(Food food, EList<Caliber> newCaliber);
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @model
+	 * @generated
+	 */
+	boolean acceptedCaliber(Caliber caliber);
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @model
+	 * @generated
+	 */
+	void label(String text);
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @model
+	 * @generated
+	 */
+	String preferredLabel(String text);
+
+} // Food
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Group.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Group.java
new file mode 100644
index 0000000..07bd882
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Group.java
@@ -0,0 +1,358 @@
+/**
+ */
+package anydsl;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>Group</b></em>', and
+ * utility methods for working with them. <!-- end-user-doc -->
+ * 
+ * @see anydsl.AnydslPackage#getGroup()
+ * @model
+ * @generated
+ */
+public enum Group implements Enumerator {
+	/**
+	 * The '<em><b>Water</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #WATER_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	WATER(0, "Water", "Water"),
+
+	/**
+	 * The '<em><b>Dairy</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #DAIRY_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	DAIRY(1, "Dairy", "Dairy"),
+
+	/**
+	 * The '<em><b>Fruit</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #FRUIT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	FRUIT(2, "Fruit", "Fruit"),
+
+	/**
+	 * The '<em><b>Grain</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #GRAIN_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	GRAIN(3, "Grain", "Grain"),
+
+	/**
+	 * The '<em><b>Protein</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #PROTEIN_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	PROTEIN(4, "Protein", "Protein"),
+
+	/**
+	 * The '<em><b>Sweet</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #SWEET_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	SWEET(5, "Sweet", "Sweet"),
+
+	/**
+	 * The '<em><b>Vegetable</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #VEGETABLE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	VEGETABLE(6, "Vegetable", "Vegetable"),
+
+	/**
+	 * The '<em><b>Alcohol</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #ALCOHOL_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ALCOHOL(7, "Alcohol", "Alcohol");
+
+	/**
+	 * The '<em><b>Water</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Water</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #WATER
+	 * @model name="Water"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int WATER_VALUE = 0;
+
+	/**
+	 * The '<em><b>Dairy</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Dairy</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #DAIRY
+	 * @model name="Dairy"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int DAIRY_VALUE = 1;
+
+	/**
+	 * The '<em><b>Fruit</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Fruit</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #FRUIT
+	 * @model name="Fruit"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int FRUIT_VALUE = 2;
+
+	/**
+	 * The '<em><b>Grain</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Grain</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #GRAIN
+	 * @model name="Grain"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int GRAIN_VALUE = 3;
+
+	/**
+	 * The '<em><b>Protein</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Protein</b></em>' literal object isn't clear, there really should be more of
+	 * a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #PROTEIN
+	 * @model name="Protein"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int PROTEIN_VALUE = 4;
+
+	/**
+	 * The '<em><b>Sweet</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Sweet</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #SWEET
+	 * @model name="Sweet"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int SWEET_VALUE = 5;
+
+	/**
+	 * The '<em><b>Vegetable</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Vegetable</b></em>' literal object isn't clear, there really should be more
+	 * of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #VEGETABLE
+	 * @model name="Vegetable"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int VEGETABLE_VALUE = 6;
+
+	/**
+	 * The '<em><b>Alcohol</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Alcohol</b></em>' literal object isn't clear, there really should be more of
+	 * a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ALCOHOL
+	 * @model name="Alcohol"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ALCOHOL_VALUE = 7;
+
+	/**
+	 * An array of all the '<em><b>Group</b></em>' enumerators. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final Group[] VALUES_ARRAY = new Group[] {WATER, DAIRY, FRUIT, GRAIN, PROTEIN, SWEET,
+			VEGETABLE, ALCOHOL, };
+
+	/**
+	 * A public read-only list of all the '<em><b>Group</b></em>' enumerators. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<Group> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Group</b></em>' literal with the specified literal value. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Group get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Group result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Group</b></em>' literal with the specified name. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Group getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Group result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Group</b></em>' literal with the specified integer value. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Group get(int value) {
+		switch (value) {
+			case WATER_VALUE:
+				return WATER;
+			case DAIRY_VALUE:
+				return DAIRY;
+			case FRUIT_VALUE:
+				return FRUIT;
+			case GRAIN_VALUE:
+				return GRAIN;
+			case PROTEIN_VALUE:
+				return PROTEIN;
+			case SWEET_VALUE:
+				return SWEET;
+			case VEGETABLE_VALUE:
+				return VEGETABLE;
+			case ALCOHOL_VALUE:
+				return ALCOHOL;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private Group(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // Group
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Kind.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Kind.java
new file mode 100644
index 0000000..2cb2c64
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Kind.java
@@ -0,0 +1,436 @@
+/**
+ */
+package anydsl;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>Kind</b></em>', and
+ * utility methods for working with them. <!-- end-user-doc -->
+ * 
+ * @see anydsl.AnydslPackage#getKind()
+ * @model
+ * @generated
+ */
+public enum Kind implements Enumerator {
+	/**
+	 * The '<em><b>Other</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #OTHER_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	OTHER(0, "Other", "Other"),
+
+	/**
+	 * The '<em><b>Seed</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #SEED_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	SEED(1, "Seed", "Seed"),
+
+	/**
+	 * The '<em><b>Oilseed</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #OILSEED_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	OILSEED(2, "Oilseed", "Oilseed"),
+
+	/**
+	 * The '<em><b>Tree</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #TREE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	TREE(3, "Tree", "Tree"),
+
+	/**
+	 * The '<em><b>Root</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #ROOT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ROOT(4, "Root", "Root"),
+
+	/**
+	 * The '<em><b>Bulb</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #BULB_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	BULB(5, "Bulb", "Bulb"),
+
+	/**
+	 * The '<em><b>Leaf</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #LEAF_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	LEAF(6, "Leaf", "Leaf"),
+
+	/**
+	 * The '<em><b>Stem</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #STEM_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	STEM(7, "Stem", "Stem"),
+
+	/**
+	 * The '<em><b>Flower</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #FLOWER_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	FLOWER(8, "Flower", "Flower"),
+
+	/**
+	 * The '<em><b>Inflorescence</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #INFLORESCENCE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	INFLORESCENCE(9, "Inflorescence", "Inflorescence"),
+
+	/**
+	 * The '<em><b>Spice</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #SPICE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	SPICE(10, "Spice", "Spice");
+
+	/**
+	 * The '<em><b>Other</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Other</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #OTHER
+	 * @model name="Other"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int OTHER_VALUE = 0;
+
+	/**
+	 * The '<em><b>Seed</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Seed</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #SEED
+	 * @model name="Seed"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int SEED_VALUE = 1;
+
+	/**
+	 * The '<em><b>Oilseed</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Oilseed</b></em>' literal object isn't clear, there really should be more of
+	 * a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #OILSEED
+	 * @model name="Oilseed"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int OILSEED_VALUE = 2;
+
+	/**
+	 * The '<em><b>Tree</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Tree</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #TREE
+	 * @model name="Tree"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int TREE_VALUE = 3;
+
+	/**
+	 * The '<em><b>Root</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Root</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ROOT
+	 * @model name="Root"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ROOT_VALUE = 4;
+
+	/**
+	 * The '<em><b>Bulb</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Bulb</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #BULB
+	 * @model name="Bulb"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int BULB_VALUE = 5;
+
+	/**
+	 * The '<em><b>Leaf</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Leaf</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #LEAF
+	 * @model name="Leaf"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int LEAF_VALUE = 6;
+
+	/**
+	 * The '<em><b>Stem</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Stem</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #STEM
+	 * @model name="Stem"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int STEM_VALUE = 7;
+
+	/**
+	 * The '<em><b>Flower</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Flower</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #FLOWER
+	 * @model name="Flower"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int FLOWER_VALUE = 8;
+
+	/**
+	 * The '<em><b>Inflorescence</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Inflorescence</b></em>' literal object isn't clear, there really should be
+	 * more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #INFLORESCENCE
+	 * @model name="Inflorescence"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int INFLORESCENCE_VALUE = 9;
+
+	/**
+	 * The '<em><b>Spice</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Spice</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #SPICE
+	 * @model name="Spice"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int SPICE_VALUE = 10;
+
+	/**
+	 * An array of all the '<em><b>Kind</b></em>' enumerators. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final Kind[] VALUES_ARRAY = new Kind[] {OTHER, SEED, OILSEED, TREE, ROOT, BULB, LEAF, STEM,
+			FLOWER, INFLORESCENCE, SPICE, };
+
+	/**
+	 * A public read-only list of all the '<em><b>Kind</b></em>' enumerators. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<Kind> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Kind</b></em>' literal with the specified literal value. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Kind get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Kind result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Kind</b></em>' literal with the specified name. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Kind getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Kind result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Kind</b></em>' literal with the specified integer value. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Kind get(int value) {
+		switch (value) {
+			case OTHER_VALUE:
+				return OTHER;
+			case SEED_VALUE:
+				return SEED;
+			case OILSEED_VALUE:
+				return OILSEED;
+			case TREE_VALUE:
+				return TREE;
+			case ROOT_VALUE:
+				return ROOT;
+			case BULB_VALUE:
+				return BULB;
+			case LEAF_VALUE:
+				return LEAF;
+			case STEM_VALUE:
+				return STEM;
+			case FLOWER_VALUE:
+				return FLOWER;
+			case INFLORESCENCE_VALUE:
+				return INFLORESCENCE;
+			case SPICE_VALUE:
+				return SPICE;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private Kind(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // Kind
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/MultiNamedElement.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/MultiNamedElement.java
new file mode 100644
index 0000000..fe2a22c
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/MultiNamedElement.java
@@ -0,0 +1,39 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Multi Named Element</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.MultiNamedElement#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getMultiNamedElement()
+ * @model interface="true" abstract="true"
+ * @generated
+ */
+public interface MultiNamedElement extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute list. The list contents are of type
+	 * {@link java.lang.String}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute list isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Name</em>' attribute list.
+	 * @see anydsl.AnydslPackage#getMultiNamedElement_Name()
+	 * @model dataType="anydsl.SingleString"
+	 * @generated
+	 */
+	EList<String> getName();
+
+} // MultiNamedElement
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/NamedElement.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/NamedElement.java
new file mode 100644
index 0000000..d1a8d75
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/NamedElement.java
@@ -0,0 +1,49 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Named Element</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.NamedElement#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getNamedElement()
+ * @model interface="true" abstract="true"
+ * @generated
+ */
+public interface NamedElement extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Name</b></em>' attribute. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see anydsl.AnydslPackage#getNamedElement_Name()
+	 * @model dataType="anydsl.SingleString"
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link anydsl.NamedElement#getName <em>Name</em>}' attribute. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+} // NamedElement
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Part.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Part.java
new file mode 100644
index 0000000..6afba0a
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Part.java
@@ -0,0 +1,227 @@
+/**
+ */
+package anydsl;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>Part</b></em>', and
+ * utility methods for working with them. <!-- end-user-doc -->
+ * 
+ * @see anydsl.AnydslPackage#getPart()
+ * @model
+ * @generated
+ */
+public enum Part implements Enumerator {
+	/**
+	 * The '<em><b>Other</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #OTHER_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	OTHER(0, "Other", "Other"),
+
+	/**
+	 * The '<em><b>Muscle</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #MUSCLE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	MUSCLE(1, "Muscle", "Muscle"),
+
+	/**
+	 * The '<em><b>Organ</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #ORGAN_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ORGAN(2, "Organ", "Organ");
+
+	/**
+	 * The '<em><b>Other</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Other</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #OTHER
+	 * @model name="Other"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int OTHER_VALUE = 0;
+
+	/**
+	 * The '<em><b>Muscle</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Muscle</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #MUSCLE
+	 * @model name="Muscle"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int MUSCLE_VALUE = 1;
+
+	/**
+	 * The '<em><b>Organ</b></em>' literal value. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of '<em><b>Organ</b></em>' literal object isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ORGAN
+	 * @model name="Organ"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ORGAN_VALUE = 2;
+
+	/**
+	 * An array of all the '<em><b>Part</b></em>' enumerators. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final Part[] VALUES_ARRAY = new Part[] {OTHER, MUSCLE, ORGAN, };
+
+	/**
+	 * A public read-only list of all the '<em><b>Part</b></em>' enumerators. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<Part> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Part</b></em>' literal with the specified literal value. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Part get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Part result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Part</b></em>' literal with the specified name. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Part getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Part result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Part</b></em>' literal with the specified integer value. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static Part get(int value) {
+		switch (value) {
+			case OTHER_VALUE:
+				return OTHER;
+			case MUSCLE_VALUE:
+				return MUSCLE;
+			case ORGAN_VALUE:
+				return ORGAN;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private Part(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // Part
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Plant.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Plant.java
new file mode 100644
index 0000000..4d81e27
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Plant.java
@@ -0,0 +1,49 @@
+/**
+ */
+package anydsl;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Plant</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.Plant#getKind <em>Kind</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getPlant()
+ * @model
+ * @generated
+ */
+public interface Plant extends Source {
+	/**
+	 * Returns the value of the '<em><b>Kind</b></em>' attribute. The literals are from the enumeration
+	 * {@link anydsl.Kind}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Kind</em>' attribute isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Kind</em>' attribute.
+	 * @see anydsl.Kind
+	 * @see #setKind(Kind)
+	 * @see anydsl.AnydslPackage#getPlant_Kind()
+	 * @model
+	 * @generated
+	 */
+	Kind getKind();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Plant#getKind <em>Kind</em>}' attribute. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Kind</em>' attribute.
+	 * @see anydsl.Kind
+	 * @see #getKind()
+	 * @generated
+	 */
+	void setKind(Kind value);
+
+} // Plant
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Producer.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Producer.java
new file mode 100644
index 0000000..d42014f
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Producer.java
@@ -0,0 +1,96 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Producer</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.Producer#getAdress <em>Adress</em>}</li>
+ * <li>{@link anydsl.Producer#getCompany <em>Company</em>}</li>
+ * <li>{@link anydsl.Producer#getFoods <em>Foods</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getProducer()
+ * @model
+ * @generated
+ */
+public interface Producer extends NamedElement {
+	/**
+	 * Returns the value of the '<em><b>Adress</b></em>' containment reference. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Adress</em>' containment reference isn't clear, there really should be more
+	 * of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Adress</em>' containment reference.
+	 * @see #setAdress(Adress)
+	 * @see anydsl.AnydslPackage#getProducer_Adress()
+	 * @model containment="true"
+	 * @generated
+	 */
+	Adress getAdress();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Producer#getAdress <em>Adress</em>}' containment reference. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Adress</em>' containment reference.
+	 * @see #getAdress()
+	 * @generated
+	 */
+	void setAdress(Adress value);
+
+	/**
+	 * Returns the value of the '<em><b>Company</b></em>' reference. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Company</em>' reference isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Company</em>' reference.
+	 * @see #setCompany(Company)
+	 * @see anydsl.AnydslPackage#getProducer_Company()
+	 * @model
+	 * @generated
+	 */
+	Company getCompany();
+
+	/**
+	 * Sets the value of the '{@link anydsl.Producer#getCompany <em>Company</em>}' reference. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Company</em>' reference.
+	 * @see #getCompany()
+	 * @generated
+	 */
+	void setCompany(Company value);
+
+	/**
+	 * Returns the value of the '<em><b>Foods</b></em>' reference list. The list contents are of type
+	 * {@link anydsl.Food}. It is bidirectional and its opposite is '{@link anydsl.Food#getProducers
+	 * <em>Producers</em>}'. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Foods</em>' reference list isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Foods</em>' reference list.
+	 * @see anydsl.AnydslPackage#getProducer_Foods()
+	 * @see anydsl.Food#getProducers
+	 * @model opposite="producers"
+	 * @generated
+	 */
+	EList<Food> getFoods();
+
+} // Producer
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/ProductionCompany.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/ProductionCompany.java
new file mode 100644
index 0000000..0640949
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/ProductionCompany.java
@@ -0,0 +1,38 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Production Company</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.ProductionCompany#getProducers <em>Producers</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getProductionCompany()
+ * @model
+ * @generated
+ */
+public interface ProductionCompany extends Company {
+	/**
+	 * Returns the value of the '<em><b>Producers</b></em>' containment reference list. The list contents are
+	 * of type {@link anydsl.Producer}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Producers</em>' containment reference list isn't clear, there really should
+	 * be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Producers</em>' containment reference list.
+	 * @see anydsl.AnydslPackage#getProductionCompany_Producers()
+	 * @model containment="true"
+	 * @generated
+	 */
+	EList<Producer> getProducers();
+
+} // ProductionCompany
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Recipe.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Recipe.java
new file mode 100644
index 0000000..dd131c6
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Recipe.java
@@ -0,0 +1,38 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Recipe</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.Recipe#getIngredients <em>Ingredients</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getRecipe()
+ * @model
+ * @generated
+ */
+public interface Recipe extends NamedElement {
+	/**
+	 * Returns the value of the '<em><b>Ingredients</b></em>' reference list. The list contents are of type
+	 * {@link anydsl.Food}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Ingredients</em>' reference list isn't clear, there really should be more of
+	 * a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Ingredients</em>' reference list.
+	 * @see anydsl.AnydslPackage#getRecipe_Ingredients()
+	 * @model
+	 * @generated
+	 */
+	EList<Food> getIngredients();
+
+} // Recipe
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Restaurant.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Restaurant.java
new file mode 100644
index 0000000..961fa3b
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Restaurant.java
@@ -0,0 +1,56 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.EMap;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Restaurant</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.Restaurant#getChefs <em>Chefs</em>}</li>
+ * <li>{@link anydsl.Restaurant#getMenu <em>Menu</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getRestaurant()
+ * @model
+ * @generated
+ */
+public interface Restaurant extends Company {
+	/**
+	 * Returns the value of the '<em><b>Chefs</b></em>' containment reference list. The list contents are of
+	 * type {@link anydsl.Chef}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Chefs</em>' containment reference list isn't clear, there really should be
+	 * more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Chefs</em>' containment reference list.
+	 * @see anydsl.AnydslPackage#getRestaurant_Chefs()
+	 * @model containment="true"
+	 * @generated
+	 */
+	EList<Chef> getChefs();
+
+	/**
+	 * Returns the value of the '<em><b>Menu</b></em>' map. The key is of type {@link java.lang.String}, and
+	 * the value is of type {@link anydsl.Recipe}, <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Menu</em>' map isn't clear, there really should be more of a description
+	 * here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Menu</em>' map.
+	 * @see anydsl.AnydslPackage#getRestaurant_Menu()
+	 * @model mapType="anydsl.EStringToRecipeMap<org.eclipse.emf.ecore.EString, anydsl.Recipe>"
+	 * @generated
+	 */
+	EMap<String, Recipe> getMenu();
+
+} // Restaurant
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Source.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Source.java
new file mode 100644
index 0000000..d15865a
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/Source.java
@@ -0,0 +1,57 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Source</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.Source#getFoods <em>Foods</em>}</li>
+ * <li>{@link anydsl.Source#getOrigin <em>Origin</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getSource()
+ * @model interface="true" abstract="true"
+ * @generated
+ */
+public interface Source extends MultiNamedElement {
+	/**
+	 * Returns the value of the '<em><b>Foods</b></em>' reference list. The list contents are of type
+	 * {@link anydsl.Food}. It is bidirectional and its opposite is '{@link anydsl.Food#getSource
+	 * <em>Source</em>}'. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Foods</em>' reference list isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Foods</em>' reference list.
+	 * @see anydsl.AnydslPackage#getSource_Foods()
+	 * @see anydsl.Food#getSource
+	 * @model opposite="source"
+	 * @generated
+	 */
+	EList<Food> getFoods();
+
+	/**
+	 * Returns the value of the '<em><b>Origin</b></em>' attribute list. The list contents are of type
+	 * {@link anydsl.Country}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Origin</em>' attribute list isn't clear, there really should be more of a
+	 * description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Origin</em>' attribute list.
+	 * @see anydsl.AnydslPackage#getSource_Origin()
+	 * @model dataType="anydsl.CountryData"
+	 * @generated
+	 */
+	EList<anydsl.Country> getOrigin();
+
+} // Source
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/World.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/World.java
new file mode 100644
index 0000000..ad72636
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/World.java
@@ -0,0 +1,72 @@
+/**
+ */
+package anydsl;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>World</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link anydsl.World#getCompanies <em>Companies</em>}</li>
+ * <li>{@link anydsl.World#getFoods <em>Foods</em>}</li>
+ * <li>{@link anydsl.World#getSources <em>Sources</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see anydsl.AnydslPackage#getWorld()
+ * @model annotation="http://www.obeo.fr/dsl/dnc/archetype archetype='MomentInterval'"
+ * @generated
+ */
+public interface World extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Companies</b></em>' containment reference list. The list contents are
+	 * of type {@link anydsl.Company}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Companies</em>' containment reference list isn't clear, there really should
+	 * be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Companies</em>' containment reference list.
+	 * @see anydsl.AnydslPackage#getWorld_Companies()
+	 * @model containment="true"
+	 * @generated
+	 */
+	EList<Company> getCompanies();
+
+	/**
+	 * Returns the value of the '<em><b>Foods</b></em>' containment reference list. The list contents are of
+	 * type {@link anydsl.Food}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Foods</em>' containment reference list isn't clear, there really should be
+	 * more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Foods</em>' containment reference list.
+	 * @see anydsl.AnydslPackage#getWorld_Foods()
+	 * @model containment="true"
+	 * @generated
+	 */
+	EList<Food> getFoods();
+
+	/**
+	 * Returns the value of the '<em><b>Sources</b></em>' containment reference list. The list contents are of
+	 * type {@link anydsl.Source}. <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Sources</em>' containment reference list isn't clear, there really should be
+	 * more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Sources</em>' containment reference list.
+	 * @see anydsl.AnydslPackage#getWorld_Sources()
+	 * @model containment="true"
+	 * @generated
+	 */
+	EList<Source> getSources();
+
+} // World
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AdressImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AdressImpl.java
new file mode 100644
index 0000000..6f4dcf6
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AdressImpl.java
@@ -0,0 +1,271 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.Adress;
+import anydsl.AnydslPackage;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Adress</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link anydsl.impl.AdressImpl#getZipCode <em>Zip Code</em>}</li>
+ * <li>{@link anydsl.impl.AdressImpl#getCity <em>City</em>}</li>
+ * <li>{@link anydsl.impl.AdressImpl#getCountry <em>Country</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AdressImpl extends MinimalEObjectImpl.Container implements Adress {
+	/**
+	 * The default value of the '{@link #getZipCode() <em>Zip Code</em>}' attribute. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getZipCode()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ZIP_CODE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getZipCode() <em>Zip Code</em>}' attribute. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getZipCode()
+	 * @generated
+	 * @ordered
+	 */
+	protected String zipCode = ZIP_CODE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getCity() <em>City</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getCity()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CITY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCity() <em>City</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getCity()
+	 * @generated
+	 * @ordered
+	 */
+	protected String city = CITY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getCountry() <em>Country</em>}' attribute. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getCountry()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final anydsl.Country COUNTRY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCountry() <em>Country</em>}' attribute. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getCountry()
+	 * @generated
+	 * @ordered
+	 */
+	protected anydsl.Country country = COUNTRY_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected AdressImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AnydslPackage.Literals.ADRESS;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getZipCode() {
+		return zipCode;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setZipCode(String newZipCode) {
+		String oldZipCode = zipCode;
+		zipCode = newZipCode;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.ADRESS__ZIP_CODE, oldZipCode,
+					zipCode));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getCity() {
+		return city;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setCity(String newCity) {
+		String oldCity = city;
+		city = newCity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.ADRESS__CITY, oldCity, city));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public anydsl.Country getCountry() {
+		return country;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setCountry(anydsl.Country newCountry) {
+		anydsl.Country oldCountry = country;
+		country = newCountry;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.ADRESS__COUNTRY, oldCountry,
+					country));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case AnydslPackage.ADRESS__ZIP_CODE:
+				return getZipCode();
+			case AnydslPackage.ADRESS__CITY:
+				return getCity();
+			case AnydslPackage.ADRESS__COUNTRY:
+				return getCountry();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case AnydslPackage.ADRESS__ZIP_CODE:
+				setZipCode((String)newValue);
+				return;
+			case AnydslPackage.ADRESS__CITY:
+				setCity((String)newValue);
+				return;
+			case AnydslPackage.ADRESS__COUNTRY:
+				setCountry((anydsl.Country)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.ADRESS__ZIP_CODE:
+				setZipCode(ZIP_CODE_EDEFAULT);
+				return;
+			case AnydslPackage.ADRESS__CITY:
+				setCity(CITY_EDEFAULT);
+				return;
+			case AnydslPackage.ADRESS__COUNTRY:
+				setCountry(COUNTRY_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.ADRESS__ZIP_CODE:
+				return ZIP_CODE_EDEFAULT == null ? zipCode != null : !ZIP_CODE_EDEFAULT.equals(zipCode);
+			case AnydslPackage.ADRESS__CITY:
+				return CITY_EDEFAULT == null ? city != null : !CITY_EDEFAULT.equals(city);
+			case AnydslPackage.ADRESS__COUNTRY:
+				return COUNTRY_EDEFAULT == null ? country != null : !COUNTRY_EDEFAULT.equals(country);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (zipCode: ");
+		result.append(zipCode);
+		result.append(", city: ");
+		result.append(city);
+		result.append(", country: ");
+		result.append(country);
+		result.append(')');
+		return result.toString();
+	}
+
+} // AdressImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AnimalImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AnimalImpl.java
new file mode 100644
index 0000000..ef2675b
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AnimalImpl.java
@@ -0,0 +1,290 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.Animal;
+import anydsl.AnydslPackage;
+import anydsl.Food;
+import anydsl.Part;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Animal</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link anydsl.impl.AnimalImpl#getName <em>Name</em>}</li>
+ * <li>{@link anydsl.impl.AnimalImpl#getFoods <em>Foods</em>}</li>
+ * <li>{@link anydsl.impl.AnimalImpl#getOrigin <em>Origin</em>}</li>
+ * <li>{@link anydsl.impl.AnimalImpl#getPart <em>Part</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AnimalImpl extends MinimalEObjectImpl.Container implements Animal {
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> name;
+
+	/**
+	 * The cached value of the '{@link #getFoods() <em>Foods</em>}' reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getFoods()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Food> foods;
+
+	/**
+	 * The cached value of the '{@link #getOrigin() <em>Origin</em>}' attribute list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getOrigin()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<anydsl.Country> origin;
+
+	/**
+	 * The cached value of the '{@link #getPart() <em>Part</em>}' attribute list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getPart()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Part> part;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected AnimalImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AnydslPackage.Literals.ANIMAL;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<String> getName() {
+		if (name == null) {
+			name = new EDataTypeUniqueEList<String>(String.class, this, AnydslPackage.ANIMAL__NAME);
+		}
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Food> getFoods() {
+		if (foods == null) {
+			foods = new EObjectWithInverseResolvingEList<Food>(Food.class, this, AnydslPackage.ANIMAL__FOODS,
+					AnydslPackage.FOOD__SOURCE);
+		}
+		return foods;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<anydsl.Country> getOrigin() {
+		if (origin == null) {
+			origin = new EDataTypeUniqueEList<anydsl.Country>(anydsl.Country.class, this,
+					AnydslPackage.ANIMAL__ORIGIN);
+		}
+		return origin;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Part> getPart() {
+		if (part == null) {
+			part = new EDataTypeUniqueEList<Part>(Part.class, this, AnydslPackage.ANIMAL__PART);
+		}
+		return part;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.ANIMAL__FOODS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getFoods()).basicAdd(otherEnd,
+						msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.ANIMAL__FOODS:
+				return ((InternalEList<?>)getFoods()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case AnydslPackage.ANIMAL__NAME:
+				return getName();
+			case AnydslPackage.ANIMAL__FOODS:
+				return getFoods();
+			case AnydslPackage.ANIMAL__ORIGIN:
+				return getOrigin();
+			case AnydslPackage.ANIMAL__PART:
+				return getPart();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case AnydslPackage.ANIMAL__NAME:
+				getName().clear();
+				getName().addAll((Collection<? extends String>)newValue);
+				return;
+			case AnydslPackage.ANIMAL__FOODS:
+				getFoods().clear();
+				getFoods().addAll((Collection<? extends Food>)newValue);
+				return;
+			case AnydslPackage.ANIMAL__ORIGIN:
+				getOrigin().clear();
+				getOrigin().addAll((Collection<? extends anydsl.Country>)newValue);
+				return;
+			case AnydslPackage.ANIMAL__PART:
+				getPart().clear();
+				getPart().addAll((Collection<? extends Part>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.ANIMAL__NAME:
+				getName().clear();
+				return;
+			case AnydslPackage.ANIMAL__FOODS:
+				getFoods().clear();
+				return;
+			case AnydslPackage.ANIMAL__ORIGIN:
+				getOrigin().clear();
+				return;
+			case AnydslPackage.ANIMAL__PART:
+				getPart().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.ANIMAL__NAME:
+				return name != null && !name.isEmpty();
+			case AnydslPackage.ANIMAL__FOODS:
+				return foods != null && !foods.isEmpty();
+			case AnydslPackage.ANIMAL__ORIGIN:
+				return origin != null && !origin.isEmpty();
+			case AnydslPackage.ANIMAL__PART:
+				return part != null && !part.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (name: ");
+		result.append(name);
+		result.append(", origin: ");
+		result.append(origin);
+		result.append(", part: ");
+		result.append(part);
+		result.append(')');
+		return result.toString();
+	}
+
+} // AnimalImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AnydslFactoryImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AnydslFactoryImpl.java
new file mode 100644
index 0000000..20e2016
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AnydslFactoryImpl.java
@@ -0,0 +1,460 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.Adress;
+import anydsl.Animal;
+import anydsl.AnydslFactory;
+import anydsl.AnydslPackage;
+import anydsl.Caliber;
+import anydsl.Chef;
+import anydsl.Color;
+import anydsl.Continent;
+import anydsl.Food;
+import anydsl.Group;
+import anydsl.Kind;
+import anydsl.Part;
+import anydsl.Plant;
+import anydsl.Producer;
+import anydsl.ProductionCompany;
+import anydsl.Recipe;
+import anydsl.Restaurant;
+import anydsl.World;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Factory</b>. <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class AnydslFactoryImpl extends EFactoryImpl implements AnydslFactory {
+	/**
+	 * Creates the default factory implementation. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static AnydslFactory init() {
+		try {
+			AnydslFactory theAnydslFactory = (AnydslFactory)EPackage.Registry.INSTANCE.getEFactory(
+					AnydslPackage.eNS_URI);
+			if (theAnydslFactory != null) {
+				return theAnydslFactory;
+			}
+		} catch (Exception exception) {
+			EcorePlugin.INSTANCE.log(exception);
+		}
+		return new AnydslFactoryImpl();
+	}
+
+	/**
+	 * Creates an instance of the factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AnydslFactoryImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public EObject create(EClass eClass) {
+		switch (eClass.getClassifierID()) {
+			case AnydslPackage.WORLD:
+				return createWorld();
+			case AnydslPackage.PRODUCER:
+				return createProducer();
+			case AnydslPackage.ADRESS:
+				return createAdress();
+			case AnydslPackage.PRODUCTION_COMPANY:
+				return createProductionCompany();
+			case AnydslPackage.RESTAURANT:
+				return createRestaurant();
+			case AnydslPackage.CHEF:
+				return createChef();
+			case AnydslPackage.RECIPE:
+				return createRecipe();
+			case AnydslPackage.FOOD:
+				return createFood();
+			case AnydslPackage.PLANT:
+				return createPlant();
+			case AnydslPackage.ANIMAL:
+				return createAnimal();
+			case AnydslPackage.ESTRING_TO_RECIPE_MAP:
+				return (EObject)createEStringToRecipeMap();
+			default:
+				throw new IllegalArgumentException("The class '" + eClass.getName()
+						+ "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object createFromString(EDataType eDataType, String initialValue) {
+		switch (eDataType.getClassifierID()) {
+			case AnydslPackage.COLOR:
+				return createColorFromString(eDataType, initialValue);
+			case AnydslPackage.CALIBER:
+				return createCaliberFromString(eDataType, initialValue);
+			case AnydslPackage.GROUP:
+				return createGroupFromString(eDataType, initialValue);
+			case AnydslPackage.CONTINENT:
+				return createContinentFromString(eDataType, initialValue);
+			case AnydslPackage.KIND:
+				return createKindFromString(eDataType, initialValue);
+			case AnydslPackage.PART:
+				return createPartFromString(eDataType, initialValue);
+			case AnydslPackage.COUNTRY_DATA:
+				return createCountryDataFromString(eDataType, initialValue);
+			case AnydslPackage.SINGLE_STRING:
+				return createSingleStringFromString(eDataType, initialValue);
+			default:
+				throw new IllegalArgumentException("The datatype '" + eDataType.getName()
+						+ "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String convertToString(EDataType eDataType, Object instanceValue) {
+		switch (eDataType.getClassifierID()) {
+			case AnydslPackage.COLOR:
+				return convertColorToString(eDataType, instanceValue);
+			case AnydslPackage.CALIBER:
+				return convertCaliberToString(eDataType, instanceValue);
+			case AnydslPackage.GROUP:
+				return convertGroupToString(eDataType, instanceValue);
+			case AnydslPackage.CONTINENT:
+				return convertContinentToString(eDataType, instanceValue);
+			case AnydslPackage.KIND:
+				return convertKindToString(eDataType, instanceValue);
+			case AnydslPackage.PART:
+				return convertPartToString(eDataType, instanceValue);
+			case AnydslPackage.COUNTRY_DATA:
+				return convertCountryDataToString(eDataType, instanceValue);
+			case AnydslPackage.SINGLE_STRING:
+				return convertSingleStringToString(eDataType, instanceValue);
+			default:
+				throw new IllegalArgumentException("The datatype '" + eDataType.getName()
+						+ "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public World createWorld() {
+		WorldImpl world = new WorldImpl();
+		return world;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Producer createProducer() {
+		ProducerImpl producer = new ProducerImpl();
+		return producer;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Adress createAdress() {
+		AdressImpl adress = new AdressImpl();
+		return adress;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ProductionCompany createProductionCompany() {
+		ProductionCompanyImpl productionCompany = new ProductionCompanyImpl();
+		return productionCompany;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Restaurant createRestaurant() {
+		RestaurantImpl restaurant = new RestaurantImpl();
+		return restaurant;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Chef createChef() {
+		ChefImpl chef = new ChefImpl();
+		return chef;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Recipe createRecipe() {
+		RecipeImpl recipe = new RecipeImpl();
+		return recipe;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Food createFood() {
+		FoodImpl food = new FoodImpl();
+		return food;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Plant createPlant() {
+		PlantImpl plant = new PlantImpl();
+		return plant;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Animal createAnimal() {
+		AnimalImpl animal = new AnimalImpl();
+		return animal;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Map.Entry<String, Recipe> createEStringToRecipeMap() {
+		EStringToRecipeMapImpl eStringToRecipeMap = new EStringToRecipeMapImpl();
+		return eStringToRecipeMap;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Color createColorFromString(EDataType eDataType, String initialValue) {
+		Color result = Color.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue
+					+ "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertColorToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Caliber createCaliberFromString(EDataType eDataType, String initialValue) {
+		Caliber result = Caliber.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue
+					+ "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertCaliberToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Group createGroupFromString(EDataType eDataType, String initialValue) {
+		Group result = Group.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue
+					+ "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertGroupToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Continent createContinentFromString(EDataType eDataType, String initialValue) {
+		Continent result = Continent.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue
+					+ "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertContinentToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Kind createKindFromString(EDataType eDataType, String initialValue) {
+		Kind result = Kind.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue
+					+ "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertKindToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Part createPartFromString(EDataType eDataType, String initialValue) {
+		Part result = Part.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue
+					+ "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertPartToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public anydsl.Country createCountryDataFromString(EDataType eDataType, String initialValue) {
+		return (anydsl.Country)super.createFromString(eDataType, initialValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertCountryDataToString(EDataType eDataType, Object instanceValue) {
+		return super.convertToString(eDataType, instanceValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String createSingleStringFromString(EDataType eDataType, String initialValue) {
+		return (String)super.createFromString(eDataType, initialValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertSingleStringToString(EDataType eDataType, Object instanceValue) {
+		return super.convertToString(eDataType, instanceValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AnydslPackage getAnydslPackage() {
+		return (AnydslPackage)getEPackage();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @deprecated
+	 * @generated
+	 */
+	@Deprecated
+	public static AnydslPackage getPackage() {
+		return AnydslPackage.eINSTANCE;
+	}
+
+} // AnydslFactoryImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AnydslPackageImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AnydslPackageImpl.java
new file mode 100644
index 0000000..1bbbac6
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/AnydslPackageImpl.java
@@ -0,0 +1,1229 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.Adress;
+import anydsl.Animal;
+import anydsl.AnydslFactory;
+import anydsl.AnydslPackage;
+import anydsl.Caliber;
+import anydsl.Chef;
+import anydsl.Color;
+import anydsl.Company;
+import anydsl.Continent;
+import anydsl.Food;
+import anydsl.Group;
+import anydsl.Kind;
+import anydsl.MultiNamedElement;
+import anydsl.NamedElement;
+import anydsl.Part;
+import anydsl.Plant;
+import anydsl.Producer;
+import anydsl.ProductionCompany;
+import anydsl.Recipe;
+import anydsl.Restaurant;
+import anydsl.Source;
+import anydsl.World;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Package</b>. <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class AnydslPackageImpl extends EPackageImpl implements AnydslPackage {
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass worldEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass multiNamedElementEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass namedElementEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass producerEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass adressEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass companyEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass productionCompanyEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass restaurantEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass chefEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass recipeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass foodEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass sourceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass plantEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass animalEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass eStringToRecipeMapEClass = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum colorEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum caliberEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum groupEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum continentEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum kindEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum partEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EDataType countryDataEDataType = null;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EDataType singleStringEDataType = null;
+
+	/**
+	 * Creates an instance of the model <b>Package</b>, registered with
+	 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package package URI value.
+	 * <p>
+	 * Note: the correct way to create the package is via the static factory method {@link #init init()},
+	 * which also performs initialization of the package, or returns the registered package, if one already
+	 * exists. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.emf.ecore.EPackage.Registry
+	 * @see anydsl.AnydslPackage#eNS_URI
+	 * @see #init()
+	 * @generated
+	 */
+	private AnydslPackageImpl() {
+		super(eNS_URI, AnydslFactory.eINSTANCE);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static boolean isInited = false;
+
+	/**
+	 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it
+	 * depends.
+	 * <p>
+	 * This method is used to initialize {@link AnydslPackage#eINSTANCE} when that field is accessed. Clients
+	 * should not invoke it directly. Instead, they should simply access that field to obtain the package.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #eNS_URI
+	 * @see #createPackageContents()
+	 * @see #initializePackageContents()
+	 * @generated
+	 */
+	public static AnydslPackage init() {
+		if (isInited)
+			return (AnydslPackage)EPackage.Registry.INSTANCE.getEPackage(AnydslPackage.eNS_URI);
+
+		// Obtain or create and register package
+		AnydslPackageImpl theAnydslPackage = (AnydslPackageImpl)(EPackage.Registry.INSTANCE.get(
+				eNS_URI) instanceof AnydslPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI)
+						: new AnydslPackageImpl());
+
+		isInited = true;
+
+		// Create package meta-data objects
+		theAnydslPackage.createPackageContents();
+
+		// Initialize created meta-data
+		theAnydslPackage.initializePackageContents();
+
+		// Mark meta-data to indicate it can't be changed
+		theAnydslPackage.freeze();
+
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(AnydslPackage.eNS_URI, theAnydslPackage);
+		return theAnydslPackage;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getWorld() {
+		return worldEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getWorld_Companies() {
+		return (EReference)worldEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getWorld_Foods() {
+		return (EReference)worldEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getWorld_Sources() {
+		return (EReference)worldEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getMultiNamedElement() {
+		return multiNamedElementEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getMultiNamedElement_Name() {
+		return (EAttribute)multiNamedElementEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getNamedElement() {
+		return namedElementEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getNamedElement_Name() {
+		return (EAttribute)namedElementEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getProducer() {
+		return producerEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getProducer_Adress() {
+		return (EReference)producerEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getProducer_Company() {
+		return (EReference)producerEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getProducer_Foods() {
+		return (EReference)producerEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getAdress() {
+		return adressEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAdress_ZipCode() {
+		return (EAttribute)adressEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAdress_City() {
+		return (EAttribute)adressEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAdress_Country() {
+		return (EAttribute)adressEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getCompany() {
+		return companyEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getCompany_Adress() {
+		return (EReference)companyEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getCompany_World() {
+		return (EReference)companyEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getProductionCompany() {
+		return productionCompanyEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getProductionCompany_Producers() {
+		return (EReference)productionCompanyEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getRestaurant() {
+		return restaurantEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getRestaurant_Chefs() {
+		return (EReference)restaurantEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getRestaurant_Menu() {
+		return (EReference)restaurantEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getChef() {
+		return chefEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getChef_Adress() {
+		return (EReference)chefEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getChef_Recipes() {
+		return (EReference)chefEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getRecipe() {
+		return recipeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getRecipe_Ingredients() {
+		return (EReference)recipeEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getFood() {
+		return foodEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getFood_Color() {
+		return (EAttribute)foodEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getFood_Caliber() {
+		return (EAttribute)foodEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getFood_RelatedFoods() {
+		return (EReference)foodEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getFood_Group() {
+		return (EAttribute)foodEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getFood_Label() {
+		return (EAttribute)foodEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getFood_Source() {
+		return (EReference)foodEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getFood_Producers() {
+		return (EReference)foodEClass.getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EOperation getFood__Ripen__Color() {
+		return foodEClass.getEOperations().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EOperation getFood__PreferredColor() {
+		return foodEClass.getEOperations().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EOperation getFood__NewFood() {
+		return foodEClass.getEOperations().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EOperation getFood__SetColor__Food_Color() {
+		return foodEClass.getEOperations().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EOperation getFood__SetCaliber__Food_EList() {
+		return foodEClass.getEOperations().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EOperation getFood__AcceptedCaliber__Caliber() {
+		return foodEClass.getEOperations().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EOperation getFood__Label__String() {
+		return foodEClass.getEOperations().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EOperation getFood__PreferredLabel__String() {
+		return foodEClass.getEOperations().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getSource() {
+		return sourceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getSource_Foods() {
+		return (EReference)sourceEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getSource_Origin() {
+		return (EAttribute)sourceEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getPlant() {
+		return plantEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getPlant_Kind() {
+		return (EAttribute)plantEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getAnimal() {
+		return animalEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAnimal_Part() {
+		return (EAttribute)animalEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getEStringToRecipeMap() {
+		return eStringToRecipeMapEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getEStringToRecipeMap_Key() {
+		return (EAttribute)eStringToRecipeMapEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getEStringToRecipeMap_Value() {
+		return (EReference)eStringToRecipeMapEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getColor() {
+		return colorEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getCaliber() {
+		return caliberEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getGroup() {
+		return groupEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getContinent() {
+		return continentEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getKind() {
+		return kindEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getPart() {
+		return partEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EDataType getCountryData() {
+		return countryDataEDataType;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EDataType getSingleString() {
+		return singleStringEDataType;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AnydslFactory getAnydslFactory() {
+		return (AnydslFactory)getEFactoryInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private boolean isCreated = false;
+
+	/**
+	 * Creates the meta-model objects for the package. This method is guarded to have no affect on any
+	 * invocation but its first. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void createPackageContents() {
+		if (isCreated)
+			return;
+		isCreated = true;
+
+		// Create classes and their features
+		worldEClass = createEClass(WORLD);
+		createEReference(worldEClass, WORLD__COMPANIES);
+		createEReference(worldEClass, WORLD__FOODS);
+		createEReference(worldEClass, WORLD__SOURCES);
+
+		multiNamedElementEClass = createEClass(MULTI_NAMED_ELEMENT);
+		createEAttribute(multiNamedElementEClass, MULTI_NAMED_ELEMENT__NAME);
+
+		namedElementEClass = createEClass(NAMED_ELEMENT);
+		createEAttribute(namedElementEClass, NAMED_ELEMENT__NAME);
+
+		producerEClass = createEClass(PRODUCER);
+		createEReference(producerEClass, PRODUCER__ADRESS);
+		createEReference(producerEClass, PRODUCER__COMPANY);
+		createEReference(producerEClass, PRODUCER__FOODS);
+
+		adressEClass = createEClass(ADRESS);
+		createEAttribute(adressEClass, ADRESS__ZIP_CODE);
+		createEAttribute(adressEClass, ADRESS__CITY);
+		createEAttribute(adressEClass, ADRESS__COUNTRY);
+
+		companyEClass = createEClass(COMPANY);
+		createEReference(companyEClass, COMPANY__ADRESS);
+		createEReference(companyEClass, COMPANY__WORLD);
+
+		productionCompanyEClass = createEClass(PRODUCTION_COMPANY);
+		createEReference(productionCompanyEClass, PRODUCTION_COMPANY__PRODUCERS);
+
+		restaurantEClass = createEClass(RESTAURANT);
+		createEReference(restaurantEClass, RESTAURANT__CHEFS);
+		createEReference(restaurantEClass, RESTAURANT__MENU);
+
+		chefEClass = createEClass(CHEF);
+		createEReference(chefEClass, CHEF__ADRESS);
+		createEReference(chefEClass, CHEF__RECIPES);
+
+		recipeEClass = createEClass(RECIPE);
+		createEReference(recipeEClass, RECIPE__INGREDIENTS);
+
+		foodEClass = createEClass(FOOD);
+		createEAttribute(foodEClass, FOOD__COLOR);
+		createEAttribute(foodEClass, FOOD__CALIBER);
+		createEReference(foodEClass, FOOD__RELATED_FOODS);
+		createEAttribute(foodEClass, FOOD__GROUP);
+		createEAttribute(foodEClass, FOOD__LABEL);
+		createEReference(foodEClass, FOOD__SOURCE);
+		createEReference(foodEClass, FOOD__PRODUCERS);
+		createEOperation(foodEClass, FOOD___RIPEN__COLOR);
+		createEOperation(foodEClass, FOOD___PREFERRED_COLOR);
+		createEOperation(foodEClass, FOOD___NEW_FOOD);
+		createEOperation(foodEClass, FOOD___SET_COLOR__FOOD_COLOR);
+		createEOperation(foodEClass, FOOD___SET_CALIBER__FOOD_ELIST);
+		createEOperation(foodEClass, FOOD___ACCEPTED_CALIBER__CALIBER);
+		createEOperation(foodEClass, FOOD___LABEL__STRING);
+		createEOperation(foodEClass, FOOD___PREFERRED_LABEL__STRING);
+
+		sourceEClass = createEClass(SOURCE);
+		createEReference(sourceEClass, SOURCE__FOODS);
+		createEAttribute(sourceEClass, SOURCE__ORIGIN);
+
+		plantEClass = createEClass(PLANT);
+		createEAttribute(plantEClass, PLANT__KIND);
+
+		animalEClass = createEClass(ANIMAL);
+		createEAttribute(animalEClass, ANIMAL__PART);
+
+		eStringToRecipeMapEClass = createEClass(ESTRING_TO_RECIPE_MAP);
+		createEAttribute(eStringToRecipeMapEClass, ESTRING_TO_RECIPE_MAP__KEY);
+		createEReference(eStringToRecipeMapEClass, ESTRING_TO_RECIPE_MAP__VALUE);
+
+		// Create enums
+		colorEEnum = createEEnum(COLOR);
+		caliberEEnum = createEEnum(CALIBER);
+		groupEEnum = createEEnum(GROUP);
+		continentEEnum = createEEnum(CONTINENT);
+		kindEEnum = createEEnum(KIND);
+		partEEnum = createEEnum(PART);
+
+		// Create data types
+		countryDataEDataType = createEDataType(COUNTRY_DATA);
+		singleStringEDataType = createEDataType(SINGLE_STRING);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private boolean isInitialized = false;
+
+	/**
+	 * Complete the initialization of the package and its meta-model. This method is guarded to have no affect
+	 * on any invocation but its first. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void initializePackageContents() {
+		if (isInitialized)
+			return;
+		isInitialized = true;
+
+		// Initialize package
+		setName(eNAME);
+		setNsPrefix(eNS_PREFIX);
+		setNsURI(eNS_URI);
+
+		// Create type parameters
+
+		// Set bounds for type parameters
+
+		// Add supertypes to classes
+		producerEClass.getESuperTypes().add(this.getNamedElement());
+		companyEClass.getESuperTypes().add(this.getNamedElement());
+		productionCompanyEClass.getESuperTypes().add(this.getCompany());
+		restaurantEClass.getESuperTypes().add(this.getCompany());
+		chefEClass.getESuperTypes().add(this.getNamedElement());
+		recipeEClass.getESuperTypes().add(this.getNamedElement());
+		foodEClass.getESuperTypes().add(this.getNamedElement());
+		sourceEClass.getESuperTypes().add(this.getMultiNamedElement());
+		plantEClass.getESuperTypes().add(this.getSource());
+		animalEClass.getESuperTypes().add(this.getSource());
+
+		// Initialize classes, features, and operations; add parameters
+		initEClass(worldEClass, World.class, "World", !IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getWorld_Companies(), this.getCompany(), null, "companies", null, 0, -1, World.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getWorld_Foods(), this.getFood(), null, "foods", null, 0, -1, World.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getWorld_Sources(), this.getSource(), null, "sources", null, 0, -1, World.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(multiNamedElementEClass, MultiNamedElement.class, "MultiNamedElement", IS_ABSTRACT,
+				IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getMultiNamedElement_Name(), this.getSingleString(), "name", null, 0, -1,
+				MultiNamedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(namedElementEClass, NamedElement.class, "NamedElement", IS_ABSTRACT, IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getNamedElement_Name(), this.getSingleString(), "name", null, 0, 1, NamedElement.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+				IS_ORDERED);
+
+		initEClass(producerEClass, Producer.class, "Producer", !IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getProducer_Adress(), this.getAdress(), null, "adress", null, 0, 1, Producer.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getProducer_Company(), this.getCompany(), null, "company", null, 0, 1, Producer.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getProducer_Foods(), this.getFood(), this.getFood_Producers(), "foods", null, 0, -1,
+				Producer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
+				!IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(adressEClass, Adress.class, "Adress", !IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getAdress_ZipCode(), ecorePackage.getEString(), "zipCode", null, 0, 1, Adress.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+				IS_ORDERED);
+		initEAttribute(getAdress_City(), ecorePackage.getEString(), "city", null, 0, 1, Adress.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+				IS_ORDERED);
+		initEAttribute(getAdress_Country(), this.getCountryData(), "country", null, 0, 1, Adress.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+				IS_ORDERED);
+
+		initEClass(companyEClass, Company.class, "Company", IS_ABSTRACT, IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getCompany_Adress(), this.getAdress(), null, "adress", null, 0, 1, Company.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getCompany_World(), this.getWorld(), null, "world", null, 0, 1, Company.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(productionCompanyEClass, ProductionCompany.class, "ProductionCompany", !IS_ABSTRACT,
+				!IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getProductionCompany_Producers(), this.getProducer(), null, "producers", null, 0, -1,
+				ProductionCompany.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
+				!IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(restaurantEClass, Restaurant.class, "Restaurant", !IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getRestaurant_Chefs(), this.getChef(), null, "chefs", null, 0, -1, Restaurant.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getRestaurant_Menu(), this.getEStringToRecipeMap(), null, "menu", null, 0, -1,
+				Restaurant.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
+				!IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(chefEClass, Chef.class, "Chef", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getChef_Adress(), this.getAdress(), null, "adress", null, 0, 1, Chef.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getChef_Recipes(), this.getRecipe(), null, "recipes", null, 0, -1, Chef.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(recipeEClass, Recipe.class, "Recipe", !IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getRecipe_Ingredients(), this.getFood(), null, "ingredients", null, 0, -1,
+				Recipe.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
+				!IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(foodEClass, Food.class, "Food", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getFood_Color(), this.getColor(), "color", null, 0, -1, Food.class, !IS_TRANSIENT,
+				!IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getFood_Caliber(), this.getCaliber(), "caliber", null, 0, 1, Food.class, !IS_TRANSIENT,
+				!IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getFood_RelatedFoods(), this.getFood(), null, "relatedFoods", null, 0, -1, Food.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getFood_Group(), this.getGroup(), "group", null, 0, 1, Food.class, !IS_TRANSIENT,
+				!IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getFood_Label(), ecorePackage.getEString(), "label", null, 0, 1, Food.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+				IS_ORDERED);
+		initEReference(getFood_Source(), this.getSource(), this.getSource_Foods(), "source", null, 0, 1,
+				Food.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
+				!IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getFood_Producers(), this.getProducer(), this.getProducer_Foods(), "producers", null,
+				0, -1, Food.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
+				IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		EOperation op = initEOperation(getFood__Ripen__Color(), ecorePackage.getEBoolean(), "ripen", 0, 1,
+				IS_UNIQUE, IS_ORDERED);
+		addEParameter(op, this.getColor(), "color", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+		initEOperation(getFood__PreferredColor(), this.getColor(), "preferredColor", 0, 1, IS_UNIQUE,
+				IS_ORDERED);
+
+		initEOperation(getFood__NewFood(), this.getFood(), "newFood", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+		op = initEOperation(getFood__SetColor__Food_Color(), null, "setColor", 0, 1, IS_UNIQUE, IS_ORDERED);
+		addEParameter(op, this.getFood(), "food", 0, 1, IS_UNIQUE, IS_ORDERED);
+		addEParameter(op, this.getColor(), "newColor", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+		op = initEOperation(getFood__SetCaliber__Food_EList(), null, "setCaliber", 0, 1, IS_UNIQUE,
+				IS_ORDERED);
+		addEParameter(op, this.getFood(), "food", 0, 1, IS_UNIQUE, IS_ORDERED);
+		addEParameter(op, this.getCaliber(), "newCaliber", 0, -1, IS_UNIQUE, IS_ORDERED);
+
+		op = initEOperation(getFood__AcceptedCaliber__Caliber(), ecorePackage.getEBoolean(),
+				"acceptedCaliber", 0, 1, IS_UNIQUE, IS_ORDERED);
+		addEParameter(op, this.getCaliber(), "caliber", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+		op = initEOperation(getFood__Label__String(), null, "label", 0, 1, IS_UNIQUE, IS_ORDERED);
+		addEParameter(op, ecorePackage.getEString(), "text", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+		op = initEOperation(getFood__PreferredLabel__String(), ecorePackage.getEString(), "preferredLabel", 0,
+				1, IS_UNIQUE, IS_ORDERED);
+		addEParameter(op, ecorePackage.getEString(), "text", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+		initEClass(sourceEClass, Source.class, "Source", IS_ABSTRACT, IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSource_Foods(), this.getFood(), this.getFood_Source(), "foods", null, 0, -1,
+				Source.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
+				!IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getSource_Origin(), this.getCountryData(), "origin", null, 0, -1, Source.class,
+				!IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+				IS_ORDERED);
+
+		initEClass(plantEClass, Plant.class, "Plant", !IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getPlant_Kind(), this.getKind(), "kind", null, 0, 1, Plant.class, !IS_TRANSIENT,
+				!IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(animalEClass, Animal.class, "Animal", !IS_ABSTRACT, !IS_INTERFACE,
+				IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getAnimal_Part(), this.getPart(), "part", null, 0, -1, Animal.class, !IS_TRANSIENT,
+				!IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(eStringToRecipeMapEClass, Map.Entry.class, "EStringToRecipeMap", !IS_ABSTRACT,
+				!IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getEStringToRecipeMap_Key(), ecorePackage.getEString(), "key", null, 0, 1,
+				Map.Entry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getEStringToRecipeMap_Value(), this.getRecipe(), null, "value", null, 0, 1,
+				Map.Entry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
+				IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		// Initialize enums and add enum literals
+		initEEnum(colorEEnum, Color.class, "Color");
+		addEEnumLiteral(colorEEnum, Color.BLACK);
+		addEEnumLiteral(colorEEnum, Color.RED);
+		addEEnumLiteral(colorEEnum, Color.GREEN);
+		addEEnumLiteral(colorEEnum, Color.YELLOW);
+		addEEnumLiteral(colorEEnum, Color.ORANGE);
+		addEEnumLiteral(colorEEnum, Color.BROWN);
+		addEEnumLiteral(colorEEnum, Color.PINK);
+		addEEnumLiteral(colorEEnum, Color.PAL_PINK);
+		addEEnumLiteral(colorEEnum, Color.VERY_YELLOW);
+		addEEnumLiteral(colorEEnum, Color.WHITE);
+
+		initEEnum(caliberEEnum, Caliber.class, "Caliber");
+		addEEnumLiteral(caliberEEnum, Caliber.S);
+		addEEnumLiteral(caliberEEnum, Caliber.M);
+		addEEnumLiteral(caliberEEnum, Caliber.L);
+		addEEnumLiteral(caliberEEnum, Caliber.XL);
+
+		initEEnum(groupEEnum, Group.class, "Group");
+		addEEnumLiteral(groupEEnum, Group.WATER);
+		addEEnumLiteral(groupEEnum, Group.DAIRY);
+		addEEnumLiteral(groupEEnum, Group.FRUIT);
+		addEEnumLiteral(groupEEnum, Group.GRAIN);
+		addEEnumLiteral(groupEEnum, Group.PROTEIN);
+		addEEnumLiteral(groupEEnum, Group.SWEET);
+		addEEnumLiteral(groupEEnum, Group.VEGETABLE);
+		addEEnumLiteral(groupEEnum, Group.ALCOHOL);
+
+		initEEnum(continentEEnum, Continent.class, "Continent");
+		addEEnumLiteral(continentEEnum, Continent.EUROPE);
+		addEEnumLiteral(continentEEnum, Continent.ASIA);
+		addEEnumLiteral(continentEEnum, Continent.AFRICA);
+		addEEnumLiteral(continentEEnum, Continent.AMERICA);
+		addEEnumLiteral(continentEEnum, Continent.AUSTRALIA);
+		addEEnumLiteral(continentEEnum, Continent.ANTARCTICA);
+
+		initEEnum(kindEEnum, Kind.class, "Kind");
+		addEEnumLiteral(kindEEnum, Kind.OTHER);
+		addEEnumLiteral(kindEEnum, Kind.SEED);
+		addEEnumLiteral(kindEEnum, Kind.OILSEED);
+		addEEnumLiteral(kindEEnum, Kind.TREE);
+		addEEnumLiteral(kindEEnum, Kind.ROOT);
+		addEEnumLiteral(kindEEnum, Kind.BULB);
+		addEEnumLiteral(kindEEnum, Kind.LEAF);
+		addEEnumLiteral(kindEEnum, Kind.STEM);
+		addEEnumLiteral(kindEEnum, Kind.FLOWER);
+		addEEnumLiteral(kindEEnum, Kind.INFLORESCENCE);
+		addEEnumLiteral(kindEEnum, Kind.SPICE);
+
+		initEEnum(partEEnum, Part.class, "Part");
+		addEEnumLiteral(partEEnum, Part.OTHER);
+		addEEnumLiteral(partEEnum, Part.MUSCLE);
+		addEEnumLiteral(partEEnum, Part.ORGAN);
+
+		// Initialize data types
+		initEDataType(countryDataEDataType, anydsl.Country.class, "CountryData", IS_SERIALIZABLE,
+				!IS_GENERATED_INSTANCE_CLASS);
+		initEDataType(singleStringEDataType, String.class, "SingleString", IS_SERIALIZABLE,
+				!IS_GENERATED_INSTANCE_CLASS);
+
+		// Create resource
+		createResource(eNS_URI);
+
+		// Create annotations
+		// http://www.obeo.fr/dsl/dnc/archetype
+		createArchetypeAnnotations();
+	}
+
+	/**
+	 * Initializes the annotations for <b>http://www.obeo.fr/dsl/dnc/archetype</b>. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void createArchetypeAnnotations() {
+		String source = "http://www.obeo.fr/dsl/dnc/archetype";
+		addAnnotation(worldEClass, source, new String[] {"archetype", "MomentInterval" });
+	}
+
+} // AnydslPackageImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/ChefImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/ChefImpl.java
new file mode 100644
index 0000000..03da075
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/ChefImpl.java
@@ -0,0 +1,291 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.Adress;
+import anydsl.AnydslPackage;
+import anydsl.Chef;
+import anydsl.Recipe;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Chef</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link anydsl.impl.ChefImpl#getName <em>Name</em>}</li>
+ * <li>{@link anydsl.impl.ChefImpl#getAdress <em>Adress</em>}</li>
+ * <li>{@link anydsl.impl.ChefImpl#getRecipes <em>Recipes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ChefImpl extends MinimalEObjectImpl.Container implements Chef {
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAdress() <em>Adress</em>}' containment reference. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getAdress()
+	 * @generated
+	 * @ordered
+	 */
+	protected Adress adress;
+
+	/**
+	 * The cached value of the '{@link #getRecipes() <em>Recipes</em>}' containment reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getRecipes()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Recipe> recipes;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ChefImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AnydslPackage.Literals.CHEF;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.CHEF__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Adress getAdress() {
+		return adress;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public NotificationChain basicSetAdress(Adress newAdress, NotificationChain msgs) {
+		Adress oldAdress = adress;
+		adress = newAdress;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+					AnydslPackage.CHEF__ADRESS, oldAdress, newAdress);
+			if (msgs == null)
+				msgs = notification;
+			else
+				msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setAdress(Adress newAdress) {
+		if (newAdress != adress) {
+			NotificationChain msgs = null;
+			if (adress != null)
+				msgs = ((InternalEObject)adress).eInverseRemove(this, EOPPOSITE_FEATURE_BASE
+						- AnydslPackage.CHEF__ADRESS, null, msgs);
+			if (newAdress != null)
+				msgs = ((InternalEObject)newAdress).eInverseAdd(this, EOPPOSITE_FEATURE_BASE
+						- AnydslPackage.CHEF__ADRESS, null, msgs);
+			msgs = basicSetAdress(newAdress, msgs);
+			if (msgs != null)
+				msgs.dispatch();
+		} else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.CHEF__ADRESS, newAdress,
+					newAdress));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Recipe> getRecipes() {
+		if (recipes == null) {
+			recipes = new EObjectContainmentEList<Recipe>(Recipe.class, this, AnydslPackage.CHEF__RECIPES);
+		}
+		return recipes;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.CHEF__ADRESS:
+				return basicSetAdress(null, msgs);
+			case AnydslPackage.CHEF__RECIPES:
+				return ((InternalEList<?>)getRecipes()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case AnydslPackage.CHEF__NAME:
+				return getName();
+			case AnydslPackage.CHEF__ADRESS:
+				return getAdress();
+			case AnydslPackage.CHEF__RECIPES:
+				return getRecipes();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case AnydslPackage.CHEF__NAME:
+				setName((String)newValue);
+				return;
+			case AnydslPackage.CHEF__ADRESS:
+				setAdress((Adress)newValue);
+				return;
+			case AnydslPackage.CHEF__RECIPES:
+				getRecipes().clear();
+				getRecipes().addAll((Collection<? extends Recipe>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.CHEF__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case AnydslPackage.CHEF__ADRESS:
+				setAdress((Adress)null);
+				return;
+			case AnydslPackage.CHEF__RECIPES:
+				getRecipes().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.CHEF__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case AnydslPackage.CHEF__ADRESS:
+				return adress != null;
+			case AnydslPackage.CHEF__RECIPES:
+				return recipes != null && !recipes.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (name: ");
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} // ChefImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/EStringToRecipeMapImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/EStringToRecipeMapImpl.java
new file mode 100644
index 0000000..052ecbf
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/EStringToRecipeMapImpl.java
@@ -0,0 +1,307 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.AnydslPackage;
+import anydsl.Recipe;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.BasicEMap;
+import org.eclipse.emf.common.util.EMap;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>EString To Recipe Map</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link anydsl.impl.EStringToRecipeMapImpl#getTypedKey <em>Key</em>}</li>
+ * <li>{@link anydsl.impl.EStringToRecipeMapImpl#getTypedValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EStringToRecipeMapImpl extends MinimalEObjectImpl.Container implements BasicEMap.Entry<String, Recipe> {
+	/**
+	 * The default value of the '{@link #getTypedKey() <em>Key</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getTypedKey()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String KEY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getTypedKey() <em>Key</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getTypedKey()
+	 * @generated
+	 * @ordered
+	 */
+	protected String key = KEY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getTypedValue() <em>Value</em>}' reference. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getTypedValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected Recipe value;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected EStringToRecipeMapImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AnydslPackage.Literals.ESTRING_TO_RECIPE_MAP;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getTypedKey() {
+		return key;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setTypedKey(String newKey) {
+		String oldKey = key;
+		key = newKey;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.ESTRING_TO_RECIPE_MAP__KEY,
+					oldKey, key));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Recipe getTypedValue() {
+		if (value != null && value.eIsProxy()) {
+			InternalEObject oldValue = (InternalEObject)value;
+			value = (Recipe)eResolveProxy(oldValue);
+			if (value != oldValue) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE,
+							AnydslPackage.ESTRING_TO_RECIPE_MAP__VALUE, oldValue, value));
+			}
+		}
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Recipe basicGetTypedValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setTypedValue(Recipe newValue) {
+		Recipe oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.ESTRING_TO_RECIPE_MAP__VALUE,
+					oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case AnydslPackage.ESTRING_TO_RECIPE_MAP__KEY:
+				return getTypedKey();
+			case AnydslPackage.ESTRING_TO_RECIPE_MAP__VALUE:
+				if (resolve)
+					return getTypedValue();
+				return basicGetTypedValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case AnydslPackage.ESTRING_TO_RECIPE_MAP__KEY:
+				setTypedKey((String)newValue);
+				return;
+			case AnydslPackage.ESTRING_TO_RECIPE_MAP__VALUE:
+				setTypedValue((Recipe)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.ESTRING_TO_RECIPE_MAP__KEY:
+				setTypedKey(KEY_EDEFAULT);
+				return;
+			case AnydslPackage.ESTRING_TO_RECIPE_MAP__VALUE:
+				setTypedValue((Recipe)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.ESTRING_TO_RECIPE_MAP__KEY:
+				return KEY_EDEFAULT == null ? key != null : !KEY_EDEFAULT.equals(key);
+			case AnydslPackage.ESTRING_TO_RECIPE_MAP__VALUE:
+				return value != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (key: ");
+		result.append(key);
+		result.append(')');
+		return result.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected int hash = -1;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getHash() {
+		if (hash == -1) {
+			Object theKey = getKey();
+			hash = (theKey == null ? 0 : theKey.hashCode());
+		}
+		return hash;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setHash(int hash) {
+		this.hash = hash;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getKey() {
+		return getTypedKey();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setKey(String key) {
+		setTypedKey(key);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Recipe getValue() {
+		return getTypedValue();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Recipe setValue(Recipe value) {
+		Recipe oldValue = getValue();
+		setTypedValue(value);
+		return oldValue;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	public EMap<String, Recipe> getEMap() {
+		EObject container = eContainer();
+		return container == null ? null : (EMap<String, Recipe>)container.eGet(eContainmentFeature());
+	}
+
+} // EStringToRecipeMapImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/FoodImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/FoodImpl.java
new file mode 100644
index 0000000..4708ff3
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/FoodImpl.java
@@ -0,0 +1,695 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.AnydslPackage;
+import anydsl.Caliber;
+import anydsl.Color;
+import anydsl.Food;
+import anydsl.Group;
+import anydsl.Producer;
+import anydsl.Source;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Food</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link anydsl.impl.FoodImpl#getName <em>Name</em>}</li>
+ * <li>{@link anydsl.impl.FoodImpl#getColor <em>Color</em>}</li>
+ * <li>{@link anydsl.impl.FoodImpl#getCaliber <em>Caliber</em>}</li>
+ * <li>{@link anydsl.impl.FoodImpl#getRelatedFoods <em>Related Foods</em>}</li>
+ * <li>{@link anydsl.impl.FoodImpl#getGroup <em>Group</em>}</li>
+ * <li>{@link anydsl.impl.FoodImpl#getLabel <em>Label</em>}</li>
+ * <li>{@link anydsl.impl.FoodImpl#getSource <em>Source</em>}</li>
+ * <li>{@link anydsl.impl.FoodImpl#getProducers <em>Producers</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FoodImpl extends MinimalEObjectImpl.Container implements Food {
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getColor() <em>Color</em>}' attribute list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getColor()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Color> color;
+
+	/**
+	 * The default value of the '{@link #getCaliber() <em>Caliber</em>}' attribute. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getCaliber()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final Caliber CALIBER_EDEFAULT = Caliber.S;
+
+	/**
+	 * The cached value of the '{@link #getCaliber() <em>Caliber</em>}' attribute. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getCaliber()
+	 * @generated
+	 * @ordered
+	 */
+	protected Caliber caliber = CALIBER_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getRelatedFoods() <em>Related Foods</em>}' reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getRelatedFoods()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Food> relatedFoods;
+
+	/**
+	 * The default value of the '{@link #getGroup() <em>Group</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getGroup()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final Group GROUP_EDEFAULT = Group.WATER;
+
+	/**
+	 * The cached value of the '{@link #getGroup() <em>Group</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getGroup()
+	 * @generated
+	 * @ordered
+	 */
+	protected Group group = GROUP_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getLabel() <em>Label</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LABEL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLabel() <em>Label</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getLabel()
+	 * @generated
+	 * @ordered
+	 */
+	protected String label = LABEL_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getSource() <em>Source</em>}' reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getSource()
+	 * @generated
+	 * @ordered
+	 */
+	protected Source source;
+
+	/**
+	 * The cached value of the '{@link #getProducers() <em>Producers</em>}' reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getProducers()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Producer> producers;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected FoodImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AnydslPackage.Literals.FOOD;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.FOOD__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Color> getColor() {
+		if (color == null) {
+			color = new EDataTypeUniqueEList<Color>(Color.class, this, AnydslPackage.FOOD__COLOR);
+		}
+		return color;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Caliber getCaliber() {
+		return caliber;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setCaliber(Caliber newCaliber) {
+		Caliber oldCaliber = caliber;
+		caliber = newCaliber == null ? CALIBER_EDEFAULT : newCaliber;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.FOOD__CALIBER, oldCaliber,
+					caliber));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Food> getRelatedFoods() {
+		if (relatedFoods == null) {
+			relatedFoods = new EObjectResolvingEList<Food>(Food.class, this,
+					AnydslPackage.FOOD__RELATED_FOODS);
+		}
+		return relatedFoods;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Group getGroup() {
+		return group;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setGroup(Group newGroup) {
+		Group oldGroup = group;
+		group = newGroup == null ? GROUP_EDEFAULT : newGroup;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.FOOD__GROUP, oldGroup,
+					group));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLabel() {
+		return label;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setLabel(String newLabel) {
+		String oldLabel = label;
+		label = newLabel;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.FOOD__LABEL, oldLabel,
+					label));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Source getSource() {
+		if (source != null && source.eIsProxy()) {
+			InternalEObject oldSource = (InternalEObject)source;
+			source = (Source)eResolveProxy(oldSource);
+			if (source != oldSource) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AnydslPackage.FOOD__SOURCE,
+							oldSource, source));
+			}
+		}
+		return source;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Source basicGetSource() {
+		return source;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public NotificationChain basicSetSource(Source newSource, NotificationChain msgs) {
+		Source oldSource = source;
+		source = newSource;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+					AnydslPackage.FOOD__SOURCE, oldSource, newSource);
+			if (msgs == null)
+				msgs = notification;
+			else
+				msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setSource(Source newSource) {
+		if (newSource != source) {
+			NotificationChain msgs = null;
+			if (source != null)
+				msgs = ((InternalEObject)source).eInverseRemove(this, AnydslPackage.SOURCE__FOODS,
+						Source.class, msgs);
+			if (newSource != null)
+				msgs = ((InternalEObject)newSource).eInverseAdd(this, AnydslPackage.SOURCE__FOODS,
+						Source.class, msgs);
+			msgs = basicSetSource(newSource, msgs);
+			if (msgs != null)
+				msgs.dispatch();
+		} else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.FOOD__SOURCE, newSource,
+					newSource));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Producer> getProducers() {
+		if (producers == null) {
+			producers = new EObjectWithInverseResolvingEList.ManyInverse<Producer>(Producer.class, this,
+					AnydslPackage.FOOD__PRODUCERS, AnydslPackage.PRODUCER__FOODS);
+		}
+		return producers;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean ripen(Color color) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Color preferredColor() {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Food newFood() {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setColor(Food food, Color newColor) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setCaliber(Food food, EList<Caliber> newCaliber) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean acceptedCaliber(Caliber caliber) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void label(String text) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String preferredLabel(String text) {
+		// TODO: implement this method
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.FOOD__SOURCE:
+				if (source != null)
+					msgs = ((InternalEObject)source).eInverseRemove(this, AnydslPackage.SOURCE__FOODS,
+							Source.class, msgs);
+				return basicSetSource((Source)otherEnd, msgs);
+			case AnydslPackage.FOOD__PRODUCERS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getProducers()).basicAdd(otherEnd,
+						msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.FOOD__SOURCE:
+				return basicSetSource(null, msgs);
+			case AnydslPackage.FOOD__PRODUCERS:
+				return ((InternalEList<?>)getProducers()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case AnydslPackage.FOOD__NAME:
+				return getName();
+			case AnydslPackage.FOOD__COLOR:
+				return getColor();
+			case AnydslPackage.FOOD__CALIBER:
+				return getCaliber();
+			case AnydslPackage.FOOD__RELATED_FOODS:
+				return getRelatedFoods();
+			case AnydslPackage.FOOD__GROUP:
+				return getGroup();
+			case AnydslPackage.FOOD__LABEL:
+				return getLabel();
+			case AnydslPackage.FOOD__SOURCE:
+				if (resolve)
+					return getSource();
+				return basicGetSource();
+			case AnydslPackage.FOOD__PRODUCERS:
+				return getProducers();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case AnydslPackage.FOOD__NAME:
+				setName((String)newValue);
+				return;
+			case AnydslPackage.FOOD__COLOR:
+				getColor().clear();
+				getColor().addAll((Collection<? extends Color>)newValue);
+				return;
+			case AnydslPackage.FOOD__CALIBER:
+				setCaliber((Caliber)newValue);
+				return;
+			case AnydslPackage.FOOD__RELATED_FOODS:
+				getRelatedFoods().clear();
+				getRelatedFoods().addAll((Collection<? extends Food>)newValue);
+				return;
+			case AnydslPackage.FOOD__GROUP:
+				setGroup((Group)newValue);
+				return;
+			case AnydslPackage.FOOD__LABEL:
+				setLabel((String)newValue);
+				return;
+			case AnydslPackage.FOOD__SOURCE:
+				setSource((Source)newValue);
+				return;
+			case AnydslPackage.FOOD__PRODUCERS:
+				getProducers().clear();
+				getProducers().addAll((Collection<? extends Producer>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.FOOD__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case AnydslPackage.FOOD__COLOR:
+				getColor().clear();
+				return;
+			case AnydslPackage.FOOD__CALIBER:
+				setCaliber(CALIBER_EDEFAULT);
+				return;
+			case AnydslPackage.FOOD__RELATED_FOODS:
+				getRelatedFoods().clear();
+				return;
+			case AnydslPackage.FOOD__GROUP:
+				setGroup(GROUP_EDEFAULT);
+				return;
+			case AnydslPackage.FOOD__LABEL:
+				setLabel(LABEL_EDEFAULT);
+				return;
+			case AnydslPackage.FOOD__SOURCE:
+				setSource((Source)null);
+				return;
+			case AnydslPackage.FOOD__PRODUCERS:
+				getProducers().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.FOOD__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case AnydslPackage.FOOD__COLOR:
+				return color != null && !color.isEmpty();
+			case AnydslPackage.FOOD__CALIBER:
+				return caliber != CALIBER_EDEFAULT;
+			case AnydslPackage.FOOD__RELATED_FOODS:
+				return relatedFoods != null && !relatedFoods.isEmpty();
+			case AnydslPackage.FOOD__GROUP:
+				return group != GROUP_EDEFAULT;
+			case AnydslPackage.FOOD__LABEL:
+				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+			case AnydslPackage.FOOD__SOURCE:
+				return source != null;
+			case AnydslPackage.FOOD__PRODUCERS:
+				return producers != null && !producers.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	@SuppressWarnings("unchecked")
+	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+		switch (operationID) {
+			case AnydslPackage.FOOD___RIPEN__COLOR:
+				return ripen((Color)arguments.get(0));
+			case AnydslPackage.FOOD___PREFERRED_COLOR:
+				return preferredColor();
+			case AnydslPackage.FOOD___NEW_FOOD:
+				return newFood();
+			case AnydslPackage.FOOD___SET_COLOR__FOOD_COLOR:
+				setColor((Food)arguments.get(0), (Color)arguments.get(1));
+				return null;
+			case AnydslPackage.FOOD___SET_CALIBER__FOOD_ELIST:
+				setCaliber((Food)arguments.get(0), (EList<Caliber>)arguments.get(1));
+				return null;
+			case AnydslPackage.FOOD___ACCEPTED_CALIBER__CALIBER:
+				return acceptedCaliber((Caliber)arguments.get(0));
+			case AnydslPackage.FOOD___LABEL__STRING:
+				label((String)arguments.get(0));
+				return null;
+			case AnydslPackage.FOOD___PREFERRED_LABEL__STRING:
+				return preferredLabel((String)arguments.get(0));
+		}
+		return super.eInvoke(operationID, arguments);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (name: ");
+		result.append(name);
+		result.append(", color: ");
+		result.append(color);
+		result.append(", caliber: ");
+		result.append(caliber);
+		result.append(", group: ");
+		result.append(group);
+		result.append(", label: ");
+		result.append(label);
+		result.append(')');
+		return result.toString();
+	}
+
+} // FoodImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/PlantImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/PlantImpl.java
new file mode 100644
index 0000000..7f529ab
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/PlantImpl.java
@@ -0,0 +1,310 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.AnydslPackage;
+import anydsl.Food;
+import anydsl.Kind;
+import anydsl.Plant;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Plant</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link anydsl.impl.PlantImpl#getName <em>Name</em>}</li>
+ * <li>{@link anydsl.impl.PlantImpl#getFoods <em>Foods</em>}</li>
+ * <li>{@link anydsl.impl.PlantImpl#getOrigin <em>Origin</em>}</li>
+ * <li>{@link anydsl.impl.PlantImpl#getKind <em>Kind</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class PlantImpl extends MinimalEObjectImpl.Container implements Plant {
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute list. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> name;
+
+	/**
+	 * The cached value of the '{@link #getFoods() <em>Foods</em>}' reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getFoods()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Food> foods;
+
+	/**
+	 * The cached value of the '{@link #getOrigin() <em>Origin</em>}' attribute list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getOrigin()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<anydsl.Country> origin;
+
+	/**
+	 * The default value of the '{@link #getKind() <em>Kind</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final Kind KIND_EDEFAULT = Kind.OTHER;
+
+	/**
+	 * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected Kind kind = KIND_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected PlantImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AnydslPackage.Literals.PLANT;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<String> getName() {
+		if (name == null) {
+			name = new EDataTypeUniqueEList<String>(String.class, this, AnydslPackage.PLANT__NAME);
+		}
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Food> getFoods() {
+		if (foods == null) {
+			foods = new EObjectWithInverseResolvingEList<Food>(Food.class, this, AnydslPackage.PLANT__FOODS,
+					AnydslPackage.FOOD__SOURCE);
+		}
+		return foods;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<anydsl.Country> getOrigin() {
+		if (origin == null) {
+			origin = new EDataTypeUniqueEList<anydsl.Country>(anydsl.Country.class, this,
+					AnydslPackage.PLANT__ORIGIN);
+		}
+		return origin;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Kind getKind() {
+		return kind;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setKind(Kind newKind) {
+		Kind oldKind = kind;
+		kind = newKind == null ? KIND_EDEFAULT : newKind;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.PLANT__KIND, oldKind, kind));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.PLANT__FOODS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getFoods()).basicAdd(otherEnd,
+						msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.PLANT__FOODS:
+				return ((InternalEList<?>)getFoods()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case AnydslPackage.PLANT__NAME:
+				return getName();
+			case AnydslPackage.PLANT__FOODS:
+				return getFoods();
+			case AnydslPackage.PLANT__ORIGIN:
+				return getOrigin();
+			case AnydslPackage.PLANT__KIND:
+				return getKind();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case AnydslPackage.PLANT__NAME:
+				getName().clear();
+				getName().addAll((Collection<? extends String>)newValue);
+				return;
+			case AnydslPackage.PLANT__FOODS:
+				getFoods().clear();
+				getFoods().addAll((Collection<? extends Food>)newValue);
+				return;
+			case AnydslPackage.PLANT__ORIGIN:
+				getOrigin().clear();
+				getOrigin().addAll((Collection<? extends anydsl.Country>)newValue);
+				return;
+			case AnydslPackage.PLANT__KIND:
+				setKind((Kind)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.PLANT__NAME:
+				getName().clear();
+				return;
+			case AnydslPackage.PLANT__FOODS:
+				getFoods().clear();
+				return;
+			case AnydslPackage.PLANT__ORIGIN:
+				getOrigin().clear();
+				return;
+			case AnydslPackage.PLANT__KIND:
+				setKind(KIND_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.PLANT__NAME:
+				return name != null && !name.isEmpty();
+			case AnydslPackage.PLANT__FOODS:
+				return foods != null && !foods.isEmpty();
+			case AnydslPackage.PLANT__ORIGIN:
+				return origin != null && !origin.isEmpty();
+			case AnydslPackage.PLANT__KIND:
+				return kind != KIND_EDEFAULT;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (name: ");
+		result.append(name);
+		result.append(", origin: ");
+		result.append(origin);
+		result.append(", kind: ");
+		result.append(kind);
+		result.append(')');
+		return result.toString();
+	}
+
+} // PlantImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/ProducerImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/ProducerImpl.java
new file mode 100644
index 0000000..caa944c
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/ProducerImpl.java
@@ -0,0 +1,374 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.Adress;
+import anydsl.AnydslPackage;
+import anydsl.Company;
+import anydsl.Food;
+import anydsl.Producer;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Producer</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link anydsl.impl.ProducerImpl#getName <em>Name</em>}</li>
+ * <li>{@link anydsl.impl.ProducerImpl#getAdress <em>Adress</em>}</li>
+ * <li>{@link anydsl.impl.ProducerImpl#getCompany <em>Company</em>}</li>
+ * <li>{@link anydsl.impl.ProducerImpl#getFoods <em>Foods</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ProducerImpl extends MinimalEObjectImpl.Container implements Producer {
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAdress() <em>Adress</em>}' containment reference. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getAdress()
+	 * @generated
+	 * @ordered
+	 */
+	protected Adress adress;
+
+	/**
+	 * The cached value of the '{@link #getCompany() <em>Company</em>}' reference. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getCompany()
+	 * @generated
+	 * @ordered
+	 */
+	protected Company company;
+
+	/**
+	 * The cached value of the '{@link #getFoods() <em>Foods</em>}' reference list. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getFoods()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Food> foods;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ProducerImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AnydslPackage.Literals.PRODUCER;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.PRODUCER__NAME, oldName,
+					name));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Adress getAdress() {
+		return adress;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public NotificationChain basicSetAdress(Adress newAdress, NotificationChain msgs) {
+		Adress oldAdress = adress;
+		adress = newAdress;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+					AnydslPackage.PRODUCER__ADRESS, oldAdress, newAdress);
+			if (msgs == null)
+				msgs = notification;
+			else
+				msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setAdress(Adress newAdress) {
+		if (newAdress != adress) {
+			NotificationChain msgs = null;
+			if (adress != null)
+				msgs = ((InternalEObject)adress).eInverseRemove(this, EOPPOSITE_FEATURE_BASE
+						- AnydslPackage.PRODUCER__ADRESS, null, msgs);
+			if (newAdress != null)
+				msgs = ((InternalEObject)newAdress).eInverseAdd(this, EOPPOSITE_FEATURE_BASE
+						- AnydslPackage.PRODUCER__ADRESS, null, msgs);
+			msgs = basicSetAdress(newAdress, msgs);
+			if (msgs != null)
+				msgs.dispatch();
+		} else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.PRODUCER__ADRESS, newAdress,
+					newAdress));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Company getCompany() {
+		if (company != null && company.eIsProxy()) {
+			InternalEObject oldCompany = (InternalEObject)company;
+			company = (Company)eResolveProxy(oldCompany);
+			if (company != oldCompany) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AnydslPackage.PRODUCER__COMPANY,
+							oldCompany, company));
+			}
+		}
+		return company;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Company basicGetCompany() {
+		return company;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setCompany(Company newCompany) {
+		Company oldCompany = company;
+		company = newCompany;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.PRODUCER__COMPANY, oldCompany,
+					company));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Food> getFoods() {
+		if (foods == null) {
+			foods = new EObjectWithInverseResolvingEList.ManyInverse<Food>(Food.class, this,
+					AnydslPackage.PRODUCER__FOODS, AnydslPackage.FOOD__PRODUCERS);
+		}
+		return foods;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.PRODUCER__FOODS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getFoods()).basicAdd(otherEnd,
+						msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.PRODUCER__ADRESS:
+				return basicSetAdress(null, msgs);
+			case AnydslPackage.PRODUCER__FOODS:
+				return ((InternalEList<?>)getFoods()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case AnydslPackage.PRODUCER__NAME:
+				return getName();
+			case AnydslPackage.PRODUCER__ADRESS:
+				return getAdress();
+			case AnydslPackage.PRODUCER__COMPANY:
+				if (resolve)
+					return getCompany();
+				return basicGetCompany();
+			case AnydslPackage.PRODUCER__FOODS:
+				return getFoods();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case AnydslPackage.PRODUCER__NAME:
+				setName((String)newValue);
+				return;
+			case AnydslPackage.PRODUCER__ADRESS:
+				setAdress((Adress)newValue);
+				return;
+			case AnydslPackage.PRODUCER__COMPANY:
+				setCompany((Company)newValue);
+				return;
+			case AnydslPackage.PRODUCER__FOODS:
+				getFoods().clear();
+				getFoods().addAll((Collection<? extends Food>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.PRODUCER__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case AnydslPackage.PRODUCER__ADRESS:
+				setAdress((Adress)null);
+				return;
+			case AnydslPackage.PRODUCER__COMPANY:
+				setCompany((Company)null);
+				return;
+			case AnydslPackage.PRODUCER__FOODS:
+				getFoods().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.PRODUCER__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case AnydslPackage.PRODUCER__ADRESS:
+				return adress != null;
+			case AnydslPackage.PRODUCER__COMPANY:
+				return company != null;
+			case AnydslPackage.PRODUCER__FOODS:
+				return foods != null && !foods.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (name: ");
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} // ProducerImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/ProductionCompanyImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/ProductionCompanyImpl.java
new file mode 100644
index 0000000..f09539a
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/ProductionCompanyImpl.java
@@ -0,0 +1,358 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.Adress;
+import anydsl.AnydslPackage;
+import anydsl.Producer;
+import anydsl.ProductionCompany;
+import anydsl.World;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Production Company</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link anydsl.impl.ProductionCompanyImpl#getName <em>Name</em>}</li>
+ * <li>{@link anydsl.impl.ProductionCompanyImpl#getAdress <em>Adress</em>}</li>
+ * <li>{@link anydsl.impl.ProductionCompanyImpl#getWorld <em>World</em>}</li>
+ * <li>{@link anydsl.impl.ProductionCompanyImpl#getProducers <em>Producers</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ProductionCompanyImpl extends MinimalEObjectImpl.Container implements ProductionCompany {
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAdress() <em>Adress</em>}' containment reference. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getAdress()
+	 * @generated
+	 * @ordered
+	 */
+	protected Adress adress;
+
+	/**
+	 * The cached value of the '{@link #getWorld() <em>World</em>}' reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getWorld()
+	 * @generated
+	 * @ordered
+	 */
+	protected World world;
+
+	/**
+	 * The cached value of the '{@link #getProducers() <em>Producers</em>}' containment reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getProducers()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Producer> producers;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ProductionCompanyImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AnydslPackage.Literals.PRODUCTION_COMPANY;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.PRODUCTION_COMPANY__NAME,
+					oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Adress getAdress() {
+		return adress;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public NotificationChain basicSetAdress(Adress newAdress, NotificationChain msgs) {
+		Adress oldAdress = adress;
+		adress = newAdress;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+					AnydslPackage.PRODUCTION_COMPANY__ADRESS, oldAdress, newAdress);
+			if (msgs == null)
+				msgs = notification;
+			else
+				msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setAdress(Adress newAdress) {
+		if (newAdress != adress) {
+			NotificationChain msgs = null;
+			if (adress != null)
+				msgs = ((InternalEObject)adress).eInverseRemove(this, EOPPOSITE_FEATURE_BASE
+						- AnydslPackage.PRODUCTION_COMPANY__ADRESS, null, msgs);
+			if (newAdress != null)
+				msgs = ((InternalEObject)newAdress).eInverseAdd(this, EOPPOSITE_FEATURE_BASE
+						- AnydslPackage.PRODUCTION_COMPANY__ADRESS, null, msgs);
+			msgs = basicSetAdress(newAdress, msgs);
+			if (msgs != null)
+				msgs.dispatch();
+		} else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.PRODUCTION_COMPANY__ADRESS,
+					newAdress, newAdress));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public World getWorld() {
+		if (world != null && world.eIsProxy()) {
+			InternalEObject oldWorld = (InternalEObject)world;
+			world = (World)eResolveProxy(oldWorld);
+			if (world != oldWorld) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE,
+							AnydslPackage.PRODUCTION_COMPANY__WORLD, oldWorld, world));
+			}
+		}
+		return world;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public World basicGetWorld() {
+		return world;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setWorld(World newWorld) {
+		World oldWorld = world;
+		world = newWorld;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.PRODUCTION_COMPANY__WORLD,
+					oldWorld, world));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Producer> getProducers() {
+		if (producers == null) {
+			producers = new EObjectContainmentEList<Producer>(Producer.class, this,
+					AnydslPackage.PRODUCTION_COMPANY__PRODUCERS);
+		}
+		return producers;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.PRODUCTION_COMPANY__ADRESS:
+				return basicSetAdress(null, msgs);
+			case AnydslPackage.PRODUCTION_COMPANY__PRODUCERS:
+				return ((InternalEList<?>)getProducers()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case AnydslPackage.PRODUCTION_COMPANY__NAME:
+				return getName();
+			case AnydslPackage.PRODUCTION_COMPANY__ADRESS:
+				return getAdress();
+			case AnydslPackage.PRODUCTION_COMPANY__WORLD:
+				if (resolve)
+					return getWorld();
+				return basicGetWorld();
+			case AnydslPackage.PRODUCTION_COMPANY__PRODUCERS:
+				return getProducers();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case AnydslPackage.PRODUCTION_COMPANY__NAME:
+				setName((String)newValue);
+				return;
+			case AnydslPackage.PRODUCTION_COMPANY__ADRESS:
+				setAdress((Adress)newValue);
+				return;
+			case AnydslPackage.PRODUCTION_COMPANY__WORLD:
+				setWorld((World)newValue);
+				return;
+			case AnydslPackage.PRODUCTION_COMPANY__PRODUCERS:
+				getProducers().clear();
+				getProducers().addAll((Collection<? extends Producer>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.PRODUCTION_COMPANY__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case AnydslPackage.PRODUCTION_COMPANY__ADRESS:
+				setAdress((Adress)null);
+				return;
+			case AnydslPackage.PRODUCTION_COMPANY__WORLD:
+				setWorld((World)null);
+				return;
+			case AnydslPackage.PRODUCTION_COMPANY__PRODUCERS:
+				getProducers().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.PRODUCTION_COMPANY__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case AnydslPackage.PRODUCTION_COMPANY__ADRESS:
+				return adress != null;
+			case AnydslPackage.PRODUCTION_COMPANY__WORLD:
+				return world != null;
+			case AnydslPackage.PRODUCTION_COMPANY__PRODUCERS:
+				return producers != null && !producers.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (name: ");
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} // ProductionCompanyImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/RecipeImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/RecipeImpl.java
new file mode 100644
index 0000000..4b7d84a
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/RecipeImpl.java
@@ -0,0 +1,202 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.AnydslPackage;
+import anydsl.Food;
+import anydsl.Recipe;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Recipe</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link anydsl.impl.RecipeImpl#getName <em>Name</em>}</li>
+ * <li>{@link anydsl.impl.RecipeImpl#getIngredients <em>Ingredients</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class RecipeImpl extends MinimalEObjectImpl.Container implements Recipe {
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getIngredients() <em>Ingredients</em>}' reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getIngredients()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Food> ingredients;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected RecipeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AnydslPackage.Literals.RECIPE;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.RECIPE__NAME, oldName, name));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Food> getIngredients() {
+		if (ingredients == null) {
+			ingredients = new EObjectResolvingEList<Food>(Food.class, this,
+					AnydslPackage.RECIPE__INGREDIENTS);
+		}
+		return ingredients;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case AnydslPackage.RECIPE__NAME:
+				return getName();
+			case AnydslPackage.RECIPE__INGREDIENTS:
+				return getIngredients();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case AnydslPackage.RECIPE__NAME:
+				setName((String)newValue);
+				return;
+			case AnydslPackage.RECIPE__INGREDIENTS:
+				getIngredients().clear();
+				getIngredients().addAll((Collection<? extends Food>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.RECIPE__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case AnydslPackage.RECIPE__INGREDIENTS:
+				getIngredients().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.RECIPE__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case AnydslPackage.RECIPE__INGREDIENTS:
+				return ingredients != null && !ingredients.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (name: ");
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} // RecipeImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/RestaurantImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/RestaurantImpl.java
new file mode 100644
index 0000000..593afc3
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/RestaurantImpl.java
@@ -0,0 +1,400 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.Adress;
+import anydsl.AnydslPackage;
+import anydsl.Chef;
+import anydsl.Recipe;
+import anydsl.Restaurant;
+import anydsl.World;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.EMap;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EcoreEMap;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Restaurant</b></em>'. <!--
+ * end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link anydsl.impl.RestaurantImpl#getName <em>Name</em>}</li>
+ * <li>{@link anydsl.impl.RestaurantImpl#getAdress <em>Adress</em>}</li>
+ * <li>{@link anydsl.impl.RestaurantImpl#getWorld <em>World</em>}</li>
+ * <li>{@link anydsl.impl.RestaurantImpl#getChefs <em>Chefs</em>}</li>
+ * <li>{@link anydsl.impl.RestaurantImpl#getMenu <em>Menu</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class RestaurantImpl extends MinimalEObjectImpl.Container implements Restaurant {
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String name = NAME_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAdress() <em>Adress</em>}' containment reference. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getAdress()
+	 * @generated
+	 * @ordered
+	 */
+	protected Adress adress;
+
+	/**
+	 * The cached value of the '{@link #getWorld() <em>World</em>}' reference. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getWorld()
+	 * @generated
+	 * @ordered
+	 */
+	protected World world;
+
+	/**
+	 * The cached value of the '{@link #getChefs() <em>Chefs</em>}' containment reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getChefs()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Chef> chefs;
+
+	/**
+	 * The cached value of the '{@link #getMenu() <em>Menu</em>}' map. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @see #getMenu()
+	 * @generated
+	 * @ordered
+	 */
+	protected EMap<String, Recipe> menu;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected RestaurantImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AnydslPackage.Literals.RESTAURANT;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setName(String newName) {
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.RESTAURANT__NAME, oldName,
+					name));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Adress getAdress() {
+		return adress;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public NotificationChain basicSetAdress(Adress newAdress, NotificationChain msgs) {
+		Adress oldAdress = adress;
+		adress = newAdress;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+					AnydslPackage.RESTAURANT__ADRESS, oldAdress, newAdress);
+			if (msgs == null)
+				msgs = notification;
+			else
+				msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setAdress(Adress newAdress) {
+		if (newAdress != adress) {
+			NotificationChain msgs = null;
+			if (adress != null)
+				msgs = ((InternalEObject)adress).eInverseRemove(this, EOPPOSITE_FEATURE_BASE
+						- AnydslPackage.RESTAURANT__ADRESS, null, msgs);
+			if (newAdress != null)
+				msgs = ((InternalEObject)newAdress).eInverseAdd(this, EOPPOSITE_FEATURE_BASE
+						- AnydslPackage.RESTAURANT__ADRESS, null, msgs);
+			msgs = basicSetAdress(newAdress, msgs);
+			if (msgs != null)
+				msgs.dispatch();
+		} else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.RESTAURANT__ADRESS, newAdress,
+					newAdress));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public World getWorld() {
+		if (world != null && world.eIsProxy()) {
+			InternalEObject oldWorld = (InternalEObject)world;
+			world = (World)eResolveProxy(oldWorld);
+			if (world != oldWorld) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AnydslPackage.RESTAURANT__WORLD,
+							oldWorld, world));
+			}
+		}
+		return world;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public World basicGetWorld() {
+		return world;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setWorld(World newWorld) {
+		World oldWorld = world;
+		world = newWorld;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AnydslPackage.RESTAURANT__WORLD, oldWorld,
+					world));
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Chef> getChefs() {
+		if (chefs == null) {
+			chefs = new EObjectContainmentEList<Chef>(Chef.class, this, AnydslPackage.RESTAURANT__CHEFS);
+		}
+		return chefs;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EMap<String, Recipe> getMenu() {
+		if (menu == null) {
+			menu = new EcoreEMap<String, Recipe>(AnydslPackage.Literals.ESTRING_TO_RECIPE_MAP,
+					EStringToRecipeMapImpl.class, this, AnydslPackage.RESTAURANT__MENU);
+		}
+		return menu;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.RESTAURANT__ADRESS:
+				return basicSetAdress(null, msgs);
+			case AnydslPackage.RESTAURANT__CHEFS:
+				return ((InternalEList<?>)getChefs()).basicRemove(otherEnd, msgs);
+			case AnydslPackage.RESTAURANT__MENU:
+				return ((InternalEList<?>)getMenu()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case AnydslPackage.RESTAURANT__NAME:
+				return getName();
+			case AnydslPackage.RESTAURANT__ADRESS:
+				return getAdress();
+			case AnydslPackage.RESTAURANT__WORLD:
+				if (resolve)
+					return getWorld();
+				return basicGetWorld();
+			case AnydslPackage.RESTAURANT__CHEFS:
+				return getChefs();
+			case AnydslPackage.RESTAURANT__MENU:
+				if (coreType)
+					return getMenu();
+				else
+					return getMenu().map();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case AnydslPackage.RESTAURANT__NAME:
+				setName((String)newValue);
+				return;
+			case AnydslPackage.RESTAURANT__ADRESS:
+				setAdress((Adress)newValue);
+				return;
+			case AnydslPackage.RESTAURANT__WORLD:
+				setWorld((World)newValue);
+				return;
+			case AnydslPackage.RESTAURANT__CHEFS:
+				getChefs().clear();
+				getChefs().addAll((Collection<? extends Chef>)newValue);
+				return;
+			case AnydslPackage.RESTAURANT__MENU:
+				((EStructuralFeature.Setting)getMenu()).set(newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.RESTAURANT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case AnydslPackage.RESTAURANT__ADRESS:
+				setAdress((Adress)null);
+				return;
+			case AnydslPackage.RESTAURANT__WORLD:
+				setWorld((World)null);
+				return;
+			case AnydslPackage.RESTAURANT__CHEFS:
+				getChefs().clear();
+				return;
+			case AnydslPackage.RESTAURANT__MENU:
+				getMenu().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.RESTAURANT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case AnydslPackage.RESTAURANT__ADRESS:
+				return adress != null;
+			case AnydslPackage.RESTAURANT__WORLD:
+				return world != null;
+			case AnydslPackage.RESTAURANT__CHEFS:
+				return chefs != null && !chefs.isEmpty();
+			case AnydslPackage.RESTAURANT__MENU:
+				return menu != null && !menu.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (name: ");
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
+
+} // RestaurantImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/WorldImpl.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/WorldImpl.java
new file mode 100644
index 0000000..d17792b
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/impl/WorldImpl.java
@@ -0,0 +1,222 @@
+/**
+ */
+package anydsl.impl;
+
+import anydsl.AnydslPackage;
+import anydsl.Company;
+import anydsl.Food;
+import anydsl.Source;
+import anydsl.World;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>World</b></em>'. <!-- end-user-doc
+ * -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link anydsl.impl.WorldImpl#getCompanies <em>Companies</em>}</li>
+ * <li>{@link anydsl.impl.WorldImpl#getFoods <em>Foods</em>}</li>
+ * <li>{@link anydsl.impl.WorldImpl#getSources <em>Sources</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class WorldImpl extends MinimalEObjectImpl.Container implements World {
+	/**
+	 * The cached value of the '{@link #getCompanies() <em>Companies</em>}' containment reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getCompanies()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Company> companies;
+
+	/**
+	 * The cached value of the '{@link #getFoods() <em>Foods</em>}' containment reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getFoods()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Food> foods;
+
+	/**
+	 * The cached value of the '{@link #getSources() <em>Sources</em>}' containment reference list. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @see #getSources()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Source> sources;
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected WorldImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AnydslPackage.Literals.WORLD;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Company> getCompanies() {
+		if (companies == null) {
+			companies = new EObjectContainmentEList<Company>(Company.class, this,
+					AnydslPackage.WORLD__COMPANIES);
+		}
+		return companies;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Food> getFoods() {
+		if (foods == null) {
+			foods = new EObjectContainmentEList<Food>(Food.class, this, AnydslPackage.WORLD__FOODS);
+		}
+		return foods;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Source> getSources() {
+		if (sources == null) {
+			sources = new EObjectContainmentEList<Source>(Source.class, this, AnydslPackage.WORLD__SOURCES);
+		}
+		return sources;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case AnydslPackage.WORLD__COMPANIES:
+				return ((InternalEList<?>)getCompanies()).basicRemove(otherEnd, msgs);
+			case AnydslPackage.WORLD__FOODS:
+				return ((InternalEList<?>)getFoods()).basicRemove(otherEnd, msgs);
+			case AnydslPackage.WORLD__SOURCES:
+				return ((InternalEList<?>)getSources()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case AnydslPackage.WORLD__COMPANIES:
+				return getCompanies();
+			case AnydslPackage.WORLD__FOODS:
+				return getFoods();
+			case AnydslPackage.WORLD__SOURCES:
+				return getSources();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case AnydslPackage.WORLD__COMPANIES:
+				getCompanies().clear();
+				getCompanies().addAll((Collection<? extends Company>)newValue);
+				return;
+			case AnydslPackage.WORLD__FOODS:
+				getFoods().clear();
+				getFoods().addAll((Collection<? extends Food>)newValue);
+				return;
+			case AnydslPackage.WORLD__SOURCES:
+				getSources().clear();
+				getSources().addAll((Collection<? extends Source>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.WORLD__COMPANIES:
+				getCompanies().clear();
+				return;
+			case AnydslPackage.WORLD__FOODS:
+				getFoods().clear();
+				return;
+			case AnydslPackage.WORLD__SOURCES:
+				getSources().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case AnydslPackage.WORLD__COMPANIES:
+				return companies != null && !companies.isEmpty();
+			case AnydslPackage.WORLD__FOODS:
+				return foods != null && !foods.isEmpty();
+			case AnydslPackage.WORLD__SOURCES:
+				return sources != null && !sources.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // WorldImpl
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/util/AnydslAdapterFactory.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/util/AnydslAdapterFactory.java
new file mode 100644
index 0000000..8fe7d86
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/util/AnydslAdapterFactory.java
@@ -0,0 +1,383 @@
+/**
+ */
+package anydsl.util;
+
+import anydsl.Adress;
+import anydsl.Animal;
+import anydsl.AnydslPackage;
+import anydsl.Chef;
+import anydsl.Company;
+import anydsl.Food;
+import anydsl.MultiNamedElement;
+import anydsl.NamedElement;
+import anydsl.Plant;
+import anydsl.Producer;
+import anydsl.ProductionCompany;
+import anydsl.Recipe;
+import anydsl.Restaurant;
+import anydsl.Source;
+import anydsl.World;
+
+import java.util.Map;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc --> The <b>Adapter Factory</b> for the model. It provides an adapter
+ * <code>createXXX</code> method for each class of the model. <!-- end-user-doc -->
+ * 
+ * @see anydsl.AnydslPackage
+ * @generated
+ */
+public class AnydslAdapterFactory extends AdapterFactoryImpl {
+	/**
+	 * The cached model package. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected static AnydslPackage modelPackage;
+
+	/**
+	 * Creates an instance of the adapter factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AnydslAdapterFactory() {
+		if (modelPackage == null) {
+			modelPackage = AnydslPackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Returns whether this factory is applicable for the type of the object. <!-- begin-user-doc --> This
+	 * implementation returns <code>true</code> if the object is either the model's package or is an instance
+	 * object of the model. <!-- end-user-doc -->
+	 * 
+	 * @return whether this factory is applicable for the type of the object.
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object object) {
+		if (object == modelPackage) {
+			return true;
+		}
+		if (object instanceof EObject) {
+			return ((EObject)object).eClass().getEPackage() == modelPackage;
+		}
+		return false;
+	}
+
+	/**
+	 * The switch that delegates to the <code>createXXX</code> methods. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected AnydslSwitch<Adapter> modelSwitch = new AnydslSwitch<Adapter>() {
+		@Override
+		public Adapter caseWorld(World object) {
+			return createWorldAdapter();
+		}
+
+		@Override
+		public Adapter caseMultiNamedElement(MultiNamedElement object) {
+			return createMultiNamedElementAdapter();
+		}
+
+		@Override
+		public Adapter caseNamedElement(NamedElement object) {
+			return createNamedElementAdapter();
+		}
+
+		@Override
+		public Adapter caseProducer(Producer object) {
+			return createProducerAdapter();
+		}
+
+		@Override
+		public Adapter caseAdress(Adress object) {
+			return createAdressAdapter();
+		}
+
+		@Override
+		public Adapter caseCompany(Company object) {
+			return createCompanyAdapter();
+		}
+
+		@Override
+		public Adapter caseProductionCompany(ProductionCompany object) {
+			return createProductionCompanyAdapter();
+		}
+
+		@Override
+		public Adapter caseRestaurant(Restaurant object) {
+			return createRestaurantAdapter();
+		}
+
+		@Override
+		public Adapter caseChef(Chef object) {
+			return createChefAdapter();
+		}
+
+		@Override
+		public Adapter caseRecipe(Recipe object) {
+			return createRecipeAdapter();
+		}
+
+		@Override
+		public Adapter caseFood(Food object) {
+			return createFoodAdapter();
+		}
+
+		@Override
+		public Adapter caseSource(Source object) {
+			return createSourceAdapter();
+		}
+
+		@Override
+		public Adapter casePlant(Plant object) {
+			return createPlantAdapter();
+		}
+
+		@Override
+		public Adapter caseAnimal(Animal object) {
+			return createAnimalAdapter();
+		}
+
+		@Override
+		public Adapter caseEStringToRecipeMap(Map.Entry<String, Recipe> object) {
+			return createEStringToRecipeMapAdapter();
+		}
+
+		@Override
+		public Adapter defaultCase(EObject object) {
+			return createEObjectAdapter();
+		}
+	};
+
+	/**
+	 * Creates an adapter for the <code>target</code>. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @param target
+	 *            the object to adapt.
+	 * @return the adapter for the <code>target</code>.
+	 * @generated
+	 */
+	@Override
+	public Adapter createAdapter(Notifier target) {
+		return modelSwitch.doSwitch((EObject)target);
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.World <em>World</em>}'. <!-- begin-user-doc
+	 * --> This default implementation returns null so that we can easily ignore cases; it's useful to ignore
+	 * a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.World
+	 * @generated
+	 */
+	public Adapter createWorldAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.MultiNamedElement <em>Multi Named
+	 * Element</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily
+	 * ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.MultiNamedElement
+	 * @generated
+	 */
+	public Adapter createMultiNamedElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.NamedElement <em>Named Element</em>}'. <!--
+	 * begin-user-doc --> This default implementation returns null so that we can easily ignore cases; it's
+	 * useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.NamedElement
+	 * @generated
+	 */
+	public Adapter createNamedElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.Producer <em>Producer</em>}'. <!--
+	 * begin-user-doc --> This default implementation returns null so that we can easily ignore cases; it's
+	 * useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.Producer
+	 * @generated
+	 */
+	public Adapter createProducerAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.Adress <em>Adress</em>}'. <!--
+	 * begin-user-doc --> This default implementation returns null so that we can easily ignore cases; it's
+	 * useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.Adress
+	 * @generated
+	 */
+	public Adapter createAdressAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.Company <em>Company</em>}'. <!--
+	 * begin-user-doc --> This default implementation returns null so that we can easily ignore cases; it's
+	 * useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.Company
+	 * @generated
+	 */
+	public Adapter createCompanyAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.ProductionCompany <em>Production
+	 * Company</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily
+	 * ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.ProductionCompany
+	 * @generated
+	 */
+	public Adapter createProductionCompanyAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.Restaurant <em>Restaurant</em>}'. <!--
+	 * begin-user-doc --> This default implementation returns null so that we can easily ignore cases; it's
+	 * useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.Restaurant
+	 * @generated
+	 */
+	public Adapter createRestaurantAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.Chef <em>Chef</em>}'. <!-- begin-user-doc
+	 * --> This default implementation returns null so that we can easily ignore cases; it's useful to ignore
+	 * a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.Chef
+	 * @generated
+	 */
+	public Adapter createChefAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.Recipe <em>Recipe</em>}'. <!--
+	 * begin-user-doc --> This default implementation returns null so that we can easily ignore cases; it's
+	 * useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.Recipe
+	 * @generated
+	 */
+	public Adapter createRecipeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.Food <em>Food</em>}'. <!-- begin-user-doc
+	 * --> This default implementation returns null so that we can easily ignore cases; it's useful to ignore
+	 * a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.Food
+	 * @generated
+	 */
+	public Adapter createFoodAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.Source <em>Source</em>}'. <!--
+	 * begin-user-doc --> This default implementation returns null so that we can easily ignore cases; it's
+	 * useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.Source
+	 * @generated
+	 */
+	public Adapter createSourceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.Plant <em>Plant</em>}'. <!-- begin-user-doc
+	 * --> This default implementation returns null so that we can easily ignore cases; it's useful to ignore
+	 * a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.Plant
+	 * @generated
+	 */
+	public Adapter createPlantAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link anydsl.Animal <em>Animal</em>}'. <!--
+	 * begin-user-doc --> This default implementation returns null so that we can easily ignore cases; it's
+	 * useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see anydsl.Animal
+	 * @generated
+	 */
+	public Adapter createAnimalAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link java.util.Map.Entry <em>EString To Recipe
+	 * Map</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily
+	 * ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!--
+	 * end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @see java.util.Map.Entry
+	 * @generated
+	 */
+	public Adapter createEStringToRecipeMapAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for the default case. <!-- begin-user-doc --> This default implementation returns
+	 * null. <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @generated
+	 */
+	public Adapter createEObjectAdapter() {
+		return null;
+	}
+
+} // AnydslAdapterFactory
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/util/AnydslSwitch.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/util/AnydslSwitch.java
new file mode 100644
index 0000000..45ac2dd
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src-gen/anydsl/util/AnydslSwitch.java
@@ -0,0 +1,457 @@
+/**
+ */
+package anydsl.util;
+
+import anydsl.Adress;
+import anydsl.Animal;
+import anydsl.AnydslPackage;
+import anydsl.Chef;
+import anydsl.Company;
+import anydsl.Food;
+import anydsl.MultiNamedElement;
+import anydsl.NamedElement;
+import anydsl.Plant;
+import anydsl.Producer;
+import anydsl.ProductionCompany;
+import anydsl.Recipe;
+import anydsl.Restaurant;
+import anydsl.Source;
+import anydsl.World;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+
+/**
+ * <!-- begin-user-doc --> The <b>Switch</b> for the model's inheritance hierarchy. It supports the call
+ * {@link #doSwitch(EObject) doSwitch(object)} to invoke the <code>caseXXX</code> method for each class of the
+ * model, starting with the actual class of the object and proceeding up the inheritance hierarchy until a
+ * non-null result is returned, which is the result of the switch. <!-- end-user-doc -->
+ * 
+ * @see anydsl.AnydslPackage
+ * @generated
+ */
+public class AnydslSwitch<T> extends Switch<T> {
+	/**
+	 * The cached model package <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected static AnydslPackage modelPackage;
+
+	/**
+	 * Creates an instance of the switch. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AnydslSwitch() {
+		if (modelPackage == null) {
+			modelPackage = AnydslPackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Checks whether this is a switch for the given package. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @parameter ePackage the package in question.
+	 * @return whether this is a switch for the given package.
+	 * @generated
+	 */
+	@Override
+	protected boolean isSwitchFor(EPackage ePackage) {
+		return ePackage == modelPackage;
+	}
+
+	/**
+	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields
+	 * that result. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @generated
+	 */
+	@Override
+	protected T doSwitch(int classifierID, EObject theEObject) {
+		switch (classifierID) {
+			case AnydslPackage.WORLD: {
+				World world = (World)theEObject;
+				T result = caseWorld(world);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.MULTI_NAMED_ELEMENT: {
+				MultiNamedElement multiNamedElement = (MultiNamedElement)theEObject;
+				T result = caseMultiNamedElement(multiNamedElement);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.NAMED_ELEMENT: {
+				NamedElement namedElement = (NamedElement)theEObject;
+				T result = caseNamedElement(namedElement);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.PRODUCER: {
+				Producer producer = (Producer)theEObject;
+				T result = caseProducer(producer);
+				if (result == null)
+					result = caseNamedElement(producer);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.ADRESS: {
+				Adress adress = (Adress)theEObject;
+				T result = caseAdress(adress);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.COMPANY: {
+				Company company = (Company)theEObject;
+				T result = caseCompany(company);
+				if (result == null)
+					result = caseNamedElement(company);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.PRODUCTION_COMPANY: {
+				ProductionCompany productionCompany = (ProductionCompany)theEObject;
+				T result = caseProductionCompany(productionCompany);
+				if (result == null)
+					result = caseCompany(productionCompany);
+				if (result == null)
+					result = caseNamedElement(productionCompany);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.RESTAURANT: {
+				Restaurant restaurant = (Restaurant)theEObject;
+				T result = caseRestaurant(restaurant);
+				if (result == null)
+					result = caseCompany(restaurant);
+				if (result == null)
+					result = caseNamedElement(restaurant);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.CHEF: {
+				Chef chef = (Chef)theEObject;
+				T result = caseChef(chef);
+				if (result == null)
+					result = caseNamedElement(chef);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.RECIPE: {
+				Recipe recipe = (Recipe)theEObject;
+				T result = caseRecipe(recipe);
+				if (result == null)
+					result = caseNamedElement(recipe);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.FOOD: {
+				Food food = (Food)theEObject;
+				T result = caseFood(food);
+				if (result == null)
+					result = caseNamedElement(food);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.SOURCE: {
+				Source source = (Source)theEObject;
+				T result = caseSource(source);
+				if (result == null)
+					result = caseMultiNamedElement(source);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.PLANT: {
+				Plant plant = (Plant)theEObject;
+				T result = casePlant(plant);
+				if (result == null)
+					result = caseSource(plant);
+				if (result == null)
+					result = caseMultiNamedElement(plant);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.ANIMAL: {
+				Animal animal = (Animal)theEObject;
+				T result = caseAnimal(animal);
+				if (result == null)
+					result = caseSource(animal);
+				if (result == null)
+					result = caseMultiNamedElement(animal);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			case AnydslPackage.ESTRING_TO_RECIPE_MAP: {
+				@SuppressWarnings("unchecked")
+				Map.Entry<String, Recipe> eStringToRecipeMap = (Map.Entry<String, Recipe>)theEObject;
+				T result = caseEStringToRecipeMap(eStringToRecipeMap);
+				if (result == null)
+					result = defaultCase(theEObject);
+				return result;
+			}
+			default:
+				return defaultCase(theEObject);
+		}
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>World</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>World</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseWorld(World object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Multi Named Element</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Multi Named Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseMultiNamedElement(MultiNamedElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Named Element</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Named Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseNamedElement(NamedElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Producer</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Producer</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseProducer(Producer object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Adress</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Adress</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAdress(Adress object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Company</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Company</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCompany(Company object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Production Company</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Production Company</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseProductionCompany(ProductionCompany object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Restaurant</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Restaurant</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseRestaurant(Restaurant object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Chef</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Chef</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseChef(Chef object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Recipe</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Recipe</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseRecipe(Recipe object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Food</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Food</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseFood(Food object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Source</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Source</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSource(Source object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Plant</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Plant</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T casePlant(Plant object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Animal</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch. <!--
+	 * end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Animal</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAnimal(Animal object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EString To Recipe Map</em>'. <!--
+	 * begin-user-doc --> This implementation returns null; returning a non-null result will terminate the
+	 * switch. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EString To Recipe Map</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEStringToRecipeMap(Map.Entry<String, Recipe> object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. <!-- begin-user-doc
+	 * --> This implementation returns null; returning a non-null result will terminate the switch, but this
+	 * is the last case anyway. <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+	 * @generated
+	 */
+	@Override
+	public T defaultCase(EObject object) {
+		return null;
+	}
+
+} // AnydslSwitch
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/AbstractEObjectLocationTest.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/AbstractEObjectLocationTest.java
new file mode 100644
index 0000000..3b0c997
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/AbstractEObjectLocationTest.java
@@ -0,0 +1,118 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests;
+
+import org.eclipse.intent.mapping.emf.IEObjectLocation;
+import org.eclipse.intent.mapping.tests.base.AbstractLocationTests;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+/**
+ * Tests {@link IEObjectLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractEObjectLocationTest extends AbstractLocationTests {
+
+	@Override
+	protected IEObjectLocation createLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(IEObjectLocation.class);
+	}
+
+	@Test
+	public void setURIFragmentNull() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		IEObjectLocation location = createLocation();
+
+		location.setURIFragment(null);
+
+		assertNull(location.getURIFragment());
+	}
+
+	@Test
+	public void setURIFragment() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		IEObjectLocation location = createLocation();
+
+		location.setURIFragment("someFeature");
+
+		assertEquals("someFeature", location.getURIFragment());
+	}
+
+	@Test
+	public void getURIFragmentDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		IEObjectLocation location = createLocation();
+
+		assertNull(location.getURIFragment());
+	}
+
+	@Test
+	public void setSavedURIFragmentNull() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		IEObjectLocation location = createLocation();
+
+		location.setSavedURIFragment(null);
+
+		assertNull(location.getSavedURIFragment());
+	}
+
+	@Test
+	public void setSavedURIFragment() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		IEObjectLocation location = createLocation();
+
+		location.setSavedURIFragment("someFeature");
+
+		assertEquals("someFeature", location.getSavedURIFragment());
+	}
+
+	@Test
+	public void getSavedURIFragmentDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		IEObjectLocation location = createLocation();
+
+		assertNull(location.getSavedURIFragment());
+	}
+
+	@Test
+	public void setFeatureNameNull() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		IEObjectLocation location = createLocation();
+
+		location.setFeatureName(null);
+
+		assertNull(location.getFeatureName());
+	}
+
+	@Test
+	public void setFeatureName() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		IEObjectLocation location = createLocation();
+
+		location.setFeatureName("someFeature");
+
+		assertEquals("someFeature", location.getFeatureName());
+	}
+
+	@Test
+	public void getFeatureNameDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		IEObjectLocation location = createLocation();
+
+		assertNull(location.getFeatureName());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/AllTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/AllTests.java
new file mode 100644
index 0000000..324f71b
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/AllTests.java
@@ -0,0 +1,74 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests;
+
+import org.eclipse.intent.mapping.emf.tests.base.EMFBaseTests;
+import org.eclipse.intent.mapping.emf.tests.base.EMFLinkTests;
+import org.eclipse.intent.mapping.emf.tests.base.EMFReportTests;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOContainerProviderTests;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOViewConnectorTests;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorCDOTests;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorParametrizedCDOTests;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorParametrizedTests;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorTests;
+import org.eclipse.intent.mapping.emf.tests.connector.MappingCDOListenerTest;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+/**
+ * Aggregates tests for the org.eclipse.intent.mapping.emf plug-in.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@RunWith(Suite.class)
+@SuiteClasses(value = {CDOMappingBaseListenerTests.class, EMFBaseTests.class, EMFLinkTests.class,
+		EMFTextLocationTests.class, EMFEObjectLocationTests.class, EObjectConnectorTests.class,
+		EObjectConnectorCDOTests.class, EObjectConnectorParametrizedTests.class,
+		EObjectConnectorParametrizedCDOTests.class, EMFReportTests.class, CDOViewConnectorTests.class,
+		CDOResourceNodeConnectorTests.class, EMFCDORepositoryLocationTests.class,
+		EMFCDOFolderLocationTests.class, EMFCDOBinaryResourceLocationTests.class,
+		EMFCDOTextResourceLocationTests.class, MappingCDOListenerTest.class,
+		CDOContainerProviderTests.class })
+public class AllTests {
+	/**
+	 * The {@link CDOServer}.
+	 */
+	private static CDOServer server;
+
+	/**
+	 * Counts calls to {@link #startCDOServer()}.
+	 */
+	private static int startCount;
+
+	@BeforeClass
+	public static void startCDOServer() {
+		startCount++;
+		if (server == null) {
+			server = new CDOServer(false);
+			server.start();
+		}
+	}
+
+	@AfterClass
+	public static void stopCDOServer() {
+		if (startCount == 0) {
+			server.stop();
+		} else {
+			startCount--;
+		}
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/CDOMappingBaseListenerTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/CDOMappingBaseListenerTests.java
new file mode 100644
index 0000000..54cd5b4
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/CDOMappingBaseListenerTests.java
@@ -0,0 +1,147 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests;
+
+import anydsl.AnydslPackage;
+import anydsl.ProductionCompany;
+
+import org.eclipse.emf.cdo.eresource.CDOResource;
+import org.eclipse.emf.cdo.session.CDOSession;
+import org.eclipse.emf.cdo.transaction.CDOTransaction;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.emf.CDOMappingBaseListener;
+import org.eclipse.net4j.connector.IConnector;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Tests {@link CDOMappingBaseListener}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class CDOMappingBaseListenerTests {
+
+	/**
+	 * The {@link CDOTransaction}.
+	 */
+	private static CDOTransaction transaction;
+
+	@BeforeClass
+	public static void beforeClass() {
+		AllTests.startCDOServer();
+		IConnector c = CDOUtils.getConnector(CDOServer.PROTOCOL + "://" + CDOServer.IP + ":"
+				+ CDOServer.PORT);
+		CDOSession session = CDOUtils.openSession(c, CDOServer.REPOSITORY_NAME);
+		transaction = CDOUtils.openTransaction(session);
+	}
+
+	@AfterClass
+	public static void afterClass() {
+		transaction.close();
+		AllTests.stopCDOServer();
+	}
+
+	@Test
+	public void attacheObject() throws Exception {
+		final CDOMappingBaseListener listener = new CDOMappingBaseListener();
+
+		final String path = this.getClass().getCanonicalName() + "/attacheObject.resource";
+		final CDOResource resource = transaction.createResource(path);
+		resource.save(null);
+		transaction.commit();
+
+		transaction.getSession().addListener(listener);
+		final ProductionCompany eObject = AnydslPackage.eINSTANCE.getAnydslFactory()
+				.createProductionCompany();
+		resource.getContents().add(eObject);
+		eObject.setName("MyCompany");
+		resource.save(null);
+		transaction.commit();
+		transaction.getSession().removeListener(listener);
+
+		assertEquals(0, MappingUtils.getMappingRegistry().getBases().size());
+	}
+
+	@Test
+	public void detacheObject() throws Exception {
+		final CDOMappingBaseListener listener = new CDOMappingBaseListener();
+
+		final String path = this.getClass().getCanonicalName() + "/detacheObject.resource";
+		final CDOResource resource = transaction.createResource(path);
+		final ProductionCompany eObject = AnydslPackage.eINSTANCE.getAnydslFactory()
+				.createProductionCompany();
+		resource.getContents().add(eObject);
+		eObject.setName("MyCompany");
+		resource.save(null);
+		transaction.commit();
+
+		transaction.getSession().addListener(listener);
+		resource.getContents().clear();
+		resource.save(null);
+		transaction.commit();
+		transaction.getSession().removeListener(listener);
+
+		assertEquals(0, MappingUtils.getMappingRegistry().getBases().size());
+	}
+
+	@Test
+	public void attacheBase() throws Exception {
+		final CDOMappingBaseListener listener = new CDOMappingBaseListener();
+
+		final String path = this.getClass().getCanonicalName() + "/attacheBase.resource";
+		final CDOResource resource = transaction.createResource(path);
+		resource.save(null);
+		transaction.commit();
+
+		transaction.getSession().addListener(listener);
+		final Base eObject = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+		resource.getContents().add(eObject);
+		eObject.setName("MyBase");
+		resource.save(null);
+		transaction.commit();
+		transaction.getSession().removeListener(listener);
+
+		assertEquals(1, MappingUtils.getMappingRegistry().getBases().size());
+		assertEquals("MyBase", MappingUtils.getMappingRegistry().getBases().iterator().next().getName());
+		MappingUtils.getMappingRegistry().unregister(eObject);
+	}
+
+	@Test
+	public void detacheBase() throws Exception {
+		final CDOMappingBaseListener listener = new CDOMappingBaseListener();
+
+		transaction.getSession().addListener(listener);
+		final String path = this.getClass().getCanonicalName() + "/detacheBase.resource";
+		final CDOResource resource = transaction.createResource(path);
+		final Base eObject = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+		resource.getContents().add(eObject);
+		eObject.setName("MyBase");
+		resource.save(null);
+		transaction.commit();
+
+		assertEquals(1, MappingUtils.getMappingRegistry().getBases().size());
+		assertEquals("MyBase", MappingUtils.getMappingRegistry().getBases().iterator().next().getName());
+
+		resource.getContents().clear();
+		resource.save(null);
+		transaction.commit();
+		transaction.getSession().removeListener(listener);
+
+		assertEquals(0, MappingUtils.getMappingRegistry().getBases().size());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/CDOServer.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/CDOServer.java
new file mode 100644
index 0000000..f7b8b4f
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/CDOServer.java
@@ -0,0 +1,167 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo	 - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.emf.cdo.internal.server.Repository;
+import org.eclipse.emf.cdo.server.CDOServerUtil;
+import org.eclipse.emf.cdo.server.IRepository;
+import org.eclipse.emf.cdo.server.IRepository.Props;
+import org.eclipse.emf.cdo.server.IStore;
+import org.eclipse.emf.cdo.server.mem.MEMStoreUtil;
+import org.eclipse.emf.cdo.server.net4j.CDONet4jServerUtil;
+import org.eclipse.emf.cdo.spi.server.InternalSessionManager;
+import org.eclipse.net4j.Net4jUtil;
+import org.eclipse.net4j.tcp.TCPUtil;
+import org.eclipse.net4j.util.container.IPluginContainer;
+import org.eclipse.net4j.util.lifecycle.LifecycleUtil;
+import org.eclipse.net4j.util.om.OMPlatform;
+import org.eclipse.net4j.util.om.log.PrintLogHandler;
+import org.eclipse.net4j.util.om.trace.PrintTraceHandler;
+import org.eclipse.net4j.util.security.INegotiator;
+import org.eclipse.net4j.util.security.IUserManager;
+import org.eclipse.net4j.util.security.PasswordCredentialsProvider;
+import org.eclipse.net4j.util.security.ResponseNegotiator;
+import org.eclipse.net4j.util.security.UserManager;
+
+/**
+ * A CDO server for testing purpose. It creates a memory store.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public final class CDOServer {
+
+	/**
+	 * The TCP port the server is listening to.
+	 */
+	public static final int PORT = 12345;
+
+	/**
+	 * The repository name.
+	 */
+	public static final String REPOSITORY_NAME = "testRepo";
+
+	/**
+	 * The protocol to use for communication.
+	 */
+	public static final String PROTOCOL = "tcp";
+
+	/**
+	 * The IP to bind to.
+	 */
+	public static final String IP = "127.0.0.1";
+
+	/**
+	 * The user name.
+	 */
+	public static final String USER_NAME = "user";
+
+	/**
+	 * The password.
+	 */
+	public static final String PASSWORD = "password";
+
+	/**
+	 * The {@link IRepository} of the CDO server.
+	 */
+	private static IRepository repository;
+
+	/**
+	 * Should we use authentication or not.
+	 */
+	private final boolean withAuth;
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param withAuth
+	 *            tells if authentication should be activated
+	 */
+	public CDOServer(boolean withAuth) {
+		this.withAuth = withAuth;
+	}
+
+	/**
+	 * Creates the repository.
+	 * 
+	 * @return the repository
+	 */
+	protected IRepository createRepository() {
+		Map<String, String> props = new HashMap<String, String>();
+		props.put(Props.SUPPORTING_AUDITS, Boolean.TRUE.toString());
+		props.put(Props.SUPPORTING_BRANCHES, Boolean.TRUE.toString());
+
+		return CDOServerUtil.createRepository(REPOSITORY_NAME, createStore(), props);
+	}
+
+	/**
+	 * Creates the {@link IStore}.
+	 * 
+	 * @return the created {@link IStore}
+	 */
+	protected IStore createStore() {
+		return MEMStoreUtil.createMEMStore();
+	}
+
+	/**
+	 * Create the authentication {@link INegotiator}.
+	 * 
+	 * @return the created authentication {@link INegotiator
+	 */
+	protected INegotiator createNegotiator() {
+		ResponseNegotiator negotiator = new ResponseNegotiator();
+		negotiator.setCredentialsProvider(new PasswordCredentialsProvider(USER_NAME, PASSWORD));
+		return negotiator;
+	}
+
+	/**
+	 * Starts the CDO server.
+	 */
+	public void start() {
+		if (repository == null) {
+			OMPlatform.INSTANCE.setDebugging(false);
+			OMPlatform.INSTANCE.addTraceHandler(PrintTraceHandler.CONSOLE);
+			OMPlatform.INSTANCE.addLogHandler(PrintLogHandler.CONSOLE);
+
+			Net4jUtil.prepareContainer(IPluginContainer.INSTANCE); // Prepare the Net4j kernel
+			TCPUtil.prepareContainer(IPluginContainer.INSTANCE); // Prepare the TCP support
+			CDONet4jServerUtil.prepareContainer(IPluginContainer.INSTANCE); // Prepare the CDO server
+			// OCLQueryHandler.prepareContainer(IPluginContainer.INSTANCE); // Prepare OCL queries
+
+			repository = createRepository();
+
+			if (withAuth) {
+				InternalSessionManager sessionManager = (InternalSessionManager)CDOServerUtil
+						.createSessionManager();
+				IUserManager userManager = new UserManager();
+				userManager.addUser(USER_NAME, PASSWORD.toCharArray());
+				sessionManager.setUserManager(userManager);
+				((Repository)repository).setSessionManager(sessionManager);
+			}
+			CDOServerUtil.addRepository(IPluginContainer.INSTANCE, repository);
+
+			Net4jUtil.getAcceptor(IPluginContainer.INSTANCE, PROTOCOL, IP + ":" + PORT);
+		}
+	}
+
+	/**
+	 * Stops the CDO server.
+	 */
+	public void stop() {
+		LifecycleUtil.deactivate(repository);
+		LifecycleUtil.deactivate(IPluginContainer.INSTANCE);
+		repository = null;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/CDOUtils.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/CDOUtils.java
new file mode 100644
index 0000000..43e2047
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/CDOUtils.java
@@ -0,0 +1,212 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo	 - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.cdo.common.branch.CDOBranch;
+import org.eclipse.emf.cdo.common.branch.CDOBranchHandler;
+import org.eclipse.emf.cdo.eresource.CDOResource;
+import org.eclipse.emf.cdo.net4j.CDONet4jUtil;
+import org.eclipse.emf.cdo.net4j.CDOSessionConfiguration;
+import org.eclipse.emf.cdo.session.CDOSession;
+import org.eclipse.emf.cdo.transaction.CDOTransaction;
+import org.eclipse.emf.cdo.view.CDOView;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.net4j.Net4jUtil;
+import org.eclipse.net4j.connector.ConnectorException;
+import org.eclipse.net4j.connector.IConnector;
+import org.eclipse.net4j.tcp.TCPUtil;
+import org.eclipse.net4j.util.container.ContainerUtil;
+import org.eclipse.net4j.util.container.IManagedContainer;
+import org.eclipse.net4j.util.lifecycle.LifecycleUtil;
+import org.eclipse.net4j.util.security.PasswordCredentialsProvider;
+
+/**
+ * A CDO utility class.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public final class CDOUtils {
+
+	/**
+	 * Constructor.
+	 */
+	private CDOUtils() {
+		// can't create instance
+	}
+
+	/**
+	 * Gets a {@link IConnector} from the given description. Caller is responsible of
+	 * {@link IConnector#close() closing} the resulting connector.
+	 * 
+	 * @param description
+	 *            the description of the protocol host and port to use for the connection
+	 * @return a new {@link IConnector}
+	 */
+	public static IConnector getConnector(String description) {
+		final IManagedContainer container = getContainer(description);
+		IConnector res = null;
+		try {
+			res = Net4jUtil.getConnector(container, description);
+		} catch (ConnectorException e) {
+			LifecycleUtil.deactivate(container);
+			throw e;
+		}
+		return res;
+	}
+
+	/**
+	 * Open a new {@link CDOSession}. Caller is responsible of {@link CDOSession#close() closing} the
+	 * resulting session.
+	 * 
+	 * @param connector
+	 *            the {@link IConnector} to use to open the {@link CDOSession}
+	 * @param repository
+	 *            the repository name
+	 * @return a new {@link CDOSession}
+	 */
+	public static CDOSession openSession(IConnector connector, String repository) {
+		return openSession(connector, repository, null, null);
+	}
+
+	/**
+	 * Open a new {@link CDOSession}. Caller is responsible of {@link CDOSession#close() closing} the
+	 * resulting session.
+	 * 
+	 * @param connector
+	 *            the {@link IConnector} to use to open the {@link CDOSession}
+	 * @param repository
+	 *            the repository name
+	 * @param login
+	 *            the user login if any, if <code>null</code> otherwise no authentication will by used
+	 * @param password
+	 *            the user password if an, if <code>null</code> empty {@link String} will be used
+	 * @return a new {@link CDOSession}
+	 */
+	public static CDOSession openSession(IConnector connector, String repository, String login,
+			String password) {
+		CDOSessionConfiguration sessionConfiguration = CDONet4jUtil.createSessionConfiguration();
+		sessionConfiguration.setConnector(connector);
+		sessionConfiguration.setRepositoryName(repository);
+		if (login != null) {
+			final String pass;
+			if (password != null) {
+				pass = password;
+			} else {
+				pass = "";
+			}
+			sessionConfiguration.getAuthenticator().setCredentialsProvider(new PasswordCredentialsProvider(
+					login, pass.toCharArray()));
+		}
+
+		CDOSession res = sessionConfiguration.openSession();
+
+		return res;
+	}
+
+	/**
+	 * Open a {@link CDOTransaction} on the main {@link CDOBranch}. Caller is responsible of
+	 * {@link CDOTransaction#close() closing} the resulting transaction.
+	 * 
+	 * @param session
+	 *            the {@link CDOSession} to use to open the {@link CDOTransaction}
+	 * @return a new {@link CDOTransaction}
+	 */
+	public static CDOTransaction openTransaction(CDOSession session) {
+		return openTransaction(session, null);
+	}
+
+	/**
+	 * Open a {@link CDOTransaction} on the given {@link CDOBranch}. Caller is responsible of
+	 * {@link CDOTransaction#close() closing} the resulting transaction.
+	 * 
+	 * @param session
+	 *            the {@link CDOSession} to use to open the {@link CDOTransaction}
+	 * @param branchName
+	 *            the branch name or <code>null</code> for the main branch
+	 * @return a new {@link CDOTransaction}
+	 */
+	public static CDOTransaction openTransaction(CDOSession session, String branchName) {
+		final CDOTransaction res;
+		if (branchName != null) {
+			CDOBranch branch = session.getBranchManager().getBranch(branchName);
+			if (branch != null) {
+				res = session.openTransaction(branch);
+			} else {
+				res = null;
+				throw new IllegalArgumentException("The branch " + branchName + " doesn't exist.");
+			}
+		} else {
+			res = session.openTransaction();
+		}
+		return res;
+	}
+
+	/**
+	 * Lists {@link CDOResource} of the given {@link CDOView}.
+	 * 
+	 * @param view
+	 *            the {@link CDOView}
+	 * @return the {@link List} of {@link CDOResource} from the given {@link CDOView}
+	 */
+	public static List<CDOResource> getResources(CDOView view) {
+		final List<CDOResource> res = new ArrayList<CDOResource>();
+
+		for (EObject eObj : view.getRootResource().eContents()) {
+			res.add((CDOResource)eObj);
+		}
+
+		return res;
+	}
+
+	/**
+	 * Lists all {@link CDOBranch} for the given {@link CDOSession}.
+	 * 
+	 * @param session
+	 *            the {@link CDOSession} to use to list {@link CDOBranch}
+	 * @return the {@link List} of {@link CDOBranch} for the given {@link CDOSession}
+	 */
+	public static List<CDOBranch> getBranches(CDOSession session) {
+		final List<CDOBranch> res = new ArrayList<CDOBranch>();
+		session.getBranchManager().getBranches(Integer.MIN_VALUE, Integer.MAX_VALUE, new CDOBranchHandler() {
+
+			/**
+			 * {@inheritDoc}
+			 * 
+			 * @see org.eclipse.emf.cdo.common.branch.CDOBranchHandler#handleBranch(org.eclipse.emf.cdo.common.branch.CDOBranch)
+			 */
+			public void handleBranch(CDOBranch branch) {
+				res.add(branch);
+			}
+		});
+		return res;
+	}
+
+	/**
+	 * Gets a {@link IManagedContainer}.
+	 * 
+	 * @param description
+	 *            the description of the protocol host and port to use for the connection
+	 * @return a {@link IManagedContainer}
+	 */
+	private static IManagedContainer getContainer(String description) {
+		IManagedContainer res = ContainerUtil.createContainer();
+		Net4jUtil.prepareContainer(res);
+		CDONet4jUtil.prepareContainer(res);
+		TCPUtil.prepareContainer(res);
+		res.activate();
+		return res;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDOBinaryResourceLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDOBinaryResourceLocationTests.java
new file mode 100644
index 0000000..48de62c
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDOBinaryResourceLocationTests.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests;
+
+import org.eclipse.intent.mapping.emf.tests.base.AbstractCDOBinaryResourceLocationTests;
+import org.eclipse.intent.mapping.emf.tests.base.Factory;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * Test {@link org.eclipse.intent.mapping.CDOBinaryResourceLocation CDOBinaryResourceLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFCDOBinaryResourceLocationTests extends AbstractCDOBinaryResourceLocationTests {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDOFolderLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDOFolderLocationTests.java
new file mode 100644
index 0000000..e0bbb40
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDOFolderLocationTests.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests;
+
+import org.eclipse.intent.mapping.emf.tests.base.AbstractCDOFolderLocationTests;
+import org.eclipse.intent.mapping.emf.tests.base.Factory;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * Test {@link org.eclipse.intent.mapping.CDOFolderLocation CDOFolderLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFCDOFolderLocationTests extends AbstractCDOFolderLocationTests {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDORepositoryLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDORepositoryLocationTests.java
new file mode 100644
index 0000000..388d578
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDORepositoryLocationTests.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests;
+
+import org.eclipse.intent.mapping.emf.tests.base.AbstractCDORepositoryLocationTests;
+import org.eclipse.intent.mapping.emf.tests.base.Factory;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * Test {@link org.eclipse.intent.mapping.CDORepositoryLocation CDORepositoryLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFCDORepositoryLocationTests extends AbstractCDORepositoryLocationTests {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDOTextResourceLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDOTextResourceLocationTests.java
new file mode 100644
index 0000000..3a115bb
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFCDOTextResourceLocationTests.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests;
+
+import org.eclipse.intent.mapping.emf.tests.base.AbstractCDOTextResourceLocationTests;
+import org.eclipse.intent.mapping.emf.tests.base.Factory;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * Test {@link org.eclipse.intent.mapping.CDOTextResourceLocation CDOTextResourceLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFCDOTextResourceLocationTests extends AbstractCDOTextResourceLocationTests {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFEObjectLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFEObjectLocationTests.java
new file mode 100644
index 0000000..ba19e7b
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFEObjectLocationTests.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests;
+
+import org.eclipse.intent.mapping.emf.tests.base.Factory;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * Tests {@link org.eclipse.intent.mapping.EObjectLocation EObjectLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFEObjectLocationTests extends AbstractEObjectLocationTest {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFTextLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFTextLocationTests.java
new file mode 100644
index 0000000..6634b35
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/EMFTextLocationTests.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests;
+
+import org.eclipse.intent.mapping.emf.tests.base.Factory;
+import org.eclipse.intent.mapping.tests.base.AbstractTextLocationTests;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * Test {@link org.eclipse.intent.mapping.tests.testmapping.TestLocation TestLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFTextLocationTests extends AbstractTextLocationTests {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOBinaryResourceLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOBinaryResourceLocationTests.java
new file mode 100644
index 0000000..c5ed083
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOBinaryResourceLocationTests.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.base;
+
+import org.eclipse.intent.mapping.emf.ICDOBinaryResourceLocation;
+
+/**
+ * Test {@link ICDOBinaryResourceLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractCDOBinaryResourceLocationTests extends AbstractCDOFileLocationTests {
+
+	@Override
+	protected ICDOBinaryResourceLocation createLocation() throws InstantiationException,
+			IllegalAccessException, ClassNotFoundException {
+		return getBase().getFactory().createElement(ICDOBinaryResourceLocation.class);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOFileLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOFileLocationTests.java
new file mode 100644
index 0000000..c934edd
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOFileLocationTests.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.base;
+
+import org.eclipse.intent.mapping.emf.ICDOFileLocation;
+
+/**
+ * Test {@link ICDOFileLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractCDOFileLocationTests extends AbstractCDOResourceNodeLocationTests {
+
+	@Override
+	protected ICDOFileLocation createLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(ICDOFileLocation.class);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOFolderLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOFolderLocationTests.java
new file mode 100644
index 0000000..616b653
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOFolderLocationTests.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.base;
+
+import org.eclipse.intent.mapping.emf.ICDOFolderLocation;
+
+/**
+ * Test {@link ICDOFolderLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractCDOFolderLocationTests extends AbstractCDOResourceNodeLocationTests {
+
+	@Override
+	protected ICDOFolderLocation createLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(ICDOFolderLocation.class);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDORepositoryLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDORepositoryLocationTests.java
new file mode 100644
index 0000000..bfd633e
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDORepositoryLocationTests.java
@@ -0,0 +1,97 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.base;
+
+import org.eclipse.intent.mapping.emf.ICDORepositoryLocation;
+import org.eclipse.intent.mapping.tests.base.AbstractLocationTests;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Test {@link ICDORepositoryLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractCDORepositoryLocationTests extends AbstractLocationTests {
+
+	@Override
+	protected ICDORepositoryLocation createLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(ICDORepositoryLocation.class);
+	}
+
+	@Test
+	public void setURL() throws Exception {
+		final ICDORepositoryLocation location = createLocation();
+
+		location.setURL("someURL");
+
+		assertEquals("someURL", location.getURL());
+	}
+
+	@Test
+	public void getURLDefault() throws Exception {
+		final ICDORepositoryLocation location = createLocation();
+
+		assertEquals(null, location.getURL());
+	}
+
+	@Test
+	public void setUUID() throws Exception {
+		final ICDORepositoryLocation location = createLocation();
+
+		location.setUUID("someUUID");
+
+		assertEquals("someUUID", location.getUUID());
+	}
+
+	@Test
+	public void getUUIDDefault() throws Exception {
+		final ICDORepositoryLocation location = createLocation();
+
+		assertEquals(null, location.getUUID());
+	}
+
+	@Test
+	public void setName() throws Exception {
+		final ICDORepositoryLocation location = createLocation();
+
+		location.setName("someName");
+
+		assertEquals("someName", location.getName());
+	}
+
+	@Test
+	public void getNameDefault() throws Exception {
+		final ICDORepositoryLocation location = createLocation();
+
+		assertEquals(null, location.getName());
+	}
+
+	@Test
+	public void setBranchID() throws Exception {
+		final ICDORepositoryLocation location = createLocation();
+
+		location.setBranchID(42);
+
+		assertEquals(42, location.getBranchID());
+	}
+
+	@Test
+	public void getBranchIDDefault() throws Exception {
+		final ICDORepositoryLocation location = createLocation();
+
+		assertEquals(-1, location.getBranchID());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOResourceNodeLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOResourceNodeLocationTests.java
new file mode 100644
index 0000000..992cd60
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOResourceNodeLocationTests.java
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.base;
+
+import org.eclipse.intent.mapping.emf.ICDOResourceNodeLocation;
+import org.eclipse.intent.mapping.tests.base.AbstractLocationTests;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Test {@link ICDOResourceNodeLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractCDOResourceNodeLocationTests extends AbstractLocationTests {
+
+	@Override
+	protected ICDOResourceNodeLocation createLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(ICDOResourceNodeLocation.class);
+	}
+
+	@Test
+	public void setPath() throws Exception {
+		final ICDOResourceNodeLocation location = createLocation();
+
+		location.setPath("somePath");
+
+		assertEquals("somePath", location.getPath());
+	}
+
+	@Test
+	public void getPathDefault() throws Exception {
+		final ICDOResourceNodeLocation location = createLocation();
+
+		assertEquals(null, location.getPath());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOTextResourceLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOTextResourceLocationTests.java
new file mode 100644
index 0000000..980a029
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/AbstractCDOTextResourceLocationTests.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.base;
+
+import org.eclipse.intent.mapping.emf.ICDOTextResourceLocation;
+
+/**
+ * Test {@link ICDOTextResourceLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractCDOTextResourceLocationTests extends AbstractCDOFileLocationTests {
+
+	@Override
+	protected ICDOTextResourceLocation createLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(ICDOTextResourceLocation.class);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/EMFBaseTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/EMFBaseTests.java
new file mode 100644
index 0000000..22b6854
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/EMFBaseTests.java
@@ -0,0 +1,137 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.base;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
+import org.eclipse.intent.mapping.Base;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.emf.ICDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.emf.ICDOFolderLocation;
+import org.eclipse.intent.mapping.emf.ICDORepositoryLocation;
+import org.eclipse.intent.mapping.emf.ICDOResourceLocation;
+import org.eclipse.intent.mapping.emf.ICDOTextResourceLocation;
+import org.eclipse.intent.mapping.emf.IEObjectLocation;
+import org.eclipse.intent.mapping.tests.base.AbstractBaseTests;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Test {@link org.eclipse.intent.mapping.Base Base}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFBaseTests extends AbstractBaseTests {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+	@Test(expected = IOException.class)
+	public void saveNotInResource() throws IOException {
+		final IBase base = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+
+		base.save();
+	}
+
+	@Test
+	public void save() throws IOException {
+		final Base base = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+		base.setName("testBase");
+
+		final ResourceSet rs = new ResourceSetImpl();
+		rs.getResourceFactoryRegistry().getExtensionToFactoryMap().put("*", new XMIResourceFactoryImpl());
+		rs.getPackageRegistry().put(MappingPackage.eNS_URI, MappingPackage.eINSTANCE);
+		rs.getPackageRegistry().put(EcorePackage.eNS_URI, EcorePackage.eINSTANCE);
+		final Resource r = rs.createResource(URI.createURI("./test.mapping"));
+		r.getContents().add(base);
+
+		base.save();
+
+		final ResourceSet rs2 = new ResourceSetImpl();
+		rs2.getResourceFactoryRegistry().getExtensionToFactoryMap().put("*", new XMIResourceFactoryImpl());
+		rs2.getPackageRegistry().put(MappingPackage.eNS_URI, MappingPackage.eINSTANCE);
+		rs2.getPackageRegistry().put(EcorePackage.eNS_URI, EcorePackage.eINSTANCE);
+		final Resource r2 = rs2.getResource(URI.createFileURI("./test.mapping"), true);
+
+		assertEquals(1, r2.getContents().size());
+		assertTrue(r2.getContents().get(0) instanceof Base);
+		assertEquals("testBase", ((Base)r2.getContents().get(0)).getName());
+
+		r2.delete(null);
+
+		assertTrue(!new File("./test.mapping").exists());
+	}
+
+	@Test
+	public void testCreateEObjectLocation() throws Exception {
+		final IBase base = getBase();
+		final IEObjectLocation element = base.getFactory().createElement(IEObjectLocation.class);
+
+		assertTrue(element instanceof IEObjectLocation);
+	}
+
+	@Test
+	public void testCreateCDORepositoryLocation() throws Exception {
+		final IBase base = getBase();
+		final ICDORepositoryLocation element = base.getFactory().createElement(ICDORepositoryLocation.class);
+
+		assertTrue(element instanceof ICDORepositoryLocation);
+	}
+
+	@Test
+	public void testCreateCDOFolderLocation() throws Exception {
+		final IBase base = getBase();
+		final ICDOFolderLocation element = base.getFactory().createElement(ICDOFolderLocation.class);
+
+		assertTrue(element instanceof ICDOFolderLocation);
+	}
+
+	@Test
+	public void testCreateCDOBinaryResourceLocation() throws Exception {
+		final IBase base = getBase();
+		final ICDOBinaryResourceLocation element = base.getFactory().createElement(
+				ICDOBinaryResourceLocation.class);
+
+		assertTrue(element instanceof ICDOBinaryResourceLocation);
+	}
+
+	@Test
+	public void testCreateCDOTextResourceLocation() throws Exception {
+		final IBase base = getBase();
+		final ICDOTextResourceLocation element = base.getFactory().createElement(
+				ICDOTextResourceLocation.class);
+
+		assertTrue(element instanceof ICDOTextResourceLocation);
+	}
+
+	@Test
+	public void testCreateCDOResourceLocation() throws Exception {
+		final IBase base = getBase();
+		final ICDOResourceLocation element = base.getFactory().createElement(ICDOResourceLocation.class);
+
+		assertTrue(element instanceof ICDOResourceLocation);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/EMFLinkTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/EMFLinkTests.java
new file mode 100644
index 0000000..978cf72
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/EMFLinkTests.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.base;
+
+import org.eclipse.intent.mapping.tests.base.AbstractLinkTests;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * Test {@link org.eclipse.intent.mapping.Link Link}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFLinkTests extends AbstractLinkTests {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/EMFReportTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/EMFReportTests.java
new file mode 100644
index 0000000..c4d8ab1
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/EMFReportTests.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.base;
+
+import org.eclipse.intent.mapping.tests.base.AbstractReportTests;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * Test {@link org.eclipse.intent.mapping.Report Report}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EMFReportTests extends AbstractReportTests {
+
+	@Override
+	protected IBaseFactory getFactory() {
+		return Factory.INSTANCE;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/Factory.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/Factory.java
new file mode 100644
index 0000000..f044a78
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/base/Factory.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.base;
+
+import org.eclipse.intent.mapping.impl.MappingFactoryImpl;
+import org.eclipse.intent.mapping.tests.base.IBaseFactory;
+
+/**
+ * The tested objects factory.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class Factory extends MappingFactoryImpl implements IBaseFactory {
+
+	/**
+	 * The {@link Factory} instance.
+	 */
+	public static final Factory INSTANCE = new Factory();
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/CDOContainerProviderTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/CDOContainerProviderTests.java
new file mode 100644
index 0000000..ffa6f0d
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/CDOContainerProviderTests.java
@@ -0,0 +1,144 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.connector;
+
+import org.eclipse.emf.cdo.eresource.CDOResource;
+import org.eclipse.emf.cdo.session.CDOSession;
+import org.eclipse.emf.cdo.transaction.CDOTransaction;
+import org.eclipse.emf.cdo.util.CommitException;
+import org.eclipse.emf.cdo.util.ConcurrentAccessException;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.emf.connector.CDOContainerProvider;
+import org.eclipse.intent.mapping.emf.tests.AllTests;
+import org.eclipse.intent.mapping.emf.tests.CDOServer;
+import org.eclipse.intent.mapping.emf.tests.CDOUtils;
+import org.eclipse.net4j.connector.IConnector;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+/**
+ * Tests {@link CDOContainerProvider}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class CDOContainerProviderTests {
+
+	/**
+	 * The {@link CDOTransaction}.
+	 */
+	private static CDOTransaction transaction;
+
+	/**
+	 * The {@link CDOResource}.
+	 */
+	private static CDOResource resource;
+
+	/**
+	 * The {@link EObject}.
+	 */
+	private static EObject eObject;
+
+	@BeforeClass
+	public static void beforeClass() throws ConcurrentAccessException, CommitException {
+		AllTests.startCDOServer();
+		IConnector connector = CDOUtils.getConnector(CDOServer.PROTOCOL + "://" + CDOServer.IP + ":"
+				+ CDOServer.PORT);
+		CDOSession session = CDOUtils.openSession(connector, CDOServer.REPOSITORY_NAME);
+		transaction = CDOUtils.openTransaction(session);
+		resource = transaction.createResource(CDOContainerProviderTests.class.getCanonicalName());
+		eObject = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+		resource.getContents().add(eObject);
+		transaction.commit();
+	}
+
+	@AfterClass
+	public static void afterClass() {
+		transaction.close();
+		AllTests.stopCDOServer();
+	}
+
+	@Test
+	public void getContainerNull() {
+		final CDOContainerProvider provider = new CDOContainerProvider();
+
+		final Object result = provider.getContainer(null);
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getContainerObject() {
+		final CDOContainerProvider provider = new CDOContainerProvider();
+
+		final Object element = new Object();
+		final Object result = provider.getContainer(element);
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getContainerEObjectNoResource() {
+		final CDOContainerProvider provider = new CDOContainerProvider();
+
+		final EObject element = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+		final Object result = provider.getContainer(element);
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getContainerEObjectNoCDOResource() {
+		final CDOContainerProvider provider = new CDOContainerProvider();
+
+		final EObject element = MappingPackage.eINSTANCE.getMappingFactory().createBase();
+		final Resource r = new XMIResourceImpl();
+		r.getContents().add(element);
+		final Object result = provider.getContainer(element);
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getContainerEOject() {
+		final CDOContainerProvider provider = new CDOContainerProvider();
+
+		final Object result = provider.getContainer(eObject);
+
+		assertEquals(resource, result);
+	}
+
+	@Test
+	public void getContainerCDOResource() {
+		final CDOContainerProvider provider = new CDOContainerProvider();
+
+		final Object result = provider.getContainer(resource);
+
+		assertEquals(transaction, result);
+	}
+
+	@Test
+	public void getContainerCDOView() {
+		final CDOContainerProvider provider = new CDOContainerProvider();
+
+		final Object result = provider.getContainer(transaction);
+
+		assertNull(result);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/CDOResourceNodeConnectorTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/CDOResourceNodeConnectorTests.java
new file mode 100644
index 0000000..9fcd75e
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/CDOResourceNodeConnectorTests.java
@@ -0,0 +1,906 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.connector;
+
+import org.eclipse.emf.cdo.eresource.CDOBinaryResource;
+import org.eclipse.emf.cdo.eresource.CDOResource;
+import org.eclipse.emf.cdo.eresource.CDOResourceFolder;
+import org.eclipse.emf.cdo.eresource.CDOTextResource;
+import org.eclipse.emf.cdo.session.CDOSession;
+import org.eclipse.emf.cdo.transaction.CDOTransaction;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.emf.ICDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.emf.ICDOFolderLocation;
+import org.eclipse.intent.mapping.emf.ICDORepositoryLocation;
+import org.eclipse.intent.mapping.emf.ICDOResourceLocation;
+import org.eclipse.intent.mapping.emf.ICDOResourceNodeLocation;
+import org.eclipse.intent.mapping.emf.ICDOTextResourceLocation;
+import org.eclipse.intent.mapping.emf.connector.CDOResourceNodeConnector;
+import org.eclipse.intent.mapping.emf.connector.CDOViewConnector;
+import org.eclipse.intent.mapping.emf.tests.AllTests;
+import org.eclipse.intent.mapping.emf.tests.CDOServer;
+import org.eclipse.intent.mapping.emf.tests.CDOUtils;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOViewConnectorTests.TestCDORepositoryLocation;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorParametrizedTests.TestEObjectContainerLocation;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestLocation;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests;
+import org.eclipse.net4j.connector.IConnector;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link CDOResourceNodeConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class CDOResourceNodeConnectorTests {
+
+	/**
+	 * Test {@link ICDOResourceNodeLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public abstract static class AbstractTestCDOResourceNodeLocation extends TestLocation implements ICDOResourceNodeLocation {
+
+		/**
+		 * The path.
+		 */
+		private String path;
+
+		public String getPath() {
+			return path;
+		}
+
+		public void setPath(String path) {
+			this.path = path;
+		}
+
+	}
+
+	/**
+	 * A test {@link ICDOFolderLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestCDOFolderLocation extends AbstractTestCDOResourceNodeLocation implements ICDOFolderLocation {
+
+	}
+
+	/**
+	 * A test {@link ICDOBinaryResourceLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestCDOBinaryResourceLocation extends AbstractTestCDOResourceNodeLocation implements ICDOBinaryResourceLocation {
+
+	}
+
+	/**
+	 * A test {@link ICDOTextResourceLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestCDOTextResourceLocation extends AbstractTestCDOResourceNodeLocation implements ICDOTextResourceLocation {
+
+		/**
+		 * The containing text.
+		 */
+		private String text;
+
+		public void setText(String text) {
+			this.text = text;
+		}
+
+		public String getText() {
+			return text;
+		}
+
+	}
+
+	/**
+	 * A test {@link ICDOResourceLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestCDOResourceLocation extends TestEObjectContainerLocation implements ICDOResourceLocation {
+
+		/**
+		 * The path.
+		 */
+		private String path;
+
+		public String getPath() {
+			return path;
+		}
+
+		public void setPath(String path) {
+			this.path = path;
+		}
+
+	}
+
+	/**
+	 * Test {@link CDOViewConnector}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private static class TestCDOResourceNodeConnector extends CDOResourceNodeConnector {
+		@Override
+		public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+				Object element) {
+			return super.getLocationType(containerType, element);
+		}
+
+		@Override
+		public void initLocation(ILocationContainer container, ILocation location, Object element) {
+			super.initLocation(container, location, element);
+		}
+
+		@Override
+		public boolean match(ILocation location, Object element) {
+			return super.match(location, element);
+		}
+
+	}
+
+	/**
+	 * The {@link CDOTransaction}.
+	 */
+	private static CDOTransaction transaction;
+
+	/**
+	 * A {@link CDOResourceFolder}.
+	 */
+	private static CDOResourceFolder folder;
+
+	/**
+	 * A {@link CDOTextResource}.
+	 */
+	private static CDOTextResource textResource;
+
+	/**
+	 * A {@link CDOBinaryResource}.
+	 */
+	private static CDOBinaryResource binaryResource;
+
+	/**
+	 * A {@link CDOResource}.
+	 */
+	private static CDOResource resource;
+
+	/**
+	 * The {@link CDOViewConnector}.
+	 */
+	private static CDOViewConnector viewConnector = new CDOViewConnector();
+
+	/**
+	 * The connector to test.
+	 */
+	private TestCDOResourceNodeConnector connector = new TestCDOResourceNodeConnector();
+
+	@BeforeClass
+	public static void beforeClass() throws Exception {
+		AllTests.startCDOServer();
+		IConnector connector = CDOUtils.getConnector(CDOServer.PROTOCOL + "://" + CDOServer.IP + ":"
+				+ CDOServer.PORT);
+		CDOSession session = CDOUtils.openSession(connector, CDOServer.REPOSITORY_NAME);
+		transaction = CDOUtils.openTransaction(session);
+		viewConnector.addSessionToCache(transaction);
+
+		folder = transaction.createResourceFolder(CDOResourceNodeConnectorTests.class.getCanonicalName()
+				+ "/test/");
+		textResource = transaction.createTextResource(CDOResourceNodeConnectorTests.class.getCanonicalName()
+				+ "/test/test.txt");
+		binaryResource = transaction.createBinaryResource(CDOResourceNodeConnectorTests.class
+				.getCanonicalName() + "/test/test.bin");
+		resource = transaction.createResource(CDOResourceNodeConnectorTests.class.getCanonicalName()
+				+ "/test/test.resource");
+		transaction.commit();
+
+		viewConnector.addSessionToCache(transaction);
+		MappingUtils.getConnectorRegistry().register(viewConnector);
+	}
+
+	@AfterClass
+	public static void afterClass() throws Exception {
+		viewConnector.removeSessionFromCache(transaction);
+
+		resource.delete(null);
+		binaryResource.delete(null);
+		textResource.delete(null);
+		folder.delete(null);
+		transaction.commit();
+
+		MappingUtils.getConnectorRegistry().unregister(viewConnector);
+		transaction.close();
+		AllTests.stopCDOServer();
+	}
+
+	@Test
+	public void getLocationTypeFolder() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOFolderLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOFolderLocation>(TestCDOFolderLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(folder.getPath());
+
+		assertEquals(ICDOFolderLocation.class, connector.getLocationType(ICDORepositoryLocation.class,
+				folder));
+	}
+
+	@Test
+	public void getLocationTypeBinaryFile() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOBinaryResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOBinaryResourceLocation>(
+						TestCDOBinaryResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(binaryResource.getPath());
+
+		assertEquals(ICDOBinaryResourceLocation.class, connector.getLocationType(ICDORepositoryLocation.class,
+				binaryResource));
+	}
+
+	@Test
+	public void getLocationTypeTextFile() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOTextResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOTextResourceLocation>(
+						TestCDOTextResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(textResource.getPath());
+
+		assertEquals(ICDOTextResourceLocation.class, connector.getLocationType(ICDORepositoryLocation.class,
+				textResource));
+	}
+
+	@Test
+	public void getLocationTypeResource() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOResourceLocation>(
+						TestCDOResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(resource.getPath());
+
+		assertEquals(ICDOResourceLocation.class, connector.getLocationType(ICDORepositoryLocation.class,
+				resource));
+	}
+
+	@Test
+	public void getElementFolder() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOFolderLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOFolderLocation>(TestCDOFolderLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(folder.getPath());
+
+		final Object element = connector.getElement(location);
+
+		assertTrue(element instanceof CDOResourceFolder);
+		assertEquals(folder.getPath(), ((CDOResourceFolder)element).getPath());
+	}
+
+	@Test
+	public void getElementBinaryFile() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOBinaryResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOBinaryResourceLocation>(
+						TestCDOBinaryResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(binaryResource.getPath());
+
+		final Object element = connector.getElement(location);
+
+		assertTrue(element instanceof CDOBinaryResource);
+		assertEquals(binaryResource.getPath(), ((CDOBinaryResource)element).getPath());
+	}
+
+	@Test
+	public void getElementTextFile() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOTextResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOTextResourceLocation>(
+						TestCDOTextResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(textResource.getPath());
+
+		final Object element = connector.getElement(location);
+
+		assertTrue(element instanceof CDOTextResource);
+		assertEquals(textResource.getPath(), ((CDOTextResource)element).getPath());
+	}
+
+	@Test
+	public void getElementResource() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOResourceLocation>(
+						TestCDOResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(resource.getPath());
+
+		final Object element = connector.getElement(location);
+
+		assertTrue(element instanceof CDOResource);
+		assertEquals(resource.getPath(), ((CDOResource)element).getPath());
+	}
+
+	@Test
+	public void getNameFolder() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOFolderLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOFolderLocation>(TestCDOFolderLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(folder.getPath());
+
+		assertEquals("/org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests/test",
+				connector.getName(location));
+	}
+
+	@Test
+	public void getNameBinaryFile() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOBinaryResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOBinaryResourceLocation>(
+						TestCDOBinaryResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(binaryResource.getPath());
+
+		assertEquals(
+				"/org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests/test/test.bin",
+				connector.getName(location));
+	}
+
+	@Test
+	public void getNameTextFile() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOTextResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOTextResourceLocation>(
+						TestCDOTextResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(textResource.getPath());
+
+		assertEquals(
+				"/org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests/test/test.txt",
+				connector.getName(location));
+	}
+
+	@Test
+	public void getNameResource() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOResourceLocation>(
+						TestCDOResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		location.setContainer(container);
+		location.setPath(resource.getPath());
+
+		assertEquals(
+				"/org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests/test/test.resource",
+				connector.getName(location));
+	}
+
+	@Test
+	public void initLocationFolder() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOFolderLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOFolderLocation>(TestCDOFolderLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, folder);
+		location.setContainer(container);
+
+		assertEquals("/org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests/test",
+				location.getPath());
+	}
+
+	@Test
+	public void initLocationBinaryFile() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOBinaryResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOBinaryResourceLocation>(
+						TestCDOBinaryResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, binaryResource);
+		location.setContainer(container);
+
+		assertEquals(
+				"/org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests/test/test.bin",
+				location.getPath());
+	}
+
+	@Test
+	public void initLocationTextFile() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOTextResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOTextResourceLocation>(
+						TestCDOTextResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, textResource);
+
+		assertEquals(
+				"/org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests/test/test.txt",
+				location.getPath());
+	}
+
+	@Test
+	public void initLocationResource() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOResourceLocation>(
+						TestCDOResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, resource);
+		location.setContainer(container);
+
+		assertEquals(
+				"/org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests/test/test.resource",
+				location.getPath());
+	}
+
+	@Test
+	public void matchFolder() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOFolderLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOFolderLocation>(TestCDOFolderLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, folder);
+		location.setContainer(container);
+
+		assertTrue(connector.match(location, folder));
+	}
+
+	@Test
+	public void matchFolderDifferenteBranch() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOFolderLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOFolderLocation>(TestCDOFolderLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+		container.setBranchID(container.getBranchID() + 42);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, folder);
+		location.setContainer(container);
+
+		assertFalse(connector.match(location, folder));
+	}
+
+	@Test
+	public void matchFolderDifferenteRepository() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOFolderLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOFolderLocation>(TestCDOFolderLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+		container.setUUID(container.getUUID() + "42");
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, folder);
+		location.setContainer(container);
+
+		assertFalse(connector.match(location, folder));
+	}
+
+	@Test
+	public void matchFolderDifferentePath() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOFolderLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOFolderLocation>(TestCDOFolderLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, folder);
+		location.setContainer(container);
+		location.setPath(location.getPath() + "42");
+
+		assertFalse(connector.match(location, folder));
+	}
+
+	@Test
+	public void matchBinaryResourceFile() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOBinaryResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOBinaryResourceLocation>(
+						TestCDOBinaryResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, binaryResource);
+		location.setContainer(container);
+
+		assertTrue(connector.match(location, binaryResource));
+	}
+
+	@Test
+	public void matchBinaryResourceFileDifferenteBranch() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOBinaryResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOBinaryResourceLocation>(
+						TestCDOBinaryResourceLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+		container.setBranchID(container.getBranchID() + 42);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, binaryResource);
+		location.setContainer(container);
+
+		assertFalse(connector.match(location, binaryResource));
+	}
+
+	@Test
+	public void matchBinaryResourceFileDifferenteRepository() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOBinaryResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOBinaryResourceLocation>(
+						TestCDOBinaryResourceLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+		container.setUUID(container.getUUID() + "42");
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, binaryResource);
+		location.setContainer(container);
+
+		assertFalse(connector.match(location, binaryResource));
+	}
+
+	@Test
+	public void matchBinaryResourceFileDifferentePath() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOBinaryResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOBinaryResourceLocation>(
+						TestCDOBinaryResourceLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, binaryResource);
+		location.setContainer(container);
+		location.setPath(location.getPath() + "42");
+
+		assertFalse(connector.match(location, binaryResource));
+	}
+
+	@Test
+	public void matchTextFile() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOTextResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOTextResourceLocation>(
+						TestCDOTextResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, textResource);
+		location.setContainer(container);
+
+		assertTrue(connector.match(location, textResource));
+	}
+
+	@Test
+	public void matchTextFileDifferenteBranch() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOTextResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOTextResourceLocation>(
+						TestCDOTextResourceLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+		container.setBranchID(container.getBranchID() + 42);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, textResource);
+		location.setContainer(container);
+
+		assertFalse(connector.match(location, textResource));
+	}
+
+	@Test
+	public void matchTextFileDifferenteRepository() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOTextResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOTextResourceLocation>(
+						TestCDOTextResourceLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+		container.setUUID(container.getUUID() + "42");
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, textResource);
+		location.setContainer(container);
+
+		assertFalse(connector.match(location, textResource));
+	}
+
+	@Test
+	public void matchTextFileDifferentePath() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOTextResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOTextResourceLocation>(
+						TestCDOTextResourceLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, textResource);
+		location.setContainer(container);
+		location.setPath(location.getPath() + "42");
+
+		assertFalse(connector.match(location, textResource));
+	}
+
+	@Test
+	public void matchResource() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOResourceLocation>(
+						TestCDOResourceLocation.class));
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, resource);
+		location.setContainer(container);
+
+		assertTrue(connector.match(location, resource));
+	}
+
+	@Test
+	public void matchResourceDifferenteBranch() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOResourceLocation>(
+						TestCDOResourceLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+		container.setBranchID(container.getBranchID() + 42);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, resource);
+		location.setContainer(container);
+
+		assertFalse(connector.match(location, resource));
+	}
+
+	@Test
+	public void matchResourceDifferenteRepository() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOResourceLocation>(
+						TestCDOResourceLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+		container.setUUID(container.getUUID() + "42");
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, resource);
+		location.setContainer(container);
+
+		assertFalse(connector.match(location, resource));
+	}
+
+	@Test
+	public void matchResourceDifferentePath() throws Exception {
+
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOResourceLocation>(
+						TestCDOResourceLocation.class));
+
+		final ICDORepositoryLocation container = (ICDORepositoryLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(base, transaction);
+
+		final TestCDOFolderLocation location = new TestCDOFolderLocation();
+		connector.initLocation(container, location, resource);
+		location.setContainer(container);
+		location.setPath(location.getPath() + "42");
+
+		assertFalse(connector.match(location, resource));
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/CDOViewConnectorTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/CDOViewConnectorTests.java
new file mode 100644
index 0000000..281246a
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/CDOViewConnectorTests.java
@@ -0,0 +1,247 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.connector;
+
+import org.eclipse.emf.cdo.internal.net4j.CDONet4jSessionImpl;
+import org.eclipse.emf.cdo.session.CDOSession;
+import org.eclipse.emf.cdo.transaction.CDOTransaction;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.emf.ICDORepositoryLocation;
+import org.eclipse.intent.mapping.emf.connector.CDOViewConnector;
+import org.eclipse.intent.mapping.emf.tests.AllTests;
+import org.eclipse.intent.mapping.emf.tests.CDOServer;
+import org.eclipse.intent.mapping.emf.tests.CDOUtils;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestLocation;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests.TestBase;
+import org.eclipse.net4j.connector.IConnector;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link CDOViewConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class CDOViewConnectorTests {
+
+	/**
+	 * Test {@link ICDORepositoryLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestCDORepositoryLocation extends TestLocation implements ICDORepositoryLocation {
+
+		/**
+		 * The URL.
+		 */
+		private String url;
+
+		/**
+		 * The UUID.
+		 */
+		private String uuid;
+
+		/**
+		 * The name.
+		 */
+		private String name;
+
+		/**
+		 * The branch ID.
+		 */
+		private int branchID;
+
+		public String getURL() {
+			return url;
+		}
+
+		public void setURL(String newURL) {
+			this.url = newURL;
+		}
+
+		public String getUUID() {
+			return uuid;
+		}
+
+		public void setUUID(String newUUID) {
+			this.uuid = newUUID;
+		}
+
+		public String getName() {
+			return name;
+		}
+
+		public void setName(String newName) {
+			this.name = newName;
+		}
+
+		public int getBranchID() {
+			return branchID;
+		}
+
+		public void setBranchID(int id) {
+			this.branchID = id;
+		}
+
+	}
+
+	/**
+	 * Test {@link CDOViewConnector}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private static class TestCDOViewConnector extends CDOViewConnector {
+		@Override
+		public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+				Object element) {
+			return super.getLocationType(containerType, element);
+		}
+
+		@Override
+		public void initLocation(ILocationContainer container, ILocation location, Object element) {
+			super.initLocation(container, location, element);
+		}
+
+		@Override
+		public boolean match(ILocation location, Object element) {
+			return super.match(location, element);
+		}
+
+	}
+
+	/**
+	 * The {@link CDOTransaction}.
+	 */
+	private static CDOTransaction transaction;
+
+	/**
+	 * The connector to test.
+	 */
+	private static TestCDOViewConnector connector = new TestCDOViewConnector();
+
+	@BeforeClass
+	public static void beforeClass() {
+		AllTests.startCDOServer();
+		IConnector c = CDOUtils.getConnector(CDOServer.PROTOCOL + "://" + CDOServer.IP + ":"
+				+ CDOServer.PORT);
+		CDOSession session = CDOUtils.openSession(c, CDOServer.REPOSITORY_NAME);
+		transaction = CDOUtils.openTransaction(session);
+		connector.addSessionToCache(transaction);
+	}
+
+	@AfterClass
+	public static void afterClass() {
+		connector.removeSessionFromCache(transaction);
+		transaction.close();
+		AllTests.stopCDOServer();
+	}
+
+	@Test
+	public void getElement() {
+		final TestCDORepositoryLocation location = new TestCDORepositoryLocation();
+		location.setUUID(transaction.getSession().getRepositoryInfo().getUUID());
+		final Object element = connector.getElement(location);
+
+		assertEquals(transaction, element);
+	}
+
+	@Test
+	public void getLocationDescriptor() {
+		final TestBase base = new TestBase();
+		final ILocationDescriptor descriptor = connector.getLocationDescriptor(base, transaction);
+
+		assertEquals(null, descriptor.getContainerDescriptor());
+		assertEquals(transaction, descriptor.getElement());
+		assertEquals("testRepo (tcp://127.0.0.1:12345)", descriptor.getName());
+	}
+
+	@Test
+	public void getLocationTypeNotCDOView() {
+		assertNull(connector.getLocationType(null, new Object()));
+	}
+
+	@Test
+	public void getLocationTypeCDOView() {
+		assertEquals(ICDORepositoryLocation.class, connector.getLocationType(null, transaction));
+	}
+
+	@Test
+	public void getName() {
+		final TestCDORepositoryLocation location = new TestCDORepositoryLocation();
+
+		location.setName(transaction.getSession().getRepositoryInfo().getName());
+		location.setURL(((CDONet4jSessionImpl)transaction.getSession()).getConnector().getURL());
+		location.setUUID(transaction.getSession().getRepositoryInfo().getUUID());
+
+		assertEquals("testRepo (tcp://127.0.0.1:12345)", connector.getName(location));
+	}
+
+	@Test
+	public void getType() {
+		assertEquals(ICDORepositoryLocation.class, connector.getType());
+	}
+
+	@Test
+	public void initLocation() {
+		final TestCDORepositoryLocation location = new TestCDORepositoryLocation();
+
+		connector.initLocation(null, location, transaction);
+
+		assertEquals(null, location.getContainer());
+		assertEquals("testRepo", location.getName());
+		assertEquals(0, location.getBranchID());
+		assertEquals("tcp://127.0.0.1:12345", location.getURL());
+		assertEquals(transaction.getSession().getRepositoryInfo().getUUID(), location.getUUID());
+	}
+
+	@Test
+	public void match() {
+		final TestCDORepositoryLocation location = new TestCDORepositoryLocation();
+
+		location.setName(transaction.getSession().getRepositoryInfo().getName());
+		location.setURL(((CDONet4jSessionImpl)transaction.getSession()).getConnector().getURL());
+		location.setUUID(transaction.getSession().getRepositoryInfo().getUUID());
+
+		assertTrue(connector.match(location, transaction));
+	}
+
+	@Test
+	public void matchDifferentBranch() {
+		final TestCDORepositoryLocation location = new TestCDORepositoryLocation();
+
+		location.setName(transaction.getSession().getRepositoryInfo().getName());
+		location.setURL(((CDONet4jSessionImpl)transaction.getSession()).getConnector().getURL());
+		location.setUUID(transaction.getSession().getRepositoryInfo().getUUID() + 42);
+
+		assertFalse(connector.match(location, transaction));
+	}
+
+	@Test
+	public void matchDifferentRepository() {
+		final TestCDORepositoryLocation location = new TestCDORepositoryLocation();
+
+		location.setName(transaction.getSession().getRepositoryInfo().getName());
+		location.setURL(((CDONet4jSessionImpl)transaction.getSession()).getConnector().getURL());
+		location.setUUID(transaction.getSession().getRepositoryInfo().getUUID() + "42");
+
+		assertFalse(connector.match(location, transaction));
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorCDOTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorCDOTests.java
new file mode 100644
index 0000000..81e96f3
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorCDOTests.java
@@ -0,0 +1,69 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.connector;
+
+import java.io.IOException;
+
+import org.eclipse.emf.cdo.eresource.CDOResource;
+import org.eclipse.emf.cdo.session.CDOSession;
+import org.eclipse.emf.cdo.transaction.CDOTransaction;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.intent.mapping.emf.connector.EObjectConnector;
+import org.eclipse.intent.mapping.emf.tests.AllTests;
+import org.eclipse.intent.mapping.emf.tests.CDOServer;
+import org.eclipse.intent.mapping.emf.tests.CDOUtils;
+import org.eclipse.net4j.connector.IConnector;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+
+/**
+ * Tests {@link EObjectConnector} with CDO.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EObjectConnectorCDOTests extends EObjectConnectorTests {
+
+	/**
+	 * The {@link CDOTransaction}.
+	 */
+	private static CDOTransaction transaction;
+
+	@BeforeClass
+	public static void beforeClass() {
+		AllTests.startCDOServer();
+		IConnector connector = CDOUtils.getConnector(CDOServer.PROTOCOL + "://" + CDOServer.IP + ":"
+				+ CDOServer.PORT);
+		CDOSession session = CDOUtils.openSession(connector, CDOServer.REPOSITORY_NAME);
+		transaction = CDOUtils.openTransaction(session);
+	}
+
+	@Override
+	protected Resource createResource(String name) {
+		final CDOResource existingResource = transaction.getResource(name, false);
+		if (existingResource != null && existingResource.isExisting()) {
+			try {
+				existingResource.delete(null);
+			} catch (IOException e) {
+				e.printStackTrace();
+			}
+		}
+		// CHECKSTYLE:OFF
+		return transaction.createResource("test.xmi");
+	}
+
+	@AfterClass
+	public static void afterClass() {
+		transaction.close();
+		AllTests.stopCDOServer();
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorParametrizedCDOTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorParametrizedCDOTests.java
new file mode 100644
index 0000000..911b319
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorParametrizedCDOTests.java
@@ -0,0 +1,75 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.connector;
+
+import java.io.IOException;
+
+import org.eclipse.emf.cdo.eresource.CDOResource;
+import org.eclipse.emf.cdo.session.CDOSession;
+import org.eclipse.emf.cdo.transaction.CDOTransaction;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.intent.mapping.emf.connector.EObjectConnector;
+import org.eclipse.intent.mapping.emf.tests.AllTests;
+import org.eclipse.intent.mapping.emf.tests.CDOServer;
+import org.eclipse.intent.mapping.emf.tests.CDOUtils;
+import org.eclipse.net4j.connector.IConnector;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+
+/**
+ * Tests {@link EObjectConnector} with CDO.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EObjectConnectorParametrizedCDOTests extends EObjectConnectorParametrizedTests {
+
+	/**
+	 * The {@link CDOTransaction}.
+	 */
+	private static CDOTransaction transaction;
+
+	public EObjectConnectorParametrizedCDOTests(Object[] original, Object[] altered) {
+		super(original, altered);
+	}
+
+	@BeforeClass
+	public static void beforeClass() {
+		AllTests.startCDOServer();
+		EObjectConnectorParametrizedTests.beforeClass();
+		IConnector connector = CDOUtils.getConnector(CDOServer.PROTOCOL + "://" + CDOServer.IP + ":"
+				+ CDOServer.PORT);
+		CDOSession session = CDOUtils.openSession(connector, CDOServer.REPOSITORY_NAME);
+		transaction = CDOUtils.openTransaction(session);
+	}
+
+	@Override
+	protected Resource createResource(String name) {
+		final CDOResource existingResource = transaction.getResource(name, false);
+		if (existingResource != null && existingResource.isExisting()) {
+			try {
+				existingResource.delete(null);
+			} catch (IOException e) {
+				e.printStackTrace();
+			}
+		}
+		// CHECKSTYLE:OFF
+		return transaction.createResource("test.xmi");
+	}
+
+	@AfterClass
+	public static void afterClass() {
+		transaction.close();
+		EObjectConnectorParametrizedTests.afterClass();
+		AllTests.stopCDOServer();
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorParametrizedTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorParametrizedTests.java
new file mode 100644
index 0000000..7258e5b
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorParametrizedTests.java
@@ -0,0 +1,796 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.connector;
+
+import anydsl.AnydslPackage;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EStructuralFeature.Setting;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.EcoreUtil.Copier;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl;
+import org.eclipse.intent.mapping.MappingPackage;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.connector.AbstractConnector;
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.eclipse.intent.mapping.emf.IEObjectContainer;
+import org.eclipse.intent.mapping.emf.IEObjectLocation;
+import org.eclipse.intent.mapping.emf.connector.EObjectConnector;
+import org.eclipse.intent.mapping.emf.connector.EObjectConnector.EObjectContainerHelper;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestCouple;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestLocation;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.junit.runners.Parameterized.Parameters;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+/**
+ * Tests {@link EObjectConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@RunWith(Parameterized.class)
+public class EObjectConnectorParametrizedTests {
+
+	/**
+	 * Test {@link IEObjectContainer}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestEObjectContainerLocation extends TestLocation implements IEObjectContainer {
+
+		/**
+		 * The XMI content.
+		 */
+		private String xmiContent;
+
+		/**
+		 * The {@link Resource}.
+		 */
+		private Resource resource;
+
+		/**
+		 * The mapping from {@link EObject} {@link URI} fragments to saved {@link URI} fragment.
+		 */
+		private List<ICouple> uriFragments = new ArrayList<ICouple>();
+
+		public void setResource(Resource res) {
+			resource = res;
+		}
+
+		public Resource getResource() {
+			return resource;
+		}
+
+		public String getXMIContent() {
+			return xmiContent;
+		}
+
+		public void setXMIContent(String content) {
+			this.xmiContent = content;
+		}
+
+		public List<ICouple> getSavedURIFragments() {
+			return uriFragments;
+		}
+
+	}
+
+	/**
+	 * Connector for {@link TestEObjectContainerLocation}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestEObjectContainerConnector extends AbstractConnector {
+
+		public ILocationDescriptor getLocationDescriptor(IBase base, Object element) {
+			// nothing to do here
+			return null;
+		}
+
+		public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+				Object element) {
+			// nothing to do here
+			return null;
+		}
+
+		public Object getElement(ILocation location) {
+			final Resource res;
+
+			if (location instanceof TestEObjectContainerLocation) {
+				res = ((TestEObjectContainerLocation)location).getResource();
+			} else {
+				res = null;
+			}
+
+			return res;
+		}
+
+		public String getName(ILocation location) {
+			// nothing to do here
+			return null;
+		}
+
+		public Class<? extends ILocation> getType() {
+			return IEObjectContainer.class;
+		}
+
+		@Override
+		protected boolean canUpdate(Object element) {
+			// nothing to do here
+			return false;
+		}
+
+		@Override
+		protected boolean match(ILocation location, Object element) {
+			// nothing to do here
+			return false;
+		}
+
+		@Override
+		protected void initLocation(ILocationContainer container, ILocation location, Object element) {
+			// nothing to do here
+		}
+
+	}
+
+	/**
+	 * Test {@link IEObjectLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestEObjectLocation extends TestLocation implements IEObjectLocation {
+
+		/**
+		 * The URI fragment.
+		 */
+		private String uriFragment;
+
+		/**
+		 * The saved URI fragment.
+		 */
+		private String savedUriFragment;
+
+		/**
+		 * The {@link EStructuralFeature#getName() feature name}.
+		 */
+		private String featureName;
+
+		/**
+		 * The index in the {@link EStructuralFeature#getName() feature}.
+		 */
+		private int index;
+
+		public String getURIFragment() {
+			return uriFragment;
+		}
+
+		public void setURIFragment(String fragment) {
+			this.uriFragment = fragment;
+		}
+
+		public String getSavedURIFragment() {
+			return savedUriFragment;
+		}
+
+		public void setSavedURIFragment(String fragment) {
+			savedUriFragment = fragment;
+		}
+
+		public void setFeatureName(String featureName) {
+			this.featureName = featureName;
+		}
+
+		public String getFeatureName() {
+			return featureName;
+		}
+
+		public int getIndex() {
+			return index;
+		}
+
+		public void setIndex(int index) {
+			this.index = index;
+		}
+
+	}
+
+	/**
+	 * The {@link TestEObjectContainerConnector}.
+	 */
+	private static TestEObjectContainerConnector testEObjectContainerConnector = new TestEObjectContainerConnector();
+
+	/**
+	 * The {@link EObjectConnector}.
+	 */
+	private static EObjectConnector eObjectConnector = new EObjectConnector();
+
+	/**
+	 * The original [{@link IEObjectLocation#getEObject() EObject},
+	 * {@link IEObjectLocation#getEStructuralFeature() feature}, {@link IEObjectLocation#getValue() value}].
+	 */
+	private final Object[] original;
+
+	/**
+	 * The altered [{@link IEObjectLocation#getEObject() EObject},
+	 * {@link IEObjectLocation#getEStructuralFeature() feature}, {@link IEObjectLocation#getValue() value}].
+	 */
+	private final Object[] altered;
+
+	/**
+	 * The {@link EObjectContainerHelper}.
+	 */
+	private final EObjectContainerHelper eObjectContainerHelper = new EObjectContainerHelper();
+
+	public EObjectConnectorParametrizedTests(Object[] original, Object[] altered) {
+		this.original = original;
+		this.altered = altered;
+	}
+
+	@Parameters
+	public static Iterable<Object[][]> data() {
+		return Arrays.asList(new Object[][][] {{{AnydslPackage.eINSTANCE.getEClassifiers().get(7), null,
+				null, }, {createEClass(), null, null, }, }, {{AnydslPackage.eINSTANCE.getEClassifiers().get(
+						10), null, null, }, {createEClass(), null, null, }, }, {{
+								((EClass)AnydslPackage.eINSTANCE.getEClassifiers().get(10)).getEOperations()
+										.get(4), null, null, }, {createEOperation(), null, null, }, }, {{
+												AnydslPackage.eINSTANCE.getEClassifiers().get(7),
+												EcorePackage.eINSTANCE.getENamedElement_Name(),
+												"Restaurant", }, {AnydslPackage.eINSTANCE.getEClassifiers()
+														.get(7), EcorePackage.eINSTANCE
+																.getENamedElement_Name(),
+														"ESomethingElse", }, },
+
+				{{((EClass)AnydslPackage.eINSTANCE.getEClassifiers().get(10)).getEOperations().get(4),
+						EcorePackage.eINSTANCE.getENamedElement_Name(), "setCaliber", }, {
+								((EClass)AnydslPackage.eINSTANCE.getEClassifiers().get(10)).getEOperations()
+										.get(4), EcorePackage.eINSTANCE.getENamedElement_Name(),
+								"someEOperation", }, },
+
+				{{AnydslPackage.eINSTANCE.getFood(), EcorePackage.eINSTANCE.getEClass_EOperations(),
+						AnydslPackage.eINSTANCE.getFood__PreferredColor(), }, {AnydslPackage.eINSTANCE
+								.getFood(), EcorePackage.eINSTANCE.getEClass_EOperations(),
+								createEOperation(), }, },
+
+				{{AnydslPackage.eINSTANCE.getNamedElement_Name(), EcorePackage.eINSTANCE
+						.getETypedElement_EType(), AnydslPackage.eINSTANCE.getSingleString(), }, {
+								AnydslPackage.eINSTANCE.getNamedElement_Name(), EcorePackage.eINSTANCE
+										.getETypedElement_EType(), AnydslPackage.eINSTANCE
+												.getCountryData(), }, }, });
+	}
+
+	@BeforeClass
+	public static void beforeClass() {
+		MappingUtils.getConnectorRegistry().register(testEObjectContainerConnector);
+		MappingUtils.getConnectorRegistry().register(eObjectConnector);
+	}
+
+	@AfterClass
+	public static void afterClass() {
+		MappingUtils.getConnectorRegistry().unregister(testEObjectContainerConnector);
+		MappingUtils.getConnectorRegistry().unregister(eObjectConnector);
+	}
+
+	/**
+	 * Creates a new {@link Resource}.
+	 * 
+	 * @param name
+	 *            the resource name
+	 * @return the created {@link Resource}
+	 */
+	protected Resource createResource(String name) {
+		return new XMIResourceImpl(URI.createURI(name));
+	}
+
+	private static EClass createEClass() {
+		final EClass res = EcorePackage.eINSTANCE.getEcoreFactory().createEClass();
+
+		res.setName("SomeTestEClass");
+
+		return res;
+	}
+
+	private static EOperation createEOperation() {
+		final EOperation res = EcorePackage.eINSTANCE.getEcoreFactory().createEOperation();
+
+		res.setName("someTestEOperation");
+
+		return res;
+	}
+
+	protected IEObjectLocation createEObjectLocation(Copier copier, TestEObjectContainerLocation container)
+			throws Exception {
+		final TestEObjectLocation res;
+
+		final EObject eObject = copier.get(original[0]);
+		if (original[1] != null) {
+			final EStructuralFeature feature = (EStructuralFeature)original[1];
+			final Object value;
+			if (original[2] instanceof EObject) {
+				value = copier.get(original[2]);
+			} else {
+				value = original[2];
+			}
+			res = (TestEObjectLocation)MappingUtils.getConnectorRegistry().createLocation(container,
+					new Setting() {
+						public void unset() {
+							// nothing to do here
+						}
+
+						public void set(Object newValue) {
+							// nothing to do here
+						}
+
+						public boolean isSet() {
+							return false;
+						}
+
+						public EStructuralFeature getEStructuralFeature() {
+							return feature;
+						}
+
+						public EObject getEObject() {
+							return eObject;
+						}
+
+						public Object get(boolean resolve) {
+							return value;
+						}
+					});
+		} else {
+			res = (TestEObjectLocation)MappingUtils.getConnectorRegistry().createLocation(container, eObject);
+		}
+		res.setObject(eObject);
+
+		return res;
+	}
+
+	public void assertEObjectLocation(IEObjectLocation location, EObject expectedEObject,
+			EStructuralFeature expectedFeature, Object expectedValue) {
+		final Object element = MappingUtils.getConnectorRegistry().getElement(location);
+		if (element instanceof Setting) {
+			final Setting setting = (Setting)element;
+			assertEquals(expectedEObject, setting.getEObject());
+			assertEquals(expectedFeature, setting.getEStructuralFeature());
+			assertEquals(expectedValue, setting.get(true));
+		} else if (element instanceof EObject) {
+			assertEquals(expectedEObject, element);
+		} else {
+			assertNull(location.getContainer());
+		}
+	}
+
+	@Test
+	public void updateEObjects() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		EPackage copy = (EPackage)copier.copy(AnydslPackage.eINSTANCE);
+		copier.copyReferences();
+		final List<EObject> testEObjects = new ArrayList<EObject>(copy.getEClassifiers());
+		final Resource initialResource = createResource("initialResource");
+		container.setResource(initialResource);
+		initialResource.getContents().addAll(testEObjects);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, initialResource);
+		final IEObjectLocation location = createEObjectLocation(copier, container);
+
+		final EObject expectedEObject = copier.get(original[0]);
+		final EStructuralFeature expectedFeature = (EStructuralFeature)original[1];
+		final Object expectedValue;
+		if (original[2] instanceof EObject) {
+			expectedValue = copier.get(original[2]);
+		} else {
+			expectedValue = original[2];
+		}
+
+		List<EObject> newEObjects = testEObjects;
+		final Resource newResource = createResource("newResource");
+		newResource.getContents().addAll(newEObjects);
+
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, newResource);
+		container.setResource(newResource);
+
+		assertEObjectLocation(location, expectedEObject, expectedFeature, expectedValue);
+	}
+
+	@Test
+	public void updateEObjectsPlusShift() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		EPackage copy = (EPackage)copier.copy(AnydslPackage.eINSTANCE);
+		copier.copyReferences();
+		final List<EObject> testEObjects = new ArrayList<EObject>(copy.getEClassifiers());
+		final Resource initialResource = createResource("initialResource");
+		container.setResource(initialResource);
+		initialResource.getContents().addAll(testEObjects);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, initialResource);
+		final IEObjectLocation location = createEObjectLocation(copier, container);
+
+		final EObject expectedEObject = copier.get(original[0]);
+		final EStructuralFeature expectedFeature = (EStructuralFeature)original[1];
+		final Object expectedValue;
+		if (original[2] instanceof EObject) {
+			expectedValue = copier.get(original[2]);
+		} else {
+			expectedValue = original[2];
+		}
+
+		List<EObject> newEObjects = new ArrayList<EObject>(MappingPackage.eINSTANCE.getEClassifiers());
+		newEObjects.addAll(testEObjects);
+		final Resource newResource = createResource("newResource");
+		newResource.getContents().addAll(newEObjects);
+
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, newResource);
+		container.setResource(newResource);
+
+		assertEObjectLocation(location, expectedEObject, expectedFeature, expectedValue);
+	}
+
+	@Test
+	public void updateEObjectsMinusShift() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		EPackage copy = (EPackage)copier.copy(AnydslPackage.eINSTANCE);
+		copier.copyReferences();
+		final List<EObject> testEObjects = new ArrayList<EObject>(copy.getEClassifiers());
+		final Resource initialResource = createResource("initialResource");
+		container.setResource(initialResource);
+		initialResource.getContents().addAll(testEObjects);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, initialResource);
+		final IEObjectLocation location = createEObjectLocation(copier, container);
+
+		final EObject expectedEObject = copier.get(original[0]);
+		final EStructuralFeature expectedFeature = (EStructuralFeature)original[1];
+		final Object expectedValue;
+		if (original[2] instanceof EObject) {
+			expectedValue = copier.get(original[2]);
+		} else {
+			expectedValue = original[2];
+		}
+
+		List<EObject> newEObjects = new ArrayList<EObject>(testEObjects);
+		newEObjects.remove(0);
+		newEObjects.remove(0);
+		final Resource newResource = createResource("newResource");
+		newResource.getContents().addAll(newEObjects);
+
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, newResource);
+		container.setResource(newResource);
+
+		assertEObjectLocation(location, expectedEObject, expectedFeature, expectedValue);
+	}
+
+	@Test
+	public void updateEObjectsAltered() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		EPackage copy = (EPackage)copier.copy(AnydslPackage.eINSTANCE);
+		if (!copier.containsKey(altered[0])) {
+			copier.copy((EObject)altered[0]);
+		}
+		copier.copyReferences();
+		final List<EObject> testEObjects = new ArrayList<EObject>(copy.getEClassifiers());
+		final Resource initialResource = createResource("initialResource");
+		container.setResource(initialResource);
+		initialResource.getContents().addAll(testEObjects);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, initialResource);
+		final IEObjectLocation location = createEObjectLocation(copier, container);
+
+		final EObject expectedEObject = copier.get(altered[0]);
+		final EStructuralFeature expectedFeature = (EStructuralFeature)altered[1];
+		final Object expectedValue;
+		if (altered[2] instanceof EObject) {
+			expectedValue = copier.get(altered[2]);
+		} else {
+			expectedValue = altered[2];
+		}
+
+		List<EObject> newEObjects = testEObjects;
+		newEObjects = alterEObjects(copier, newEObjects);
+
+		final Resource newResource = createResource("newResource");
+		newResource.getContents().addAll(newEObjects);
+
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, newResource);
+		container.setResource(newResource);
+
+		assertEObjectLocation(location, expectedEObject, expectedFeature, expectedValue);
+	}
+
+	@Test
+	public void updateEObjectsPlusShiftAltered() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		EPackage copy = (EPackage)copier.copy(AnydslPackage.eINSTANCE);
+		if (!copier.containsKey(altered[0])) {
+			copier.copy((EObject)altered[0]);
+		}
+		copier.copyReferences();
+		final List<EObject> testEObjects = new ArrayList<EObject>(copy.getEClassifiers());
+		final Resource initialResource = createResource("initialResource");
+		container.setResource(initialResource);
+		initialResource.getContents().addAll(testEObjects);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, initialResource);
+		final IEObjectLocation location = createEObjectLocation(copier, container);
+
+		final EObject expectedEObject = copier.get(altered[0]);
+		final EStructuralFeature expectedFeature = (EStructuralFeature)original[1];
+		final Object expectedValue;
+		if (altered[2] instanceof EObject) {
+			expectedValue = copier.get(altered[2]);
+		} else {
+			expectedValue = altered[2];
+		}
+
+		List<EObject> newEObjects = new ArrayList<EObject>(MappingPackage.eINSTANCE.getEClassifiers());
+		newEObjects.addAll(testEObjects);
+		newEObjects = alterEObjects(copier, newEObjects);
+
+		final Resource newResource = createResource("newResource");
+		newResource.getContents().addAll(newEObjects);
+
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, newResource);
+		container.setResource(newResource);
+
+		assertEObjectLocation(location, expectedEObject, expectedFeature, expectedValue);
+	}
+
+	@Test
+	public void updateEObjectsMinusShiftAltered() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		EPackage copy = (EPackage)copier.copy(AnydslPackage.eINSTANCE);
+		if (!copier.containsKey(altered[0])) {
+			copier.copy((EObject)altered[0]);
+		}
+		copier.copyReferences();
+		final List<EObject> testEObjects = new ArrayList<EObject>(copy.getEClassifiers());
+		final Resource initialResource = createResource("initialResource");
+		container.setResource(initialResource);
+		initialResource.getContents().addAll(testEObjects);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, initialResource);
+		final IEObjectLocation location = createEObjectLocation(copier, container);
+
+		final EObject expectedEObject = copier.get(altered[0]);
+		final EStructuralFeature expectedFeature = (EStructuralFeature)original[1];
+		final Object expectedValue;
+		if (altered[2] instanceof EObject) {
+			expectedValue = copier.get(altered[2]);
+		} else {
+			expectedValue = altered[2];
+		}
+
+		List<EObject> newEObjects = new ArrayList<EObject>(testEObjects);
+		newEObjects.remove(0);
+		newEObjects.remove(0);
+		newEObjects = alterEObjects(copier, newEObjects);
+
+		final Resource newResource = createResource("newResource");
+		newResource.getContents().addAll(newEObjects);
+
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, newResource);
+		container.setResource(newResource);
+
+		assertEObjectLocation(location, expectedEObject, expectedFeature, expectedValue);
+	}
+
+	@Test
+	public void updateEObjectsRemoved() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		EPackage copy = (EPackage)copier.copy(AnydslPackage.eINSTANCE);
+		copier.copyReferences();
+		final List<EObject> testEObjects = new ArrayList<EObject>(copy.getEClassifiers());
+		final Resource initialResource = createResource("initialResource");
+		container.setResource(initialResource);
+		initialResource.getContents().addAll(testEObjects);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, initialResource);
+		final IEObjectLocation location = createEObjectLocation(copier, container);
+
+		final EObject expectedEObject = null;
+		final EStructuralFeature expectedFeature = null;
+		final Object expectedValue = null;
+
+		List<EObject> newEObjects = testEObjects;
+		if (testEObjects.contains(copier.get(original[0]))) {
+			testEObjects.remove(copier.get(original[0]));
+		} else {
+			EcoreUtil.delete(copier.get(original[0]));
+		}
+		final Resource newResource = createResource("newResource");
+		newResource.getContents().addAll(newEObjects);
+
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, newResource);
+		container.setResource(newResource);
+
+		assertEObjectLocation(location, expectedEObject, expectedFeature, expectedValue);
+	}
+
+	@Test
+	public void updateEObjectsPlusShiftRemoved() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		EPackage copy = (EPackage)copier.copy(AnydslPackage.eINSTANCE);
+		copier.copyReferences();
+		final List<EObject> testEObjects = new ArrayList<EObject>(copy.getEClassifiers());
+		final Resource initialResource = createResource("initialResource");
+		container.setResource(initialResource);
+		initialResource.getContents().addAll(testEObjects);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, initialResource);
+		final IEObjectLocation location = createEObjectLocation(copier, container);
+
+		final EObject expectedEObject = null;
+		final EStructuralFeature expectedFeature = null;
+		final Object expectedValue = null;
+
+		List<EObject> newEObjects = testEObjects;
+		if (testEObjects.contains(copier.get(original[0]))) {
+			testEObjects.remove(copier.get(original[0]));
+		} else {
+			EcoreUtil.delete(copier.get(original[0]));
+		}
+
+		newEObjects.addAll(0, MappingPackage.eINSTANCE.getEClassifiers());
+		final Resource newResource = createResource("newResource");
+		newResource.getContents().addAll(newEObjects);
+
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, newResource);
+		container.setResource(newResource);
+
+		assertEObjectLocation(location, expectedEObject, expectedFeature, expectedValue);
+	}
+
+	@Test
+	public void updateEObjectsMinusShiftRemoved() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		EPackage copy = (EPackage)copier.copy(AnydslPackage.eINSTANCE);
+		copier.copyReferences();
+		final List<EObject> testEObjects = new ArrayList<EObject>(copy.getEClassifiers());
+		final Resource initialResource = createResource("initialResource");
+		container.setResource(initialResource);
+		initialResource.getContents().addAll(testEObjects);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, initialResource);
+		final IEObjectLocation location = createEObjectLocation(copier, container);
+
+		final EObject expectedEObject = null;
+		final EStructuralFeature expectedFeature = null;
+		final Object expectedValue = null;
+
+		List<EObject> newEObjects = testEObjects;
+		if (testEObjects.contains(copier.get(original[0]))) {
+			testEObjects.remove(copier.get(original[0]));
+		} else {
+			EcoreUtil.delete(copier.get(original[0]));
+		}
+
+		newEObjects.remove(0);
+		newEObjects.remove(0);
+		final Resource newResource = createResource("newResource");
+		newResource.getContents().addAll(newEObjects);
+
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, newResource);
+		container.setResource(newResource);
+
+		assertEObjectLocation(location, expectedEObject, expectedFeature, expectedValue);
+	}
+
+	private List<EObject> alterEObjects(Copier copier, List<EObject> eObjects) {
+		final List<EObject> res = eObjects;
+
+		// no feature
+		if (original[1] == null) {
+			final int index = res.indexOf(copier.get(original[0]));
+			if (index != -1) {
+				// replace the object in the list
+				res.remove(index);
+				res.add(index, copier.get(altered[0]));
+			} else {
+				// replace the object in its container
+				EcoreUtil.replace(copier.get(original[0]), copier.get(altered[0]));
+			}
+		} else {
+			// alter the feature
+			final EStructuralFeature feature = (EStructuralFeature)altered[1];
+			if (feature.isMany()) {
+				@SuppressWarnings("unchecked")
+				List<Object> list = (List<Object>)copier.get(original[0]).eGet(feature);
+				final int index = list.indexOf(copier.get(original[2]));
+				list.remove(index);
+				list.add(index, altered[2]);
+			} else {
+				if (altered[2] instanceof EObject) {
+					copier.get(original[0]).eSet(feature, copier.get(altered[2]));
+				} else {
+					copier.get(original[0]).eSet(feature, altered[2]);
+				}
+			}
+		}
+
+		return res;
+	}
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorTests.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorTests.java
new file mode 100644
index 0000000..f22a5f0
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/EObjectConnectorTests.java
@@ -0,0 +1,468 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.connector;
+
+import anydsl.AnydslPackage;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EStructuralFeature.Setting;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.util.EcoreUtil.Copier;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.eclipse.intent.mapping.emf.IEObjectLocation;
+import org.eclipse.intent.mapping.emf.connector.EObjectConnector;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorParametrizedTests.TestEObjectContainerConnector;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorParametrizedTests.TestEObjectContainerLocation;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorParametrizedTests.TestEObjectLocation;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.ITestLocation;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestCouple;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestReport;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests;
+import org.eclipse.intent.mapping.tests.text.TextConnectorParametrizedTests.TestTextLocation;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link EObjectConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class EObjectConnectorTests extends EObjectConnector {
+
+	/**
+	 * The {@link EObjectContainerHelper}.
+	 */
+	private final EObjectContainerHelper eObjectContainerHelper = new EObjectContainerHelper();
+
+	@Test
+	public void getLocationTypeNotTypeContainer() {
+		final Class<? extends ILocation> type = getLocationType(ITestLocation.class, "");
+
+		assertNull(type);
+	}
+
+	@Test
+	public void getLocationTypeNotElement() {
+		final Class<? extends ILocation> type = getLocationType(TestEObjectLocation.class, new Object());
+
+		assertNull(type);
+	}
+
+	@Test
+	public void getLocationTypeEObject() {
+		final Class<? extends ILocation> type = getLocationType(TestEObjectContainerLocation.class,
+				AnydslPackage.eINSTANCE);
+
+		assertEquals(IEObjectLocation.class, type);
+	}
+
+	@Test
+	public void getLocationTypeESetting() {
+		final Class<? extends ILocation> type = getLocationType(TestEObjectContainerLocation.class,
+				((InternalEObject)AnydslPackage.eINSTANCE.getProducer()).eSetting(EcorePackage.eINSTANCE
+						.getENamedElement_Name()));
+
+		assertEquals(IEObjectLocation.class, type);
+	}
+
+	/**
+	 * Creates a new {@link Resource}.
+	 * 
+	 * @return the created {@link Resource}
+	 */
+	protected Resource createResource(String name) {
+		return new XMIResourceImpl(URI.createFileURI(name));
+	}
+
+	@Test
+	public void initLocationEObject() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		final List<EObject> eObjects = new ArrayList<EObject>(copier.copyAll(AnydslPackage.eINSTANCE
+				.eContents()));
+		copier.copyReferences();
+		final EClass producerEClass = (EClass)copier.get(AnydslPackage.eINSTANCE.getProducer());
+		final Resource resource = createResource("test.xmi");
+		resource.getContents().addAll(eObjects);
+		container.setResource(resource);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+		final IEObjectLocation location = new TestEObjectLocation();
+		location.setContainer(container);
+
+		final TestEObjectContainerConnector testEObjectContainerConnector = new TestEObjectContainerConnector();
+		MappingUtils.getConnectorRegistry().register(testEObjectContainerConnector);
+		final EObjectConnector eObjectConnector = new EObjectConnector();
+		MappingUtils.getConnectorRegistry().register(eObjectConnector);
+		super.initLocation(container, location, producerEClass);
+
+		final Object element = eObjectConnector.getElement(location);
+		assertTrue(element instanceof EObject);
+		assertEquals(producerEClass, element);
+		assertNull(location.getFeatureName());
+
+		MappingUtils.getConnectorRegistry().unregister(testEObjectContainerConnector);
+		MappingUtils.getConnectorRegistry().unregister(eObjectConnector);
+	}
+
+	@Test
+	public void initLocationSetting() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		final List<EObject> eObjects = new ArrayList<EObject>(copier.copyAll(AnydslPackage.eINSTANCE
+				.eContents()));
+		copier.copyReferences();
+		final EClass producerEClass = (EClass)copier.get(AnydslPackage.eINSTANCE.getProducer());
+		final Resource resource = createResource("test.xmi");
+		resource.getContents().addAll(eObjects);
+		container.setResource(resource);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+		final IEObjectLocation location = new TestEObjectLocation();
+		location.setContainer(container);
+
+		final TestEObjectContainerConnector testEObjectContainerConnector = new TestEObjectContainerConnector();
+		MappingUtils.getConnectorRegistry().register(testEObjectContainerConnector);
+		final EObjectConnector eObjectConnector = new EObjectConnector();
+		MappingUtils.getConnectorRegistry().register(eObjectConnector);
+		super.initLocation(container, location, ((InternalEObject)producerEClass).eSetting(
+				EcorePackage.eINSTANCE.getENamedElement_Name()));
+
+		final Object element = eObjectConnector.getElement(location);
+		assertTrue(element instanceof Setting);
+		assertEquals(producerEClass, ((Setting)element).getEObject());
+		assertEquals(EcorePackage.eINSTANCE.getENamedElement_Name(), ((Setting)element)
+				.getEStructuralFeature());
+		assertEquals("Producer", ((Setting)element).get(true));
+		assertEquals(EcorePackage.eINSTANCE.getENamedElement_Name().getName(), location.getFeatureName());
+
+		MappingUtils.getConnectorRegistry().unregister(testEObjectContainerConnector);
+		MappingUtils.getConnectorRegistry().unregister(eObjectConnector);
+	}
+
+	@Test
+	public void getLocationEObject() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		final List<EObject> eObjects = new ArrayList<EObject>(copier.copyAll(AnydslPackage.eINSTANCE
+				.eContents()));
+		copier.copyReferences();
+		final EClass producerEClass = (EClass)copier.get(AnydslPackage.eINSTANCE.getProducer());
+		final Resource resource = createResource("test.xmi");
+		resource.getContents().addAll(eObjects);
+		container.setResource(resource);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+		final IEObjectLocation location = new TestEObjectLocation();
+		location.setContainer(container);
+		container.getContents().add(location);
+
+		final TestEObjectContainerConnector connector = new TestEObjectContainerConnector();
+		MappingUtils.getConnectorRegistry().register(connector);
+		super.initLocation(container, location, producerEClass);
+
+		assertEquals(location, super.getLocation(container, producerEClass));
+		assertEquals(null, super.getLocation(container, ((InternalEObject)producerEClass).eSetting(
+				EcorePackage.eINSTANCE.getENamedElement_Name())));
+
+		MappingUtils.getConnectorRegistry().unregister(connector);
+	}
+
+	@Test
+	public void getLocationSetting() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		final List<EObject> eObjects = new ArrayList<EObject>(copier.copyAll(AnydslPackage.eINSTANCE
+				.eContents()));
+		final EClass producerEClass = (EClass)copier.get(AnydslPackage.eINSTANCE.getProducer());
+		copier.copyReferences();
+		final Resource resource = createResource("test.xmi");
+		resource.getContents().addAll(eObjects);
+		container.setResource(resource);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+		final IEObjectLocation location = new TestEObjectLocation();
+		location.setContainer(container);
+		container.getContents().add(location);
+
+		final TestEObjectContainerConnector connector = new TestEObjectContainerConnector();
+		MappingUtils.getConnectorRegistry().register(connector);
+		super.initLocation(container, location, ((InternalEObject)producerEClass).eSetting(
+				EcorePackage.eINSTANCE.getENamedElement_Name()));
+
+		assertEquals(null, super.getLocation(container, producerEClass));
+		assertEquals(location, super.getLocation(container, ((InternalEObject)producerEClass).eSetting(
+				EcorePackage.eINSTANCE.getENamedElement_Name())));
+
+		MappingUtils.getConnectorRegistry().unregister(connector);
+	}
+
+	@Test
+	public void updateEObjectContainerEObjectLocationDeleted() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IReport.class, new BaseElementFactory.FactoryDescriptor<TestReport>(
+				TestReport.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		final List<EObject> eObjects = new ArrayList<EObject>(copier.copyAll(AnydslPackage.eINSTANCE
+				.eContents()));
+		copier.copyReferences();
+		final EClass producerEClass = (EClass)copier.get(AnydslPackage.eINSTANCE.getProducer());
+		final Resource resource = createResource("test.xmi");
+		resource.getContents().addAll(eObjects);
+		container.setResource(resource);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+		final IEObjectLocation location = new TestEObjectLocation();
+		location.setContainer(container);
+		final ILocation target = new TestTextLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getTargetLinks().add(link);
+		link.setSource(location);
+		target.getSourceLinks().add(link);
+		link.setTarget(target);
+
+		final TestEObjectContainerConnector connector = new TestEObjectContainerConnector();
+		MappingUtils.getConnectorRegistry().register(connector);
+
+		super.initLocation(container, location, producerEClass);
+
+		resource.getContents().remove(producerEClass);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+
+		assertTrue(location.isMarkedAsDeleted());
+		assertEquals(1, base.getReports().size());
+		final IReport report = base.getReports().get(0);
+		assertEquals(link, report.getLink());
+		assertTrue(report.getDescription().contains("Producer"));
+		assertTrue(report.getDescription().contains(location.getURIFragment()));
+		assertTrue(report.getDescription().contains("has been deleted."));
+
+		MappingUtils.getConnectorRegistry().unregister(connector);
+	}
+
+	@Test
+	public void updateEObjectContainerEObjectLocationChanged() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IReport.class, new BaseElementFactory.FactoryDescriptor<TestReport>(
+				TestReport.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		final List<EObject> eObjects = new ArrayList<EObject>(copier.copyAll(AnydslPackage.eINSTANCE
+				.eContents()));
+		copier.copyReferences();
+		final EClass producerEClass = (EClass)copier.get(AnydslPackage.eINSTANCE.getProducer());
+		final Resource resource = createResource("test.xmi");
+		resource.getContents().addAll(eObjects);
+		container.setResource(resource);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+		final IEObjectLocation location = new TestEObjectLocation();
+		location.setContainer(container);
+		final ILocation target = new TestTextLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getTargetLinks().add(link);
+		link.setSource(location);
+		target.getSourceLinks().add(link);
+		link.setTarget(target);
+
+		final TestEObjectContainerConnector connector = new TestEObjectContainerConnector();
+		MappingUtils.getConnectorRegistry().register(connector);
+
+		super.initLocation(container, location, producerEClass);
+
+		producerEClass.setInterface(!producerEClass.isInterface());
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+
+		assertEquals(1, base.getReports().size());
+		final IReport report = base.getReports().get(0);
+		assertEquals(link, report.getLink());
+		assertTrue(report.getDescription().contains("Attribure interface was false changed to true."));
+
+		MappingUtils.getConnectorRegistry().unregister(connector);
+	}
+
+	@Test
+	public void updateEObjectContainerSettingLocationChanged() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IReport.class, new BaseElementFactory.FactoryDescriptor<TestReport>(
+				TestReport.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		final List<EObject> eObjects = new ArrayList<EObject>(copier.copyAll(AnydslPackage.eINSTANCE
+				.eContents()));
+		copier.copyReferences();
+		final EClass producerEClass = (EClass)copier.get(AnydslPackage.eINSTANCE.getProducer());
+		final Resource resource = createResource("test.xmi");
+		resource.getContents().addAll(eObjects);
+		container.setResource(resource);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+		final IEObjectLocation location = new TestEObjectLocation();
+		location.setContainer(container);
+		final ILocation target = new TestTextLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getTargetLinks().add(link);
+		link.setSource(location);
+		target.getSourceLinks().add(link);
+		link.setTarget(target);
+
+		final TestEObjectContainerConnector connector = new TestEObjectContainerConnector();
+		MappingUtils.getConnectorRegistry().register(connector);
+
+		super.initLocation(container, location, new Setting() {
+			public void unset() {
+				// nothing to do here
+			}
+
+			public void set(Object newValue) {
+				// nothing to do here
+			}
+
+			public boolean isSet() {
+				return false;
+			}
+
+			public EStructuralFeature getEStructuralFeature() {
+				return EcorePackage.eINSTANCE.getEClass_Interface();
+			}
+
+			public EObject getEObject() {
+				return producerEClass;
+			}
+
+			public Object get(boolean resolve) {
+				return producerEClass.getName();
+			}
+		});
+
+		producerEClass.setInterface(!producerEClass.isInterface());
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+
+		assertEquals(1, base.getReports().size());
+		final IReport report = base.getReports().get(0);
+		assertEquals(link, report.getLink());
+		assertTrue(report.getDescription().contains("Producer"));
+		assertTrue(report.getDescription().contains(location.getURIFragment()));
+		assertTrue(report.getDescription().contains(
+				"feature interface value false has been changed to true."));
+
+		MappingUtils.getConnectorRegistry().unregister(connector);
+	}
+
+	@Test
+	public void updateEObjectContainerSettingLocationManyRemoved() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IReport.class, new BaseElementFactory.FactoryDescriptor<TestReport>(
+				TestReport.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+		final TestEObjectContainerLocation container = new TestEObjectContainerLocation();
+		container.setContainer(base);
+		final Copier copier = new Copier();
+		final List<EObject> eObjects = new ArrayList<EObject>(copier.copyAll(AnydslPackage.eINSTANCE
+				.eContents()));
+		copier.copyReferences();
+		final EClass foodEClass = (EClass)copier.get(AnydslPackage.eINSTANCE.getFood());
+		final Resource resource = createResource("test.xmi");
+		resource.getContents().addAll(eObjects);
+		container.setResource(resource);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+		final IEObjectLocation location = new TestEObjectLocation();
+		location.setContainer(container);
+		final ILocation target = new TestTextLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getTargetLinks().add(link);
+		link.setSource(location);
+		target.getSourceLinks().add(link);
+		link.setTarget(target);
+
+		final TestEObjectContainerConnector connector = new TestEObjectContainerConnector();
+		MappingUtils.getConnectorRegistry().register(connector);
+
+		super.initLocation(container, location, new Setting() {
+			public void unset() {
+				// nothing to do here
+			}
+
+			public void set(Object newValue) {
+				// nothing to do here
+			}
+
+			public boolean isSet() {
+				return false;
+			}
+
+			public EStructuralFeature getEStructuralFeature() {
+				return EcorePackage.eINSTANCE.getEClass_EOperations();
+			}
+
+			public EObject getEObject() {
+				return foodEClass;
+			}
+
+			public Object get(boolean resolve) {
+				return foodEClass.getEOperations().get(1);
+			}
+		});
+
+		foodEClass.getEOperations().remove(1);
+		eObjectContainerHelper.updateEObjectContainer(container.getContainer(), container, resource);
+
+		assertEquals(1, base.getReports().size());
+		final IReport report = base.getReports().get(0);
+		assertEquals(link, report.getLink());
+		assertTrue(report.getDescription().contains("Food"));
+		assertTrue(report.getDescription().contains(location.getURIFragment()));
+		assertTrue(report.getDescription().contains("has been removed from feature eOperations."));
+
+		MappingUtils.getConnectorRegistry().unregister(connector);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/MappingCDOListenerTest.java b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/MappingCDOListenerTest.java
new file mode 100644
index 0000000..8cd4965
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.emf.tests/src/org/eclipse/intent/mapping/emf/tests/connector/MappingCDOListenerTest.java
@@ -0,0 +1,380 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.emf.tests.connector;
+
+import anydsl.AnydslPackage;
+import anydsl.ProductionCompany;
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.Reader;
+import java.io.StringReader;
+
+import org.eclipse.emf.cdo.common.lob.CDOBlob;
+import org.eclipse.emf.cdo.common.lob.CDOClob;
+import org.eclipse.emf.cdo.common.util.CDOException;
+import org.eclipse.emf.cdo.eresource.CDOBinaryResource;
+import org.eclipse.emf.cdo.eresource.CDOResource;
+import org.eclipse.emf.cdo.eresource.CDOResourceFolder;
+import org.eclipse.emf.cdo.eresource.CDOTextResource;
+import org.eclipse.emf.cdo.session.CDOSession;
+import org.eclipse.emf.cdo.transaction.CDOTransaction;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.emf.ICDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.emf.ICDOFolderLocation;
+import org.eclipse.intent.mapping.emf.ICDORepositoryLocation;
+import org.eclipse.intent.mapping.emf.ICDOResourceLocation;
+import org.eclipse.intent.mapping.emf.ICDOResourceNodeLocation;
+import org.eclipse.intent.mapping.emf.ICDOTextResourceLocation;
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.eclipse.intent.mapping.emf.IEObjectLocation;
+import org.eclipse.intent.mapping.emf.connector.CDOResourceNodeConnector;
+import org.eclipse.intent.mapping.emf.connector.CDOViewConnector;
+import org.eclipse.intent.mapping.emf.connector.EObjectConnector;
+import org.eclipse.intent.mapping.emf.connector.MappingCDOListener;
+import org.eclipse.intent.mapping.emf.tests.AllTests;
+import org.eclipse.intent.mapping.emf.tests.CDOServer;
+import org.eclipse.intent.mapping.emf.tests.CDOUtils;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests.TestCDOBinaryResourceLocation;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests.TestCDOFolderLocation;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests.TestCDOResourceLocation;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOResourceNodeConnectorTests.TestCDOTextResourceLocation;
+import org.eclipse.intent.mapping.emf.tests.connector.CDOViewConnectorTests.TestCDORepositoryLocation;
+import org.eclipse.intent.mapping.emf.tests.connector.EObjectConnectorParametrizedTests.TestEObjectLocation;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestCouple;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests;
+import org.eclipse.net4j.connector.IConnector;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Ignore;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+/**
+ * Test {@link MappingCDOListener}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class MappingCDOListenerTest {
+
+	/**
+	 * The buffer size.
+	 */
+	private static final int BUFFZE_SIZE = 8192;
+
+	/**
+	 * The {@link CDOTransaction}.
+	 */
+	private static CDOTransaction transaction;
+
+	/**
+	 * The {@link CDOTransaction}.
+	 */
+	private static CDOTransaction otherTransaction;
+
+	/**
+	 * The {@link CDOViewConnector}.
+	 */
+	private static CDOViewConnector viewConnector = new CDOViewConnector();
+
+	/**
+	 * The {@link CDOResourceNodeConnector}.
+	 */
+	private static CDOResourceNodeConnector resourceConnector = new CDOResourceNodeConnector();
+
+	/**
+	 * The {@link EObjectConnector}.
+	 */
+	private static EObjectConnector eObjectConnector = new EObjectConnector();
+
+	@BeforeClass
+	public static void beforeClass() {
+		AllTests.startCDOServer();
+		IConnector connector = CDOUtils.getConnector(CDOServer.PROTOCOL + "://" + CDOServer.IP + ":"
+				+ CDOServer.PORT);
+		CDOSession session = CDOUtils.openSession(connector, CDOServer.REPOSITORY_NAME);
+		transaction = CDOUtils.openTransaction(session);
+		otherTransaction = CDOUtils.openTransaction(session);
+
+		viewConnector.addSessionToCache(transaction);
+
+		MappingUtils.getConnectorRegistry().register(viewConnector);
+		MappingUtils.getConnectorRegistry().register(resourceConnector);
+		MappingUtils.getConnectorRegistry().register(eObjectConnector);
+	}
+
+	@AfterClass
+	public static void afterClass() {
+		viewConnector.removeSessionFromCache(transaction);
+
+		MappingUtils.getConnectorRegistry().unregister(viewConnector);
+		MappingUtils.getConnectorRegistry().unregister(resourceConnector);
+		MappingUtils.getConnectorRegistry().unregister(eObjectConnector);
+
+		transaction.close();
+		otherTransaction.close();
+		AllTests.stopCDOServer();
+	}
+
+	@Test
+	public void deleteResourceNode() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOFolderLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOFolderLocation>(TestCDOFolderLocation.class));
+
+		final String path = this.getClass().getCanonicalName() + "/test1/";
+		final CDOResourceFolder folder = otherTransaction.createResourceFolder(path);
+		otherTransaction.commit();
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+		final ILocation location = MappingUtils.getConnectorRegistry().createLocation(container, folder);
+
+		assertNotNull(otherTransaction.getResourceNode(path));
+		assertFalse(container.getContents().isEmpty());
+
+		viewConnector.addBaseToUpdate(base);
+		folder.delete(null);
+		otherTransaction.commit();
+		viewConnector.removeBaseToUpdate(base);
+
+		try {
+			transaction.getResourceNode(path);
+			fail("the resource should be deleted by now.");
+		} catch (CDOException e) {
+			// nothing to do here
+		}
+		assertNull(location.getContainer());
+	}
+
+	@Test
+	public void renameResourceNode() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOFolderLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOFolderLocation>(TestCDOFolderLocation.class));
+
+		final String path = this.getClass().getCanonicalName() + "/test2/";
+		final CDOResourceFolder folder = otherTransaction.createResourceFolder(path);
+		otherTransaction.commit();
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+		final ICDOResourceNodeLocation location = (ICDOResourceNodeLocation)MappingUtils
+				.getConnectorRegistry().createLocation(container, folder);
+
+		assertNotNull(otherTransaction.getResourceNode(path));
+		assertFalse(container.getContents().isEmpty());
+
+		viewConnector.addBaseToUpdate(base);
+		folder.setName("someNewName");
+		otherTransaction.commit();
+		viewConnector.removeBaseToUpdate(base);
+
+		try {
+			transaction.getResourceNode(path);
+			fail("the resource should be deleted by now.");
+		} catch (CDOException e) {
+			// nothing to do here
+		}
+		assertEquals("/org.eclipse.intent.mapping.emf.tests.connector.MappingCDOListenerTest/someNewName",
+				location.getPath());
+	}
+
+	@Test
+	public void renameParentResourceNode() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOFolderLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOFolderLocation>(TestCDOFolderLocation.class));
+
+		final String path = this.getClass().getCanonicalName() + "/test3/";
+		final CDOResourceFolder folder = otherTransaction.createResourceFolder(path);
+		otherTransaction.commit();
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+		final ICDOResourceNodeLocation location = (ICDOResourceNodeLocation)MappingUtils
+				.getConnectorRegistry().createLocation(container, folder);
+
+		assertNotNull(otherTransaction.getResourceNode(path));
+		assertFalse(container.getContents().isEmpty());
+
+		viewConnector.addBaseToUpdate(base);
+		folder.getFolder().setName("someNewName");
+		otherTransaction.commit();
+		viewConnector.removeBaseToUpdate(base);
+
+		try {
+			transaction.getResourceNode(path);
+			fail("the resource should be deleted by now.");
+		} catch (CDOException e) {
+			// nothing to do here
+		}
+		assertEquals("/someNewName/test3", location.getPath());
+	}
+
+	@Test
+	public void resourceContentChanged() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOResourceLocation>(
+						TestCDOResourceLocation.class));
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+
+		final String path = this.getClass().getCanonicalName() + "/test.resource";
+		final CDOResource resource = otherTransaction.createResource(path);
+		final ProductionCompany eObject = AnydslPackage.eINSTANCE.getAnydslFactory()
+				.createProductionCompany();
+		resource.getContents().add(eObject);
+		eObject.setName("MyCompany");
+		resource.save(null);
+		otherTransaction.commit();
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+		final ICDOResourceLocation resourceLocation = (ICDOResourceLocation)MappingUtils
+				.getConnectorRegistry().createLocation(container, resource);
+		final IEObjectLocation eObjectLocation = (IEObjectLocation)MappingUtils.getConnectorRegistry()
+				.createLocation(resourceLocation, eObject);
+
+		final String initialXMIContent = resourceLocation.getXMIContent();
+		final String initialURIFragment = eObjectLocation.getURIFragment();
+
+		assertNotNull(otherTransaction.getResourceNode(path));
+		assertFalse(container.getContents().isEmpty());
+		assertFalse(initialXMIContent == null || initialXMIContent.isEmpty());
+		assertFalse(initialURIFragment == null || initialURIFragment.isEmpty());
+
+		viewConnector.addBaseToUpdate(base);
+		eObject.setName("someNewName");
+		otherTransaction.commit();
+		viewConnector.removeBaseToUpdate(base);
+
+		assertFalse(resourceLocation.getXMIContent().isEmpty());
+		assertFalse(initialXMIContent.equals(resourceLocation.getXMIContent()));
+		assertTrue(initialURIFragment.equals(eObjectLocation.getURIFragment()));
+	}
+
+	@Test
+	public void textResourceContentChanged() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOTextResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOTextResourceLocation>(
+						TestCDOTextResourceLocation.class));
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+
+		final String path = this.getClass().getCanonicalName() + "/test.txt";
+		final CDOTextResource resource = otherTransaction.createTextResource(path);
+		resource.setContents(new CDOClob(new StringReader("some text")));
+		otherTransaction.commit();
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+		final ICDOTextResourceLocation resourceLocation = (ICDOTextResourceLocation)MappingUtils
+				.getConnectorRegistry().createLocation(container, resource);
+
+		assertNotNull(otherTransaction.getResourceNode(path));
+		assertFalse(container.getContents().isEmpty());
+		final String initialContent = getContent(resource.getContents().getContents());
+		assertEquals(initialContent, resourceLocation.getText());
+
+		viewConnector.addBaseToUpdate(base);
+		resource.setContents(new CDOClob(new StringReader("some other text blah !")));
+		otherTransaction.commit();
+		viewConnector.removeBaseToUpdate(base);
+
+		final String newContent = getContent(resource.getContents().getContents());
+		assertFalse(initialContent.equals(newContent));
+		assertEquals(newContent, resourceLocation.getText());
+	}
+
+	@Test
+	@Ignore
+	public void binaryResourceContentChanged() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(ICDORepositoryLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDORepositoryLocation>(
+						TestCDORepositoryLocation.class));
+		base.getFactory().addDescriptor(ICDOBinaryResourceLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestCDOBinaryResourceLocation>(
+						TestCDOBinaryResourceLocation.class));
+		base.getFactory().addDescriptor(IEObjectLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestEObjectLocation>(TestEObjectLocation.class));
+		base.getFactory().addDescriptor(ICouple.class, new BaseElementFactory.FactoryDescriptor<TestCouple>(
+				TestCouple.class));
+
+		final String path = this.getClass().getCanonicalName() + "/test.bin";
+		final CDOBinaryResource resource = otherTransaction.createBinaryResource(path);
+		resource.setContents(new CDOBlob(new ByteArrayInputStream("some binary data".getBytes())));
+		otherTransaction.commit();
+
+		final ILocation container = MappingUtils.getConnectorRegistry().createLocation(base, transaction);
+		final ICDOBinaryResourceLocation resourceLocation = (ICDOBinaryResourceLocation)MappingUtils
+				.getConnectorRegistry().createLocation(container, resource);
+
+		assertNotNull(otherTransaction.getResourceNode(path));
+		assertFalse(container.getContents().isEmpty());
+
+		viewConnector.addBaseToUpdate(base);
+		resource.setContents(new CDOBlob(new ByteArrayInputStream("some other binary data blah !"
+				.getBytes())));
+		otherTransaction.commit();
+		viewConnector.removeBaseToUpdate(base);
+
+		// TODO assert resourceLocation
+	}
+
+	/**
+	 * Gets the content of the given {@link Reader}.
+	 * 
+	 * @param reader
+	 *            the {@link Reader}
+	 * @return the content of the given {@link Reader}
+	 * @throws IOException
+	 *             if the {@link Reader} can't be read
+	 */
+	private String getContent(Reader reader) throws IOException {
+		final StringBuilder builder = new StringBuilder();
+
+		char[] buffer = new char[BUFFZE_SIZE];
+		while (reader.read(buffer) != -1) {
+			builder.append(buffer);
+		}
+
+		return builder.toString();
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/.checkstyle b/mapping/tests/org.eclipse.intent.mapping.ide.tests/.checkstyle
new file mode 100644
index 0000000..5ddb099
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/.checkstyle
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter Tests" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6ConfigurationTests.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter Tests" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+</fileset-config>
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/.classpath b/mapping/tests/org.eclipse.intent.mapping.ide.tests/.classpath
new file mode 100644
index 0000000..64c5e31
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/.project b/mapping/tests/org.eclipse.intent.mapping.ide.tests/.project
new file mode 100644
index 0000000..937effa
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.ide.tests</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/.settings/org.eclipse.jdt.core.prefs b/mapping/tests/org.eclipse.intent.mapping.ide.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..2c14df6
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,311 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/.settings/org.eclipse.jdt.ui.prefs b/mapping/tests/org.eclipse.intent.mapping.ide.tests/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..99aaf4f
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=com;eu;fr;java;javax;org;\#org.junit;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/META-INF/MANIFEST.MF b/mapping/tests/org.eclipse.intent.mapping.ide.tests/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..b1931b5
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,18 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Tests
+Bundle-SymbolicName: org.eclipse.intent.mapping.ide.tests;singleton:=true
+Bundle-Version: 0.10.0.qualifier
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.junit;bundle-version="4.0.0",
+ org.eclipse.intent.mapping;bundle-version="0.10.0",
+ org.eclipse.intent.mapping.ide;bundle-version="0.10.0",
+ org.eclipse.core.resources,
+ org.eclipse.core.runtime,
+ org.eclipse.intent.mapping.tests
+Export-Package: org.eclipse.intent.mapping.ide.tests,
+ org.eclipse.intent.mapping.ide.tests.adapter,
+ org.eclipse.intent.mapping.ide.tests.connector,
+ org.eclipse.intent.mapping.ide.tests.internal.connector,
+ org.eclipse.intent.mapping.ide.tests.resource
+Bundle-ActivationPolicy: lazy
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/build.properties b/mapping/tests/org.eclipse.intent.mapping.ide.tests/build.properties
new file mode 100644
index 0000000..cc91072
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/build.properties
@@ -0,0 +1,4 @@
+source.. = src/
+bin.includes = META-INF/,\
+               .,\
+               plugin.xml
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/org.eclipse.intent.mapping.ide.tests.launch b/mapping/tests/org.eclipse.intent.mapping.ide.tests/org.eclipse.intent.mapping.ide.tests.launch
new file mode 100644
index 0000000..c64aa77
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/org.eclipse.intent.mapping.ide.tests.launch
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
+<booleanAttribute key="append.args" value="true"/>
+<stringAttribute key="application" value="org.eclipse.pde.junit.runtime.coretestapplication"/>
+<booleanAttribute key="askclear" value="false"/>
+<booleanAttribute key="automaticAdd" value="true"/>
+<booleanAttribute key="automaticValidate" value="false"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="true"/>
+<booleanAttribute key="clearws" value="true"/>
+<booleanAttribute key="clearwslog" value="false"/>
+<listAttribute key="com.mountainminds.eclemma.core.SCOPE_IDS">
+<listEntry value="=org.eclipse.intent.mapping.ide/src"/>
+</listAttribute>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
+<booleanAttribute key="default" value="true"/>
+<booleanAttribute key="includeOptional" value="true"/>
+<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/mylyn/docs/intent/mapping/ide/tests/AllTests.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+<listEntry value="com.mountainminds.eclemma.ui.launchGroup.coverage"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.intent.mapping.ide.tests.AllTests"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.intent.mapping.ide.tests"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xms40m -Xmx512m"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<stringAttribute key="product" value="org.eclipse.equinox.p2.director.app.product"/>
+<booleanAttribute key="run_in_ui_thread" value="true"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useCustomFeatures" value="false"/>
+<booleanAttribute key="useDefaultConfig" value="true"/>
+<booleanAttribute key="useDefaultConfigArea" value="false"/>
+<booleanAttribute key="useProduct" value="false"/>
+</launchConfiguration>
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/plugin.xml b/mapping/tests/org.eclipse.intent.mapping.ide.tests/plugin.xml
new file mode 100644
index 0000000..bd59099
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/plugin.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+   <extension
+         point="org.eclipse.core.contenttype.contentTypes">
+      <content-type
+            file-extensions="aaa"
+            id="org.eclipse.intent.mapping.ide.tests.content-typeA"
+            name="Test content type A"
+            priority="normal">
+      </content-type>
+      <content-type
+            base-type="org.eclipse.intent.mapping.ide.tests.content-typeA"
+            file-extensions="bbb"
+            id="org.eclipse.intent.mapping.ide.tests.content-typeB"
+            name="Test content type B"
+            priority="normal">
+      </content-type>
+      <content-type
+            base-type="org.eclipse.intent.mapping.ide.tests.content-typeB"
+            file-extensions="ccc"
+            id="org.eclipse.intent.mapping.ide.tests.content-typeC"
+            name="Test content type C"
+            priority="normal">
+      </content-type>
+   </extension>
+   <extension
+         point="org.eclipse.core.runtime.adapters">
+      <factory
+            adaptableType="java.lang.String"
+            class="org.eclipse.intent.mapping.ide.tests.AdapterFactory">
+         <adapter
+               type="java.lang.Integer">
+         </adapter>
+      </factory>
+   </extension>
+
+</plugin>
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/pom.xml b/mapping/tests/org.eclipse.intent.mapping.ide.tests/pom.xml
new file mode 100644
index 0000000..18744c4
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/pom.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping.ide.tests</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <name>Mapping IDE Tests</name>
+
+  <packaging>eclipse-test-plugin</packaging>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-surefire-plugin</artifactId>
+        <version>${tycho-version}</version>
+        <configuration>
+          <includes>
+            <include>**/AllTests.class</include>
+          </includes>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/AdapterFactory.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/AdapterFactory.java
new file mode 100644
index 0000000..d257dee
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/AdapterFactory.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests;
+
+import org.eclipse.core.runtime.IAdapterFactory;
+
+/**
+ * Test adapter factory.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class AdapterFactory implements IAdapterFactory {
+
+	@SuppressWarnings("unchecked")
+	public Object getAdapter(Object adaptableObject, @SuppressWarnings("rawtypes") Class adapterType) {
+		return Integer.parseInt((String)adaptableObject);
+	}
+
+	public Class<?>[] getAdapterList() {
+		return new Class<?>[] {Integer.class };
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/AllTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/AllTests.java
new file mode 100644
index 0000000..38661fc
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/AllTests.java
@@ -0,0 +1,37 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests;
+
+import org.eclipse.intent.mapping.ide.tests.adapter.MarkerToTextLocationDesciptorTests;
+import org.eclipse.intent.mapping.ide.tests.connector.IdeTextConnectorTests;
+import org.eclipse.intent.mapping.ide.tests.connector.ResourceConnectorTests;
+import org.eclipse.intent.mapping.ide.tests.connector.ResourceLocationListenerTests;
+import org.eclipse.intent.mapping.ide.tests.connector.TextFileConnectorDelegateTests;
+import org.eclipse.intent.mapping.ide.tests.content.ContentTests;
+import org.eclipse.intent.mapping.ide.tests.internal.connector.FileDelegateRegistryTests;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+/**
+ * Aggregates tests for the org.eclipse.intent.mapping.ide plug-in.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@RunWith(Suite.class)
+@SuiteClasses(value = {FileDelegateRegistryTests.class, ResourceConnectorTests.class,
+		TextFileConnectorDelegateTests.class, IdeTextConnectorTests.class,
+		MarkerToTextLocationDesciptorTests.class, ResourceLocationListenerTests.class,
+		IdeMappingUtilsTests.class, ContentTests.class, })
+public class AllTests {
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/IdeMappingUtilsTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/IdeMappingUtilsTests.java
new file mode 100644
index 0000000..42ec447
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/IdeMappingUtilsTests.java
@@ -0,0 +1,402 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests;
+
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.base.LocationDescriptor;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils.ICurrentBaseListener;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils.ISynchronizationPaletteListener;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestLocation;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests.TestBase;
+import org.eclipse.intent.mapping.tests.connector.ConnectorRegistryTests.TestLocation1;
+import org.junit.Before;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link IdeMappingUtils}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeMappingUtilsTests {
+
+	/**
+	 * A test {@link IFileLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestFileLocation extends TestLocation implements IFileLocation {
+
+		/**
+		 * The full path.
+		 */
+		private String fullPath;
+
+		public String getFullPath() {
+			return fullPath;
+		}
+
+		public void setFullPath(String path) {
+			this.fullPath = path;
+		}
+
+	}
+
+	/**
+	 * Test {@link ICurrentBaseListener}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestCurrentBaseListener implements ICurrentBaseListener {
+		/**
+		 * Counts calls to {@link TestCurrentBaseListener#currentBaseChanged(IBase, IBase)}.
+		 */
+		private int currentBaseChangedCount;
+
+		public void currentBaseChanged(IBase oldBase, IBase newBase) {
+			currentBaseChangedCount++;
+		}
+
+	}
+
+	/**
+	 * Test {@link ISynchronizationPaletteListener}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestSynchronizationPaletteListener implements ISynchronizationPaletteListener {
+
+		/**
+		 * Counts calls to {@link ISynchronizationPaletteListener#locationActivated(ILocationDescriptor)}.
+		 */
+		private int locationActivatedCount;
+
+		/**
+		 * Counts calls to {@link ISynchronizationPaletteListener#locationDeactivated(ILocationDescriptor)}.
+		 */
+		private int locationDeactivatedCount;
+
+		/**
+		 * Counts calls to {@link ISynchronizationPaletteListener#contentsAdded(ILocationDescriptor)}.
+		 */
+		private int contentsAddedCount;
+
+		/**
+		 * Counts calls to {@link ISynchronizationPaletteListener#contentsRemoved(ILocationDescriptor)}.
+		 */
+		private int contentsRemovedCount;
+
+		public void locationActivated(ILocationDescriptor locationDescriptor) {
+			locationActivatedCount++;
+		}
+
+		public void locationDeactivated(ILocationDescriptor locationDescriptor) {
+			locationDeactivatedCount++;
+		}
+
+		public void contentsAdded(ILocationDescriptor locationDescriptor) {
+			contentsAddedCount++;
+		}
+
+		public void contentsRemoved(ILocationDescriptor locationDescriptor) {
+			contentsRemovedCount++;
+		}
+
+	}
+
+	@Before
+	public void before() {
+		for (ILocationDescriptor descriptor : IdeMappingUtils.getSynchronizationPalette()) {
+			IdeMappingUtils.removeLocationFromPalette(descriptor);
+		}
+	}
+
+	public static void assertCurrentBaseListener(TestCurrentBaseListener listener,
+			int currentBaseChangedCount) {
+		assertEquals(currentBaseChangedCount, listener.currentBaseChangedCount);
+	}
+
+	public static void assertSynchronizationPaletteListener(TestSynchronizationPaletteListener listener,
+			int locationActivatedCount, int locationDeactivatedCount, int contentsAddedCount,
+			int contentsRemovedCount) {
+		assertEquals(locationActivatedCount, listener.locationActivatedCount);
+		assertEquals(locationDeactivatedCount, listener.locationDeactivatedCount);
+		assertEquals(contentsAddedCount, listener.contentsAddedCount);
+		assertEquals(contentsRemovedCount, listener.contentsRemovedCount);
+	}
+
+	@Test
+	public void activateLocationNull() {
+		final TestSynchronizationPaletteListener listener = new TestSynchronizationPaletteListener();
+		IdeMappingUtils.addSynchronizationPaletteListener(listener);
+
+		IdeMappingUtils.activateLocation(null);
+
+		assertSynchronizationPaletteListener(listener, 0, 0, 0, 0);
+		IdeMappingUtils.removeSynchronizationPaletteListener(listener);
+	}
+
+	@Test
+	public void activateLocationNotInPalette() {
+		final TestSynchronizationPaletteListener listener = new TestSynchronizationPaletteListener();
+		IdeMappingUtils.addSynchronizationPaletteListener(listener);
+		final ILocation location = new TestLocation1();
+		ILocationDescriptor descriptor = new LocationDescriptor(location);
+
+		IdeMappingUtils.activateLocation(descriptor);
+
+		assertFalse(IdeMappingUtils.isActive(descriptor));
+		assertSynchronizationPaletteListener(listener, 0, 0, 0, 0);
+
+		IdeMappingUtils.removeSynchronizationPaletteListener(listener);
+	}
+
+	@Test
+	public void activateLocationInPalette() {
+		final TestSynchronizationPaletteListener listener = new TestSynchronizationPaletteListener();
+		IdeMappingUtils.addSynchronizationPaletteListener(listener);
+		final ILocation location = new TestLocation1();
+		ILocationDescriptor descriptor = new LocationDescriptor(location);
+
+		IdeMappingUtils.addLocationToPalette(descriptor);
+		IdeMappingUtils.activateLocation(descriptor);
+
+		assertTrue(IdeMappingUtils.isActive(descriptor));
+		assertSynchronizationPaletteListener(listener, 1, 0, 1, 0);
+
+		IdeMappingUtils.removeSynchronizationPaletteListener(listener);
+	}
+
+	@Test(expected = NullPointerException.class)
+	public void adaptNullNull() {
+		IdeMappingUtils.adapt(null, null);
+	}
+
+	@Test
+	public void adaptNullClass() {
+		assertNull(IdeMappingUtils.adapt(null, ILocationDescriptor.class));
+	}
+
+	@Test
+	public void adapt() {
+		final Integer integer = IdeMappingUtils.adapt("17", Integer.class);
+
+		assertNotNull(integer);
+		assertEquals(Integer.valueOf(17), integer);
+	}
+
+	@Test
+	public void addLocationToPaletteNull() {
+		final TestSynchronizationPaletteListener listener = new TestSynchronizationPaletteListener();
+		IdeMappingUtils.addSynchronizationPaletteListener(listener);
+
+		IdeMappingUtils.addLocationToPalette(null);
+		assertSynchronizationPaletteListener(listener, 0, 0, 1, 0);
+
+		IdeMappingUtils.removeSynchronizationPaletteListener(listener);
+	}
+
+	@Test
+	public void addLocationToPaletteNotInPalette() {
+		final TestSynchronizationPaletteListener listener = new TestSynchronizationPaletteListener();
+		IdeMappingUtils.addSynchronizationPaletteListener(listener);
+		final ILocation location = new TestLocation1();
+		ILocationDescriptor descriptor = new LocationDescriptor(location);
+
+		IdeMappingUtils.addLocationToPalette(descriptor);
+		assertSynchronizationPaletteListener(listener, 0, 0, 1, 0);
+
+		IdeMappingUtils.removeSynchronizationPaletteListener(listener);
+	}
+
+	@Test
+	public void addLocationToPaletteInPalette() {
+		final TestSynchronizationPaletteListener listener = new TestSynchronizationPaletteListener();
+		final ILocation location = new TestLocation1();
+		ILocationDescriptor descriptor = new LocationDescriptor(location);
+		IdeMappingUtils.addLocationToPalette(descriptor);
+		IdeMappingUtils.addSynchronizationPaletteListener(listener);
+
+		IdeMappingUtils.addLocationToPalette(descriptor);
+		assertSynchronizationPaletteListener(listener, 0, 0, 0, 0);
+
+		IdeMappingUtils.removeSynchronizationPaletteListener(listener);
+	}
+
+	@Test
+	public void asActiveLocationDescriptorFalse() {
+		assertFalse(IdeMappingUtils.asActiveLocationDescriptor());
+	}
+
+	@Test
+	public void asActiveLocationDescriptorTrue() {
+		final ILocation location = new TestLocation1();
+		ILocationDescriptor descriptor = new LocationDescriptor(location);
+		IdeMappingUtils.addLocationToPalette(descriptor);
+		IdeMappingUtils.activateLocation(descriptor);
+
+		assertTrue(IdeMappingUtils.asActiveLocationDescriptor());
+	}
+
+	@Test
+	public void deactivateLocationNull() {
+		final TestSynchronizationPaletteListener listener = new TestSynchronizationPaletteListener();
+		IdeMappingUtils.addSynchronizationPaletteListener(listener);
+
+		IdeMappingUtils.deactivateLocation(null);
+
+		assertSynchronizationPaletteListener(listener, 0, 0, 0, 0);
+		IdeMappingUtils.removeSynchronizationPaletteListener(listener);
+	}
+
+	@Test
+	public void deactivateLocationNotInPalette() {
+		final TestSynchronizationPaletteListener listener = new TestSynchronizationPaletteListener();
+		IdeMappingUtils.addSynchronizationPaletteListener(listener);
+		final ILocation location = new TestLocation1();
+		ILocationDescriptor descriptor = new LocationDescriptor(location);
+
+		IdeMappingUtils.deactivateLocation(descriptor);
+
+		assertFalse(IdeMappingUtils.isActive(descriptor));
+		assertSynchronizationPaletteListener(listener, 0, 0, 0, 0);
+
+		IdeMappingUtils.removeSynchronizationPaletteListener(listener);
+	}
+
+	@Test
+	public void deactivateLocationInPaletteNotActivated() {
+		final TestSynchronizationPaletteListener listener = new TestSynchronizationPaletteListener();
+		final ILocation location = new TestLocation1();
+		ILocationDescriptor descriptor = new LocationDescriptor(location);
+		IdeMappingUtils.addLocationToPalette(descriptor);
+		IdeMappingUtils.addSynchronizationPaletteListener(listener);
+
+		IdeMappingUtils.deactivateLocation(descriptor);
+
+		assertFalse(IdeMappingUtils.isActive(descriptor));
+		assertSynchronizationPaletteListener(listener, 0, 0, 0, 0);
+
+		IdeMappingUtils.removeSynchronizationPaletteListener(listener);
+	}
+
+	@Test
+	public void deactivateLocationInPaletteActivated() {
+		final TestSynchronizationPaletteListener listener = new TestSynchronizationPaletteListener();
+		final ILocation location = new TestLocation1();
+		ILocationDescriptor descriptor = new LocationDescriptor(location);
+		IdeMappingUtils.addLocationToPalette(descriptor);
+		IdeMappingUtils.activateLocation(descriptor);
+		IdeMappingUtils.addSynchronizationPaletteListener(listener);
+
+		IdeMappingUtils.deactivateLocation(descriptor);
+
+		assertFalse(IdeMappingUtils.isActive(descriptor));
+		assertSynchronizationPaletteListener(listener, 0, 1, 0, 0);
+
+		IdeMappingUtils.removeSynchronizationPaletteListener(listener);
+	}
+
+	@Test(expected = NullPointerException.class)
+	public void getContainingFileLocationNull() {
+		IdeMappingUtils.getContainingFileLocation(null);
+	}
+
+	@Test
+	public void getContainingFileLocationNotContained() {
+		final ILocation location = new TestLocation1();
+
+		assertNull(IdeMappingUtils.getContainingFileLocation(location));
+	}
+
+	@Test
+	public void getContainingFileLocation() {
+		final ILocation container = new TestFileLocation();
+		final ILocation location = new TestLocation1();
+		location.setContainer(container);
+
+		assertEquals(container, IdeMappingUtils.getContainingFileLocation(location));
+	}
+
+	@Test
+	public void getFileConectorDelegateRegistry() {
+		assertNotNull(IdeMappingUtils.getFileConectorDelegateRegistry());
+	}
+
+	@Test
+	public void setCurrentBaseNull() {
+		TestCurrentBaseListener listener = new TestCurrentBaseListener();
+
+		IdeMappingUtils.setCurrentBase(null);
+
+		assertCurrentBaseListener(listener, 0);
+
+		IdeMappingUtils.removeCurrentBaseListener(listener);
+	}
+
+	@Test
+	public void setCurrentBaseNotTheSame() {
+		TestCurrentBaseListener listener = new TestCurrentBaseListener();
+		IdeMappingUtils.addCurrentBaseListener(listener);
+		final IBase base = new TestBase();
+
+		IdeMappingUtils.setCurrentBase(base);
+
+		assertCurrentBaseListener(listener, 1);
+
+		IdeMappingUtils.removeCurrentBaseListener(listener);
+	}
+
+	@Test
+	public void setCurrentBaseTheSame() {
+		TestCurrentBaseListener listener = new TestCurrentBaseListener();
+		final IBase base = new TestBase();
+		IdeMappingUtils.setCurrentBase(base);
+		IdeMappingUtils.addCurrentBaseListener(listener);
+
+		IdeMappingUtils.setCurrentBase(base);
+
+		assertCurrentBaseListener(listener, 0);
+
+		IdeMappingUtils.removeCurrentBaseListener(listener);
+	}
+
+	@Test
+	public void changeCurrentBaseEmptySynchronizationPalette() {
+		final IBase base = new TestBase();
+		IdeMappingUtils.setCurrentBase(base);
+		final ILocation location = new TestLocation1();
+		base.getContents().add(location);
+		location.setContainer(base);
+
+		final ILocationDescriptor desciptor = new LocationDescriptor(location);
+
+		IdeMappingUtils.addLocationToPalette(desciptor);
+
+		assertFalse(IdeMappingUtils.getSynchronizationPalette().isEmpty());
+
+		final IBase newBase = new TestBase();
+		IdeMappingUtils.setCurrentBase(newBase);
+
+		assertTrue(IdeMappingUtils.getSynchronizationPalette().isEmpty());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/adapter/MarkerToTextLocationDesciptorTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/adapter/MarkerToTextLocationDesciptorTests.java
new file mode 100644
index 0000000..4c183ed
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/adapter/MarkerToTextLocationDesciptorTests.java
@@ -0,0 +1,112 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests.adapter;
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.adapter.MarkerToLocationDescriptorAdapterFactory;
+import org.eclipse.intent.mapping.ide.resource.ITextFileLocation;
+import org.eclipse.intent.mapping.ide.tests.connector.TextFileConnectorDelegateTests.TestTextFileLocation;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests.TestBase;
+import org.eclipse.intent.mapping.tests.text.TextConnectorParametrizedTests;
+import org.eclipse.intent.mapping.text.ITextLocation;
+import org.eclipse.intent.mapping.text.TextRegion;
+import org.junit.Ignore;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link org.eclipse.intent.mapping.ide.adapter.MarkerToTextLocationDescriptor
+ * MarkerToTextLocationDescriptor}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class MarkerToTextLocationDesciptorTests {
+
+	/**
+	 * Makes sure org.eclipse.intent.mapping.ide is activated.
+	 */
+	private static final MarkerToLocationDescriptorAdapterFactory ADAPTER = new MarkerToLocationDescriptorAdapterFactory();
+
+	@Ignore
+	@Test
+	public void getAdapter() throws CoreException, IOException {
+		final IProject project = createProject();
+
+		project.refreshLocal(1, new NullProgressMonitor());
+		final IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path("/test/test.txt"));
+		file.create(new ByteArrayInputStream("123456".getBytes()), true, new NullProgressMonitor());
+		final IMarker marker = file.createMarker(IMarker.TEXT);
+		marker.setAttribute(IMarker.CHAR_START, 3);
+		marker.setAttribute(IMarker.CHAR_END, 4);
+
+		final IBase base = new TestBase();
+		MappingUtils.getMappingRegistry().register(base);
+		IdeMappingUtils.setCurrentBase(base);
+		base.getFactory().addDescriptor(ITextFileLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestTextFileLocation>(TestTextFileLocation.class));
+		base.getFactory().addDescriptor(ITextLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TextConnectorParametrizedTests.TestTextLocation>(
+						TextConnectorParametrizedTests.TestTextLocation.class));
+
+		ILocationDescriptor locationDescriptor = (ILocationDescriptor)Platform.getAdapterManager().getAdapter(
+				marker, ILocationDescriptor.class);
+
+		assertNotNull(locationDescriptor);
+		assertTrue(locationDescriptor.getElement() instanceof TextRegion);
+		final TextRegion textRegion = (TextRegion)locationDescriptor.getElement();
+		assertEquals(3, textRegion.getStartOffset());
+		assertEquals(4, textRegion.getEndOffset());
+		assertEquals("4", textRegion.getText());
+		assertTrue(locationDescriptor.getContainerDescriptor().getElement() instanceof IFile);
+		assertNull(locationDescriptor.getContainerDescriptor().getContainerDescriptor());
+		final IFile container = (IFile)locationDescriptor.getContainerDescriptor().getElement();
+		assertEquals("/test/test.txt", container.getFullPath().toString());
+
+		project.delete(true, true, new NullProgressMonitor());
+	}
+
+	/**
+	 * Creates an {@link IProject}.
+	 * 
+	 * @return the created {@link IProject}
+	 * @throws CoreException
+	 */
+	private IProject createProject() throws CoreException {
+		IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("test");
+		if (project.exists()) {
+			project.delete(true, new NullProgressMonitor());
+		}
+		project.create(new NullProgressMonitor());
+		project.open(new NullProgressMonitor());
+		return project;
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/IdeTextConnectorTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/IdeTextConnectorTests.java
new file mode 100644
index 0000000..4c694fe
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/IdeTextConnectorTests.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests.connector;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.ide.connector.IdeTextConnector;
+import org.eclipse.intent.mapping.tests.text.TextConnectorTests;
+import org.eclipse.intent.mapping.text.ITextLocation;
+import org.junit.Test;
+
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Test {@link IdeTextConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeTextConnectorTests extends TextConnectorTests {
+
+	@Test
+	public void isRegistred() {
+		assertTrue(MappingUtils.getConnectorRegistry().getConnector(
+				ITextLocation.class) instanceof IdeTextConnector);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/ResourceConnectorTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/ResourceConnectorTests.java
new file mode 100644
index 0000000..d691313
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/ResourceConnectorTests.java
@@ -0,0 +1,395 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests.connector;
+
+import java.io.ByteArrayInputStream;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.connector.ResourceConnector;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+import org.eclipse.intent.mapping.ide.resource.IResourceLocation;
+import org.eclipse.intent.mapping.ide.tests.internal.connector.FileDelegateRegistryTests;
+import org.eclipse.intent.mapping.ide.tests.internal.connector.FileDelegateRegistryTests.FileConnectorDelegateA.FileLocationA;
+import org.eclipse.intent.mapping.ide.tests.internal.connector.FileDelegateRegistryTests.FileConnectorDelegateB.FileLocationB;
+import org.eclipse.intent.mapping.ide.tests.internal.connector.FileDelegateRegistryTests.FileConnectorDelegateC.FileLocationC;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestLocation;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestReport;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests;
+import org.eclipse.intent.mapping.tests.text.TextConnectorParametrizedTests.TestTextLocation;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests for {@link ResourceConnector} class.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ResourceConnectorTests {
+
+	/**
+	 * Test {@link ResourceConnector}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private static class TestResourceConnector extends ResourceConnector {
+		@Override
+		public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+				Object element) {
+			return super.getLocationType(containerType, element);
+		}
+
+		@Override
+		public void initLocation(ILocationContainer container, ILocation location, Object element) {
+			super.initLocation(container, location, element);
+		}
+
+	}
+
+	/**
+	 * Test {@link IFileLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestResourceLocation extends TestLocation implements IFileLocation {
+
+		/**
+		 * The full path.
+		 */
+		private String fullPath;
+
+		public String getFullPath() {
+			return fullPath;
+		}
+
+		public void setFullPath(String path) {
+			fullPath = path;
+		}
+
+	}
+
+	/**
+	 * The {@link ResourceConnector} to test.
+	 */
+	private final TestResourceConnector connector = new TestResourceConnector();
+
+	@BeforeClass
+	public static void beforeClass() throws CoreException {
+		final NullProgressMonitor monitor = new NullProgressMonitor();
+
+		final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("TestProject");
+		project.create(monitor);
+		project.open(monitor);
+
+		final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(
+				"TestProject/TestFolder"));
+		folder.create(true, true, monitor);
+
+		final IFile fileA = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.aaa"));
+		fileA.create(new ByteArrayInputStream(new byte[0]), true, monitor);
+
+		final IFile fileB = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.bbb"));
+		fileB.create(new ByteArrayInputStream(new byte[0]), true, monitor);
+
+		final IFile fileC = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.ccc"));
+		fileC.create(new ByteArrayInputStream(new byte[0]), true, monitor);
+	}
+
+	@AfterClass
+	public static void afterClass() throws CoreException {
+		final NullProgressMonitor monitor = new NullProgressMonitor();
+
+		final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("TestProject");
+		project.delete(true, monitor);
+
+		final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(
+				"TestProject/TestFolder"));
+		folder.delete(true, monitor);
+
+		final IFile fileA = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.aaa"));
+		fileA.delete(true, monitor);
+
+		final IFile fileB = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.bbb"));
+		fileB.delete(true, monitor);
+
+		final IFile fileC = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.ccc"));
+		fileC.delete(true, monitor);
+	}
+
+	@Before
+	public void before() {
+		IdeMappingUtils.getFileConectorDelegateRegistry().register(
+				FileDelegateRegistryTests.FILE_CONNECTOR_DELEGATE_A);
+		IdeMappingUtils.getFileConectorDelegateRegistry().register(
+				FileDelegateRegistryTests.FILE_CONNECTOR_DELEGATE_B);
+		IdeMappingUtils.getFileConectorDelegateRegistry().register(
+				FileDelegateRegistryTests.FILE_CONNECTOR_DELEGATE_C);
+	}
+
+	@After
+	public void after() {
+		IdeMappingUtils.getFileConectorDelegateRegistry().unregister(
+				FileDelegateRegistryTests.FILE_CONNECTOR_DELEGATE_A);
+		IdeMappingUtils.getFileConectorDelegateRegistry().unregister(
+				FileDelegateRegistryTests.FILE_CONNECTOR_DELEGATE_B);
+		IdeMappingUtils.getFileConectorDelegateRegistry().unregister(
+				FileDelegateRegistryTests.FILE_CONNECTOR_DELEGATE_C);
+	}
+
+	@Test
+	public void getLocationTypeNull() {
+		final Class<? extends ILocation> locationType = connector.getLocationType(null, null);
+
+		assertEquals(null, locationType);
+	}
+
+	@Test
+	public void getLocationTypeIProject() {
+		final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("TestProject");
+
+		final Class<? extends ILocation> locationType = connector.getLocationType(null, project);
+
+		assertEquals(IResourceLocation.class, locationType);
+	}
+
+	@Test
+	public void getLocationTypeIFolder() {
+		final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(
+				"TestProject/TestFolder"));
+
+		final Class<? extends ILocation> locationType = connector.getLocationType(null, folder);
+
+		assertEquals(IResourceLocation.class, locationType);
+	}
+
+	@Test
+	public void getLocationTypeIFileA() {
+		final IFile fileA = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.aaa"));
+
+		final Class<? extends ILocation> locationType = connector.getLocationType(null, fileA);
+
+		assertEquals(FileLocationA.class, locationType);
+	}
+
+	@Test
+	public void getLocationTypeIFileB() {
+		final IFile fileB = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.bbb"));
+
+		final Class<? extends ILocation> locationType = connector.getLocationType(null, fileB);
+
+		assertEquals(FileLocationB.class, locationType);
+	}
+
+	@Test
+	public void getLocationTypeIFileC() {
+		final IFile fileC = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.ccc"));
+
+		final Class<? extends ILocation> locationType = connector.getLocationType(null, fileC);
+
+		assertEquals(FileLocationC.class, locationType);
+	}
+
+	@Test
+	public void initLocationIProject() {
+		final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("TestProject");
+		TestResourceLocation location = new TestResourceLocation();
+
+		connector.initLocation(null, location, project);
+
+		assertEquals("/TestProject", location.getFullPath());
+	}
+
+	@Test
+	public void initLocationIFolder() {
+		final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(
+				"TestProject/TestFolder"));
+		TestResourceLocation location = new TestResourceLocation();
+
+		connector.initLocation(null, location, folder);
+
+		assertEquals("/TestProject/TestFolder", location.getFullPath());
+	}
+
+	@Test
+	public void initLocationIFileA() {
+		final IFile fileA = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.aaa"));
+		TestResourceLocation location = new TestResourceLocation();
+
+		connector.initLocation(null, location, fileA);
+
+		assertEquals("/TestProject/TestFolder/TestFile.aaa", location.getFullPath());
+	}
+
+	@Test
+	public void initLocationIFileB() {
+		final IFile fileB = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.bbb"));
+		TestResourceLocation location = new TestResourceLocation();
+
+		connector.initLocation(null, location, fileB);
+
+		assertEquals("/TestProject/TestFolder/TestFile.bbb", location.getFullPath());
+	}
+
+	@Test
+	public void initLocationIFileC() {
+		final IFile fileC = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.ccc"));
+		TestResourceLocation location = new TestResourceLocation();
+
+		connector.initLocation(null, location, fileC);
+
+		assertEquals("/TestProject/TestFolder/TestFile.ccc", location.getFullPath());
+	}
+
+	@Test
+	public void isRegistred() {
+		assertTrue(MappingUtils.getConnectorRegistry().getConnector(
+				IResourceLocation.class) instanceof ResourceConnector);
+	}
+
+	@Test
+	public void getLocationIProject() {
+		final TestLocation container = new TestLocation();
+		final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("TestProject");
+		TestResourceLocation location = new TestResourceLocation();
+		container.getContents().add(location);
+
+		connector.initLocation(null, location, project);
+
+		assertEquals(location, connector.getLocation(container, project));
+	}
+
+	@Test
+	public void getLocationIFolder() {
+		final TestLocation container = new TestLocation();
+		final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(
+				"TestProject/TestFolder"));
+		TestResourceLocation location = new TestResourceLocation();
+		container.getContents().add(location);
+
+		connector.initLocation(null, location, folder);
+
+		assertEquals(location, connector.getLocation(container, folder));
+	}
+
+	@Test
+	public void getLocationIFileB() {
+		final TestLocation container = new TestLocation();
+		final IFile fileB = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.bbb"));
+		TestResourceLocation location = new TestResourceLocation();
+		container.getContents().add(location);
+
+		connector.initLocation(null, location, fileB);
+
+		assertEquals(location, connector.getLocation(container, fileB));
+	}
+
+	@Test
+	public void updateDeleted() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		IdeMappingUtils.setCurrentBase(base);
+		base.getFactory().addDescriptor(IReport.class, new BaseElementFactory.FactoryDescriptor<TestReport>(
+				TestReport.class));
+		final ILocation target = new TestTextLocation();
+
+		final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(
+				"TestProject/TestFolderToDelete"));
+		folder.create(true, true, new NullProgressMonitor());
+		TestResourceLocation location = new TestResourceLocation();
+		base.getContents().add(location);
+		location.setContainer(base);
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getTargetLinks().add(link);
+		link.setSource(location);
+		target.getSourceLinks().add(link);
+		link.setTarget(target);
+
+		connector.initLocation(null, location, folder);
+
+		folder.delete(true, new NullProgressMonitor());
+
+		assertTrue(location.isMarkedAsDeleted());
+		assertEquals(1, base.getReports().size());
+		final IReport report = base.getReports().get(0);
+		assertEquals(link, report.getLink());
+		assertEquals("the resource /TestProject/TestFolderToDelete has been deleted.", report
+				.getDescription());
+
+		IdeMappingUtils.setCurrentBase(null);
+	}
+
+	@Test
+	public void updateChanged() throws Exception {
+		final IBase base = new BaseRegistryTests.TestBase();
+		IdeMappingUtils.setCurrentBase(base);
+		base.getFactory().addDescriptor(IReport.class, new BaseElementFactory.FactoryDescriptor<TestReport>(
+				TestReport.class));
+		final ILocation target = new TestTextLocation();
+
+		final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(
+				"TestProject/TestFolderToMove"));
+		folder.create(true, true, new NullProgressMonitor());
+		TestResourceLocation location = new TestResourceLocation();
+		base.getContents().add(location);
+		location.setContainer(base);
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getTargetLinks().add(link);
+		link.setSource(location);
+		target.getSourceLinks().add(link);
+		link.setTarget(target);
+
+		connector.initLocation(null, location, folder);
+
+		folder.move(new Path("TestFolderMoved"), true, new NullProgressMonitor());
+
+		assertEquals(1, base.getReports().size());
+		final IReport report = base.getReports().get(0);
+		assertEquals(link, report.getLink());
+		assertEquals("/TestProject/TestFolderToMove moved to /TestProject/TestFolderMoved", report
+				.getDescription());
+
+		IdeMappingUtils.setCurrentBase(null);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/ResourceLocationListenerTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/ResourceLocationListenerTests.java
new file mode 100644
index 0000000..22f1fcc
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/ResourceLocationListenerTests.java
@@ -0,0 +1,548 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests.connector;
+
+import java.io.ByteArrayInputStream;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.ide.Activator;
+import org.eclipse.intent.mapping.ide.IdeMappingUtils;
+import org.eclipse.intent.mapping.ide.resource.IResourceLocation;
+import org.eclipse.intent.mapping.ide.tests.connector.ResourceConnectorTests.TestResourceLocation;
+import org.eclipse.intent.mapping.ide.tests.connector.TextFileConnectorDelegateTests.TestTextFileLocation;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests.TestBase;
+import org.junit.Before;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.fail;
+
+/**
+ * Tests {@lin org.eclipse.intent.mapping.ide.connector.ResourceLocationListenerk ResourceLocationListener}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ResourceLocationListenerTests {
+
+	/**
+	 * Count calls to {@link TestSetFullPathResourceLocation#setFullPath(String)}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private static class TestSetFullPathResourceLocation extends TestResourceLocation {
+
+		/**
+		 * Calls to {@link TestSetFullPathResourceLocation#setFullPath(String)} counter.
+		 */
+		private int setFullPathCount;
+
+		@Override
+		public void setFullPath(String path) {
+			super.setFullPath(path);
+			setFullPathCount++;
+		}
+	}
+
+	/**
+	 * Count calls to {@link TestSetFullPathResourceLocation#setFullPath(String)}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private static class TestSetFullPathTextFileLocation extends TestTextFileLocation {
+
+		/**
+		 * Calls to {@link TestSetFullPathResourceLocation#setFullPath(String)} counter.
+		 */
+		private int setFullPathCount;
+
+		@Override
+		public void setFullPath(String path) {
+			super.setFullPath(path);
+			setFullPathCount++;
+		}
+	}
+
+	/**
+	 * Make sure org.eclipse.intent.mapping.ide is activated.
+	 */
+	private static final Activator ACTIVATOR = org.eclipse.intent.mapping.ide.Activator.getDefault();
+
+	/**
+	 * Creates an {@link IFile} that have no {@link IResourceLocation} in the given {@link IContainer}.
+	 * 
+	 * @param container
+	 *            the {@link IContainer}
+	 * @return the created {@link IFile} if any, <code>null</code> otherwise
+	 */
+	private IFile createFile(IContainer container) {
+		IFile res = container.getFile(new Path("test.txt"));
+
+		try {
+			res.create(new ByteArrayInputStream("text content".getBytes()), true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Creates an {@link IProject}.
+	 * 
+	 * @return the created {@link IProject}
+	 * @throws CoreException
+	 */
+	private IProject createProject() throws CoreException {
+		IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("test");
+		if (project.exists()) {
+			project.delete(true, new NullProgressMonitor());
+		}
+		project.create(new NullProgressMonitor());
+		project.open(new NullProgressMonitor());
+		return project;
+	}
+
+	/**
+	 * Creates an {@link IProject} and initializes the given {@link IResourceLocation}.
+	 * 
+	 * @param location
+	 *            the {@link IResourceLocation}
+	 * @return the created {@link IProject}
+	 * @throws CoreException
+	 */
+	private IProject createProject(IResourceLocation location) throws CoreException {
+		IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("test");
+		if (project.exists()) {
+			project.delete(true, new NullProgressMonitor());
+		}
+		location.setFullPath(project.getFullPath().toPortableString());
+		project.create(new NullProgressMonitor());
+		project.open(new NullProgressMonitor());
+		return project;
+	}
+
+	/**
+	 * Creates an {@link IFile} and initializes the given {@link IResourceLocation} in the given
+	 * {@link IContainer}.
+	 * 
+	 * @param container
+	 *            the {@link IContainer}
+	 * @param location
+	 *            the {@link IResourceLocation}
+	 * @return the created {@link IFile} if any, <code>null</code> otherwise
+	 */
+	private IFile createFile(IContainer container, IResourceLocation location) {
+		final String fileName = "test.txt";
+		IFile res = container.getFile(new Path(fileName));
+
+		location.setFullPath(res.getFullPath().toPortableString());
+
+		try {
+			res.create(new ByteArrayInputStream("text content".getBytes()), true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			res = null;
+		}
+
+		return res;
+	}
+
+	/**
+	 * Clears the workspace after each test.
+	 */
+	@Before
+	public void beforeTest() {
+		final TestBase base = new TestBase();
+		MappingUtils.getMappingRegistry().register(base);
+		IdeMappingUtils.setCurrentBase(base);
+		try {
+			for (IResource resource : ResourcesPlugin.getWorkspace().getRoot().members()) {
+				((IProject)resource).open(new NullProgressMonitor());
+				resource.delete(true, new NullProgressMonitor());
+			}
+		} catch (CoreException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+	}
+
+	@Test
+	public void resourceChangedAddProjectNoLocation() {
+		try {
+			final IProject project = createProject();
+
+			assertNotNull(project);
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedAddProject() {
+		try {
+			final TestSetFullPathResourceLocation location = new TestSetFullPathResourceLocation();
+			IdeMappingUtils.getCurrentBase().getContents().add(location);
+			final IProject project = createProject(location);
+
+			assertNotNull(project);
+			assertEquals(3, location.setFullPathCount);
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedAddFileNoLocation() {
+		try {
+			final IProject project = createProject();
+			final IFile file = createFile(project);
+
+			assertNotNull(file);
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedAddFile() {
+		try {
+			final IProject project = createProject();
+			final TestSetFullPathTextFileLocation location = new TestSetFullPathTextFileLocation();
+			IdeMappingUtils.getCurrentBase().getContents().add(location);
+			final IFile file = createFile(project, location);
+
+			assertNotNull(file);
+			assertEquals(2, location.setFullPathCount);
+			assertEquals("text content", location.getText());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedRemoveProjectNoLocation() {
+		try {
+			final IProject project = createProject();
+
+			assertNotNull(project);
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedRemoveProject() {
+		try {
+			final TestSetFullPathResourceLocation location = new TestSetFullPathResourceLocation();
+			IdeMappingUtils.getCurrentBase().getContents().add(location);
+			final IProject project = createProject(location);
+
+			assertNotNull(project);
+			assertEquals(3, location.setFullPathCount);
+
+			project.delete(true, new NullProgressMonitor());
+
+			assertEquals(3, location.setFullPathCount);
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedRemoveFileNoLocation() {
+		try {
+			final IProject project = createProject();
+			final IFile file = createFile(project);
+
+			assertNotNull(file);
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedRemoveFile() {
+		try {
+			final IProject project = createProject();
+			final TestSetFullPathTextFileLocation location = new TestSetFullPathTextFileLocation();
+			IdeMappingUtils.getCurrentBase().getContents().add(location);
+			final IFile file = createFile(project, location);
+
+			assertNotNull(file);
+			assertEquals(2, location.setFullPathCount);
+			assertEquals("text content", location.getText());
+
+			project.delete(true, new NullProgressMonitor());
+
+			assertEquals(2, location.setFullPathCount);
+			assertEquals("text content", location.getText());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedMoveProjectNoLocation() {
+		try {
+			final IProject project = createProject();
+			project.move(new Path("/project"), true, new NullProgressMonitor());
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedMoveProject() {
+		try {
+			final TestSetFullPathResourceLocation location = new TestSetFullPathResourceLocation();
+			IdeMappingUtils.getCurrentBase().getContents().add(location);
+			final IProject project = createProject(location);
+
+			assertNotNull(project);
+			assertEquals(3, location.setFullPathCount);
+
+			project.move(new Path("/project"), true, new NullProgressMonitor());
+
+			assertEquals(4, location.setFullPathCount);
+			assertEquals("/project", location.getFullPath());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedMoveFileNoLocation() {
+		try {
+			final IProject project = createProject();
+			final IFile file = createFile(project);
+
+			assertNotNull(file);
+
+			file.move(new Path("/test/file.txt"), true, new NullProgressMonitor());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedMoveFile() {
+		try {
+			final IProject project = createProject();
+			final TestSetFullPathTextFileLocation location = new TestSetFullPathTextFileLocation();
+			IdeMappingUtils.getCurrentBase().getContents().add(location);
+			final IFile file = createFile(project, location);
+
+			assertNotNull(file);
+			assertEquals(2, location.setFullPathCount);
+
+			file.move(new Path("/test/file.txt"), true, new NullProgressMonitor());
+
+			assertEquals(3, location.setFullPathCount);
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedOpenProjectNoLocation() {
+		try {
+			final IProject project = createProject();
+
+			assertNotNull(project);
+
+			project.close(new NullProgressMonitor());
+
+			project.open(new NullProgressMonitor());
+
+			project.delete(true, new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedOpenProject() {
+		try {
+			final TestSetFullPathResourceLocation location = new TestSetFullPathResourceLocation();
+			IdeMappingUtils.getCurrentBase().getContents().add(location);
+			final IProject project = createProject(location);
+
+			assertNotNull(project);
+			assertEquals(3, location.setFullPathCount);
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(3, location.setFullPathCount);
+
+			project.open(new NullProgressMonitor());
+
+			assertEquals(4, location.setFullPathCount);
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedOpenFileNoLocation() {
+		try {
+			final IProject project = createProject();
+			final IFile file = createFile(project);
+
+			assertNotNull(file);
+
+			project.close(new NullProgressMonitor());
+
+			project.open(new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedOpenFile() {
+		try {
+			final IProject project = createProject();
+			final TestSetFullPathTextFileLocation location = new TestSetFullPathTextFileLocation();
+			IdeMappingUtils.getCurrentBase().getContents().add(location);
+			final IFile file = createFile(project, location);
+
+			assertNotNull(file);
+			assertEquals(2, location.setFullPathCount);
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(2, location.setFullPathCount);
+
+			project.open(new NullProgressMonitor());
+
+			assertEquals(3, location.setFullPathCount);
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedCloseProjectNoLocation() {
+		try {
+			final IProject project = createProject();
+
+			assertNotNull(project);
+
+			project.close(new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedCloseProject() {
+		try {
+			final TestSetFullPathResourceLocation location = new TestSetFullPathResourceLocation();
+			IdeMappingUtils.getCurrentBase().getContents().add(location);
+			final IProject project = createProject(location);
+
+			assertNotNull(project);
+			assertEquals(3, location.setFullPathCount);
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(3, location.setFullPathCount);
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedCloseFileNoLocation() {
+		try {
+			final IProject project = createProject();
+			final IFile file = createFile(project);
+
+			assertNotNull(file);
+
+			project.close(new NullProgressMonitor());
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+	@Test
+	public void resourceChangedCloseFile() {
+		try {
+			final IProject project = createProject();
+			final TestSetFullPathTextFileLocation location = new TestSetFullPathTextFileLocation();
+			IdeMappingUtils.getCurrentBase().getContents().add(location);
+			final IFile file = createFile(project, location);
+
+			assertNotNull(file);
+			assertEquals(2, location.setFullPathCount);
+
+			project.close(new NullProgressMonitor());
+
+			assertEquals(2, location.setFullPathCount);
+		} catch (CoreException e) {
+			e.printStackTrace();
+			fail(e.getMessage());
+		}
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/TextFileConnectorDelegateTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/TextFileConnectorDelegateTests.java
new file mode 100644
index 0000000..5c56ba2
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/connector/TextFileConnectorDelegateTests.java
@@ -0,0 +1,139 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests.connector;
+
+import java.io.ByteArrayInputStream;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.content.IContentType;
+import org.eclipse.core.runtime.content.IContentTypeManager;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.content.IFileType;
+import org.eclipse.intent.mapping.ide.connector.TextFileConnectorDelegate;
+import org.eclipse.intent.mapping.ide.resource.ITextFileLocation;
+import org.eclipse.intent.mapping.ide.tests.connector.ResourceConnectorTests.TestResourceLocation;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Tests for {@link TextFileConnectorDelegate}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class TextFileConnectorDelegateTests {
+
+	/**
+	 * Test {@link ITextFileLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestTextFileLocation extends TestResourceLocation implements ITextFileLocation {
+
+		/**
+		 * The text content.
+		 */
+		private String text;
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.text.ITextContainer#setText(java.lang.String)
+		 */
+		public void setText(String text) {
+			this.text = text;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.text.ITextContainer#getText()
+		 */
+		public String getText() {
+			return text;
+		}
+
+	}
+
+	/**
+	 * The {@link TextFileConnectorDelegate} to test.
+	 */
+	private final TextFileConnectorDelegate delegate = new TextFileConnectorDelegate();
+
+	@BeforeClass
+	public static void beforeClass() throws CoreException {
+		final NullProgressMonitor monitor = new NullProgressMonitor();
+
+		final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("TestProject");
+		project.create(monitor);
+		project.open(monitor);
+
+		final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(
+				"TestProject/TestFolder"));
+		folder.create(true, true, monitor);
+
+		final IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.txt"));
+		file.create(new ByteArrayInputStream("text content".getBytes()), true, monitor);
+	}
+
+	@AfterClass
+	public static void afterClass() throws CoreException {
+		final NullProgressMonitor monitor = new NullProgressMonitor();
+
+		final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("TestProject");
+		project.delete(true, monitor);
+
+		final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(
+				"TestProject/TestFolder"));
+		folder.delete(true, monitor);
+
+		final IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.txt"));
+		file.delete(true, monitor);
+	}
+
+	@Test
+	public void getContentType() {
+		final IContentTypeManager contentTypeManager = Platform.getContentTypeManager();
+		final IContentType contentType = contentTypeManager.getContentType(IContentTypeManager.CT_TEXT);
+		final IFileType expected = MappingUtils.getFileTypeRegistry().getFileType(contentType.getId());
+
+		assertEquals(expected, delegate.getFileType());
+	}
+
+	@Test
+	public void getFileLocationType() {
+		assertEquals(ITextFileLocation.class, delegate.getFileLocationType());
+	}
+
+	@Test
+	public void initLocation() {
+		final IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(
+				"TestProject/TestFolder/TestFile.txt"));
+		TestTextFileLocation location = new TestTextFileLocation();
+
+		delegate.initLocation(null, location, file);
+
+		assertEquals("text content", location.getText());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/content/ContentTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/content/ContentTests.java
new file mode 100644
index 0000000..803c13d
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/content/ContentTests.java
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests.content;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+/**
+ * Aggregates tests for the org.eclipse.intent.mapping plug-in.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@RunWith(Suite.class)
+@SuiteClasses(value = {IdeFileTypeRegistryTests.class })
+public class ContentTests {
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/content/IdeFileTypeRegistryTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/content/IdeFileTypeRegistryTests.java
new file mode 100644
index 0000000..8507eac
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/content/IdeFileTypeRegistryTests.java
@@ -0,0 +1,105 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests.content;
+
+import java.io.IOException;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.content.IFileType;
+import org.eclipse.intent.mapping.ide.Activator;
+import org.eclipse.intent.mapping.ide.internal.content.IdeFileTypeRegistry;
+import org.eclipse.intent.mapping.tests.content.FileTypeRegistryTests;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link IdeFileTypeRegistry}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class IdeFileTypeRegistryTests extends FileTypeRegistryTests {
+
+	/**
+	 * Make sure is activated.
+	 */
+	private static final Activator ACTIVATOR = Activator.getDefault();
+
+	@Test
+	public void isRegistered() {
+		assertTrue(MappingUtils.getFileTypeRegistry() instanceof IdeFileTypeRegistry);
+	}
+
+	@Test
+	public void getFileTypeForNullNull() throws IOException {
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileTypeFor(null, null);
+
+		assertEquals("org.eclipse.core.runtime.text", result.getID());
+	}
+
+	@Test
+	public void getFileTypeA() {
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileType(
+				"org.eclipse.intent.mapping.ide.tests.content-typeA");
+
+		assertEquals("org.eclipse.intent.mapping.ide.tests.content-typeA", result.getID());
+		assertTrue(result.isKindOf("org.eclipse.intent.mapping.ide.tests.content-typeA"));
+		assertFalse(result.isKindOf("org.eclipse.intent.mapping.ide.tests.content-typeB"));
+		assertFalse(result.isKindOf("org.eclipse.intent.mapping.ide.tests.content-typeC"));
+	}
+
+	@Test
+	public void getFileTypeB() {
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileType(
+				"org.eclipse.intent.mapping.ide.tests.content-typeB");
+
+		assertEquals("org.eclipse.intent.mapping.ide.tests.content-typeB", result.getID());
+		assertTrue(result.isKindOf("org.eclipse.intent.mapping.ide.tests.content-typeA"));
+		assertTrue(result.isKindOf("org.eclipse.intent.mapping.ide.tests.content-typeB"));
+		assertFalse(result.isKindOf("org.eclipse.intent.mapping.ide.tests.content-typeC"));
+	}
+
+	@Test
+	public void getFileTypeC() {
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileType(
+				"org.eclipse.intent.mapping.ide.tests.content-typeC");
+
+		assertEquals("org.eclipse.intent.mapping.ide.tests.content-typeC", result.getID());
+		assertTrue(result.isKindOf("org.eclipse.intent.mapping.ide.tests.content-typeA"));
+		assertTrue(result.isKindOf("org.eclipse.intent.mapping.ide.tests.content-typeB"));
+		assertTrue(result.isKindOf("org.eclipse.intent.mapping.ide.tests.content-typeC"));
+	}
+
+	@Test
+	public void getFileTypeForA() throws IOException {
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileTypeFor(null, "test.aaa");
+
+		assertEquals("org.eclipse.intent.mapping.ide.tests.content-typeA", result.getID());
+	}
+
+	@Test
+	public void getFileTypeForB() throws IOException {
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileTypeFor(null, "test.bbb");
+
+		assertEquals("org.eclipse.intent.mapping.ide.tests.content-typeB", result.getID());
+	}
+
+	@Test
+	public void getFileTypeForC() throws IOException {
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileTypeFor(null, "test.ccc");
+
+		assertEquals("org.eclipse.intent.mapping.ide.tests.content-typeC", result.getID());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/internal/connector/FileDelegateRegistryTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/internal/connector/FileDelegateRegistryTests.java
new file mode 100644
index 0000000..38bc3f8
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/internal/connector/FileDelegateRegistryTests.java
@@ -0,0 +1,229 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests.internal.connector;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.content.IContentType;
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.content.IFileType;
+import org.eclipse.intent.mapping.ide.connector.AbstractFileConnectorDelegate;
+import org.eclipse.intent.mapping.ide.connector.IFileConnectorDelegate;
+import org.eclipse.intent.mapping.ide.internal.connector.FileDelegateRegistry;
+import org.eclipse.intent.mapping.ide.resource.IFileLocation;
+import org.junit.Before;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Tests {@link FileDelegateRegistry}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class FileDelegateRegistryTests {
+
+	/**
+	 * Content type A {@link IContentType#getId() ID}.
+	 */
+	public static final String CONTENT_TYPE_A = "org.eclipse.intent.mapping.ide.tests.content-typeA";
+
+	/**
+	 * Content type B {@link IContentType#getId() ID}.
+	 */
+	public static final String CONTENT_TYPE_B = "org.eclipse.intent.mapping.ide.tests.content-typeB";
+
+	/**
+	 * Content type C {@link IContentType#getId() ID}.
+	 */
+	public static final String CONTENT_TYPE_C = "org.eclipse.intent.mapping.ide.tests.content-typeC";
+
+	/**
+	 * Test {@link IFileConnectorDelegate} A.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class FileConnectorDelegateA extends AbstractFileConnectorDelegate {
+
+		/**
+		 * Test {@link IFileLocation}.
+		 *
+		 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+		 */
+		public interface FileLocationA extends IFileLocation {
+
+		}
+
+		public IFileType getFileType() {
+			return MappingUtils.getFileTypeRegistry().getFileType(CONTENT_TYPE_A);
+		}
+
+		public Class<? extends IFileLocation> getFileLocationType() {
+			return FileLocationA.class;
+		}
+
+		public void initLocation(ILocationContainer container, IFileLocation location, IFile element) {
+			// nothing to do here
+		}
+
+		public Object getElement(IFileLocation location) {
+			// nothing to do here
+			return null;
+		}
+
+	}
+
+	/**
+	 * Test {@link IFileConnectorDelegate} B.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class FileConnectorDelegateB extends AbstractFileConnectorDelegate {
+
+		/**
+		 * Test {@link IFileLocation}.
+		 *
+		 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+		 */
+		public interface FileLocationB extends IFileLocation {
+
+		}
+
+		public IFileType getFileType() {
+			return MappingUtils.getFileTypeRegistry().getFileType(CONTENT_TYPE_B);
+		}
+
+		public Class<? extends IFileLocation> getFileLocationType() {
+			return FileLocationB.class;
+		}
+
+		public void initLocation(ILocationContainer container, IFileLocation location, IFile element) {
+			// nothing to do here
+		}
+
+		public Object getElement(IFileLocation location) {
+			// nothing to do here
+			return null;
+		}
+
+	}
+
+	/**
+	 * Test {@link IFileConnectorDelegate} C.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class FileConnectorDelegateC extends AbstractFileConnectorDelegate {
+
+		/**
+		 * Test {@link IFileLocation}.
+		 *
+		 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+		 */
+		public interface FileLocationC extends IFileLocation {
+
+		}
+
+		public IFileType getFileType() {
+			return MappingUtils.getFileTypeRegistry().getFileType(CONTENT_TYPE_C);
+		}
+
+		public Class<? extends IFileLocation> getFileLocationType() {
+			return FileLocationC.class;
+		}
+
+		public void initLocation(ILocationContainer container, IFileLocation location, IFile element) {
+			// nothing to do here
+		}
+
+		public Object getElement(IFileLocation location) {
+			// nothing to do here
+			return null;
+		}
+
+	}
+
+	/**
+	 * The {@link FileConnectorDelegateA}.
+	 */
+	public static final FileConnectorDelegateA FILE_CONNECTOR_DELEGATE_A = new FileConnectorDelegateA();
+
+	/**
+	 * The {@link FileConnectorDelegateB}.
+	 */
+	public static final FileConnectorDelegateB FILE_CONNECTOR_DELEGATE_B = new FileConnectorDelegateB();
+
+	/**
+	 * The {@link FileConnectorDelegateC}.
+	 */
+	public static final FileConnectorDelegateC FILE_CONNECTOR_DELEGATE_C = new FileConnectorDelegateC();
+
+	/**
+	 * The {@link FileDelegateRegistry} to test.
+	 */
+	private FileDelegateRegistry registry;
+
+	@Before
+	public void before() {
+		registry = new FileDelegateRegistry();
+	}
+
+	@Test(expected = java.lang.IllegalArgumentException.class)
+	public void registerNull() {
+		registry.register(null);
+	}
+
+	@Test
+	public void register() {
+		IFileConnectorDelegate delegate = new FileConnectorDelegateA();
+
+		registry.register(delegate);
+
+		assertEquals(1, registry.getConnectorDelegates().size());
+		assertEquals(delegate, registry.getConnectorDelegates().get(0));
+	}
+
+	@Test
+	public void registerOrder() {
+		registry.register(FILE_CONNECTOR_DELEGATE_B);
+		registry.register(FILE_CONNECTOR_DELEGATE_A);
+		registry.register(FILE_CONNECTOR_DELEGATE_C);
+
+		assertEquals(3, registry.getConnectorDelegates().size());
+		assertEquals(FILE_CONNECTOR_DELEGATE_C, registry.getConnectorDelegates().get(0));
+		assertEquals(FILE_CONNECTOR_DELEGATE_B, registry.getConnectorDelegates().get(1));
+		assertEquals(FILE_CONNECTOR_DELEGATE_A, registry.getConnectorDelegates().get(2));
+	}
+
+	@Test
+	public void unregisterNull() {
+		registry.unregister(null);
+
+		assertEquals(0, registry.getConnectorDelegates().size());
+	}
+
+	@Test
+	public void unregister() {
+		IFileConnectorDelegate delegate = new FileConnectorDelegateA();
+		registry.register(delegate);
+
+		registry.unregister(delegate);
+
+		assertEquals(0, registry.getConnectorDelegates().size());
+	}
+
+	@Test
+	public void getConnectorDelegatesDefault() {
+		assertEquals(0, registry.getConnectorDelegates().size());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/resource/AbstractResourceLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/resource/AbstractResourceLocationTests.java
new file mode 100644
index 0000000..8c5a365
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/resource/AbstractResourceLocationTests.java
@@ -0,0 +1,72 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests.resource;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.ide.resource.IResourceLocation;
+import org.eclipse.intent.mapping.tests.base.AbstractLocationTests;
+import org.junit.After;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Tests for {@link IResourceLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractResourceLocationTests extends AbstractLocationTests {
+
+	@Override
+	public void before() {
+		super.before();
+		MappingUtils.getMappingRegistry().register(base);
+	}
+
+	@After
+	public void after() {
+		MappingUtils.getMappingRegistry().unregister(base);
+	}
+
+	protected IResourceLocation createLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(IResourceLocation.class);
+	}
+
+	@Test
+	public void setFullPathNull() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		IResourceLocation location = createLocation();
+
+		location.setFullPath(null);
+
+		assertEquals(null, location.getFullPath());
+	}
+
+	@Test
+	public void setFullPath() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		IResourceLocation location = createLocation();
+
+		location.setFullPath("test text");
+
+		assertEquals("test text", location.getFullPath());
+	}
+
+	@Test
+	public void getFullPathDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		IResourceLocation location = createLocation();
+
+		assertEquals(null, location.getFullPath());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/resource/AbstractTextFileLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/resource/AbstractTextFileLocationTests.java
new file mode 100644
index 0000000..5392875
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.ide.tests/src/org/eclipse/intent/mapping/ide/tests/resource/AbstractTextFileLocationTests.java
@@ -0,0 +1,70 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.ide.tests.resource;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.ide.resource.ITextFileLocation;
+import org.junit.After;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Tests for {@link ITextFileLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractTextFileLocationTests extends AbstractResourceLocationTests {
+
+	@Override
+	public void before() {
+		super.before();
+		MappingUtils.getMappingRegistry().register(base);
+	}
+
+	@After
+	public void after() {
+		MappingUtils.getMappingRegistry().unregister(base);
+	}
+
+	protected ITextFileLocation createLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(ITextFileLocation.class);
+	}
+
+	@Test
+	public void setTextNull() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		ITextFileLocation location = createLocation();
+
+		location.setText(null);
+
+		assertEquals(null, location.getText());
+	}
+
+	@Test
+	public void setText() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		ITextFileLocation location = createLocation();
+
+		location.setText("test text");
+
+		assertEquals("test text", location.getText());
+	}
+
+	@Test
+	public void getTextDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		ITextFileLocation location = createLocation();
+
+		assertEquals(null, location.getText());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/.checkstyle b/mapping/tests/org.eclipse.intent.mapping.tests/.checkstyle
new file mode 100644
index 0000000..b9b404a
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/.checkstyle
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="ModelWriter" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6Configuration.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <local-check-config name="ModelWriter Test" location="/eu.modelwriter.codestyle/codestyle/ModelWriterCheckstyle6ConfigurationTests.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="ModelWriter Test" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+  <filter name="FilesFromPackage" enabled="true">
+    <filter-data value="google-diff-match-patch"/>
+  </filter>
+</fileset-config>
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/.classpath b/mapping/tests/org.eclipse.intent.mapping.tests/.classpath
new file mode 100644
index 0000000..1ac0f88
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="resources"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/.project b/mapping/tests/org.eclipse.intent.mapping.tests/.project
new file mode 100644
index 0000000..ee30377
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.mapping.tests</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/.settings/org.eclipse.jdt.core.prefs b/mapping/tests/org.eclipse.intent.mapping.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3433b02
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,315 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=110
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
+org.eclipse.jdt.core.formatter.indentation.size=8
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=110
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=false
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/.settings/org.eclipse.jdt.ui.prefs b/mapping/tests/org.eclipse.intent.mapping.tests/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..99aaf4f
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Intent
+formatter_settings_version=13
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=com;eu;fr;java;javax;org;\#org.junit;
+org.eclipse.jdt.ui.javadoc=false
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\nname\="typecomment"&gt;/**\n * @author &lt;a href\="mailto\:laurent.goubet@obeo.fr"&gt;Laurent Goubet&lt;/a&gt;\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * ${tags}\n *\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**{@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*******************************************************************************\n * Copyright (c) ${year} {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n *    ...\n *******************************************************************************/\n${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=false
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=false
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=false
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/META-INF/MANIFEST.MF b/mapping/tests/org.eclipse.intent.mapping.tests/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..2d9996d
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,14 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Tests
+Bundle-SymbolicName: org.eclipse.intent.mapping.tests
+Bundle-Version: 0.10.0.qualifier
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.intent.mapping.tests,
+ org.eclipse.intent.mapping.tests.base,
+ org.eclipse.intent.mapping.tests.connector,
+ org.eclipse.intent.mapping.tests.content,
+ org.eclipse.intent.mapping.tests.text
+Require-Bundle: org.junit;bundle-version="4.0.0",
+ org.eclipse.intent.mapping,
+ org.eclipse.intent.mapping.emf
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/build.properties b/mapping/tests/org.eclipse.intent.mapping.tests/build.properties
new file mode 100644
index 0000000..fdd898d
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/build.properties
@@ -0,0 +1,4 @@
+source.. = src/,\
+           resources/
+bin.includes = META-INF/,\
+               .
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/org.eclipse.intent.mapping.tests.launch b/mapping/tests/org.eclipse.intent.mapping.tests/org.eclipse.intent.mapping.tests.launch
new file mode 100644
index 0000000..34a9f86
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/org.eclipse.intent.mapping.tests.launch
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.junit.launchconfig">
+<listAttribute key="com.mountainminds.eclemma.core.SCOPE_IDS">
+<listEntry value="=org.eclipse.intent.mapping/src"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/org.eclipse.intent.mapping.tests/src/org/eclipse/mylyn/docs/intent/mapping/tests/AllTests.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+<listEntry value="com.mountainminds.eclemma.ui.launchGroup.coverage"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.intent.mapping.tests.AllTests"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.intent.mapping.tests"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-ea"/>
+</launchConfiguration>
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/pom.xml b/mapping/tests/org.eclipse.intent.mapping.tests/pom.xml
new file mode 100644
index 0000000..146e33a
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/pom.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.mapping.tests</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <name>Mapping Tests</name>
+
+  <packaging>eclipse-test-plugin</packaging>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-surefire-plugin</artifactId>
+        <version>${tycho-version}</version>
+        <configuration>
+          <includes>
+            <include>**/AllTests.class</include>
+          </includes>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/resources/text.txt b/mapping/tests/org.eclipse.intent.mapping.tests/resources/text.txt
new file mode 100644
index 0000000..2ab99f6
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/resources/text.txt
@@ -0,0 +1,50 @@
+Eclipse Foundation Software User Agreement
+
+April 14, 2010
+
+Usage Of Content
+
+THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.
+
+Applicable Licenses
+
+Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html. For purposes of the EPL, "Program" will mean the Content.
+
+Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code repository ("Repository") in software modules ("Modules") and made available as downloadable archives ("Downloads").
+
+Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"), plug-in fragments ("Fragments"), and features ("Features").
+Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java™ ARchive) in a directory named "plugins".
+A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Each Feature may be packaged as a sub-directory in a directory named "features". Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of the Plug-ins and/or Fragments associated with that Feature.
+Features may also include other Features ("Included Features"). Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of Included Features.
+The terms and conditions governing Plug-ins and Fragments should be contained in files named "about.html" ("Abouts"). The terms and conditions governing Features and Included Features should be contained in files named "license.html" ("Feature Licenses"). Abouts and Feature Licenses may be located in any directory of a Download or Module including, but not limited to the following locations:
+
+The top-level (root) directory
+Plug-in and Fragment directories
+Inside Plug-ins and Fragments packaged as JARs
+Sub-directories of the directory named "src" of certain Plug-ins
+Feature directories
+Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license ("Feature Update License") during the installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or inform you where you can locate them. Feature Update Licenses may be found in the "license" property of files named "feature.properties" found within a Feature. Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in that directory.
+
+THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):
+
+Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)
+Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)
+Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)
+Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)
+Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)
+IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License is provided, please contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.
+
+Use of Provisioning Technology
+
+The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse Update Manager ("Provisioning Technology") for the purpose of allowing users to install software, documentation, information and/or other materials (collectively "Installable Software"). This capability is provided with the intent of allowing such users to install, extend and update Eclipse-based products. Information about packaging Installable Software is available at http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").
+
+You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:
+
+A series of actions may occur ("Provisioning Process") in which a user may execute the Provisioning Technology on a machine ("Target Machine") with the intent of installing, extending or updating the functionality of an Eclipse-based product.
+During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be accessed and copied to the Target Machine.
+Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable Software ("Installable Software Agreement") and such Installable Software Agreement shall be accessed from the Target Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.
+Cryptography
+
+Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted.
+
+Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.
\ No newline at end of file
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/AllTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/AllTests.java
new file mode 100644
index 0000000..a7cf9dc
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/AllTests.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests;
+
+import org.eclipse.intent.mapping.tests.base.LocationDescriptorTests;
+import org.eclipse.intent.mapping.tests.base.ObjectLocationDescriptorTests;
+import org.eclipse.intent.mapping.tests.connector.ConnectorTests;
+import org.eclipse.intent.mapping.tests.content.ContentTests;
+import org.eclipse.intent.mapping.tests.internal.base.BaseTests;
+import org.eclipse.intent.mapping.tests.text.TextTests;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+/**
+ * Aggregates tests for the org.eclipse.intent.mapping plug-in.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@RunWith(Suite.class)
+@SuiteClasses(value = {BaseTests.class, ConnectorTests.class, TextTests.class, MappingUtilsTests.class,
+		ObjectLocationDescriptorTests.class, LocationDescriptorTests.class, ContentTests.class })
+public class AllTests {
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/MappingUtilsTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/MappingUtilsTests.java
new file mode 100644
index 0000000..b4cf0b0
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/MappingUtilsTests.java
@@ -0,0 +1,668 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.BaseElementFactory.FactoryDescriptor;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestLink;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestLocation;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestReport;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests.TestBase;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link MappingUtils}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class MappingUtilsTests {
+
+	@Test(expected = NullPointerException.class)
+	public void getBaseNull() {
+		MappingUtils.getBase(null);
+	}
+
+	@Test
+	public void getBaseNoBase() {
+		final TestLocation location = new TestLocation();
+		final IBase base = MappingUtils.getBase(location);
+
+		assertNull(base);
+	}
+
+	@Test
+	public void getBase() {
+		final TestLocation location = new TestLocation();
+		final TestBase container = new TestBase();
+		location.setContainer(container);
+
+		final IBase base = MappingUtils.getBase(location);
+
+		assertEquals(container, base);
+	}
+
+	@Test
+	public void getConnectorRegistry() {
+		assertNotNull(MappingUtils.getConnectorRegistry());
+	}
+
+	@Test
+	public void getMappingRegistry() {
+		assertNotNull(MappingUtils.getMappingRegistry());
+	}
+
+	@Test(expected = IllegalArgumentException.class)
+	public void getDiffMatchNullNull() {
+		MappingUtils.getDiffMatch(null, null);
+	}
+
+	@Test(expected = IllegalArgumentException.class)
+	public void getDiffMatchStringNull() {
+		MappingUtils.getDiffMatch("", null);
+	}
+
+	@Test(expected = IllegalArgumentException.class)
+	public void getDiffMatchNullString() {
+		MappingUtils.getDiffMatch(null, "");
+	}
+
+	@Test
+	public void getDiffMatch() {
+		assertNotNull(MappingUtils.getDiffMatch("", ""));
+	}
+
+	@Test
+	public void registerLocationImplementationBeforeBase() throws InstantiationException,
+			IllegalAccessException, ClassNotFoundException {
+		MappingUtils.registerLocationImplementation(TestBase.class, ILocation.class,
+				new FactoryDescriptor<TestLocation>(TestLocation.class));
+
+		final IBase base = new TestBase();
+		MappingUtils.getMappingRegistry().register(base);
+
+		final ILocation location = base.getFactory().createElement(ILocation.class);
+
+		assertEquals(TestLocation.class, location.getClass());
+	}
+
+	@Test
+	public void registerLocationImplementationAfterBase() throws InstantiationException,
+			IllegalAccessException, ClassNotFoundException {
+		final IBase base = new TestBase();
+		MappingUtils.getMappingRegistry().register(base);
+
+		MappingUtils.registerLocationImplementation(TestBase.class, ILocation.class,
+				new FactoryDescriptor<TestLocation>(TestLocation.class));
+
+		final ILocation location = base.getFactory().createElement(ILocation.class);
+
+		assertEquals(TestLocation.class, location.getClass());
+	}
+
+	@Test
+	public void unregisterLocationImplementation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		MappingUtils.registerLocationImplementation(TestBase.class, ILocation.class,
+				new FactoryDescriptor<TestLocation>(TestLocation.class));
+
+		final IBase base = new TestBase();
+		MappingUtils.getMappingRegistry().register(base);
+
+		final ILocation location = base.getFactory().createElement(ILocation.class);
+
+		assertEquals(TestLocation.class, location.getClass());
+
+		MappingUtils.unregisterLocationImplementation(TestBase.class, ILocation.class);
+
+		assertNull(base.getFactory().createElement(ILocation.class));
+	}
+
+	@Test(expected = java.lang.NullPointerException.class)
+	public void getLinkNullNull() {
+		MappingUtils.getLink(null, null);
+	}
+
+	@Test(expected = java.lang.NullPointerException.class)
+	public void getLinkSourceNull() {
+		final ILocation source = new TestLocation();
+
+		MappingUtils.getLink(source, null);
+	}
+
+	@Test(expected = java.lang.NullPointerException.class)
+	public void getLinkNullTarget() {
+		final ILocation target = new TestLocation();
+
+		MappingUtils.getLink(null, target);
+	}
+
+	@Test
+	public void getLinkNoLink() {
+		final ILocation source = new TestLocation();
+		final ILocation target = new TestLocation();
+
+		final ILink res = MappingUtils.getLink(source, target);
+
+		assertNull(res);
+	}
+
+	@Test
+	public void getLink() {
+		final ILocation source = new TestLocation();
+		final ILocation target = new TestLocation();
+		final ILink link = new TestLink();
+		link.setSource(source);
+		link.setTarget(target);
+		source.getTargetLinks().add(link);
+		target.getSourceLinks().add(link);
+
+		final ILink res = MappingUtils.getLink(source, target);
+
+		assertEquals(link, res);
+	}
+
+	@Test
+	public void getLinkNotOposite() {
+		final ILocation source = new TestLocation();
+		final ILocation target = new TestLocation();
+		final ILink link = new TestLink();
+		link.setSource(source);
+		link.setTarget(target);
+		source.getTargetLinks().add(link);
+		target.getSourceLinks().add(link);
+
+		final ILink res = MappingUtils.getLink(target, source);
+
+		assertNull(res);
+	}
+
+	@Test
+	public void getLinkSourceMoreLinks() {
+		final ILocation source = new TestLocation();
+		final ILocation target = new TestLocation();
+		final ILink link = new TestLink();
+		final ILink link1 = new TestLink();
+		link.setSource(source);
+		link.setTarget(target);
+		source.getTargetLinks().add(link);
+		source.getTargetLinks().add(link1);
+		target.getSourceLinks().add(link);
+
+		final ILink res = MappingUtils.getLink(source, target);
+
+		assertEquals(link, res);
+	}
+
+	@Test
+	public void getLinkNotOpositeSourceMoreLinks() {
+		final ILocation source = new TestLocation();
+		final ILocation target = new TestLocation();
+		final ILink link = new TestLink();
+		final ILink link1 = new TestLink();
+		link.setSource(source);
+		link.setTarget(target);
+		source.getTargetLinks().add(link);
+		source.getTargetLinks().add(link1);
+		target.getSourceLinks().add(link);
+
+		final ILink res = MappingUtils.getLink(target, source);
+
+		assertNull(res);
+	}
+
+	@Test(expected = java.lang.NullPointerException.class)
+	public void canDeleteLinkNull() {
+		MappingUtils.canDeleteLink(null);
+	}
+
+	@Test
+	public void canDeleteLinkWithReports() {
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+		link.setSource(source);
+		link.setTarget(target);
+		final IReport report = new BaseElementFactoryTests.TestReport();
+		link.getReports().add(report);
+
+		assertFalse(MappingUtils.canDeleteLink(link));
+	}
+
+	@Test
+	public void canDeleteLink() {
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+		link.setSource(source);
+		link.setTarget(target);
+
+		assertTrue(MappingUtils.canDeleteLink(link));
+	}
+
+	@Test(expected = java.lang.NullPointerException.class)
+	public void deleteLinkNull() {
+		MappingUtils.canDeleteLink(null);
+	}
+
+	@Test(expected = IllegalStateException.class)
+	public void deleteLinkWithReports() {
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+		link.setSource(source);
+		link.setTarget(target);
+		final IReport report = new BaseElementFactoryTests.TestReport();
+		link.getReports().add(report);
+
+		MappingUtils.deleteLink(link);
+	}
+
+	@Test
+	public void deleteLink() {
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		final ILocation parent = new BaseElementFactoryTests.TestLocation();
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+		source.setContainer(parent);
+		target.setContainer(parent);
+		link.setSource(source);
+		link.setTarget(target);
+
+		MappingUtils.deleteLink(link);
+
+		assertNull(link.getSource());
+		assertNull(link.getTarget());
+		assertEquals(parent, source.getContainer());
+		assertEquals(parent, target.getContainer());
+	}
+
+	@Test
+	public void deleteLinkWithSourceMarkedAsDeleted() {
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		final ILocation parent = new BaseElementFactoryTests.TestLocation();
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+		source.setContainer(parent);
+		source.setMarkedAsDeleted(true);
+		target.setContainer(parent);
+		link.setSource(source);
+		link.setTarget(target);
+
+		MappingUtils.deleteLink(link);
+
+		assertNull(link.getSource());
+		assertNull(link.getTarget());
+		assertNull(source.getContainer());
+		assertEquals(parent, target.getContainer());
+	}
+
+	@Test
+	public void deleteLinkWithTargetMarkedAsDeleted() {
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		final ILocation parent = new BaseElementFactoryTests.TestLocation();
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+		source.setContainer(parent);
+		target.setContainer(parent);
+		target.setMarkedAsDeleted(true);
+		link.setSource(source);
+		link.setTarget(target);
+
+		MappingUtils.deleteLink(link);
+
+		assertNull(link.getSource());
+		assertNull(link.getTarget());
+		assertEquals(parent, source.getContainer());
+		assertNull(target.getContainer());
+	}
+
+	@Test(expected = java.lang.NullPointerException.class)
+	public void canDeleteLocationNull() {
+		MappingUtils.canDeleteLocation(null);
+	}
+
+	@Test
+	public void canDeleteLocationWithSourceLinks() {
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getSourceLinks().add(link);
+
+		assertFalse(MappingUtils.canDeleteLocation(location));
+	}
+
+	@Test
+	public void canDeleteLocationWithTargetLinks() {
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getTargetLinks().add(link);
+
+		assertFalse(MappingUtils.canDeleteLocation(location));
+	}
+
+	@Test
+	public void canDeleteLocationWithContents() {
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		final ILocation child = new BaseElementFactoryTests.TestLocation();
+		location.getContents().add(child);
+
+		assertFalse(MappingUtils.canDeleteLocation(location));
+	}
+
+	@Test
+	public void canDeleteLocation() {
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+
+		assertTrue(MappingUtils.canDeleteLocation(location));
+	}
+
+	@Test(expected = java.lang.NullPointerException.class)
+	public void deleteLocationNull() {
+		MappingUtils.deleteLocation(null);
+	}
+
+	@Test(expected = IllegalStateException.class)
+	public void deleteLocationWithSourceLinks() {
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getSourceLinks().add(link);
+
+		MappingUtils.deleteLocation(location);
+	}
+
+	@Test(expected = IllegalStateException.class)
+	public void deleteLocationWithTargetLinks() {
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getTargetLinks().add(link);
+
+		MappingUtils.deleteLocation(location);
+	}
+
+	@Test(expected = IllegalStateException.class)
+	public void deleteLocationWithContents() {
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		final ILocation child = new BaseElementFactoryTests.TestLocation();
+		location.getContents().add(child);
+
+		MappingUtils.deleteLocation(location);
+	}
+
+	@Test
+	public void deleteLocation() {
+		final ILocation root = new BaseElementFactoryTests.TestLocation();
+		final ILocation parent = new BaseElementFactoryTests.TestLocation();
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		parent.setContainer(root);
+		location.setContainer(parent);
+
+		MappingUtils.deleteLocation(location);
+
+		assertNull(location.getContainer());
+		assertEquals(root, parent.getContainer());
+	}
+
+	@Test
+	public void deleteLocationWithContainerMarkedAsDeleted() {
+		final ILocation root = new BaseElementFactoryTests.TestLocation();
+		final ILocation parent = new BaseElementFactoryTests.TestLocation();
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		parent.setContainer(root);
+		parent.setMarkedAsDeleted(true);
+		location.setContainer(parent);
+
+		MappingUtils.deleteLocation(location);
+
+		assertNull(location.getContainer());
+		assertNull(parent.getContainer());
+	}
+
+	@Test(expected = java.lang.NullPointerException.class)
+	public void deleteReportNull() {
+		MappingUtils.deleteReport(null);
+	}
+
+	@Test
+	public void deleteReport() {
+		final IReport report = new BaseElementFactoryTests.TestReport();
+		final IBase base = new TestBase();
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.setContainer(base);
+		link.setSource(location);
+		report.setLink(link);
+		base.getReports().add(report);
+
+		MappingUtils.deleteReport(report);
+
+		assertFalse(base.getReports().contains(report));
+		assertNull(report.getLink());
+	}
+
+	@Test
+	public void canCreateLinkSourceMarkedAsDeleted() {
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+
+		source.setMarkedAsDeleted(true);
+
+		assertFalse(MappingUtils.canCreateLink(source, target));
+	}
+
+	@Test
+	public void canCreateLinkTargetMarkedAsDeleted() {
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+
+		target.setMarkedAsDeleted(true);
+
+		assertFalse(MappingUtils.canCreateLink(source, target));
+	}
+
+	@Test
+	public void canCreateLinkSameSourceAndTarget() {
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+
+		assertFalse(MappingUtils.canCreateLink(location, location));
+	}
+
+	@Test
+	public void canCreateLinkExistingLink() {
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+
+		source.getTargetLinks().add(link);
+		link.setSource(source);
+		target.getSourceLinks().add(link);
+		link.setTarget(target);
+
+		assertFalse(MappingUtils.canCreateLink(source, target));
+	}
+
+	@Test
+	public void canCreateLink() {
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+
+		assertTrue(MappingUtils.canCreateLink(source, target));
+	}
+
+	@Test(expected = IllegalStateException.class)
+	public void createLinkSourceMarkedAsDeleted() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+
+		source.setMarkedAsDeleted(true);
+
+		MappingUtils.createLink(source, target);
+	}
+
+	@Test(expected = IllegalStateException.class)
+	public void createLinkTargetMarkedAsDeleted() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+
+		target.setMarkedAsDeleted(true);
+
+		MappingUtils.createLink(source, target);
+	}
+
+	@Test(expected = IllegalStateException.class)
+	public void createLinkSameSourceAndTarget() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+
+		MappingUtils.createLink(location, location);
+	}
+
+	@Test(expected = IllegalStateException.class)
+	public void createLinkExistingLink() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+
+		source.getTargetLinks().add(link);
+		link.setSource(source);
+		target.getSourceLinks().add(link);
+		link.setTarget(target);
+
+		MappingUtils.createLink(source, target);
+	}
+
+	@Test
+	public void createLink() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+		final IBase base = new TestBase();
+		base.getContents().add(source);
+		source.setContainer(base);
+		base.getContents().add(target);
+		target.setContainer(base);
+		base.getFactory().addDescriptor(ILink.class, new BaseElementFactory.FactoryDescriptor<TestLink>(
+				TestLink.class));
+
+		final ILink link = MappingUtils.createLink(source, target);
+
+		assertEquals(source, link.getSource());
+		assertEquals(target, link.getTarget());
+	}
+
+	@Test
+	public void markAsDeletedOrDeleteCanDelete() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		final IBase base = new TestBase();
+		location.setContainer(base);
+
+		MappingUtils.markAsDeletedOrDelete(location, "Test report.");
+
+		assertNull(location.getContainer());
+		assertEquals(0, base.getReports().size());
+	}
+
+	@Test
+	public void markAsDeletedOrDeleteCanTDelete() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILocation child = new BaseElementFactoryTests.TestLocation();
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		final IBase base = new TestBase();
+		location.setContainer(base);
+		location.getContents().add(child);
+
+		MappingUtils.markAsDeletedOrDelete(location, "Test report.");
+
+		assertEquals(base, location.getContainer());
+		assertEquals(0, base.getReports().size());
+	}
+
+	@Test
+	public void markAsDeletedOrDeleteCanTDeleteWithLinks() throws InstantiationException,
+			IllegalAccessException, ClassNotFoundException {
+		final ILocation child = new BaseElementFactoryTests.TestLocation();
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+		final IBase base = new TestBase();
+		base.getFactory().addDescriptor(IReport.class, new BaseElementFactory.FactoryDescriptor<TestReport>(
+				TestReport.class));
+		source.setContainer(base);
+		location.setContainer(base);
+		target.setContainer(base);
+		location.getContents().add(child);
+		final ILink incomingLink = new BaseElementFactoryTests.TestLink();
+		incomingLink.setSource(source);
+		incomingLink.setTarget(location);
+		location.getSourceLinks().add(incomingLink);
+		final ILink outgoingLink = new BaseElementFactoryTests.TestLink();
+		outgoingLink.setSource(location);
+		outgoingLink.setTarget(target);
+		location.getTargetLinks().add(outgoingLink);
+
+		MappingUtils.markAsDeletedOrDelete(location, "Test report.");
+
+		assertEquals(base, location.getContainer());
+		assertEquals(2, base.getReports().size());
+		assertEquals("Test report.", base.getReports().get(0).getDescription());
+		assertEquals(incomingLink, base.getReports().get(0).getLink());
+		assertEquals("Test report.", base.getReports().get(1).getDescription());
+		assertEquals(outgoingLink, base.getReports().get(1).getLink());
+	}
+
+	@Test
+	public void markAsChanged() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILocation child = new BaseElementFactoryTests.TestLocation();
+		final ILocation source = new BaseElementFactoryTests.TestLocation();
+		final ILocation location = new BaseElementFactoryTests.TestLocation();
+		final ILocation target = new BaseElementFactoryTests.TestLocation();
+		final IBase base = new TestBase();
+		base.getFactory().addDescriptor(IReport.class, new BaseElementFactory.FactoryDescriptor<TestReport>(
+				TestReport.class));
+		source.setContainer(base);
+		location.setContainer(base);
+		target.setContainer(base);
+		location.getContents().add(child);
+		final ILink incomingLink = new BaseElementFactoryTests.TestLink();
+		incomingLink.setSource(source);
+		incomingLink.setTarget(location);
+		location.getSourceLinks().add(incomingLink);
+		final ILink outgoingLink = new BaseElementFactoryTests.TestLink();
+		outgoingLink.setSource(location);
+		outgoingLink.setTarget(target);
+		location.getTargetLinks().add(outgoingLink);
+
+		MappingUtils.markAsChanged(location, "Test report.");
+
+		assertEquals(base, location.getContainer());
+		assertEquals(2, base.getReports().size());
+		assertEquals("Test report.", base.getReports().get(0).getDescription());
+		assertEquals(incomingLink, base.getReports().get(0).getLink());
+		assertEquals("Test report.", base.getReports().get(1).getDescription());
+		assertEquals(outgoingLink, base.getReports().get(1).getLink());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractBaseTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractBaseTests.java
new file mode 100644
index 0000000..e4e028e
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractBaseTests.java
@@ -0,0 +1,537 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.base;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.base.ContainerProviderFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestLocation;
+import org.eclipse.intent.mapping.text.ITextLocation;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Test {@link IBase}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractBaseTests extends AbstractMappingTests {
+
+	/**
+	 * A test {@link IContainerProvider}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestContainerProvider1 implements IContainerProvider {
+
+		/**
+		 * The container.
+		 */
+		public static final Object CONTAINER = new Object();
+
+		/**
+		 * The child.
+		 */
+		public static final Object CHILD = new Object();
+
+		public Object getContainer(Object element) {
+			final Object res;
+
+			if (element == CHILD) {
+				res = CONTAINER;
+			} else {
+				res = null;
+			}
+
+			return res;
+		}
+
+		public Class<? extends ILocation> getType() {
+			return TestLocation.class;
+		}
+
+	}
+
+	/**
+	 * A test {@link IContainerProvider}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestContainerProvider2 implements IContainerProvider {
+
+		/**
+		 * The container.
+		 */
+		public static final Object CONTAINER = new Object();
+
+		/**
+		 * The child.
+		 */
+		public static final Object CHILD = new Object();
+
+		public Object getContainer(Object element) {
+			final Object res;
+
+			if (element == CHILD) {
+				res = CONTAINER;
+			} else {
+				res = null;
+			}
+
+			return res;
+		}
+
+		public Class<? extends ILocation> getType() {
+			return TestLocation.class;
+		}
+
+	}
+
+	@Test
+	public void setNameNull() {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+		base.setName(null);
+
+		assertNull(base.getName());
+
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void setName() {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+
+		base.setName("base");
+
+		assertEquals("base", base.getName());
+
+		assertTestBaseListener(listener, 1, 0, 0, 0, 0, 0, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void getNameDefault() {
+		final IBase base = getBase();
+
+		assertNull(base.getName());
+	}
+
+	@Test
+	public void addRootLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+		final ILocation location = base.getFactory().createElement(ITextLocation.class);
+
+		base.getContents().add(location);
+
+		assertEquals(1, base.getContents().size());
+		assertEquals(location, base.getContents().get(0));
+
+		assertTestBaseListener(listener, 0, 1, 0, 0, 0, 0, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void addManyRootLocations() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+		final ILocation location1 = base.getFactory().createElement(ITextLocation.class);
+		final ILocation location2 = base.getFactory().createElement(ITextLocation.class);
+		final List<ILocation> locations = new ArrayList<ILocation>();
+		locations.add(location1);
+		locations.add(location2);
+
+		base.getContents().addAll(locations);
+
+		assertEquals(2, base.getContents().size());
+		assertEquals(location1, base.getContents().get(0));
+		assertEquals(location2, base.getContents().get(1));
+
+		assertTestBaseListener(listener, 0, 2, 0, 0, 0, 0, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeRootLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+		final ILocation location = base.getFactory().createElement(ITextLocation.class);
+
+		base.getContents().add(location);
+
+		assertEquals(1, base.getContents().size());
+		assertEquals(location, base.getContents().get(0));
+
+		base.getContents().remove(location);
+
+		assertEquals(0, base.getContents().size());
+
+		assertTestBaseListener(listener, 0, 1, 1, 0, 0, 0, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeManyRootLocations() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+		final ILocation location1 = base.getFactory().createElement(ITextLocation.class);
+		final ILocation location2 = base.getFactory().createElement(ITextLocation.class);
+		final List<ILocation> locations = new ArrayList<ILocation>();
+		locations.add(location1);
+		locations.add(location2);
+
+		base.getContents().addAll(locations);
+
+		assertEquals(2, base.getContents().size());
+		assertEquals(location1, base.getContents().get(0));
+		assertEquals(location2, base.getContents().get(1));
+
+		base.getContents().removeAll(locations);
+
+		assertEquals(0, base.getContents().size());
+
+		assertTestBaseListener(listener, 0, 2, 2, 0, 0, 0, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void addReport() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+		final IReport report = base.getFactory().createElement(IReport.class);
+
+		base.getReports().add(report);
+
+		assertEquals(1, base.getReports().size());
+		assertEquals(report, base.getReports().get(0));
+
+		assertTestBaseListener(listener, 0, 0, 0, 1, 0, 0, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void addManyReports() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+		final IReport report1 = base.getFactory().createElement(IReport.class);
+		final IReport report2 = base.getFactory().createElement(IReport.class);
+		final List<IReport> reports = new ArrayList<IReport>();
+		reports.add(report1);
+		reports.add(report2);
+
+		base.getReports().addAll(reports);
+
+		assertEquals(2, base.getReports().size());
+		assertEquals(report1, base.getReports().get(0));
+		assertEquals(report2, base.getReports().get(1));
+
+		assertTestBaseListener(listener, 0, 0, 0, 2, 0, 0, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeReport() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+		final IReport report = base.getFactory().createElement(IReport.class);
+
+		base.getReports().add(report);
+
+		assertEquals(1, base.getReports().size());
+		assertEquals(report, base.getReports().get(0));
+
+		base.getReports().remove(report);
+
+		assertEquals(0, base.getReports().size());
+
+		assertTestBaseListener(listener, 0, 0, 0, 1, 1, 0, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeManyReports() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+		final IReport report1 = base.getFactory().createElement(IReport.class);
+		final IReport report2 = base.getFactory().createElement(IReport.class);
+		final List<IReport> reports = new ArrayList<IReport>();
+		reports.add(report1);
+		reports.add(report2);
+
+		base.getReports().addAll(reports);
+
+		assertEquals(2, base.getReports().size());
+		assertEquals(report1, base.getReports().get(0));
+		assertEquals(report2, base.getReports().get(1));
+
+		base.getReports().removeAll(reports);
+
+		assertEquals(0, base.getReports().size());
+
+		assertTestBaseListener(listener, 0, 0, 0, 2, 2, 0, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void addContainerProvider() {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+
+		MappingUtils.getContainerProviderFactory().addDescriptor(
+				new ContainerProviderFactory.FactoryDescriptor(TestContainerProvider1.class));
+
+		final String containerProvider = "org.eclipse.intent.mapping.tests.base.AbstractBaseTests.TestContainerProvider1";
+
+		base.getContainerProviders().add(containerProvider);
+
+		assertEquals(1, base.getContainerProviders().size());
+		assertEquals(containerProvider, base.getContainerProviders().get(0));
+		assertEquals(TestContainerProvider1.CONTAINER, base.getContainerProviderRegistry().getContainer(
+				TestContainerProvider1.CHILD));
+
+		assertTestBaseListener(listener, 0, 0, 0, 0, 0, 1, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+
+		MappingUtils.getContainerProviderFactory().removeDescriptor(TestContainerProvider1.class
+				.getCanonicalName());
+	}
+
+	@Test
+	public void addManyContainerProviders() {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+
+		MappingUtils.getContainerProviderFactory().addDescriptor(
+				new ContainerProviderFactory.FactoryDescriptor(TestContainerProvider1.class));
+		MappingUtils.getContainerProviderFactory().addDescriptor(
+				new ContainerProviderFactory.FactoryDescriptor(TestContainerProvider2.class));
+
+		final String containerProvider1 = "org.eclipse.intent.mapping.tests.base.AbstractBaseTests.TestContainerProvider1";
+		final String containerProvider2 = "org.eclipse.intent.mapping.tests.base.AbstractBaseTests.TestContainerProvider2";
+		final List<String> containerProviders = new ArrayList<String>();
+		containerProviders.add(containerProvider1);
+		containerProviders.add(containerProvider2);
+
+		base.getContainerProviders().addAll(containerProviders);
+
+		assertEquals(2, base.getContainerProviders().size());
+		assertEquals(containerProvider1, base.getContainerProviders().get(0));
+		assertEquals(containerProvider2, base.getContainerProviders().get(1));
+		assertEquals(TestContainerProvider1.CONTAINER, base.getContainerProviderRegistry().getContainer(
+				TestContainerProvider1.CHILD));
+		assertEquals(TestContainerProvider2.CONTAINER, base.getContainerProviderRegistry().getContainer(
+				TestContainerProvider2.CHILD));
+
+		assertTestBaseListener(listener, 0, 0, 0, 0, 0, 2, 0);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+
+		MappingUtils.getContainerProviderFactory().removeDescriptor(TestContainerProvider1.class
+				.getCanonicalName());
+		MappingUtils.getContainerProviderFactory().removeDescriptor(TestContainerProvider2.class
+				.getCanonicalName());
+	}
+
+	@Test
+	public void removeContainerProvider() {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+
+		MappingUtils.getContainerProviderFactory().addDescriptor(
+				new ContainerProviderFactory.FactoryDescriptor(TestContainerProvider1.class));
+
+		final String containerProvider = "org.eclipse.intent.mapping.tests.base.AbstractBaseTests.TestContainerProvider1";
+
+		base.getContainerProviders().add(containerProvider);
+
+		assertEquals(1, base.getContainerProviders().size());
+		assertEquals(containerProvider, base.getContainerProviders().get(0));
+		assertEquals(TestContainerProvider1.CONTAINER, base.getContainerProviderRegistry().getContainer(
+				TestContainerProvider1.CHILD));
+
+		base.getContainerProviders().remove(containerProvider);
+
+		assertEquals(0, base.getContainerProviders().size());
+
+		assertEquals(null, base.getContainerProviderRegistry().getContainer(TestContainerProvider1.CHILD));
+
+		assertTestBaseListener(listener, 0, 0, 0, 0, 0, 1, 1);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+
+		MappingUtils.getContainerProviderFactory().removeDescriptor(TestContainerProvider1.class
+				.getCanonicalName());
+	}
+
+	@Test
+	public void removeManyContainerProviders() {
+		final TestBaseListener listener = new TestBaseListener();
+		final TestBaseListener removedListener = new TestBaseListener();
+
+		final IBase base = getBase();
+		base.addListener(listener);
+		base.addListener(removedListener);
+		base.removeListener(removedListener);
+
+		MappingUtils.getContainerProviderFactory().addDescriptor(
+				new ContainerProviderFactory.FactoryDescriptor(TestContainerProvider1.class));
+		MappingUtils.getContainerProviderFactory().addDescriptor(
+				new ContainerProviderFactory.FactoryDescriptor(TestContainerProvider2.class));
+
+		final String containerProvider1 = "org.eclipse.intent.mapping.tests.base.AbstractBaseTests.TestContainerProvider1";
+		final String containerProvider2 = "org.eclipse.intent.mapping.tests.base.AbstractBaseTests.TestContainerProvider2";
+		final List<String> containerProviders = new ArrayList<String>();
+		containerProviders.add(containerProvider1);
+		containerProviders.add(containerProvider2);
+
+		base.getContainerProviders().addAll(containerProviders);
+
+		assertEquals(2, base.getContainerProviders().size());
+		assertEquals(containerProvider1, base.getContainerProviders().get(0));
+		assertEquals(containerProvider2, base.getContainerProviders().get(1));
+		assertEquals(TestContainerProvider1.CONTAINER, base.getContainerProviderRegistry().getContainer(
+				TestContainerProvider1.CHILD));
+		assertEquals(TestContainerProvider2.CONTAINER, base.getContainerProviderRegistry().getContainer(
+				TestContainerProvider2.CHILD));
+
+		base.getContainerProviders().removeAll(containerProviders);
+
+		assertEquals(0, base.getContainerProviders().size());
+
+		assertEquals(null, base.getContainerProviderRegistry().getContainer(TestContainerProvider1.CHILD));
+		assertEquals(null, base.getContainerProviderRegistry().getContainer(TestContainerProvider2.CHILD));
+
+		assertTestBaseListener(listener, 0, 0, 0, 0, 0, 2, 2);
+		assertTestBaseListener(removedListener, 0, 0, 0, 0, 0, 0, 0);
+
+		MappingUtils.getContainerProviderFactory().removeDescriptor(TestContainerProvider1.class
+				.getCanonicalName());
+		MappingUtils.getContainerProviderFactory().removeDescriptor(TestContainerProvider2.class
+				.getCanonicalName());
+	}
+
+	@Test
+	public void testCreateCouple() throws Exception {
+		final IBase base = getBase();
+		final ICouple element = base.getFactory().createElement(ICouple.class);
+
+		assertTrue(element instanceof ICouple);
+	}
+
+	@Test
+	public void testCreateLink() throws Exception {
+		final IBase base = getBase();
+		final ILink element = base.getFactory().createElement(ILink.class);
+
+		assertTrue(element instanceof ILink);
+	}
+
+	@Test
+	public void testCreateReport() throws Exception {
+		final IBase base = getBase();
+		final IReport element = base.getFactory().createElement(IReport.class);
+
+		assertTrue(element instanceof IReport);
+	}
+
+	@Test
+	public void testCreateTextLocation() throws Exception {
+		final IBase base = getBase();
+		final ITextLocation element = base.getFactory().createElement(ITextLocation.class);
+
+		assertTrue(element instanceof ITextLocation);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractLinkTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractLinkTests.java
new file mode 100644
index 0000000..86d08eb
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractLinkTests.java
@@ -0,0 +1,293 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.base;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.IReport;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+/**
+ * Test {@link ILink}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractLinkTests extends AbstractMappingTests {
+
+	@Test
+	public void setDescriptionNull() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLinkListener listener = new TestLinkListener();
+		final TestLinkListener removedListener = new TestLinkListener();
+
+		final ILink link = createLink();
+		link.addListener(listener);
+		link.addListener(removedListener);
+		link.removeListener(removedListener);
+		link.setDescription(null);
+
+		assertNull(link.getDescription());
+
+		assertTestLinkListener(listener, 1, 0, 0, 0, 0);
+		assertTestLinkListener(removedListener, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void setDescription() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLinkListener listener = new TestLinkListener();
+		final TestLinkListener removedListener = new TestLinkListener();
+
+		final ILink link = createLink();
+		link.addListener(listener);
+		link.addListener(removedListener);
+		link.removeListener(removedListener);
+		link.setDescription("description");
+
+		assertEquals("description", link.getDescription());
+
+		assertTestLinkListener(listener, 1, 0, 0, 0, 0);
+		assertTestLinkListener(removedListener, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void getDescriptionDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILink link = createLink();
+
+		assertNull(link.getDescription());
+	}
+
+	@Test
+	public void setSourceNull() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLinkListener listener = new TestLinkListener();
+		final TestLinkListener removedListener = new TestLinkListener();
+
+		final ILink link = createLink();
+		link.addListener(listener);
+		link.addListener(removedListener);
+		link.removeListener(removedListener);
+		link.setSource(null);
+
+		assertNull(link.getSource());
+
+		assertTestLinkListener(listener, 0, 1, 0, 0, 0);
+		assertTestLinkListener(removedListener, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void setSource() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final TestLinkListener listener = new TestLinkListener();
+		final TestLinkListener removedListener = new TestLinkListener();
+
+		final ILink link = createLink();
+		link.addListener(listener);
+		link.addListener(removedListener);
+		link.removeListener(removedListener);
+		final ILocation source = createLocation();
+
+		link.setSource(source);
+
+		assertEquals(source, link.getSource());
+
+		assertTestLinkListener(listener, 0, 1, 0, 0, 0);
+		assertTestLinkListener(removedListener, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void getSourceDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILink link = createLink();
+
+		assertNull(link.getSource());
+	}
+
+	@Test
+	public void setTargetNull() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLinkListener listener = new TestLinkListener();
+		final TestLinkListener removedListener = new TestLinkListener();
+
+		final ILink link = createLink();
+		link.addListener(listener);
+		link.addListener(removedListener);
+		link.removeListener(removedListener);
+		link.setTarget(null);
+
+		assertNull(link.getTarget());
+
+		assertTestLinkListener(listener, 0, 0, 1, 0, 0);
+		assertTestLinkListener(removedListener, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void setTarget() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final TestLinkListener listener = new TestLinkListener();
+		final TestLinkListener removedListener = new TestLinkListener();
+
+		final ILink link = createLink();
+		link.addListener(listener);
+		link.addListener(removedListener);
+		link.removeListener(removedListener);
+		final ILocation target = createLocation();
+
+		link.setTarget(target);
+
+		assertEquals(target, link.getTarget());
+
+		assertTestLinkListener(listener, 0, 0, 1, 0, 0);
+		assertTestLinkListener(removedListener, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void getTargetDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILink link = createLink();
+
+		assertNull(link.getTarget());
+	}
+
+	@Test
+	public void getTypeDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILink link = createLink();
+
+		assertEquals(null, link.getType());
+	}
+
+	@Test
+	public void setType() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final ILink link = createLink();
+		final String type = "Type";
+
+		link.setType(type);
+
+		assertEquals(type, link.getType());
+	}
+
+	@Test
+	public void setTypeNull() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final ILink link = createLink();
+
+		link.setType(null);
+
+		assertEquals(null, link.getType());
+	}
+
+	@Test
+	public void addReport() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final TestLinkListener listener = new TestLinkListener();
+		final TestLinkListener removedListener = new TestLinkListener();
+
+		final ILink link = createLink();
+		link.addListener(listener);
+		link.addListener(removedListener);
+		link.removeListener(removedListener);
+		final IReport report = createReport();
+
+		link.getReports().add(report);
+
+		assertEquals(1, link.getReports().size());
+		assertEquals(report, link.getReports().get(0));
+
+		assertTestLinkListener(listener, 0, 0, 0, 1, 0);
+		assertTestLinkListener(removedListener, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void addManyReports() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLinkListener listener = new TestLinkListener();
+		final TestLinkListener removedListener = new TestLinkListener();
+
+		final ILink link = createLink();
+		link.addListener(listener);
+		link.addListener(removedListener);
+		link.removeListener(removedListener);
+		final IReport report1 = createReport();
+		final IReport report2 = createReport();
+		final List<IReport> reports = new ArrayList<IReport>();
+		reports.add(report1);
+		reports.add(report2);
+
+		link.getReports().addAll(reports);
+
+		assertEquals(2, link.getReports().size());
+		assertEquals(report1, link.getReports().get(0));
+		assertEquals(report2, link.getReports().get(1));
+
+		assertTestLinkListener(listener, 0, 0, 0, 2, 0);
+		assertTestLinkListener(removedListener, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeReport() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final TestLinkListener listener = new TestLinkListener();
+		final TestLinkListener removedListener = new TestLinkListener();
+
+		final ILink link = createLink();
+		link.addListener(listener);
+		link.addListener(removedListener);
+		link.removeListener(removedListener);
+		final IReport report = createReport();
+
+		link.getReports().add(report);
+
+		assertEquals(1, link.getReports().size());
+		assertEquals(report, link.getReports().get(0));
+
+		link.getReports().remove(report);
+
+		assertEquals(0, link.getReports().size());
+
+		assertTestLinkListener(listener, 0, 0, 0, 1, 1);
+		assertTestLinkListener(removedListener, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeManyReports() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLinkListener listener = new TestLinkListener();
+		final TestLinkListener removedListener = new TestLinkListener();
+
+		final ILink link = createLink();
+		link.addListener(listener);
+		link.addListener(removedListener);
+		link.removeListener(removedListener);
+		final IReport report1 = createReport();
+		final IReport report2 = createReport();
+		final List<IReport> reports = new ArrayList<IReport>();
+		reports.add(report1);
+		reports.add(report2);
+
+		link.getReports().addAll(reports);
+
+		assertEquals(2, link.getReports().size());
+		assertEquals(report1, link.getReports().get(0));
+		assertEquals(report2, link.getReports().get(1));
+
+		link.getReports().removeAll(reports);
+
+		assertEquals(0, link.getReports().size());
+
+		assertTestLinkListener(listener, 0, 0, 0, 2, 2);
+		assertTestLinkListener(removedListener, 0, 0, 0, 0, 0);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractLocationTests.java
new file mode 100644
index 0000000..f4f4535
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractLocationTests.java
@@ -0,0 +1,569 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.base;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Test {@link ILocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractLocationTests extends AbstractMappingTests {
+
+	@Test
+	public void addSourceLinks() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link = createLink();
+
+		location.getSourceLinks().add(link);
+
+		assertEquals(1, location.getSourceLinks().size());
+		assertEquals(link, location.getSourceLinks().get(0));
+
+		assertTestLocationListener(listener, 0, 0, 0, 0, 0, 1, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void addManySourceLinks() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link1 = createLink();
+		final ILink link2 = createLink();
+		final List<ILink> links = new ArrayList<ILink>();
+		links.add(link1);
+		links.add(link2);
+
+		location.getSourceLinks().addAll(links);
+
+		assertEquals(2, location.getSourceLinks().size());
+		assertEquals(link1, location.getSourceLinks().get(0));
+		assertEquals(link2, location.getSourceLinks().get(1));
+
+		assertTestLocationListener(listener, 0, 0, 0, 0, 0, 2, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeSourceLinks() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link = createLink();
+
+		location.getSourceLinks().add(link);
+
+		assertEquals(1, location.getSourceLinks().size());
+		assertEquals(link, location.getSourceLinks().get(0));
+
+		location.getSourceLinks().remove(link);
+
+		assertEquals(0, location.getSourceLinks().size());
+
+		assertTestLocationListener(listener, 0, 0, 0, 0, 1, 1, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeManySourceLinks() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link1 = createLink();
+		final ILink link2 = createLink();
+		final List<ILink> links = new ArrayList<ILink>();
+		links.add(link1);
+		links.add(link2);
+
+		location.getSourceLinks().addAll(links);
+
+		assertEquals(2, location.getSourceLinks().size());
+		assertEquals(link1, location.getSourceLinks().get(0));
+		assertEquals(link2, location.getSourceLinks().get(1));
+
+		location.getSourceLinks().removeAll(links);
+
+		assertEquals(0, location.getSourceLinks().size());
+
+		assertTestLocationListener(listener, 0, 0, 0, 0, 2, 2, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeSourceLinksDeleted() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link = createLink();
+
+		location.getSourceLinks().add(link);
+
+		assertEquals(1, location.getSourceLinks().size());
+		assertEquals(link, location.getSourceLinks().get(0));
+
+		getBase().getContents().add(location);
+		location.getSourceLinks().remove(link);
+
+		assertEquals(0, location.getSourceLinks().size());
+		assertEquals(0, getBase().getContents().size());
+
+		assertTestLocationListener(listener, 0, 0, 0, 0, 1, 1, 2, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeManySourceLinksDeleted() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link1 = createLink();
+		final ILink link2 = createLink();
+		final List<ILink> links = new ArrayList<ILink>();
+		links.add(link1);
+		links.add(link2);
+
+		location.getSourceLinks().addAll(links);
+
+		assertEquals(2, location.getSourceLinks().size());
+		assertEquals(link1, location.getSourceLinks().get(0));
+		assertEquals(link2, location.getSourceLinks().get(1));
+
+		getBase().getContents().add(location);
+		location.getSourceLinks().removeAll(links);
+
+		assertEquals(0, location.getSourceLinks().size());
+		assertEquals(0, getBase().getContents().size());
+
+		assertTestLocationListener(listener, 0, 0, 0, 0, 2, 2, 2, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void addTargetLinks() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link = createLink();
+
+		location.getTargetLinks().add(link);
+
+		assertEquals(1, location.getTargetLinks().size());
+		assertEquals(link, location.getTargetLinks().get(0));
+
+		assertTestLocationListener(listener, 0, 0, 0, 1, 0, 0, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void addManyTargetLinks() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link1 = createLink();
+		final ILink link2 = createLink();
+		final List<ILink> links = new ArrayList<ILink>();
+		links.add(link1);
+		links.add(link2);
+
+		location.getTargetLinks().addAll(links);
+
+		assertEquals(2, location.getTargetLinks().size());
+		assertEquals(link1, location.getTargetLinks().get(0));
+		assertEquals(link2, location.getTargetLinks().get(1));
+
+		assertTestLocationListener(listener, 0, 0, 0, 2, 0, 0, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeTargetLinks() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link = createLink();
+
+		location.getTargetLinks().add(link);
+
+		assertEquals(1, location.getTargetLinks().size());
+		assertEquals(link, location.getTargetLinks().get(0));
+
+		location.getTargetLinks().remove(link);
+
+		assertEquals(0, location.getTargetLinks().size());
+
+		assertTestLocationListener(listener, 0, 0, 1, 1, 0, 0, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeManyTargetLinks() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link1 = createLink();
+		final ILink link2 = createLink();
+		final List<ILink> links = new ArrayList<ILink>();
+		links.add(link1);
+		links.add(link2);
+
+		location.getTargetLinks().addAll(links);
+
+		assertEquals(2, location.getTargetLinks().size());
+		assertEquals(link1, location.getTargetLinks().get(0));
+		assertEquals(link2, location.getTargetLinks().get(1));
+
+		location.getTargetLinks().removeAll(links);
+
+		assertEquals(0, location.getTargetLinks().size());
+
+		assertTestLocationListener(listener, 0, 0, 2, 2, 0, 0, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeTargetLinksDeleted() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link = createLink();
+
+		location.getTargetLinks().add(link);
+
+		assertEquals(1, location.getTargetLinks().size());
+		assertEquals(link, location.getTargetLinks().get(0));
+
+		getBase().getContents().add(location);
+		location.getTargetLinks().remove(link);
+
+		assertEquals(0, location.getTargetLinks().size());
+		assertEquals(0, getBase().getContents().size());
+
+		assertTestLocationListener(listener, 0, 0, 1, 1, 0, 0, 2, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeManyTargetLinksDeleted() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILink link1 = createLink();
+		final ILink link2 = createLink();
+		final List<ILink> links = new ArrayList<ILink>();
+		links.add(link1);
+		links.add(link2);
+
+		location.getTargetLinks().addAll(links);
+
+		assertEquals(2, location.getTargetLinks().size());
+		assertEquals(link1, location.getTargetLinks().get(0));
+		assertEquals(link2, location.getTargetLinks().get(1));
+
+		getBase().getContents().add(location);
+		location.getTargetLinks().removeAll(links);
+
+		assertEquals(0, location.getTargetLinks().size());
+		assertEquals(0, getBase().getContents().size());
+
+		assertTestLocationListener(listener, 0, 0, 2, 2, 0, 0, 2, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void addContents() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILocation location1 = createLocation();
+
+		location.getContents().add(location1);
+
+		assertEquals(1, location.getContents().size());
+		assertEquals(location1, location.getContents().get(0));
+
+		assertTestLocationListener(listener, 0, 1, 0, 0, 0, 0, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void addManyContents() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILocation location1 = createLocation();
+		final ILocation location2 = createLocation();
+		final List<ILocation> locations = new ArrayList<ILocation>();
+		locations.add(location1);
+		locations.add(location2);
+
+		location.getContents().addAll(locations);
+
+		assertEquals(2, location.getContents().size());
+		assertEquals(location1, location.getContents().get(0));
+		assertEquals(location2, location.getContents().get(1));
+
+		assertTestLocationListener(listener, 0, 2, 0, 0, 0, 0, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeContents() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILocation location1 = createLocation();
+
+		location.getContents().add(location1);
+
+		assertEquals(1, location.getContents().size());
+		assertEquals(location1, location.getContents().get(0));
+
+		location.getContents().remove(location1);
+
+		assertEquals(0, location.getContents().size());
+
+		assertTestLocationListener(listener, 1, 1, 0, 0, 0, 0, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void removeManyContents() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		final ILocation location1 = createLocation();
+		final ILocation location2 = createLocation();
+		final List<ILocation> locations = new ArrayList<ILocation>();
+		locations.add(location1);
+		locations.add(location2);
+
+		location.getContents().addAll(locations);
+
+		assertEquals(2, location.getContents().size());
+		assertEquals(location1, location.getContents().get(0));
+		assertEquals(location2, location.getContents().get(1));
+
+		location.getContents().removeAll(locations);
+
+		assertEquals(0, location.getContents().size());
+
+		assertTestLocationListener(listener, 2, 2, 0, 0, 0, 0, 0, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void getContainerDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILocation location = createLocation();
+
+		assertEquals(null, location.getContainer());
+	}
+
+	@Test
+	public void setContainerNull() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		location.setContainer(null);
+
+		assertNull(location.getContainer());
+
+		assertTestLocationListener(listener, 0, 0, 0, 0, 0, 0, 1, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void setContainer() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation container = createLocation();
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+		location.setContainer(container);
+
+		assertEquals(container, location.getContainer());
+
+		assertTestLocationListener(listener, 0, 0, 0, 0, 0, 0, 1, 0, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void getTypeDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILocation location = createLocation();
+
+		assertEquals(null, location.getType());
+	}
+
+	@Test
+	public void setType() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final ILocation location = createLocation();
+		final String type = "Type";
+
+		location.setType(type);
+
+		assertEquals(type, location.getType());
+	}
+
+	@Test
+	public void setTypeNull() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final ILocation location = createLocation();
+
+		location.setType(null);
+
+		assertEquals(null, location.getType());
+	}
+
+	@Test
+	public void isMarkedAsDeletedDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILocation location = createLocation();
+
+		assertFalse(location.isMarkedAsDeleted());
+	}
+
+	@Test
+	public void setMarkedAsDeleted() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+
+		location.setMarkedAsDeleted(true);
+
+		assertTrue(location.isMarkedAsDeleted());
+		assertTestLocationListener(listener, 0, 0, 0, 0, 0, 0, 0, 1, 0);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+	@Test
+	public void changed() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final TestLocationListener listener = new TestLocationListener();
+		final TestLocationListener removedListener = new TestLocationListener();
+
+		final ILocation location = createLocation();
+		location.addListener(listener);
+		location.addListener(removedListener);
+		location.removeListener(removedListener);
+
+		location.change("test change");
+
+		assertTestLocationListener(listener, 0, 0, 0, 0, 0, 0, 0, 0, 1);
+		assertTestLocationListener(removedListener, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractMappingTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractMappingTests.java
new file mode 100644
index 0000000..3e7d5c0
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractMappingTests.java
@@ -0,0 +1,388 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.base;
+
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.IBaseListener;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILinkListener;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationListener;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.base.IReportListener;
+import org.eclipse.intent.mapping.text.ITextLocation;
+import org.junit.Before;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Abstract mapping tests.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractMappingTests {
+
+	/**
+	 * Test {@link IBaseListener}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	protected final class TestBaseListener implements IBaseListener {
+
+		/**
+		 * Number of time {@link TestBaseListener#nameChanged(String)} has been called.
+		 */
+		private int nameChanged;
+
+		/**
+		 * Number of time {@link TestBaseListener#contentsAdded(ILocation)} has been called.
+		 */
+		private int rootLocationAdded;
+
+		/**
+		 * Number of time {@link TestBaseListener#contentsRemoved(ILocation)} has been called.
+		 */
+		private int rootLocationRemoved;
+
+		/**
+		 * Number of time {@link TestBaseListener#reportAdded(IReport)} has been called.
+		 */
+		private int reportAdded;
+
+		/**
+		 * Number of time {@link TestBaseListener#reportRemoved(IReport)} has been called.
+		 */
+		private int reportRemoved;
+
+		/**
+		 * Number of time {@link TestBaseListener#containerProviderAdded(String)} has been called.
+		 */
+		private int containerProviderAdded;
+
+		/**
+		 * Number of time {@link TestBaseListener#containerProviderRemoved(String)} has been called.
+		 */
+		private int containerProviderRemoved;
+
+		public void nameChanged(String oldName, String newName) {
+			nameChanged++;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#contentsAdded(org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public void contentsAdded(ILocation location) {
+			rootLocationAdded++;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#contentsRemoved(org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public void contentsRemoved(ILocation location) {
+			rootLocationRemoved++;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#reportAdded(org.eclipse.intent.mapping.base.IReport)
+		 */
+		public void reportAdded(IReport report) {
+			reportAdded++;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#reportRemoved(org.eclipse.intent.mapping.base.IReport)
+		 */
+		public void reportRemoved(IReport report) {
+			reportRemoved++;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#containerProviderAdded(java.lang.String)
+		 */
+		public void containerProviderAdded(String provider) {
+			containerProviderAdded++;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.base.IBaseListener#containerProviderRemoved(java.lang.String)
+		 */
+		public void containerProviderRemoved(String provider) {
+			containerProviderRemoved++;
+		}
+
+	}
+
+	/**
+	 * Test {@link ILinkListener}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	protected final class TestLinkListener implements ILinkListener {
+
+		/**
+		 * Number of time {@link TestLinkListener#targetChanged(ILocation)} has been called.
+		 */
+		private int targetChanged;
+
+		/**
+		 * Number of time {@link TestLinkListener#sourceChanged(ILocation)} has been called.
+		 */
+		private int sourceChanged;
+
+		/**
+		 * Number of time {@link TestLinkListener#descriptionChanged(String)} has been called.
+		 */
+		private int descriptionChanged;
+
+		/**
+		 * Number of time {@link TestLinkListener#reportAdded(IReport)} has been called.
+		 */
+		private int reportAdded;
+
+		/**
+		 * Number of time {@link TestLinkListener#reportRemoved(IReport)} has been called.
+		 */
+		private int reportRemoved;
+
+		public void descriptionChanged(String oldDescription, String newDescription) {
+			descriptionChanged++;
+		}
+
+		public void sourceChanged(ILocation oldSource, ILocation newSource) {
+			sourceChanged++;
+		}
+
+		public void targetChanged(ILocation oldTarget, ILocation newTarget) {
+			targetChanged++;
+		}
+
+		public void reportAdded(IReport report) {
+			reportAdded++;
+		}
+
+		public void reportRemoved(IReport report) {
+			reportRemoved++;
+		}
+	}
+
+	/**
+	 * Test {@link IReportListener}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	protected final class TestReportListener implements IReportListener {
+
+		/**
+		 * Number of time {@link TestReportListener#descriptionChanged(String)} has been called.
+		 */
+		private int descriptionChanged;
+
+		/**
+		 * Number of time {@link TestReportListener#linkChanged(ILink, ILink)} has been called.
+		 */
+		private int linkChanged;
+
+		public void descriptionChanged(String oldDescription, String newDescription) {
+			descriptionChanged++;
+		}
+
+		public void linkChanged(ILink oldLink, ILink newLink) {
+			linkChanged++;
+		}
+	}
+
+	/**
+	 * Test {@link ILocationListener}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	protected final class TestLocationListener implements ILocationListener {
+
+		/**
+		 * Number of time {@link TestLocationListener#contentRemoved(ILocation)} has been called.
+		 */
+		private int contentsLocationRemoved;
+
+		/**
+		 * Number of time {@link TestLocationListener#contentAdded(ILocation)} has been called.
+		 */
+		private int contentsLocationAdded;
+
+		/**
+		 * Number of time {@link TestLocationListener#targetLinkRemoved(ILink)} has been called.
+		 */
+		private int targetLinkRemoved;
+
+		/**
+		 * Number of time {@link TestLocationListener#targetLinkAdded(ILink)} has been called.
+		 */
+		private int targetLinkAdded;
+
+		/**
+		 * Number of time {@link TestLocationListener#sourceLinkRemoved(ILink)} has been called.
+		 */
+		private int sourceLinkRemoved;
+
+		/**
+		 * Number of time {@link TestLocationListener#sourceLinkAdded(ILink)} has been called.
+		 */
+		private int sourceLinkAdded;
+
+		/**
+		 * Number of time
+		 * {@link TestLocationListener#containerChanged(ILocationContainer, ILocationContainer)} has been
+		 * called.
+		 */
+		private int containerChanged;
+
+		/**
+		 * Number of time {@link TestLocationListener#changed(String)} has been called.
+		 */
+		private int changed;
+
+		/**
+		 * Number of time {@link TestLocationListener#markedAsDeletedChanged(boolean)} has been called.
+		 */
+		private int markedAsDeletedChanged;
+
+		public void sourceLinkAdded(ILink link) {
+			sourceLinkAdded++;
+		}
+
+		public void sourceLinkRemoved(ILink link) {
+			sourceLinkRemoved++;
+		}
+
+		public void targetLinkAdded(ILink link) {
+			targetLinkAdded++;
+		}
+
+		public void targetLinkRemoved(ILink link) {
+			targetLinkRemoved++;
+		}
+
+		public void contentsAdded(ILocation location) {
+			contentsLocationAdded++;
+		}
+
+		public void contentsRemoved(ILocation location) {
+			contentsLocationRemoved++;
+		}
+
+		public void containerChanged(ILocationContainer oldContainer, ILocationContainer newContainer) {
+			containerChanged++;
+		}
+
+		public void markedAsDeletedChanged(boolean newValue) {
+			markedAsDeletedChanged++;
+		}
+
+		public void changed(String reportDescription) {
+			changed++;
+		}
+
+	}
+
+	/**
+	 * The {@link IBase} to test.
+	 */
+	protected IBase base;
+
+	@Before
+	public void before() {
+		base = getFactory().createBase();
+	}
+
+	/**
+	 * Gets the {@link IBaseFactory}.
+	 * 
+	 * @return the {@link IBaseFactory}
+	 */
+	protected abstract IBaseFactory getFactory();
+
+	protected void assertTestBaseListener(TestBaseListener listener, int nameChanged, int rootLocationAdded,
+			int rootLocationRemoved, int reportAdded, int reportRemoved, int containerProviderAdded,
+			int containerProvidersRemoved) {
+		assertEquals(nameChanged, listener.nameChanged);
+		assertEquals(rootLocationAdded, listener.rootLocationAdded);
+		assertEquals(rootLocationRemoved, listener.rootLocationRemoved);
+		assertEquals(reportAdded, listener.reportAdded);
+		assertEquals(reportRemoved, listener.reportRemoved);
+		assertEquals(containerProviderAdded, listener.containerProviderAdded);
+		assertEquals(containerProvidersRemoved, listener.containerProviderRemoved);
+	}
+
+	protected void assertTestLinkListener(TestLinkListener listener, int descriptionChanged,
+			int sourceChanged, int targetChanged, int reportAdded, int reportRemoved) {
+		assertEquals(descriptionChanged, listener.descriptionChanged);
+		assertEquals(sourceChanged, listener.sourceChanged);
+		assertEquals(targetChanged, listener.targetChanged);
+		assertEquals(reportAdded, listener.reportAdded);
+		assertEquals(reportRemoved, listener.reportRemoved);
+	}
+
+	protected void assertTestReportListener(TestReportListener listener, int descriptionChanged,
+			int linkChanged) {
+		assertEquals(descriptionChanged, listener.descriptionChanged);
+		assertEquals(linkChanged, listener.linkChanged);
+	}
+
+	// CHECKSTYLE:OFF
+	protected void assertTestLocationListener(TestLocationListener listener, int contentLocationRemoved,
+			int contentLocationAdded, int targetLinkRemoved, int targetLinkAdded, int sourceLinkRemoved,
+			int sourceLinkAdded, int containerChanged, int markedAsDeletedChanged, int changed) {
+		assertEquals(contentLocationRemoved, listener.contentsLocationRemoved);
+		assertEquals(contentLocationAdded, listener.contentsLocationAdded);
+		assertEquals(targetLinkRemoved, listener.targetLinkRemoved);
+		assertEquals(targetLinkAdded, listener.targetLinkAdded);
+		assertEquals(sourceLinkRemoved, listener.sourceLinkRemoved);
+		assertEquals(sourceLinkAdded, listener.sourceLinkAdded);
+		assertEquals(containerChanged, listener.containerChanged);
+		assertEquals(markedAsDeletedChanged, listener.markedAsDeletedChanged);
+		assertEquals(changed, listener.changed);
+	}
+
+	// CHECKSTYLE:ON
+
+	protected IBase getBase() {
+		return base;
+	}
+
+	protected ILink createLink() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(ILink.class);
+	}
+
+	protected ILocation createLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(ITextLocation.class);
+	}
+
+	protected IReport createReport() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(IReport.class);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractReportTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractReportTests.java
new file mode 100644
index 0000000..5c7603a
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractReportTests.java
@@ -0,0 +1,115 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.base;
+
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.IReport;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+/**
+ * Test {@link IReport}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractReportTests extends AbstractMappingTests {
+
+	@Test
+	public void setDescriptionNull() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestReportListener listener = new TestReportListener();
+		final TestReportListener removedListener = new TestReportListener();
+
+		final IReport report = createReport();
+		report.addListener(listener);
+		report.addListener(removedListener);
+		report.removeListener(removedListener);
+		report.setDescription(null);
+
+		assertNull(report.getDescription());
+
+		assertTestReportListener(listener, 1, 0);
+		assertTestReportListener(removedListener, 0, 0);
+	}
+
+	@Test
+	public void setDescription() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestReportListener listener = new TestReportListener();
+		final TestReportListener removedListener = new TestReportListener();
+
+		final IReport report = createReport();
+		report.addListener(listener);
+		report.addListener(removedListener);
+		report.removeListener(removedListener);
+		report.setDescription("description");
+
+		assertEquals("description", report.getDescription());
+
+		assertTestReportListener(listener, 1, 0);
+		assertTestReportListener(removedListener, 0, 0);
+	}
+
+	@Test
+	public void getDescriptionDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IReport link = createReport();
+
+		assertNull(link.getDescription());
+	}
+
+	@Test
+	public void setLinkNull() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final TestReportListener listener = new TestReportListener();
+		final TestReportListener removedListener = new TestReportListener();
+
+		final IReport report = createReport();
+		report.addListener(listener);
+		report.addListener(removedListener);
+		report.removeListener(removedListener);
+		report.setLink(null);
+
+		assertNull(report.getLink());
+
+		assertTestReportListener(listener, 0, 1);
+		assertTestReportListener(removedListener, 0, 0);
+	}
+
+	@Test
+	public void setLink() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		final TestReportListener listener = new TestReportListener();
+		final TestReportListener removedListener = new TestReportListener();
+
+		final IReport report = createReport();
+		report.addListener(listener);
+		report.addListener(removedListener);
+		report.removeListener(removedListener);
+		final ILink link = createLink();
+		report.setLink(link);
+
+		assertEquals(link, report.getLink());
+
+		assertTestReportListener(listener, 0, 1);
+		assertTestReportListener(removedListener, 0, 0);
+	}
+
+	@Test
+	public void getLinkDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IReport link = createReport();
+
+		assertNull(link.getLink());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractTextLocationTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractTextLocationTests.java
new file mode 100644
index 0000000..77d5c83
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/AbstractTextLocationTests.java
@@ -0,0 +1,67 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.base;
+
+import org.eclipse.intent.mapping.text.ITextLocation;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * Test {@link ITextLocation}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public abstract class AbstractTextLocationTests extends AbstractLocationTests {
+
+	@Override
+	protected ITextLocation createLocation() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		return getBase().getFactory().createElement(ITextLocation.class);
+	}
+
+	@Test
+	public void setStartOffset() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		ITextLocation location = createLocation();
+
+		location.setStartOffset(50);
+
+		assertEquals(50, location.getStartOffset());
+	}
+
+	@Test
+	public void getStartOffsetDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		ITextLocation location = createLocation();
+
+		assertEquals(-1, location.getStartOffset());
+	}
+
+	@Test
+	public void setEndOffset() throws InstantiationException, IllegalAccessException, ClassNotFoundException {
+		ITextLocation location = createLocation();
+
+		location.setEndOffset(50);
+
+		assertEquals(50, location.getEndOffset());
+	}
+
+	@Test
+	public void getEndOffsetDefault() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		ITextLocation location = createLocation();
+
+		assertEquals(-1, location.getEndOffset());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/BaseElementFactoryTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/BaseElementFactoryTests.java
new file mode 100644
index 0000000..ef34183
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/BaseElementFactoryTests.java
@@ -0,0 +1,338 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.base;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.BaseElementFactory.FactoryDescriptor;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILinkListener;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationListener;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.base.IReportListener;
+import org.eclipse.intent.mapping.emf.ICouple;
+import org.junit.Test;
+
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link BaseElementFactory}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class BaseElementFactoryTests {
+
+	/**
+	 * A test location interface.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public interface ITestLocation extends ILocation {
+
+		void setObject(Object object);
+
+		Object getObject();
+
+	}
+
+	/**
+	 * A test location interface.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestLocation implements ITestLocation {
+
+		/**
+		 * The {@link ILocationContainer}.
+		 */
+		private ILocationContainer container;
+
+		/**
+		 * The {@link List} of source {@link ILink}.
+		 */
+		private List<ILink> sourceLinks = new ArrayList<ILink>();
+
+		/**
+		 * The {@link List} of target {@link ILink}.
+		 */
+		private List<ILink> targetLinks = new ArrayList<ILink>();
+
+		/**
+		 * The contents.
+		 */
+		private final List<ILocation> contents = new ArrayList<ILocation>();
+
+		/**
+		 * Tells if the location is marked as deleted.
+		 */
+		private boolean markedAsDeleted;
+
+		/**
+		 * The {@link Object}.
+		 */
+		private Object object;
+
+		public void setObject(Object o) {
+			object = o;
+		}
+
+		public Object getObject() {
+			return object;
+		}
+
+		public void markAsChanged() {
+			// nothing to do here
+		}
+
+		public void markAsDeleted() {
+			// nothing to do here
+		}
+
+		public void change(String reportDescription) {
+			// nothing to do here
+		}
+
+		public List<ILink> getSourceLinks() {
+			return sourceLinks;
+		}
+
+		public List<ILink> getTargetLinks() {
+			return targetLinks;
+		}
+
+		public void setContainer(ILocationContainer container) {
+			if (container != null) {
+				container.getContents().add(this);
+			}
+			if (this.container != null) {
+				this.container.getContents().remove(this);
+			}
+			this.container = container;
+		}
+
+		public ILocationContainer getContainer() {
+			return container;
+		}
+
+		public List<ILocation> getContents() {
+			return contents;
+		}
+
+		public void addListener(ILocationListener listener) {
+			// nothing to do here
+		}
+
+		public void removeListener(ILocationListener listener) {
+			// nothing to do here
+		}
+
+		public Serializable getType() {
+			// nothing to do here
+			return null;
+		}
+
+		public void setType(Serializable type) {
+			// nothing to do here
+		}
+
+		public void setMarkedAsDeleted(boolean markedAsDeleted) {
+			this.markedAsDeleted = markedAsDeleted;
+		}
+
+		public boolean isMarkedAsDeleted() {
+			return markedAsDeleted;
+		}
+
+	}
+
+	/**
+	 * Test implementation of {@link ILink}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestLink implements ILink {
+
+		/**
+		 * The source {@link ILocation}.
+		 */
+		private ILocation target;
+
+		/**
+		 * The target {@link ILocation}.
+		 */
+		private ILocation source;
+
+		/**
+		 * The {@link List} of {@link IReport}.
+		 */
+		private final List<IReport> reports = new ArrayList<IReport>();
+
+		public void setType(Serializable type) {
+			// nothing to do here
+		}
+
+		public void setTarget(ILocation location) {
+			target = location;
+		}
+
+		public void setSource(ILocation location) {
+			source = location;
+		}
+
+		public void setDescription(String description) {
+			// nothing to do here
+		}
+
+		public void removeListener(ILinkListener listener) {
+			// nothing to do here
+		}
+
+		public Serializable getType() {
+			// nothing to do here
+			return null;
+		}
+
+		public ILocation getTarget() {
+			return target;
+		}
+
+		public ILocation getSource() {
+			return source;
+		}
+
+		public List<IReport> getReports() {
+			return reports;
+		}
+
+		public String getDescription() {
+			// nothing to do here
+			return null;
+		}
+
+		public void addListener(ILinkListener listener) {
+			// nothing to do here
+		}
+
+	}
+
+	/**
+	 * Test implementation of {@link IReport}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestReport implements IReport {
+
+		/**
+		 * The {@link ILink}.
+		 */
+		private ILink link;
+
+		/**
+		 * The description.
+		 */
+		private String description;
+
+		public void setLink(ILink link) {
+			this.link = link;
+		}
+
+		public ILink getLink() {
+			return link;
+		}
+
+		public void setDescription(String description) {
+			this.description = description;
+		}
+
+		public String getDescription() {
+			return description;
+		}
+
+		public void addListener(IReportListener listener) {
+			// nothing to do here
+		}
+
+		public void removeListener(IReportListener listener) {
+			// nothing to do here
+		}
+
+	}
+
+	/**
+	 * Test implementation of {@link ICouple}.
+	 * 
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestCouple implements ICouple {
+
+		/**
+		 * The key.
+		 */
+		private String key;
+
+		/**
+		 * The value.
+		 */
+		private String value;
+
+		public String getKey() {
+			// TODO Auto-generated method stub
+			return key;
+		}
+
+		public void setKey(String key) {
+			this.key = key;
+
+		}
+
+		public String getValue() {
+			return value;
+		}
+
+		public void setValue(String value) {
+			this.value = value;
+		}
+
+	}
+
+	@Test
+	public void addClassInstance() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final BaseElementFactory factory = new BaseElementFactory();
+
+		factory.addDescriptor(ITestLocation.class, new FactoryDescriptor<TestLocation>(TestLocation.class));
+
+		final ITestLocation location = factory.createElement(ITestLocation.class);
+
+		assertTrue(location instanceof TestLocation);
+	}
+
+	@Test
+	public void removeClassInstance() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final BaseElementFactory factory = new BaseElementFactory();
+
+		factory.addDescriptor(ITestLocation.class, new FactoryDescriptor<TestLocation>(TestLocation.class));
+		factory.removeDescriptor(ITestLocation.class);
+
+		final ITestLocation location = factory.createElement(ITestLocation.class);
+
+		assertNull(location);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/BaseRegistryTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/BaseRegistryTests.java
new file mode 100644
index 0000000..514c22c
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/BaseRegistryTests.java
@@ -0,0 +1,234 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.base;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.ContainerProviderRegistry;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.IBaseListener;
+import org.eclipse.intent.mapping.base.IBaseRegistryListener;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.connector.IContainerProvider;
+import org.eclipse.intent.mapping.internal.base.BaseRegistry;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link BaseRegistry}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class BaseRegistryTests {
+
+	/**
+	 * A test implementation of {@link IBaseRegistryListener}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	private final class TestBaseRegitryListener implements IBaseRegistryListener {
+
+		/**
+		 * Number of time {@link TestBaseRegitryListener#baseRegistred(IBase)} has been called.
+		 */
+		private int baseUnregistred;
+
+		/**
+		 * Number of time {@link TestBaseRegitryListener#baseUnregistred(IBase)} has been called.
+		 */
+		private int baseRegistred;
+
+		public void baseRegistred(IBase base) {
+			baseRegistred++;
+		}
+
+		public void baseUnregistred(IBase base) {
+			baseUnregistred++;
+		}
+
+	}
+
+	/**
+	 * A test {@link IBase} implementation.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestBase implements IBase {
+
+		/**
+		 * The {@link List} of contained {@link ILocation}.
+		 */
+		private final List<ILocation> contents = new ArrayList<ILocation>();
+
+		/**
+		 * The {@link List} of {@link IReport}.
+		 */
+		private final List<IReport> reports = new ArrayList<IReport>();
+
+		/**
+		 * The {@link BaseElementFactory}.
+		 */
+		private final BaseElementFactory factory = new BaseElementFactory();
+
+		/**
+		 * The {@link ContainerProviderRegistry}.
+		 */
+		private final ContainerProviderRegistry registry;
+
+		/**
+		 * The {@link List} of {@link IContainerProvider} {@link Class#getCanonicalName() class name}.
+		 */
+		private List<String> containerProviders = new ArrayList<String>();
+
+		public TestBase() {
+			registry = new ContainerProviderRegistry(this);
+		}
+
+		public void setName(String name) {
+			// nothing to do here
+		}
+
+		public String getName() {
+			// nothing to do here
+			return null;
+		}
+
+		public List<ILocation> getContents() {
+			return contents;
+		}
+
+		public void addListener(IBaseListener l) {
+			// nothing to do here
+		}
+
+		public void removeListener(IBaseListener l) {
+			// nothing to do here
+		}
+
+		public BaseElementFactory getFactory() {
+			return factory;
+		}
+
+		public List<IReport> getReports() {
+			return reports;
+		}
+
+		public void save() throws IOException {
+			// nothing to do here
+		}
+
+		public ContainerProviderRegistry getContainerProviderRegistry() {
+			return registry;
+		}
+
+		public List<String> getContainerProviders() {
+			return containerProviders;
+		}
+
+	}
+
+	/**
+	 * The {@link BaseRegistry} to test.
+	 */
+	private BaseRegistry baseRegistery;
+
+	/**
+	 * The {@link TestBaseRegitryListener} that will be
+	 * {@link org.eclipse.intent.mapping.base.IBaseRegistry#register(IBase) registered}.
+	 */
+	private TestBaseRegitryListener listener;
+
+	/**
+	 * The {@link TestBaseRegitryListener} that will be
+	 * {@link org.eclipse.intent.mapping.base.IBaseRegistry#register(IBase) registered} then
+	 * {@link org.eclipse.intent.mapping.base.IBaseRegistry#unregister(IBase) unregistered}.
+	 */
+	private TestBaseRegitryListener removedListener;
+
+	protected void assertTestBaseRegitryListener(TestBaseRegitryListener l, int baseRegistred,
+			int baseUnregistred) {
+		assertEquals(baseRegistred, l.baseRegistred);
+		assertEquals(baseUnregistred, l.baseUnregistred);
+	}
+
+	@Before
+	public void before() {
+		baseRegistery = new BaseRegistry();
+		listener = new TestBaseRegitryListener();
+		removedListener = new TestBaseRegitryListener();
+		baseRegistery.addListener(listener);
+		baseRegistery.addListener(removedListener);
+		baseRegistery.removeListener(removedListener);
+
+	}
+
+	@After
+	public void after() {
+		baseRegistery.removeListener(listener);
+	}
+
+	@Test
+	public void register() {
+		final IBase base = new TestBase();
+		baseRegistery.register(base);
+
+		assertEquals(1, baseRegistery.getBases().size());
+
+		assertTestBaseRegitryListener(listener, 1, 0);
+		assertTestBaseRegitryListener(removedListener, 0, 0);
+	}
+
+	@Test
+	public void unregister() {
+		final IBase base = new TestBase();
+		baseRegistery.register(base);
+
+		assertEquals(1, baseRegistery.getBases().size());
+
+		baseRegistery.unregister(base);
+
+		assertEquals(0, baseRegistery.getBases().size());
+
+		assertTestBaseRegitryListener(listener, 1, 1);
+		assertTestBaseRegitryListener(removedListener, 0, 0);
+	}
+
+	@Test
+	public void getBases() {
+		final IBase base0 = new TestBase();
+		final IBase base1 = new TestBase();
+		final IBase base2 = new TestBase();
+		baseRegistery.register(base0);
+		baseRegistery.register(base1);
+		baseRegistery.register(base2);
+
+		final Set<IBase> bases = baseRegistery.getBases();
+		assertEquals(3, bases.size());
+
+		assertTrue(bases.contains(base0));
+		assertTrue(bases.contains(base1));
+		assertTrue(bases.contains(base2));
+
+		assertTestBaseRegitryListener(listener, 3, 0);
+		assertTestBaseRegitryListener(removedListener, 0, 0);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/IBaseFactory.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/IBaseFactory.java
new file mode 100644
index 0000000..49f0bac
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/IBaseFactory.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.base;
+
+import org.eclipse.intent.mapping.base.IBase;
+
+/**
+ * A factory creating {@link IBase} to test.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public interface IBaseFactory {
+
+	/**
+	 * Creates an {@link IBase}.
+	 * 
+	 * @return a new {@link IBase}
+	 */
+	IBase createBase();
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/LocationDescriptorTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/LocationDescriptorTests.java
new file mode 100644
index 0000000..2e068c7
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/LocationDescriptorTests.java
@@ -0,0 +1,123 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.base;
+
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.LocationDescriptor;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests.TestBase;
+import org.eclipse.intent.mapping.tests.connector.ConnectorRegistryTests.TestLocation1;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link LocationDescriptor}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class LocationDescriptorTests {
+
+	@Test
+	public void equalsNull() {
+		final TestLocation1 location = new TestLocation1();
+		final LocationDescriptor descriptor1 = new LocationDescriptor(location);
+
+		// CHECKSTYLE:OFF
+		assertFalse(descriptor1.equals(null));
+		// CHECKSTYLE:ON
+	}
+
+	@Test
+	public void equalsFalse() {
+		final TestLocation1 location1 = new TestLocation1();
+		final TestLocation1 location2 = new TestLocation1();
+		final LocationDescriptor descriptor1 = new LocationDescriptor(location1);
+		final LocationDescriptor descriptor2 = new LocationDescriptor(location2);
+
+		assertFalse(descriptor1.equals(descriptor2));
+		assertFalse(descriptor2.equals(descriptor1));
+	}
+
+	@Test
+	public void equalsTrue() {
+		final TestLocation1 location = new TestLocation1();
+		final LocationDescriptor descriptor1 = new LocationDescriptor(location);
+		final LocationDescriptor descriptor2 = new LocationDescriptor(location);
+
+		assertTrue(descriptor1.equals(descriptor2));
+		assertTrue(descriptor2.equals(descriptor1));
+	}
+
+	@Test
+	public void getLocationNull() {
+		final TestLocation1 location = new TestLocation1();
+		final LocationDescriptor descriptor = new LocationDescriptor(location);
+
+		assertTrue(location == descriptor.getLocation());
+	}
+
+	@Test
+	public void getLocationExisting() {
+		final TestLocation1 location = new TestLocation1();
+		final LocationDescriptor descriptor = new LocationDescriptor(location);
+		final IBase base = new TestBase();
+		base.getContents().add(location);
+
+		final ILocation found = descriptor.getLocation();
+
+		assertTrue(location == found);
+	}
+
+	@Test
+	public void getName() {
+		final TestLocation1 location = new TestLocation1();
+		final LocationDescriptor descriptor = new LocationDescriptor(location);
+
+		assertEquals(null, descriptor.getName());
+	}
+
+	@Test
+	public void getOrCreateNull() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocation1 location = new TestLocation1();
+		final LocationDescriptor descriptor = new LocationDescriptor(location);
+
+		assertTrue(location == descriptor.getOrCreate());
+	}
+
+	@Test
+	public void getOrCreateExcisting() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestLocation1 location = new TestLocation1();
+		final LocationDescriptor descriptor = new LocationDescriptor(location);
+		final IBase base = new TestBase();
+		base.getContents().add(location);
+
+		final ILocation res = descriptor.getOrCreate();
+
+		assertTrue(location == res);
+	}
+
+	@Test
+	public void hashCodeTest() {
+		final TestLocation1 location = new TestLocation1();
+		final LocationDescriptor descriptor = new LocationDescriptor(location);
+		final IBase base = new TestBase();
+		base.getContents().add(location);
+
+		assertEquals(location.hashCode(), descriptor.hashCode());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/ObjectLocationDescriptorTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/ObjectLocationDescriptorTests.java
new file mode 100644
index 0000000..79d26ce
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/base/ObjectLocationDescriptorTests.java
@@ -0,0 +1,272 @@
+/*******************************************************************************
+ * Copyright (c) 2016 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.base;
+
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.connector.AbstractConnector;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.ITestLocation;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests.TestBase;
+import org.eclipse.intent.mapping.tests.connector.ConnectorRegistryTests.TestLocation1;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link ObjectLocationDescriptor}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ObjectLocationDescriptorTests extends AbstractConnector {
+
+	/**
+	 * The element.
+	 */
+	private Object element;
+
+	/**
+	 * Counts the number of calls to {@link ObjectLocationDescriptorTests#dispose(ILocationDescriptor)}.
+	 */
+	private int disposeCount;
+
+	/**
+	 * Constructor.
+	 * 
+	 * @param element
+	 *            the element
+	 */
+	public ObjectLocationDescriptorTests() {
+		this.element = new Object();
+	}
+
+	public ILocationDescriptor getLocationDescriptor(IBase base, Object elem) {
+		// nothing to do here
+		return null;
+	}
+
+	public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+			Object elem) {
+		return ITestLocation.class;
+	}
+
+	public Object getElement(ILocation location) {
+		return element;
+	}
+
+	public String getName(ILocation location) {
+		// nothing to do here
+		return null;
+	}
+
+	public Class<? extends ILocation> getType() {
+		return ITestLocation.class;
+	}
+
+	@Override
+	protected boolean canUpdate(Object elem) {
+		return true;
+	}
+
+	@Override
+	protected boolean match(ILocation location, Object elem) {
+		return elem == element;
+	}
+
+	@Override
+	protected void initLocation(ILocationContainer container, ILocation location, Object elem) {
+		((ITestLocation)location).setObject(elem);
+	}
+
+	@Override
+	public void dispose(ILocationDescriptor locationDescriptor) {
+		super.dispose(locationDescriptor);
+		disposeCount++;
+	}
+
+	@Test
+	public void dispose() {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor = new ObjectLocationDescriptor(base, element,
+				"test descriptor");
+
+		descriptor.dispose();
+
+		assertEquals(1, disposeCount);
+	}
+
+	@Test
+	public void equalsNull() {
+		final Object element1 = new Object();
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor1 = new ObjectLocationDescriptor(base, element1,
+				"test descriptor1");
+
+		// CHECKSTYLE:OFF
+		assertFalse(descriptor1.equals(null));
+		// CHECKSTYLE:ON
+	}
+
+	@Test
+	public void equalsFalse() {
+		final Object element1 = new Object();
+		final Object element2 = new Object();
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor1 = new ObjectLocationDescriptor(base, element1,
+				"test descriptor1");
+		final ObjectLocationDescriptor descriptor2 = new ObjectLocationDescriptor(base, element2,
+				"test descriptor2");
+
+		assertFalse(descriptor1.equals(descriptor2));
+		assertFalse(descriptor2.equals(descriptor1));
+	}
+
+	@Test
+	public void equalsTrue() {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor1 = new ObjectLocationDescriptor(base, element,
+				"test descriptor1");
+		final ObjectLocationDescriptor descriptor2 = new ObjectLocationDescriptor(base, element,
+				"test descriptor2");
+
+		assertTrue(descriptor1.equals(descriptor2));
+		assertTrue(descriptor2.equals(descriptor1));
+	}
+
+	@Test
+	public void getLocationNotExisting() {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor = new ObjectLocationDescriptor(base, element,
+				"test descriptor");
+
+		final ILocation found = descriptor.getLocation();
+
+		assertNull(found);
+	}
+
+	@Test
+	public void getLocationExisting() {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor = new ObjectLocationDescriptor(base, element,
+				"test descriptor");
+		final TestLocation1 location = new TestLocation1();
+		location.setObject(element);
+		base.getContents().add(location);
+
+		final ILocation found = descriptor.getLocation();
+
+		assertEquals(location, found);
+	}
+
+	@Test
+	public void getName() {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor = new ObjectLocationDescriptor(base, element,
+				"test descriptor");
+
+		assertEquals("test descriptor", descriptor.getName());
+	}
+
+	@Test
+	public void getOrCreateNotExcisting() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor = new ObjectLocationDescriptor(base, element,
+				"test descriptor");
+		base.getFactory().addDescriptor(ITestLocation.class,
+				new BaseElementFactory.FactoryDescriptor<TestLocation1>(TestLocation1.class));
+
+		final ILocation location = descriptor.getOrCreate();
+
+		assertTrue(location instanceof ITestLocation);
+		assertEquals(element, ((ITestLocation)location).getObject());
+	}
+
+	@Test
+	public void getOrCreateExcisting() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor = new ObjectLocationDescriptor(base, element,
+				"test descriptor");
+		final TestLocation1 location = new TestLocation1();
+		location.setObject(element);
+		base.getContents().add(location);
+
+		final ILocation res = descriptor.getOrCreate();
+
+		assertTrue(location == res);
+	}
+
+	@Test
+	public void hashCodeTest() {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor = new ObjectLocationDescriptor(base, element,
+				"test descriptor");
+		final TestLocation1 location = new TestLocation1();
+		location.setObject(element);
+		base.getContents().add(location);
+
+		assertEquals(element.hashCode(), descriptor.hashCode());
+	}
+
+	@Test
+	public void setElementNull() {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor = new ObjectLocationDescriptor(base, element,
+				"test descriptor");
+
+		descriptor.setElement(null);
+
+		assertNull(descriptor.getElement());
+	}
+
+	@Test
+	public void setElement() {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor = new ObjectLocationDescriptor(base, element,
+				"test descriptor");
+
+		final Object otherElement = new Object();
+		descriptor.setElement(otherElement);
+
+		assertEquals(otherElement, descriptor.getElement());
+	}
+
+	@Test
+	public void updateNull() {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor = new ObjectLocationDescriptor(base, element,
+				"test descriptor");
+
+		descriptor.update(null);
+
+		assertNull(descriptor.getElement());
+	}
+
+	@Test
+	public void updateElement() {
+		final IBase base = new TestBase();
+		final ObjectLocationDescriptor descriptor = new ObjectLocationDescriptor(base, element,
+				"test descriptor");
+
+		final Object otherElement = new Object();
+		descriptor.update(otherElement);
+
+		assertEquals(otherElement, descriptor.getElement());
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/connector/ConnectorRegistryTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/connector/ConnectorRegistryTests.java
new file mode 100644
index 0000000..4fbe026
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/connector/ConnectorRegistryTests.java
@@ -0,0 +1,516 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.connector;
+
+import org.eclipse.intent.mapping.base.BaseElementFactory.FactoryDescriptor;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.base.ILocationDescriptor;
+import org.eclipse.intent.mapping.connector.AbstractConnector;
+import org.eclipse.intent.mapping.connector.IConnector;
+import org.eclipse.intent.mapping.internal.connector.ConnectorRegistry;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestLocation;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests.TestBase;
+import org.junit.Before;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link ConnectorRegistry}.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class ConnectorRegistryTests {
+
+	/**
+	 * A test {@link IConnector} implementation.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestConnector1 extends AbstractConnector {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationType(java.lang.Class,
+		 *      java.lang.Object)
+		 */
+		public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+				Object element) {
+			final Class<? extends ILocation> res;
+
+			if (containerType == TestLocation1.class) {
+				res = getType();
+			} else {
+				res = null;
+			}
+
+			return res;
+		}
+
+		@Override
+		protected void initLocation(ILocationContainer container, ILocation location, Object element) {
+			((ITestLocation1)location).setObject(element);
+		}
+
+		@Override
+		protected boolean match(ILocation location, Object element) {
+			return location.getContainer() instanceof TestLocation1 && ((ITestLocation1)location)
+					.getObject() == element;
+		}
+
+		@Override
+		protected boolean canUpdate(Object element) {
+			return true;
+		}
+
+		public String getName(ILocation location) {
+			final String res;
+
+			if (location.getContainer() instanceof TestLocation1) {
+				res = "TestLocation1 " + ((TestLocation1)location).getObject().toString();
+			} else {
+				res = null;
+			}
+
+			return res;
+		}
+
+		public ILocationDescriptor getLocationDescriptor(IBase base, Object element) {
+			final ILocationDescriptor res;
+
+			res = new ObjectLocationDescriptor(base, element, "TestLocation1 " + element.toString());
+
+			return res;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.connector.IConnector#getElement(org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public Object getElement(ILocation location) {
+			final Object res;
+
+			if (location instanceof TestLocation1) {
+				res = ((TestLocation1)location).getObject();
+			} else {
+				res = null;
+			}
+
+			return res;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.connector.IConnector#getType()
+		 */
+		public Class<? extends ILocation> getType() {
+			return ITestLocation1.class;
+		}
+
+	}
+
+	/**
+	 * A test location interface.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public interface ITestLocation1 extends ILocation {
+
+		void setObject(Object o);
+
+		Object getObject();
+
+	}
+
+	/**
+	 * A test location.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestLocation1 extends TestLocation implements ITestLocation1 {
+
+	}
+
+	/**
+	 * A test {@link IConnector} implementation.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestConnector2 extends AbstractConnector {
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.connector.IConnector#getLocationType(java.lang.Class,
+		 *      java.lang.Object)
+		 */
+		public Class<? extends ILocation> getLocationType(Class<? extends ILocationContainer> containerType,
+				Object element) {
+			final Class<? extends ILocation> res;
+
+			if (containerType == TestLocation2.class) {
+				res = getType();
+			} else {
+				res = null;
+			}
+
+			return res;
+		}
+
+		@Override
+		protected void initLocation(ILocationContainer container, ILocation location, Object element) {
+			((ITestLocation2)location).setObject(element);
+		}
+
+		@Override
+		protected boolean match(ILocation location, Object element) {
+			return location.getContainer() instanceof TestLocation2 && ((ITestLocation2)location)
+					.getObject() == element;
+		}
+
+		@Override
+		protected boolean canUpdate(Object element) {
+			return true;
+		}
+
+		public String getName(ILocation location) {
+			final String res;
+
+			if (location.getContainer() instanceof TestLocation2) {
+				res = "TestLocation2 " + ((TestLocation2)location).getObject().toString();
+			} else {
+				res = null;
+			}
+
+			return res;
+		}
+
+		public ILocationDescriptor getLocationDescriptor(IBase base, Object element) {
+			final ILocationDescriptor res;
+
+			res = new ObjectLocationDescriptor(base, element, "TestLocation2 " + element.toString());
+
+			return res;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.connector.IConnector#getElement(org.eclipse.intent.mapping.base.ILocation)
+		 */
+		public Object getElement(ILocation location) {
+			final Object res;
+
+			if (location instanceof TestLocation2) {
+				res = ((TestLocation2)location).getObject();
+			} else {
+				res = null;
+			}
+
+			return res;
+		}
+
+		/**
+		 * {@inheritDoc}
+		 *
+		 * @see org.eclipse.intent.mapping.connector.IConnector#getType()
+		 */
+		public Class<? extends ILocation> getType() {
+			return ITestLocation2.class;
+		}
+
+	}
+
+	/**
+	 * A test location interface.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public interface ITestLocation2 extends ITestLocation1 {
+
+		void setObject(Object o);
+
+		Object getObject();
+
+	}
+
+	/**
+	 * A test location.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestLocation2 extends TestLocation implements ITestLocation2 {
+
+	}
+
+	/**
+	 * The {@link ConnectorRegistry} to test.
+	 */
+	private ConnectorRegistry connectorRegistery;
+
+	@Before
+	public void before() {
+		connectorRegistery = new ConnectorRegistry();
+	}
+
+	@Test
+	public void register() {
+		final IConnector connector = new TestConnector1();
+		connectorRegistery.register(connector);
+
+		assertTrue(connectorRegistery.getConnector(connector.getType()) instanceof TestConnector1);
+	}
+
+	@Test
+	public void unregister() {
+		final IConnector connector = new TestConnector1();
+		connectorRegistery.register(connector);
+
+		assertTrue(connectorRegistery.getConnector(connector.getType()) instanceof TestConnector1);
+
+		connectorRegistery.unregister(connector);
+
+		assertNull(connectorRegistery.getConnector(connector.getType()));
+	}
+
+	@Test
+	public void getConnector() {
+		final IConnector connector1 = new TestConnector1();
+		final IConnector connector2 = new TestConnector2();
+		connectorRegistery.register(connector1);
+		connectorRegistery.register(connector2);
+
+		assertTrue(connectorRegistery.getConnector(connector1.getType()) instanceof TestConnector1);
+		assertTrue(connectorRegistery.getConnector(connector2.getType()) instanceof TestConnector2);
+	}
+
+	@Test
+	public void createLocationNoConnectors() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new TestBase();
+		final ILocation container = new TestLocation1();
+		container.setContainer(base);
+		final Object element = new Object();
+
+		final ILocation location = connectorRegistery.createLocation(container, element);
+
+		assertEquals(null, location);
+	}
+
+	@Test(expected = java.lang.IllegalArgumentException.class)
+	public void createLocationNotRegisteredInBase() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new TestBase();
+		final ILocation container = new TestLocation1();
+		container.setContainer(base);
+		final TestConnector1 connector1 = new TestConnector1();
+		final TestConnector2 connector2 = new TestConnector2();
+		final Object element = new Object();
+
+		connectorRegistery.register(connector1);
+		connectorRegistery.register(connector2);
+
+		final ILocation location = connectorRegistery.createLocation(container, element);
+
+		assertTrue(location instanceof ITestLocation1);
+		assertEquals(element, ((ITestLocation1)location).getObject());
+	}
+
+	@Test
+	public void createLocationFirstConnector() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new TestBase();
+		final ILocation container = new TestLocation1();
+		container.setContainer(base);
+		final TestConnector1 connector1 = new TestConnector1();
+		final TestConnector2 connector2 = new TestConnector2();
+		final Object element = new Object();
+
+		base.getFactory().addDescriptor(ITestLocation1.class, new FactoryDescriptor<TestLocation1>(
+				TestLocation1.class));
+		base.getFactory().addDescriptor(ITestLocation2.class, new FactoryDescriptor<TestLocation2>(
+				TestLocation2.class));
+
+		connectorRegistery.register(connector1);
+		connectorRegistery.register(connector2);
+
+		final ILocation location = connectorRegistery.createLocation(container, element);
+
+		assertTrue(location instanceof ITestLocation1);
+		assertEquals(element, ((ITestLocation1)location).getObject());
+	}
+
+	@Test
+	public void createLocationSecondConnector() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new TestBase();
+		final ILocation container = new TestLocation2();
+		container.setContainer(base);
+		final TestConnector1 connector1 = new TestConnector1();
+		final TestConnector2 connector2 = new TestConnector2();
+		final Object element = new Object();
+
+		base.getFactory().addDescriptor(ITestLocation1.class, new FactoryDescriptor<TestLocation1>(
+				TestLocation1.class));
+		base.getFactory().addDescriptor(ITestLocation2.class, new FactoryDescriptor<TestLocation2>(
+				TestLocation2.class));
+
+		connectorRegistery.register(connector1);
+		connectorRegistery.register(connector2);
+
+		final ILocation location = connectorRegistery.createLocation(container, element);
+
+		assertTrue(location instanceof ITestLocation2);
+		assertEquals(element, ((ITestLocation2)location).getObject());
+	}
+
+	@Test
+	public void getLocationNoConnectors() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final ILocation container = new TestLocation1();
+		final Object element = new Object();
+
+		final ILocation location = connectorRegistery.getLocation(container, element);
+
+		assertEquals(null, location);
+	}
+
+	@Test
+	public void getLocationFirstConnector() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new TestBase();
+		final ILocation container = new TestLocation1();
+		container.setContainer(base);
+		final TestConnector1 connector1 = new TestConnector1();
+		final TestConnector2 connector2 = new TestConnector2();
+		final Object element = new Object();
+
+		base.getFactory().addDescriptor(ITestLocation1.class, new FactoryDescriptor<TestLocation1>(
+				TestLocation1.class));
+		base.getFactory().addDescriptor(ITestLocation2.class, new FactoryDescriptor<TestLocation2>(
+				TestLocation2.class));
+
+		connectorRegistery.register(connector1);
+		connectorRegistery.register(connector2);
+
+		final ILocation location = connectorRegistery.createLocation(container, element);
+		final ILocation found = connectorRegistery.getLocation(container, element);
+
+		assertTrue(location instanceof ITestLocation1);
+		assertEquals(element, ((ITestLocation1)location).getObject());
+		assertEquals(location, found);
+	}
+
+	@Test
+	public void getLocationSecondConnector() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new TestBase();
+		final ILocation container = new TestLocation2();
+		container.setContainer(base);
+		final TestConnector1 connector1 = new TestConnector1();
+		final TestConnector2 connector2 = new TestConnector2();
+		final Object element = new Object();
+
+		base.getFactory().addDescriptor(ITestLocation1.class, new FactoryDescriptor<TestLocation1>(
+				TestLocation1.class));
+		base.getFactory().addDescriptor(ITestLocation2.class, new FactoryDescriptor<TestLocation2>(
+				TestLocation2.class));
+
+		connectorRegistery.register(connector1);
+		connectorRegistery.register(connector2);
+
+		final ILocation location = connectorRegistery.createLocation(container, element);
+		final ILocation found = connectorRegistery.getLocation(container, element);
+
+		assertTrue(location instanceof ITestLocation2);
+		assertEquals(element, ((ITestLocation2)location).getObject());
+		assertEquals(location, found);
+	}
+
+	@Test
+	public void getNameMarkedAsDeleted() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new TestBase();
+		final ILocation container = new TestLocation1();
+		container.setContainer(base);
+		final TestConnector1 connector1 = new TestConnector1();
+		final TestConnector2 connector2 = new TestConnector2();
+		final Object element = new Object();
+
+		base.getFactory().addDescriptor(ITestLocation1.class, new FactoryDescriptor<TestLocation1>(
+				TestLocation1.class));
+		base.getFactory().addDescriptor(ITestLocation2.class, new FactoryDescriptor<TestLocation2>(
+				TestLocation2.class));
+
+		connectorRegistery.register(connector1);
+		connectorRegistery.register(connector2);
+
+		final ILocation location = connectorRegistery.createLocation(container, element);
+		location.setMarkedAsDeleted(true);
+
+		assertEquals("(deleted)", connectorRegistery.getName(location));
+	}
+
+	@Test
+	public void getNameFirstConnector() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new TestBase();
+		final ILocation container = new TestLocation1();
+		container.setContainer(base);
+		final TestConnector1 connector1 = new TestConnector1();
+		final TestConnector2 connector2 = new TestConnector2();
+		final Object element = new Object();
+
+		base.getFactory().addDescriptor(ITestLocation1.class, new FactoryDescriptor<TestLocation1>(
+				TestLocation1.class));
+		base.getFactory().addDescriptor(ITestLocation2.class, new FactoryDescriptor<TestLocation2>(
+				TestLocation2.class));
+
+		connectorRegistery.register(connector1);
+		connectorRegistery.register(connector2);
+
+		final ILocation location = connectorRegistery.createLocation(container, element);
+
+		assertTrue(connectorRegistery.getName(location).startsWith("TestLocation1 "));
+	}
+
+	@Test
+	public void getNameSecondConnector() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new TestBase();
+		final ILocation container = new TestLocation2();
+		container.setContainer(base);
+		final TestConnector1 connector1 = new TestConnector1();
+		final TestConnector2 connector2 = new TestConnector2();
+		final Object element = new Object();
+
+		base.getFactory().addDescriptor(ITestLocation1.class, new FactoryDescriptor<TestLocation1>(
+				TestLocation1.class));
+		base.getFactory().addDescriptor(ITestLocation2.class, new FactoryDescriptor<TestLocation2>(
+				TestLocation2.class));
+
+		connectorRegistery.register(connector1);
+		connectorRegistery.register(connector2);
+
+		final ILocation location = connectorRegistery.createLocation(container, element);
+
+		assertTrue(connectorRegistery.getName(location).startsWith("TestLocation2 "));
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/connector/ConnectorTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/connector/ConnectorTests.java
new file mode 100644
index 0000000..39e9c33
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/connector/ConnectorTests.java
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.connector;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+/**
+ * Aggregates tests for the org.eclipse.intent.mapping plug-in.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@RunWith(Suite.class)
+@SuiteClasses(value = {ConnectorRegistryTests.class })
+public class ConnectorTests {
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/content/ContentTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/content/ContentTests.java
new file mode 100644
index 0000000..42cb552
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/content/ContentTests.java
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.content;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+/**
+ * Aggregates tests for the org.eclipse.intent.mapping plug-in.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@RunWith(Suite.class)
+@SuiteClasses(value = {FileTypeRegistryTests.class })
+public class ContentTests {
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/content/FileTypeRegistryTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/content/FileTypeRegistryTests.java
new file mode 100644
index 0000000..cf1fcc0
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/content/FileTypeRegistryTests.java
@@ -0,0 +1,152 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.content;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Collections;
+import java.util.LinkedHashSet;
+import java.util.Set;
+
+import org.eclipse.intent.mapping.MappingUtils;
+import org.eclipse.intent.mapping.content.IFileType;
+import org.eclipse.intent.mapping.content.IFileTypeProvider;
+import org.eclipse.intent.mapping.internal.content.FileType;
+import org.eclipse.intent.mapping.internal.content.FileTypeRegistry;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link FileTypeRegistry}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class FileTypeRegistryTests {
+
+	@Test
+	public void getFileTypeNull() {
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileType(null);
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getFileTypeNotRegistered() {
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileType("someID");
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getFileType() {
+		MappingUtils.getFileTypeRegistry().registerFileType("someID", Collections.<String> emptySet());
+
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileType("someID");
+
+		assertEquals("someID", result.getID());
+
+		MappingUtils.getFileTypeRegistry().unregisterFileType("someID");
+	}
+
+	@Test
+	public void getFileTypeForNullNull() throws IOException {
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileTypeFor(null, null);
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getFileTypeFor() throws IOException {
+		final IFileTypeProvider provider = new IFileTypeProvider() {
+
+			public IFileType getFileTypeFor(InputStream contents, String name) throws IOException {
+				final IFileType res;
+
+				if (name != null && name.endsWith(".some")) {
+					res = new FileType("someID");
+				} else {
+					res = null;
+				}
+
+				return res;
+			}
+		};
+		MappingUtils.getFileTypeRegistry().getFileTypeProviders().add(provider);
+		MappingUtils.getFileTypeRegistry().registerFileType("someID", Collections.<String> emptySet());
+
+		final IFileType result = MappingUtils.getFileTypeRegistry().getFileTypeFor(null, "test.some");
+
+		assertEquals("someID", result.getID());
+
+		MappingUtils.getFileTypeRegistry().unregisterFileType("someID");
+	}
+
+	@Test
+	public void isKindOfNullNull() {
+		final boolean result = MappingUtils.getFileTypeRegistry().isKindOf(null, null);
+
+		assertFalse(result);
+	}
+
+	@Test
+	public void isKindOfNotRegistered() {
+		final boolean result = MappingUtils.getFileTypeRegistry().isKindOf("someID", "someSuperID");
+
+		assertFalse(result);
+	}
+
+	@Test
+	public void isKindOfFalse() {
+		MappingUtils.getFileTypeRegistry().registerFileType("someID", Collections.<String> emptySet());
+
+		final boolean result = MappingUtils.getFileTypeRegistry().isKindOf("someID", "someSuperID");
+
+		assertFalse(result);
+
+		MappingUtils.getFileTypeRegistry().unregisterFileType("someID");
+	}
+
+	@Test
+	public void isKindOfDirect() {
+		Set<String> superTypes = new LinkedHashSet<String>();
+		superTypes.add("someSuperID");
+		MappingUtils.getFileTypeRegistry().registerFileType("someID", superTypes);
+
+		final boolean result = MappingUtils.getFileTypeRegistry().isKindOf("someID", "someSuperID");
+
+		assertTrue(result);
+
+		MappingUtils.getFileTypeRegistry().unregisterFileType("someID");
+	}
+
+	@Test
+	public void isKindOfIndirect() {
+		Set<String> someSuperTypes = new LinkedHashSet<String>();
+		someSuperTypes.add("someIntermediateSuperID");
+		MappingUtils.getFileTypeRegistry().registerFileType("someID", someSuperTypes);
+		Set<String> superTypes = new LinkedHashSet<String>();
+		superTypes.add("someSuperID");
+		MappingUtils.getFileTypeRegistry().registerFileType("someIntermediateSuperID", superTypes);
+
+		final boolean result = MappingUtils.getFileTypeRegistry().isKindOf("someID", "someSuperID");
+
+		assertTrue(result);
+
+		MappingUtils.getFileTypeRegistry().unregisterFileType("someID");
+		MappingUtils.getFileTypeRegistry().unregisterFileType("someIntermediateSuperID");
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/internal/base/BaseTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/internal/base/BaseTests.java
new file mode 100644
index 0000000..edcc331
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/internal/base/BaseTests.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.internal.base;
+
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+/**
+ * Aggregates tests for the org.eclipse.intent.mapping plug-in.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@RunWith(Suite.class)
+@SuiteClasses(value = {BaseRegistryTests.class, BaseElementFactoryTests.class })
+public class BaseTests {
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextConnectorParametrizedTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextConnectorParametrizedTests.java
new file mode 100644
index 0000000..1574ddf
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextConnectorParametrizedTests.java
@@ -0,0 +1,395 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.text;
+
+import java.io.BufferedInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.ILocationContainer;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestLocation;
+import org.eclipse.intent.mapping.text.ITextContainer;
+import org.eclipse.intent.mapping.text.ITextLocation;
+import org.eclipse.intent.mapping.text.TextConnector;
+import org.eclipse.intent.mapping.text.TextConnector.TextContainerHelper;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.junit.runners.Parameterized.Parameters;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+/**
+ * Tests {@link TextConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@RunWith(Parameterized.class)
+public class TextConnectorParametrizedTests {
+
+	/**
+	 * Test {@link ITextContainer}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestTextContainerLocation extends TestLocation implements ITextContainer {
+
+		/**
+		 * The {@link List} of children.
+		 */
+		private final List<ILocation> children = new ArrayList<ILocation>();
+
+		/**
+		 * The containing text.
+		 */
+		private String text;
+
+		public void setText(String text) {
+			this.text = text;
+		}
+
+		public String getText() {
+			return text;
+		}
+
+		@Override
+		public List<ILocation> getContents() {
+			return children;
+		}
+
+	}
+
+	/**
+	 * Test {@link ITextLocation}.
+	 *
+	 * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+	 */
+	public static class TestTextLocation extends TestLocation implements ITextLocation {
+
+		/**
+		 * the container.
+		 */
+		private ILocationContainer container;
+
+		/**
+		 * The start offset.
+		 */
+		private int startOffset;
+
+		/**
+		 * The end offset.
+		 */
+		private int endOffset;
+
+		@Override
+		public void setContainer(ILocationContainer container) {
+			this.container = container;
+		}
+
+		@Override
+		public ILocationContainer getContainer() {
+			return container;
+		}
+
+		public void setStartOffset(int offset) {
+			startOffset = offset;
+		}
+
+		public int getStartOffset() {
+			return startOffset;
+		}
+
+		public void setEndOffset(int offset) {
+			endOffset = offset;
+		}
+
+		public int getEndOffset() {
+			return endOffset;
+		}
+
+	}
+
+	/**
+	 * The original {@link ITextLocation#getText() text}.
+	 */
+	private final String original;
+
+	/**
+	 * The altered {@link ITextLocation#getText() text}.
+	 */
+	private final String altered;
+
+	/**
+	 * The text to test.
+	 */
+	private String testText;
+
+	/**
+	 * The {@link TextContainerHelper}.
+	 */
+	private final TextContainerHelper textContainerHelper = new TextContainerHelper();
+
+	public TextConnectorParametrizedTests(String original, String altered) {
+		this.original = original;
+		this.altered = altered;
+		try {
+			testText = getContent(TextConnectorParametrizedTests.class.getResourceAsStream("/text.txt"),
+					"UTF-8");
+		} catch (IOException e) {
+			e.printStackTrace();
+		}
+	}
+
+	@Parameters
+	public static Iterable<String[]> data() {
+		return Arrays.asList(new String[][] {{"or Fragment may be", "or Fragment may not be", }, {
+				"FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR",
+				"FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE LICENSES MAY REFER TO THE EPL OR", },
+				{"Eclipse Public License Version 1.0 (\"EPL\"). A copy of the EPL is provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html.",
+						"Eclipse Public License Version 1.0 (\"EPL\"). A copy of the EPL is provided with this  Some new text at the Content and is also available at http://www.eclipse.org/legal/epl-v10.html.", },
+				{"Each Feature may be packaged as a sub-directory",
+						"Each Some new text at the Feature may be packaged as a sub-directory", },
+
+				{"is a bundle of one or more Plug-ins and/or Fragments",
+						"is a bundle of one or more Plug-ins and", },
+
+				{"(available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)",
+						"www.opengroup.org/openmotif/supporters/metrolink/license.html)", }, });
+	}
+
+	/**
+	 * Gets the {@link ITextLocation} to test.
+	 * 
+	 * @param container
+	 *            the {@link TestTextContainerLocation}that will contain created {@link ITextLocation}
+	 * @param useAltered
+	 *            if <code>true</code> {@link AbstractTextConnectorTests#altered} is used,
+	 *            {@link AbstractTextConnectorTests#original} is used otherwise
+	 * @param shift
+	 *            the value to add to {@link ITextLocation#getStartOffset() text offset}.
+	 * @return the {@link ITextLocation} to test
+	 */
+	protected ITextLocation createTextLocations(TestTextContainerLocation container) {
+		final ITextLocation res = new TestTextLocation();
+
+		res.setStartOffset(container.getText().indexOf(original));
+		res.setEndOffset(container.getText().indexOf(original) + original.length());
+		res.setContainer(container);
+		container.getContents().add(res);
+
+		return res;
+	}
+
+	protected String createString(int length) {
+		final StringBuilder builder = new StringBuilder(length);
+
+		for (int i = 0; i < length; ++i) {
+			builder.append(' ');
+		}
+
+		return builder.toString();
+	}
+
+	/**
+	 * Gets the content of the given {@link InputStream}.
+	 * 
+	 * @param stream
+	 *            the {@link InputStream}
+	 * @param charsetName
+	 *            The name of a supported {@link java.nio.charset.Charset </code>charset<code>}
+	 * @return a {@link CharSequence} of the content of the given {@link InputStream}
+	 * @throws IOException
+	 *             if the {@link InputStream} can't be read
+	 */
+	public static String getContent(InputStream stream, String charsetName) throws IOException {
+		final int len = 8192;
+		StringBuilder res = new StringBuilder(len);
+		if (len != 0) {
+			InputStreamReader input = new InputStreamReader(new BufferedInputStream(stream), charsetName);
+			char[] buffer = new char[len];
+			int length = input.read(buffer);
+			while (length != -1) {
+				res.append(buffer, 0, length);
+				length = input.read(buffer);
+			}
+			input.close();
+		}
+		return res.toString();
+	}
+
+	@Test
+	public void updateTextContainer() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestTextContainerLocation container = new TestTextContainerLocation();
+		textContainerHelper.updateTextContainer(container.getContainer(), container, testText);
+		final ITextLocation location = createTextLocations(container);
+
+		final int expectedStartOffset = location.getStartOffset();
+		final int expectedEndOffset = location.getEndOffset();
+
+		textContainerHelper.updateTextContainer(container.getContainer(), container, testText);
+
+		assertEquals(testText, container.getText());
+		assertTextLocation(location, expectedStartOffset, expectedEndOffset);
+	}
+
+	@Test
+	public void updateTextContainerPlusShift() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestTextContainerLocation container = new TestTextContainerLocation();
+		textContainerHelper.updateTextContainer(container.getContainer(), container, testText);
+		final ITextLocation location = createTextLocations(container);
+
+		final int expectedStartOffset = location.getStartOffset() + 20;
+		final int expectedEndOffset = location.getEndOffset() + 20;
+
+		final String newText = createString(20) + container.getText();
+		textContainerHelper.updateTextContainer(container.getContainer(), container, newText);
+
+		assertEquals(newText, container.getText());
+		assertTextLocation(location, expectedStartOffset, expectedEndOffset);
+	}
+
+	@Test
+	public void updateTextContainerMinusShift() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestTextContainerLocation container = new TestTextContainerLocation();
+		textContainerHelper.updateTextContainer(container.getContainer(), container, testText);
+		final ITextLocation location = createTextLocations(container);
+
+		final int expectedStartOffset = location.getStartOffset() - 20;
+		final int expectedEndOffset = location.getEndOffset() - 20;
+
+		final String newText = container.getText().substring(20);
+		textContainerHelper.updateTextContainer(container.getContainer(), container, newText);
+
+		assertEquals(newText, container.getText());
+		assertTextLocation(location, expectedStartOffset, expectedEndOffset);
+	}
+
+	@Test
+	public void updateTextContainerAltered() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestTextContainerLocation container = new TestTextContainerLocation();
+		textContainerHelper.updateTextContainer(container.getContainer(), container, testText);
+		final ITextLocation location = createTextLocations(container);
+
+		final int expectedStartOffset = location.getStartOffset();
+		final int expectedEndOffset = location.getStartOffset() + altered.length();
+
+		final String newText = container.getText().replace(original, altered);
+		textContainerHelper.updateTextContainer(container.getContainer(), container, newText);
+
+		assertEquals(newText, container.getText());
+		assertTextLocation(location, expectedStartOffset, expectedEndOffset);
+	}
+
+	@Test
+	public void updateTextContainerPlusShiftAltered() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestTextContainerLocation container = new TestTextContainerLocation();
+		textContainerHelper.updateTextContainer(container.getContainer(), container, testText);
+		final ITextLocation location = createTextLocations(container);
+
+		final int expectedStartOffset = location.getStartOffset() + 20;
+		final int expectedEndOffset = location.getStartOffset() + altered.length() + 20;
+
+		final String newText = createString(20) + container.getText().replace(original, altered);
+		textContainerHelper.updateTextContainer(container.getContainer(), container, newText);
+
+		assertEquals(newText, container.getText());
+		assertTextLocation(location, expectedStartOffset, expectedEndOffset);
+	}
+
+	@Test
+	public void updateTextContainerMinusShiftAltered() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestTextContainerLocation container = new TestTextContainerLocation();
+		textContainerHelper.updateTextContainer(container.getContainer(), container, testText);
+		final ITextLocation location = createTextLocations(container);
+
+		final int expectedStartOffset = location.getStartOffset() - 20;
+		final int expectedEndOffset = location.getStartOffset() + altered.length() - 20;
+
+		final String newText = container.getText().replace(original, altered).substring(20);
+		textContainerHelper.updateTextContainer(container.getContainer(), container, newText);
+
+		assertEquals(newText, container.getText());
+		assertTextLocation(location, expectedStartOffset, expectedEndOffset);
+	}
+
+	private void assertTextLocation(ITextLocation location, int expectedStartOffset, int expectedEndOffset) {
+		assertEquals(expectedStartOffset, location.getStartOffset());
+		assertEquals(expectedEndOffset, location.getEndOffset());
+	}
+
+	@Test
+	public void updateTextContaineremoved() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestTextContainerLocation container = new TestTextContainerLocation();
+		textContainerHelper.updateTextContainer(container.getContainer(), container, testText);
+		final ITextLocation location = createTextLocations(container);
+
+		final int expectedStartOffset = location.getStartOffset();
+		final int expectedEndOffset = expectedStartOffset;
+
+		final String newText = container.getText().replace(original, "");
+		textContainerHelper.updateTextContainer(container.getContainer(), container, newText);
+
+		assertEquals(newText, container.getText());
+		assertNull(location.getContainer());
+		assertTextLocation(location, expectedStartOffset, expectedEndOffset);
+	}
+
+	@Test
+	public void updateTextContainerPlusShiftRemoved() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestTextContainerLocation container = new TestTextContainerLocation();
+		textContainerHelper.updateTextContainer(container.getContainer(), container, testText);
+		final ITextLocation location = createTextLocations(container);
+
+		final int expectedStartOffset = location.getStartOffset() + 20;
+		final int expectedEndOffset = expectedStartOffset;
+
+		final String newText = createString(20) + container.getText().replace(original, "");
+		textContainerHelper.updateTextContainer(container.getContainer(), container, newText);
+
+		assertEquals(newText, container.getText());
+		assertNull(location.getContainer());
+		assertTextLocation(location, expectedStartOffset, expectedEndOffset);
+	}
+
+	@Test
+	public void updateTextContainerMinusShiftRemoved() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final TestTextContainerLocation container = new TestTextContainerLocation();
+		textContainerHelper.updateTextContainer(container.getContainer(), container, testText);
+		final ITextLocation location = createTextLocations(container);
+
+		final int expectedStartOffset = location.getStartOffset() - 20;
+		final int expectedEndOffset = expectedStartOffset;
+
+		final String newText = container.getText().replace(original, "").substring(20);
+		textContainerHelper.updateTextContainer(container.getContainer(), container, newText);
+
+		assertEquals(newText, container.getText());
+		assertNull(location.getContainer());
+		assertTextLocation(location, expectedStartOffset, expectedEndOffset);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextConnectorTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextConnectorTests.java
new file mode 100644
index 0000000..fcb4d71
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextConnectorTests.java
@@ -0,0 +1,166 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.text;
+
+import org.eclipse.intent.mapping.base.BaseElementFactory;
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.base.ILink;
+import org.eclipse.intent.mapping.base.ILocation;
+import org.eclipse.intent.mapping.base.IReport;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.ITestLocation;
+import org.eclipse.intent.mapping.tests.base.BaseElementFactoryTests.TestReport;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests;
+import org.eclipse.intent.mapping.tests.text.TextConnectorParametrizedTests.TestTextContainerLocation;
+import org.eclipse.intent.mapping.tests.text.TextConnectorParametrizedTests.TestTextLocation;
+import org.eclipse.intent.mapping.text.ITextContainer;
+import org.eclipse.intent.mapping.text.ITextLocation;
+import org.eclipse.intent.mapping.text.TextConnector;
+import org.eclipse.intent.mapping.text.TextRegion;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+/**
+ * Tests {@link TextConnector}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class TextConnectorTests extends TextConnector {
+
+	/**
+	 * The {@link TextContainerHelper}.
+	 */
+	private final TextContainerHelper textContainerHelper = new TextContainerHelper();
+
+	@Test
+	public void getLocationTypeNotTypeContainer() {
+		final Class<? extends ILocation> type = getLocationType(ITestLocation.class, "");
+
+		assertNull(type);
+	}
+
+	@Test
+	public void getLocationTypeNotElement() {
+		final Class<? extends ILocation> type = getLocationType(TestTextLocation.class, new Object());
+
+		assertNull(type);
+	}
+
+	@Test
+	public void getLocationTypeTest() {
+		final Class<? extends ILocation> type = getLocationType(TestTextContainerLocation.class,
+				new TextRegion(null, "", 0, 0));
+
+		assertEquals(ITextLocation.class, type);
+	}
+
+	@Test
+	public void initLocation() {
+		final ITextContainer container = new TestTextContainerLocation();
+		container.setText("abcdefgh");
+		final ITextLocation location = new TestTextLocation();
+		location.setContainer(container);
+
+		super.initLocation(container, location, new TextRegion(null, "cd", 2, 4));
+
+		assertEquals(2, location.getStartOffset());
+		assertEquals(4, location.getEndOffset());
+	}
+
+	@Test
+	public void getLocation() {
+		final ITextContainer container = new TestTextContainerLocation();
+		container.setText("abcdefgh");
+		final ITextLocation location = new TestTextLocation();
+		location.setContainer(container);
+		container.getContents().add(location);
+
+		super.initLocation(container, location, new TextRegion(null, "cd", 2, 4));
+
+		assertEquals(location, super.getLocation(container, new TextRegion(null, "cd", 2, 4)));
+	}
+
+	@Test
+	public void getName() {
+		final ITextContainer container = new TestTextContainerLocation();
+		container.setText("abcdefgh");
+		final ITextLocation location = new TestTextLocation();
+		location.setContainer(container);
+		container.getContents().add(location);
+
+		super.initLocation(container, location, new TextRegion(null, "cd", 2, 4));
+
+		assertEquals("\"cd\"", super.getName(location));
+	}
+
+	@Test
+	public void updateTextContainerDeleted() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IReport.class, new BaseElementFactory.FactoryDescriptor<TestReport>(
+				TestReport.class));
+		final ITextContainer container = new TestTextContainerLocation();
+		container.setContainer(base);
+		container.setText("abcdefgh");
+		final ITextLocation location = new TestTextLocation();
+		location.setContainer(container);
+		container.getContents().add(location);
+		final ILocation target = new TestTextLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getTargetLinks().add(link);
+		link.setSource(location);
+		target.getSourceLinks().add(link);
+		link.setTarget(target);
+
+		super.initLocation(container, location, new TextRegion(null, "cd", 2, 4));
+
+		textContainerHelper.updateTextContainer(container.getContainer(), container, "abefgh");
+
+		assertTrue(location.isMarkedAsDeleted());
+		assertEquals(1, base.getReports().size());
+		final IReport report = base.getReports().get(0);
+		assertEquals(link, report.getLink());
+		assertEquals("\"cd\" at (2, 4) has been deleted.", report.getDescription());
+	}
+
+	@Test
+	public void updateTextContainerChanged() throws InstantiationException, IllegalAccessException,
+			ClassNotFoundException {
+		final IBase base = new BaseRegistryTests.TestBase();
+		base.getFactory().addDescriptor(IReport.class, new BaseElementFactory.FactoryDescriptor<TestReport>(
+				TestReport.class));
+		final ITextContainer container = new TestTextContainerLocation();
+		container.setContainer(base);
+		container.setText("abcdefgh");
+		final ITextLocation location = new TestTextLocation();
+		location.setContainer(container);
+		container.getContents().add(location);
+		final ILocation target = new TestTextLocation();
+		final ILink link = new BaseElementFactoryTests.TestLink();
+		location.getTargetLinks().add(link);
+		link.setSource(location);
+		target.getSourceLinks().add(link);
+		link.setTarget(target);
+
+		super.initLocation(container, location, new TextRegion(null, "cd", 2, 4));
+
+		textContainerHelper.updateTextContainer(container.getContainer(), container, "abc1defgh");
+
+		assertEquals(1, base.getReports().size());
+		final IReport report = base.getReports().get(0);
+		assertEquals(link, report.getLink());
+		assertEquals("\"cd\" at (2, 4) has been changed to \"c1d\" at (2, 5).", report.getDescription());
+	}
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextRegionContainerProviderTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextRegionContainerProviderTests.java
new file mode 100644
index 0000000..d3f273a
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextRegionContainerProviderTests.java
@@ -0,0 +1,71 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.text;
+
+import org.eclipse.intent.mapping.base.IBase;
+import org.eclipse.intent.mapping.tests.base.BaseRegistryTests.TestBase;
+import org.eclipse.intent.mapping.text.TextRegion;
+import org.eclipse.intent.mapping.text.TextRegionContainerProvider;
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+/**
+ * Tests {@link TextRegionContainerProvider}.
+ *
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+public class TextRegionContainerProviderTests {
+
+	@Test
+	public void getContainerNull() {
+		final TextRegionContainerProvider provider = new TextRegionContainerProvider();
+
+		final Object result = provider.getContainer(null);
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getContainerNotTextRegion() {
+		final TextRegionContainerProvider provider = new TextRegionContainerProvider();
+
+		final Object element = new Object();
+		final Object result = provider.getContainer(element);
+
+		assertNull(result);
+	}
+
+	@Test
+	public void getContainer() {
+		final TextRegionContainerProvider provider = new TextRegionContainerProvider();
+
+		final Object container = new Object();
+		final TextRegion region = new TextRegion(container, "text", 10, 14);
+		final Object result = provider.getContainer(region);
+
+		assertEquals(container, result);
+	}
+
+	@Test
+	public void isRegistered() {
+		final IBase base = new TestBase();
+
+		final Object container = new Object();
+		final TextRegion region = new TextRegion(container, "text", 10, 14);
+		final Object result = base.getContainerProviderRegistry().getContainer(region);
+
+		assertEquals(container, result);
+	}
+
+}
diff --git a/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextTests.java b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextTests.java
new file mode 100644
index 0000000..8b9ef49
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.mapping.tests/src/org/eclipse/intent/mapping/tests/text/TextTests.java
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Obeo - initial API and implementation and/or initial documentation
+ *    ...
+ *******************************************************************************/
+package org.eclipse.intent.mapping.tests.text;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+/**
+ * Aggregates tests for the org.eclipse.intent.mapping.text package.
+ * 
+ * @author <a href="mailto:yvan.lussaud@obeo.fr">Yvan Lussaud</a>
+ */
+@RunWith(Suite.class)
+@SuiteClasses(value = {TextConnectorTests.class, TextConnectorParametrizedTests.class,
+		TextRegionContainerProviderTests.class })
+public class TextTests {
+
+}
diff --git a/mapping/tests/org.eclipse.intent.product.tests/.project b/mapping/tests/org.eclipse.intent.product.tests/.project
new file mode 100644
index 0000000..bab20d0
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.intent.product.tests</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.rcptt.core.builder.q7Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.rcptt.core.rcpttnature</nature>
+	</natures>
+</projectDescription>
diff --git a/mapping/tests/org.eclipse.intent.product.tests/Initial Sirius Workbench.ctx b/mapping/tests/org.eclipse.intent.product.tests/Initial Sirius Workbench.ctx
new file mode 100644
index 0000000..9f8f856
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/Initial Sirius Workbench.ctx
@@ -0,0 +1,24 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Context-Type: org.eclipse.rcptt.ctx.workbench
+Element-Name: Initial Sirius Workbench
+Element-Type: context
+Element-Version: 2.0
+Id: _l8MccPLOEeadt4DOVTJnHw
+Runtime-Version: 2.1.0.201606221726
+Save-Time: 8/25/17 2:22 PM
+
+------=_.q7.content-3d2e0690-ce48-3609-83e0-c704d49f1eaf
+Content-Type: q7/binary
+Entry-Name: .q7.content
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAACVkktPwzAQhO/9FZbv
+bABxQFVSDoBEEQVEEXBDxlnKCr9kb5qWX4/b0hIQz1u0mflmvHZ5MLNGTDEm8q6SO7AtBTrta3KTSjb8
+uLUvDwa90scJoDYUEkLUgRmSRqci+f6tj88P2fN06B3jjMXMUn9D3F0Qc4ZL/Tyv5BNz6BdF27bg7QQy
+t7gbDdeS72M2zvXvhXMpKayv0RRrYfb7iFI4ZbGSQ0dMyogxRWqS2HSVgupK3pv9kdaXZxfHqGreO7q4
+uT51J60UIdcPqJmmOMy6bq20JEFDwN6bBB0pLJvkzclBT4hyStimQddr52buoPY6AeVdOQarQsgGoBoX
+yIUFRqvZTf4uixXkHYfNKqWNxBghoVWOSX8AjN+GXxO6hUJ2xSZrLcKZ/yaya3iLSHCFyTdR47ma0kSx
+jz/7Pm9tBVmeBHAWTL6yXwh/2914ni83ekcvivP7u1QGmfHDucriH4950HsFUEsHCB5KokhmAQAAIgMA
+AFBLAQIUABQACAgIAAAAIQAeSqJIZgEAACIDAAAIAAkAAAAAAAAAAAAAAAAAAAAuY29udGVudFVUBQAB
+AAAAAFBLBQYAAAAAAQABAD8AAAClAQAAAAA=
+------=_.q7.content-3d2e0690-ce48-3609-83e0-c704d49f1eaf--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/Initial Sirius Workspace.ctx b/mapping/tests/org.eclipse.intent.product.tests/Initial Sirius Workspace.ctx
new file mode 100644
index 0000000..b0bdd76
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/Initial Sirius Workspace.ctx
@@ -0,0 +1,222 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Context-Type: org.eclipse.rcptt.ctx.workspace
+Element-Name: Initial Sirius Workspace
+Element-Type: context
+Element-Version: 2.0
+Id: _4A3_UPLNEeadt4DOVTJnHw
+Runtime-Version: 2.1.0.201606221726
+Save-Time: 2/14/17 4:58 PM
+
+------=_contents/sirius.test/representations.aird-41c7f951-33be-3182-ad7e-5b8904f71569
+Content-Type: q7/binary
+Entry-Name: contents/sirius.test/representations.aird
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAADtXXtzo7iy//98CpfP
+vbX33lq/EydOTfZsHs6MZ5OZbF6TZGsrhbFss8HgBRwn8+lvCzDm0QIMCJxZqk6dzRhQt1rdv+6WWtKH
+/7zO5MoL0XRJVQ6rrXqzWiGKqI4kZXJYvb05q+1X//PLvz68SGQ5VyXFODg9UgT5TZf0yutMOnC+bNMv
+oS1FP4DfD6tTw5gfNBrL5bKuziZ1VZs07i8Gziu695Vlx3yj3Wy24LXza3FKZkJNUnRDUESy+mpEdFGT
+5oZJ0PU1EWVprhOzCV3SpIXecL3aaNVba+ZcD55aka1IwkQTZiGtWS/EbcfzLRFVjTC/JLMxFUe70aev
+rb6ZCfO5OTKur2bqiMhLTTKIVieLhv3K6gtFNYRQgU2AkLZQDGlGgL9mvd1YfbJqQjfeZDajIaIyP/R2
+2tGjqPZWX+nSgW5qw7kqhneENfKVGIT+3XB/F/EFUytifpcNRZdwk9O1WqmapiyNDqtP34QdeXD527c+
+Ec6OL44XX5XPJ99+r1Z0IhPRIKM7GD8d3hP3jq9uA+9V4PczaYn8Pjq/vcfadfBjH5hrVX/5V6XywVRo
+C16MtzlonmkpB/1LQXwWJsDtVCPjw6qt6HXz6b8b1cYmH8eyOnajNu2DY0F3mhzC33X7gfOlulRsobm+
+doHpFZlrRCeKZXEnKvwhKURzjQgu6WpFUiRDEmTpO4G3DG1BTOEBSad1F0XXkB/crZ6vGJ/LgjFWtdlB
+Yy4vJpLSAEk4UgGJWBI2VFXW69CQNFE8KmQ+ravWE1CvX50+m1T0PxRhRg5/uiKUsZ/+tAXTWEsmM0Fh
+qhciKJOkt103cdtsDk6vAX0AH8VT6wcXyVF/8NpHSJo9XilJRZQFXa/YzdnEV+SPlBXa9hVDk4jOGDTv
+e28eHhazfcxi1YUmQisfL86eTgdHH6+OLq4d4kB+JBiCi9iq+QOsl0BhHKRgfXhtggxEDTKZEYrrTKnM
+iKAvNPOtWxiTw+ql9EpkF0/AlTiV5JFGFIyzL6BjLrbIa2t+hJCxvgIr7riZIi/dbw/Bt93ENyXf7mCI
+Zn2122zuWZqetPWds9+Zre81mzs+1jds/u3oGBsi66tOs9X0yG7ZeVCjZGeyIAtv6sIA69QNTfBCkMPK
+ypH72QlqWCPQxcaqj4EnpiPTMXrXqmaAGV77PJ0p4Tg02S2fSTIEXay2X6LaZvUmrC9TYU6C1MAQEPsc
+A0h+MZHodggB3sL65RORJlMY1X1ARgNgUbRB0c9cnKE8VhfKSPezEux45fWwutMGnXqD/+43vbRwMWxm
+LLs3iG2zkGB5hfmJNLa62xU5IgG0zkTfbJAAGTEWEnSHiLPJGAmeUiHBZp1X2Rge7PzT3oRz59VB7jAI
+6hUJVUlhENqOHMzsYBBQIAEMZgR8QBwHvt2eBXydNg/g6442AL6b+0jj3Yx8d4oYRGbAB61zBT51EB/4
+Xo+kZ+62nw74Etg+SJib7UPbedp+d1Sg7XdHjKCnxdH2u9PpBrZ/17zI1vb3BohBZGb70PqGtp9A/YEI
+N/WHtnNUf9CFbckAgBXcGLo7u9kbwd5A3sAI7k+QqbRUavqCJMbZGcGLytMBHl8ikMB0gMdLna8DBHbS
+Bb+bdn4D739Sa3HvfO7eH9SLH/y9qDnCH6BAcd4fiId7/+4OB++//w0xRybwPXQiM9eNyQfHNzPg2+9h
+M/kZAt+XDYCvf8F5ygPYyT3rBwlzm/yEtnOc/ARNLM72gXi47e83Odh+77m5ge0LeqTj3pg8R9vvPSOu
+NkPbb7PXVYK2/6kTGTCmtP12rEWITG0fJMzN9qHtHG0fNLE42wfiEV3NwtZr5zsb2PqwiyBDGmsE8hxt
+vXa+u6GtJ1B3IMJN3aHtHNUdBmNbsnxgBXd87Y7l+FpdDo6v9oaVOrCMYTTIeLobyPM0hrceZ8e3QcJ7
+NkTqAzJ2fLknvCBhfkjw1ssTCd6wipycHB8QZyx1tTezfXa37Sokf8fNUqQop0tGE7zR/mjiNYnfHtmr
+vzvNZstrEl96YXVW7MU4QZsQgw1fKSDj7eIrVhpofdWlHQjodrIhp4QQfYOhrrWasbV8s6612CUd0LV2
+dl1rYavGVIs59eyLyK4W6VInllXPgFDqnrFNFNhRiGioWgCdqF0hhDXog1m8fgWfSbKkEEGrVv5azObn
+kvJ8Dc0u9MPq0VB9CUYpIZAMCIdygEAURcMTVVY1cKg7veZur7c5Zg6JMrIKWzFurogMf7yQY+ctP1tI
+AGG9eFj9o/lzBf5Xa7W6P1e6zT//6w/zr1rX+r35Z1AsJvgcKeJU1TB2BiMAL8l4s97wsPIwxJbv6MP/
+adZ3f27Wm/8bIGdBWVJyiEo45FoBch8aJo4nRPbHE/a6TBDZb0ZYGYML2RmVpmtkR9di04DE45w9vZsp
+sgOhnJEdKDID0UyRHQgh1sYR2YXf2dPWmSI7ECoG2cGuwpD9RiPpsRtoMLA7N5wGFmLgdLu9+3Ols0+B
+ut3bp0Dd+rmy14HfWj3ntxZFb/pju22+uAvf1Dpt+LHTtFHebKcGDXGAeaGDTRVzg3kglyfMAzkmlARh
+/lbDnMImMI9OxqVBjCFhz+5lCvNAKGeYB4r5wDwQyhfmh4Q9a5kpzAOhYmAe7AoRabYwL3SwdZ5cYR5Y
+QOTrg/nW/t4KvGvtXtuGeTAbAO3Wbm/9s4n01u8mrNfML8FL8MB18QybjOCG60AuT1wXDfbOriCu3+1i
+YZd7YgbfHsIxfBeN43xwHQjljOujW/bOsUxxHQjlOzEDBMM8Vna4DoRSe6xEuA52xT18BxpFh+/AQozw
+fae1wvWdpoPqK0ynDzlB92gPm3XmBt1ALk/oBnIbhOT3n7D4d5M59cyhm0jsqthMoRsI5QzdQDGfkBwI
+5RuSE4ld0ZcpdAOhYkJysCvuIflo73PRITmwEB2S19odB7tbTuTdXk+odPih9/gzVj/GDb2BXJ7oDeQ2
+QO+Hb1iYvtGKaNYTKuNlTiuiQChn9AaK+aA3EMoXvcfLu3zQGwgVg95gV9zRe/z5qmj0BhbiTKi01jMk
+LV7rm5N7LOfnhtNALk+cBnKb4HTvDHnbhdOMXXRrnEZnxtOY/KQWWgSRHU4DoZxxGijmg9NAKF+cntTY
+pw1kitNAqBicBrvijtOT+8eicRpYiMbpVTTd5AXRUxkru7Axc6fX3dnt9JrNvWav3ertZw/ZQD5PyJYu
+2Pvlg5AtnGOzEC7IZuz/W0M2iulprF+6YG+1zhSygVDOkA0U84FsIJQvZEvf2YVQmUI2ECoGssGuuM9p
+A42i57SBheg5be6QDaOMCIJbVA3kkE4zPUTWkP2XwC7CC0L28BGbenBBNmP3Cse57L8EIx/IBkI5QzZQ
+zAeygVC+kP18nFMVIRAqBrLBrrhDNtAoGrKBhVjV3rtOtfcuL9yGoc4Tt4EcG7ezx+lnlb0fPojTo69p
+q73RepJUJq+y97xnitNAKGecBor54DQQyhen5cvQ2s3scBoIFYPTYFcF7+MBDopGcWAhDorv76xQnP7F
+B8VBEfJEcSCXJ4rLl+yy2iCKE3EePqcdWfSX+W5Muc3eHp4pisttbKc4TxQHisyT6DJFcSCEDCtPFG/3
+wgYtQxRv1/BB443ioJYI4TxRHDjIYLd6KhQHFhC98qH43grDa3vcMHxGsOCSG4YDuTwnuYHcBuuS478j
+Crfz35CjnIVWN2eH4UAo50gcKOYTiQOhfCNx5ewsn0gcCBUTiYNdha1L5oDhM4LtaMgVw4GFzbbrtPa7
+dmG3U9fNdVOOouda2Q3k8sR2ILcBtk92Iiq7859lUfTPYQCYIbbrn3EA5Ibt6k1o0Xp22A6E8t2UAwTz
+2ZQDhIrZlAN2VTC2g74Wje3AQoy671xmWdRurhXeQC4lin9o0Mv8Vv+2r1YM3CzoPM/o4kGy3Psbi5VX
+EH969OXL15ujm8HXL08nt9c3Xy8Gj9a/fus/hNxEuLp38USdzRcGGZnqerpm6YpMJN3Pyv4V4nk9QhMZ
+zbk7btrNwTFAg0xGg5kwcb/ooVczsHJPWRgS+UzVZgIYyFCVR/ZP/Vd6yaR10alOtBdJJAcAHiN6f6X5
+wpEsTRTLdZ73z24A31RVNqQ5+8Mb6wUQt/SdWKKyRsn1hd+hfRiqGnxqnoDEGO7rN90gM/ON1fWgRHmR
+NNXk7qDh3MhJL/rU1y/rjV+JpUf2dZ9DWRCffwrapdndQjkQCyMOboOlhPxU9fX4M1ayUapqqapbp6on
+99gqdamqpapunaqeythSXKmqpapunap+PMHmbUpVLVU1V1Wl84n+tzx6evkdmwexE3lNU5eH1TNJlk8l
+YaYqowhtWs2fmBQPqzNBmQqGISh+NYNMUn0mxQ4yvEa0c6psfvkEhHjCftcnS2xGR5+qy4FIBTQWZJ1E
+Wzwyt1a0STRCxOV7FfoQT6p9xot+kbJS/mvQxMNqdxMBk9/Im24SLVLII0F7fhrKC4IJmiW+gmFicoXV
+Y3lgYqAAMfPv1YLCj4wfQzKRlHiKfsx81SdirBx1U/Tof53PVV0yyFbCCFtqXFEERIugyA8BzFuKF9Mx
+Vvnz44cV2cMCSBJD3hIW0sPCdIxVdJaw4IcFQZwSZK3Ivi6mb9UfXAjzOdho+0IdgbSs3zyrN70xssLn
+4/uZvOEie2qZi9Q2kZXQ5rJgjCGbPmjM5QWoUEPVJnUiytJcJ3UyG8PfqkZoqqzXoTFIoRuuNhvm07pq
+PaGiNhfp7lbCXwn51Hz+05/28ytCNQF6ZyLV6qU+XWmEgaGvjchYWMjGufBGtMavoEqGIClEs5l3vjj5
+73azfyILuvmRvhi6euh96ciAQR/CSCFD/SJAJImMjnsc2rRPd4ImCUPvIvSy9jHGVYu+YTHFdrBmajUa
+M4t1S+ggTrpk7pa3n/UQ5t38tk9WAsR7YGAV58Cx+bQ7jHeNLIuRAO12GKJQZhC3ZzbOXsEMssMSuaks
+YeIOipiauUk/IHvsZ/zHVCpGl8K4qdixoJMGtRQuukVZR+JGW7dejyTkbAluukWZQQIBR7fwJceMdIvK
+eRt16+QeqWXOSLduyKuxukSvoUNGa3wdj3Vi8FE16EmIqh0vI28TzlLVgJlQVUOXDDNSNbfYt1HlTuXI
+4vdsVA5COJ4KB/0IUbiTGjIZwU/hgJlQhUMX/v4hCvfxJKLKKoXCQSyragb3II32IUTZ4l57mpGyATOh
+yoYu3WWkbJbAOagZJHM0TeOQuNElolSJG50seo+JG1nzvU7HnvpXZEwg8xczT8aooKOzA1zpHKZCI2XN
+1D6dj40D90jus7Jx9B5XfjZ++R3bdbC2cXTZM76NXwriszBhCft9mffkKvr2+n+IeR9LtZGk0dJ/VRFk
+c3rGZe/w78xNHoTPzeSdSNKZgeJj+NCHEMNHt5vyM/zJFXbyydrw0YXMLTb81Bo2HccA3rQaZq330hko
+Ts4FehESQKLb3vjp2HSMncuw1jF08WuLdSzgXJLsbfF6HR3zS3R++1zSPe7npfsNm7818bjqpGWrcjea
+qx1WqxV1YUzAFUyo79FNmWO3CVcY109WGOdRVRhwVWHurJQUUZ15+MBP/V5KI2N6WG21YVDtrVytpns7
+jmVAm874IlnrB53MBPB5IjIQids0B9g0CWRYz8DZOwYU2Oa2vDSwE3g9hZCSIciSCNIER3UpUEHFCBjo
+y3pjvJDlhjr8q9VtWP16EoZ0B6Jo1CfSuFoZgi1NNLrv0F48Ppf+Xkgj7y4ldL3OWYM7uPp4fEdNRvf3
+KwgC3mq+UcgCZVBqHrR5R3FUzPUteG0k0RYhsjL7q9dbjV9NYfjEhhehxhgPxPA0MqJmt1utTDRCFPvv
+oYnU9E8fZUdbElDHtpNS6u3dNXXzb4s6/dNLHUaaJKWOHRJtUW/vr6nTv23qbc9WUhvizXFx/QpmtBBk
+e1yZCcCJTwF+PO0NgmEcN4ctgncesJOhLW9Hm6kcVG7gP36H59ETlq+IXpB1wjVKwqt80W4jVfOhHsRd
+T++R1u4X7IhJtCA+ThV5lBkBuQhIjwB15saAH80gYpcroAifGONhgIIYH1W+H6PRIHT7yvIxdIyNj2Xh
+ir9wxRboCmt8iYYvk8gkzVheSdipV3aaQSsnolMM7MbjCvNQxGBqwEo58NSCU8rgKxJJnS7420uTKlwv
+MUHwC+GBXhnCb2LpmQXrIPkIIE8Ri0PjBcbi10vsQFWEetuh3uqWsXgBsThaG2i7BLfdH1T61+DGqDC5
+ROWhZZKZBObhFJLF5k+32F1yrA2ugf2rLnbiVkYmA3ngMzqoT4Zi0HT24Sg0WoajWxGOpsWXpz3syoO8
+cn1q85zyfEbTCXFkD7sQjluOD+SibbbM8YvL8WGAIvAvCajuIXc8laD6g+X4N/fsgM6sYI/O8bEyJZqj
+338KpqYV5mXsfHJ3fxF+2tw90F6a3P12hh1LyC93B3pl7l5I7g6S55e7Q+MF5u63M+xI8zJ337rcHd97
+ZUM9/X/eSTtj41kW4TWr6UTh9evx53mGaXqcTWaJ8JzyySlNp01nnqbTRss0/YePKO+a2AnvFswM+hdn
+1FYdePIFl8EFIFaNGmthiRV04nfe8gk6/b3MMP4MazpNKPptiB0lzq/iTKJHY40FkfAuOYOOlTFvupKz
+ZpaRMIxHgSVnQL3AUPnb8KosOcslVObp3+5PME9i+TfPvtjomRO88DnoBIVzzKXycV6srb1pPRez3TRu
+6+F3bEGNnzcBeqU3KWQGBSTPbwYFGi/QLTz8PipnUN7FDAp6pIgN/a7TTuhEykAxKoeVWovPVEq8c1ay
+mFmJSSnZRMtJjVmrnGSiJcYRK8kmWoBPXhMt0HT2Ey3QaDnRshUTLWkRBz1TxkYc57CbnPGGcchO5mjD
+opMMa05lrMYwMdbEOF0nGdYAn7ywBprOHmug0RJrtgJreCa9Dx12XVb/6/AvIm6S9+aZz/q5yzClDWta
+0DRBmZD15Z76L7/1+5dP519PzLsFPzSQN6I/vx489hN+ekXpRnybJhd/JNjyIr9cHOiVuXghuThInl8u
+Do0XmIs/Evau4DIX36ZcvH/BLlwbE8FYaORLDkUNPh/QcJHOPjyOTyxZjNxvYpV5vOqKKbly7/AW1xXT
+Aco+YYBGy4Thh08YgFn2Khmyg8OJ/nfW0f9unOD/VDAEq0HGlIJv00UMHN64yTRhMwgK2cvBL2wGelHB
+Wxk2Nx0dyDZypqUvxVU/CLoRL7jlEloDdUTREepNp++9Vhlab6Kq2UXXnzrsIoe/hBehLqn1a6JJgix9
+tw4eTBBcb4qzXMDbxDt4Zg0Fqs+nznOPjAYEOYUvVvTq+vXg2u4RreobuSm9I/1cC9DlDPRrYrAerVp8
+NYimCLL/iNgPDdeQZJDXgDaz9kv6qxv9N1llkecA+XL/5AbulhHgPq1eehoouiEoIjFjYpr9Zp34wIhl
+vqESGr0rN1QWoBoFZ0LDLlbk4D2s1YlOYlTEs05nxbZVsk5n5X266ro/HI5ZxRtPk4OJU+wQpR+g+h06
+Vq6RbFH1O4xHgdXvQL3ApRVxyj7kqax+fy/V76MBe9nFvqgnev0f34wVdHWskwXw0wP5uLTg7UNp/RjS
+YhrnNVpiizb8fArQK31KIevuIHl+6+7QeIHOYbQ8Ltfd38W6O3rxXP4nAEbdwpfFcnskjWSzUR/nWPVb
+4krUGFfvJZu2Aj55VaJC09kvLEOj5cLyj7SwTANBzwijF+LZ2PNHs17/vz8rq+v6Krq60ERCOxRyzpUF
+P85LaHAbI4BMfJNgDJRK3nYoOlHZBmLJ1+tL7GIhP+KgFwHaAj/SNHV5WD2TZBlGeAb5NLhxyACAYzsQ
+hQ5PBcMQFK8n0A1NfSabAgkwHBWMioTOtpxTBGQJ48T3ip8EkmxErBOIC91QZ2dWfZb+i4m/19J38qHh
+e5IBTgODkbjnF4LnKVFGoeLpu5/7SD8i+rJVsnlkLTp3ek5Yudd1pltaO37ReaSTUcD5A93/yLzelZcT
+wE6E8cM944Y0H9yjJ9VkNQW+Icx/JOCfJTFs5dop+/yV2G9fL+ZEo5/o9WbO9FppXc1tH73jDMIU20+M
+BH26GjLbqwyU+cI4kVWdjMxf/K7FAHP2epWwmQiHr/c6AYFaI43WzHGiXd1wUjuZD4aRZGFsq9NdT2p3
+1ijb6frnLQgIOdQJHXvf8HOAuOjc1veBfKQD9nUw0wjlto9tWuDTUzkq3AoJNUqXyTJS/l4TWzVO5jXR
+9ezSa+bjNe+usbLq0mu+P68JI1mw1wQOivSaQL5Qr3l3jVVD8+kpUvlces134DWxU0YDU4v4NXm55Jqb
+30wXx4PRu0qivWUC7/Vtgp73U3qvd+e9YCQL9l7AQZHeC8gX6r2+TbCDgfj0tFV6r3fpvbCzsJMtjHHx
+XgnuZonhvczlsJxyPSat1Hne/QIbldJTvj9PCSNZsKcEDor0lEC+UE95v+jl5CmBUukp36WnxK8kS+Ip
+ucyOlp6S7Skfelg9Yukp35+nhJEs2FMCB0V6SiBfqKd86GFXufHp6VnpKd+np0SvrPB5SvyKDK+nxBcb
+03rKFLdXxPBinuOJucyQPj4PmJIrnVcK55Wdm4IhKthNAQdFuikgX6ibenz+nJObAkqlm3qXbgo/Ydrn
+pvBDrX0JHerL0rqpdIdSx/BU/pNCuTgr4Q27NLB0VlvkrGCICnZWwEGRzgrIF+qshDfszj8+Pb0qndW7
+dFb4cQg+Z4UfvJDHOl2iExBi+Ch7ey0X1yQeYZWs5azg+5sVhJEs2IMBB0V6MCBfqAcTjxLs8UvYU2Sz
+XunB3oEHG33Nak8eXky51u/D6h+ter31p/1dtbLanunsALeo0iJGPZO92+vbD10NZ7yHOxcatKzTllpK
+7wpNMofb7UxRN8rY//1P86XHUm0kaZCjQwOCbB7E4NpIC//ONhGEfkZhazovCQQ23yafyE0ApVQOMfl2
+dyLOc3KFQCnSFZYb09MaGH/HiJ9Ul2QDAZ7/IY5RppsCgm5xdUJIJi6RuhJOx5nYWaG8+daG5GwncIHj
+U2wjXukCt9gFwpDxdYFAICcXCJQKcoHj07x2zQGl0gX+AC4QP388s53nXhdo+Tp64Bnlz+8GW9Yj6/Dw
+THNDMeGB51tEwTkEs+GIL6WPnFy1kHPC/KeJTa6QnVRsT+qZss3rmLHJVTvq6oZ0rgMIILOcPGAVKEUd
+IsvJdQBlbKC59LETedNG6Tq233VMdqI3sGU8rWg1juRPVoMcphXdDfNIeOwe8fJLLPYT+IvpuIfEz35/
+MR1j25kKOX0SGI4Kw9O5BekTui+FA2QCpchom49bAMo5ZU1AKTJrKt1Cbm4Bn+7wis7+9r1Merj6PpZk
+g2h3gibR+xE/Sbqham+IYZxh77nUdtT//IDUu64JgQ5KL4JBRuao6UxRmo+3Wnpe/UvQxaORVYogyO+h
+s4KX29Url4L4LEy8R6n+owQAyC2NzI/enwyONHFKKFcMMdAbLxUdkQdA5zfJmMJ/nCZMGcluybgfuSTD
+ikFtTWKEcKsGbJT2DZf9DHuEhe6rW0xtvHbj1/ngMxbFW6e2m7xURFp+VrEbq3rzhiNFUW3ZKYYGksIH
+/sD73puXgyW2dmKFjIfVjxdnT6eDo49XRxfX7tAedFBwEVs1f4D2cYnt8rc+vJY0aUHnoiwHGCKTGRH0
+hWa+datI8Oal9Epkb6QqTiV5BN4W44ymO362kJTb+qrdbLYCTAU74Qu8NiL/+QELX62vdpvNtq9xM657
+g3D9BLTM0ASwK4yMUzXvI4UMwBu9RN5/r0Rj1Yc0Xftthm7UMr/qNJu7AclG3dFhJiG0fA4jfz0V5oGE
+yWQC6fRYVYwvpnXdDheKsfALIKaYj+k9PrqfXvS1HSzxbty7wRI7uCHQO/OXT/aFX/sBdhJ2FYgjorWv
+GOvuue4Y6+4FatQQAYR038YTTABIpuu5fYNClC/aDuDlxtMwQRTBcGEli1prLQr4O8bUiM8tTQ1jftBo
+LJdLxx2Da26AS24ARLUbfa+7soQZOYGRAZHQGYxvqvaszwWR+O/3YRh7IKG1CkgvVV2yZjYUU+rLVbNJ
+7hill39Bl+bGW11/maS+6s3sSVTCHLZm7ZXRe8nh/FmwgtyJQ2UMoZptTFne8kaFjtyTmdVNZ+/1CqM4
+g1BOPJi9y2zigWpiyJxgOfGwJTlnOfFQTjxs9cTDhsFX6ISE4z0Z0wCOYIpRQasPdg/oWybfH9b/RAOB
+U29f1xfcu9H49h7LOCUFRhH09jvdEGVoi9VKybYKyqWnmKw+NFxSOQJTetMl+Pn/AVBLBwjfe06rPh4A
+AP6BAQBQSwECFAAUAAgICAAAACEA33tOqz4eAAD+gQEACAAJAAAAAAAAAAAAAAAAAAAALmNvbnRlbnRV
+VAUAAQAAAABQSwUGAAAAAAEAAQA/AAAAfR4AAAAA
+------=_contents/sirius.test/representations.aird-41c7f951-33be-3182-ad7e-5b8904f71569--
+------=_contents/sirius.test/.project-107446e2-aecf-3fdc-a67e-f2a3ec00adad
+Content-Type: q7/binary
+Entry-Name: contents/sirius.test/.project
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAABVT8sOgjAQPMtXkN4t
+evNQysXwA+oHYNmQNX2lW4yfb1uByG12ZnZmV3Qfo+s3BEJnW3bmJ1aDVW5EO7Xsce+PF9bJSvjgXqDi
+FUgF9DGZZXUQdjAgCQPOxCNQFE1hkqKcMWCjFM2KErmEUMbN//CcUY83D6oou8kOcQ6QXSuWLkwclEZP
+wJfyn8KNG0Gny5fsfE7ZyKlb0Fa9e+YLUEsHCO1teoKdAAAACQEAAFBLAQIUABQACAgIAAAAIQDtbXqC
+nQAAAAkBAAAIAAkAAAAAAAAAAAAAAAAAAAAuY29udGVudFVUBQABAAAAAFBLBQYAAAAAAQABAD8AAADc
+AAAAAAA=
+------=_contents/sirius.test/.project-107446e2-aecf-3fdc-a67e-f2a3ec00adad--
+------=_contents/sirius.test/base.mapping-89129379-3cad-3a56-8a7b-34e8e8583743
+Content-Type: q7/binary
+Entry-Name: contents/sirius.test/base.mapping
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAADtWt1T2zgQf+9foXFn
+uLuZIwb6chMInRTCNb0EGJKGu0fFXscqsuRKMknur7/1d5wPSklC6JUXsLWr3dVvP23n5P0k4OQelGZS
+NKzD2oFFQDjSZWLUsD73L/b/sN6fvjkJaBjiUv0D1UAmAasXW47iLShE6DquNyzfmLBu2+PxuCaDUU2q
+kf13t12w6CrL+F3CcXRwcIhsnZ7jQ0D3mdCGCgfyXcyFyq5AusDHihlQNYjszDgb2fId2dIjdllE0ADF
+95hikSYGtLFO3xBy4khhQBhN0Oa6mYbIgwrqravhF3DMBePQkQ41CIJFvIjza2r8hmXrRE4tlpOrqIEj
+FZqGOJylQhvWHjfHyXK9dU2dOzqqwrr3NZLmGLFNL2YATheWo1xl1kuYH8a7sj+xblECOJyFGhIxEHix
+qCO7FfNmuxM40+vs/DlBf75pLwpc7pZiz7UCj02WCTzdeztpHhOSQHnGqdbMY4hf6bCUL4M54Vi0MXdi
+RqFDbRR1TEY1KoKqtkxfLwpB9VGJJj5amLGHnBpPqqBuK9AyUg6sjoe3tt1udS/ijGpxCDAqUhn2NjTl
+p4zjjzIBaoUuPK9jIkX5BVD8D6vAvAEPFJQhMwNoak2Hibsc7SjEE3yQkXAzlv3DeUwz/fExH+G+NXBA
+sxaOnim/CkOpMQzXFG8bqkaw3Jn2EoS34ILUgke5gDhpRMTx90DM/5/8k/Lt0j9ONQt3APM3y8EGMZ/X
+ZeeddesuaBqj2DAyy1IEmb8f/XNqaL/YuQYopZDvOH5Kn+l0G+qARc7trsdtwKMuaEexcKaXczmuFr0n
+tJ3VHn/UTIQAtPBwxcyym3ozW/E2gspmq9AzFB97oSXusjP/1J5YmA9fG8AOAlFBKJV5gRP6TWLYFgMx
+VWDzZZPmjjpw3B933YFf4lPmA+kbX762+Sfl9At75FuR8DtKxaXJsvqtEGH4KKM86sACyd6MQX2YmGp7
+3mbmbi9hNY4+5srz9DfHH+KCRyNuBpRHOCcgvpSv0ZY2kNrtFVXzmUYVEO5PBNyWEjt7b7/9VFpM2G2k
+k5fuvCza4I/R7dZ17pzls3WyXM0/ZyTiLkuWL/Se1pis9UAxytm/dMg3W6tXzD9Pah9beu1Yvnf7YQaE
+53w4dR6cXHdQtmano9fXcy+okm0wL8tH0Zf0SugZvsRUHljWz7V0ufJRPSVY9kNf9OOGvfJzfmK89ukd
+6BCogpqZGIsY3NKweuUyFQQr/AjcaWriPmkKI8WUUOGSMw4ypEjPaWdSMcmpiHS+8pEGHOe77O5TxOPf
+IpxR0FSRXxHa6W857S9EkXRQZ77Qpc4QjJ/fXhkfOJf57Y0MQCZWxEJLFX0WSEGkR5rIL3S5bFBxU7hK
+CuaU9vWVZBwpyXHQE5q56WmSP1UgHFQ5gwPnv2hyizaRvk8NaQk3vS0YNPlHRqTD7oC0S/t8QJhiQbGR
+LaWkKow5mwZDwKSBfKEj7wGVdOgQAy++kLoQ1AWqMXYIxmZ+PaujC8rxqTCxlgHgmeepakpu2T2mNTLc
+MjReFsg3SZe5OgoCUOSSjXyDqs8RgqDQHTk+abqSNNEwQy6l8eNSk1GvcQxxOOjfyTVWIAdiDf1p1bw+
+DWJ/IwXdRHqYb+MKGQIs/yVoY+Ce8VNjKnxjSf7E0E+KfHpUdDCdZ7mUOBHFEaaRbZZ4m8wpeLw+5bDK
+7z7TRqrp7L4O8yCJmXPMYD9WnITvJ+kX4lvumCqXtNvtuUC/YeiYhDJH+AgCndIeIG74SEkOV6wfVdcH
+S6UM2sulFOvzUvL1d4tmLrdzMEeIa9FJXg6T31OdvvkPUEsHCKGvfSBWBQAAhiUAAFBLAQIUABQACAgI
+AAAAIQChr30gVgUAAIYlAAAIAAkAAAAAAAAAAAAAAAAAAAAuY29udGVudFVUBQABAAAAAFBLBQYAAAAA
+AQABAD8AAACVBQAAAAA=
+------=_contents/sirius.test/base.mapping-89129379-3cad-3a56-8a7b-34e8e8583743--
+------=_.q7.content-3d2e0690-ce48-3609-83e0-c704d49f1eaf
+Content-Type: q7/binary
+Entry-Name: .q7.content
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAACVkU1PwzAMhu/9FVHu
+JHzsgKq2EwIkhviSYIzbFFKvBNokSjzan4872nJhQtzs+PFrv04275qafUKIxtmcH4lDzsBqVxpb5XyL
+m4NTPi+SzIVKgK6NjyCC9ohCYydaFz6iVxrS1RidO4vQIesak06yx70sDbIxpfecvyH6VMq2bYVrKkHi
+8uV2MSJ/zJraR6Zv33GSODlxnFnVEL2wBo2q2aMJZhvZ6qduypyvZ2cn6+XDzd0lqBJnF/fPT9f2quVF
+wlimezMW+5gyH9w7aIyDbtzpCYSI/JsgZmNqGAExNHD5a7lR3tOVyaoLsIcJ4ANEWkEhHTIKZUK5B31V
+dIpBc0QyOe68syMnP5n874cWyRdQSwcIQ7HE8xEBAAArAgAAUEsBAhQAFAAICAgAAAAhAEOxxPMRAQAA
+KwIAAAgACQAAAAAAAAAAAAAAAAAAAC5jb250ZW50VVQFAAEAAAAAUEsFBgAAAAABAAEAPwAAAFABAAAA
+AA==
+------=_.q7.content-3d2e0690-ce48-3609-83e0-c704d49f1eaf--
+------=_contents/sirius.test/mapping.ecore-9c35a56d-cca7-38f8-9d53-eea1f2055dd2
+Content-Type: q7/binary
+Entry-Name: contents/sirius.test/mapping.ecore
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAADtV0lz2jAUvudXeNxz
+UJJeOgyQaVKYYSbbBJLpVYhnokSWPJIcaH99n2RsbJyExXQ51Aew5bd8+t6i5875IhbBK2jDleyGp62T
+MADJ1JTLWTd8GA+Ov4TnvaMOMKWh3b+j7IXOIFjEvF0onTklNCNNG9e74ZO1SZuQ+XzeUvGspfSMfL8e
+FiKmKjL/7CXOTk5OUexqxJ4gpsdcGkslg/AowCvT9BgqusAETwx4AxBHzsgZ6TuxMJA0RuGYJgluBR/N
+w/2wohyrKYi55hZ0C1JSkrzTEPHFSrmHIDpwKagxPOK47QA30bY/EnSwJMa/zJ1eKUYtUhMGdGKspsx2
+Q6tTBAWjNAE9Rk3TDT8RMuxfDy6ogb6AGKQNcClXvlTSUi5Be/cOwAhtMJtqKgZA8R/ewHEPEWhwxC2x
+GJVqBldcviC8NEHvFyqV0254fJpx6y4YexvOOwoizNskUQaZKdaIpXoGNiSNwGRGdgTDMiIcPwWNdXzZ
+PhviYwXnZRS1gKygVnGsCxJnD2Gb3WB9tVbzSWpXtOHbMiJ3k5nskHJa7pynWbA/zsmd0q8GfQqGaZ5k
+1SDUvIh4PeBLE9+opW4h2KrOEW8fgbkqbRb6Zf5swFiKci0Ll+uknOSHKJdDYCp3gd+Vi3tvU0OitN2q
+I9x70fVtZqtEuHQ+QFm45P8DrbpGrftdD/a/URx7RKjetQ8QmfXWVDtfOfZbHVEGFZ87eBjDwpaqaS0H
+ijeN4oyTjba3UWQ21/beYR86dqYQ0VTYRypSrH1khgoftmYdAOT0r4Nvlkb928kzsA/iXMmCRmRFmeiN
+L+1D1vLODOTuikz39/mc7VVv/Itn+kpbXLVGoDkV/CediD0Kqd4bNxZr49HNj1rbzJVF4DfPlvkJuhoN
+D5CAxTH2f/TCdX9uv3Pu5V8B743cbvTPT6c3A4PPlU/X3tEvUEsHCJx9yzfFAgAA8w4AAFBLAQIUABQA
+CAgIAAAAIQCcfcs3xQIAAPMOAAAIAAkAAAAAAAAAAAAAAAAAAAAuY29udGVudFVUBQABAAAAAFBLBQYA
+AAAAAQABAD8AAAAEAwAAAAA=
+------=_contents/sirius.test/mapping.ecore-9c35a56d-cca7-38f8-9d53-eea1f2055dd2--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/Initial Workbench.ctx b/mapping/tests/org.eclipse.intent.product.tests/Initial Workbench.ctx
new file mode 100644
index 0000000..fe1a042
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/Initial Workbench.ctx
@@ -0,0 +1,23 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Context-Type: org.eclipse.rcptt.ctx.workbench
+Element-Name: Initial Workbench
+Element-Type: context
+Element-Version: 2.0
+Id: _k2NaAHwYEeaC-KGN0DI6Vw
+Runtime-Version: 2.1.0.201606221726
+Save-Time: 8/25/17 2:22 PM
+
+------=_.q7.content-3d2e0690-ce48-3609-83e0-c704d49f1eaf
+Content-Type: q7/binary
+Entry-Name: .q7.content
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAACVkk9PAjEQxe98iqZ3
+ZpWDMZtdiEGjRCFGEtSTqbvjMmHbbtpZFvz0lr9CIkZvzfT93ryZNuktdCnm6DxZk8pzOJMCTWZzMkUq
+a/5oX8pet5VYVwBmJVUewWUVM/gMjXJk42frZu+BmfatYVywWGiK946dlWPoYXwc6qmcMldxFDVNA1YX
+EHyjl+FgJzndZk/urlfkWhJpm2MZ7YSBtw6lMEpjKgeGmFQp9iGloDyVb7POSF3dNa83qPrt+9vR2fXg
+YtLIbkuIZE7Y+O5hFL0slwZym3mgMKNh0KqqwoqAcoSaYIXAcFObhHMSbUy+7bCGdc7GEaMDj1oZpuzI
+YLwt/uxwGKgKlKuDViM82BMtD4FtCw9P6G3tMhypORWKrfud+9vk42XYrLOGPhWHV39UJTLjUaok+scX
+6ra+AFBLBwgkR7KPPQEAAJgCAABQSwECFAAUAAgICAAAACEAJEeyjz0BAACYAgAACAAJAAAAAAAAAAAA
+AAAAAAAALmNvbnRlbnRVVAUAAQAAAABQSwUGAAAAAAEAAQA/AAAAfAEAAAAA
+------=_.q7.content-3d2e0690-ce48-3609-83e0-c704d49f1eaf--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/Initial Workspace.ctx b/mapping/tests/org.eclipse.intent.product.tests/Initial Workspace.ctx
new file mode 100644
index 0000000..2fe00fb
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/Initial Workspace.ctx
@@ -0,0 +1,231 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Context-Type: org.eclipse.rcptt.ctx.workspace
+Element-Name: Initial Workspace
+Element-Type: context
+Element-Version: 2.0
+Id: _a10TIHwYEeaC-KGN0DI6Vw
+Runtime-Version: 2.1.0.201606221726
+Save-Time: 11/4/16 3:46 PM
+
+------=_contents/test/shakespeare.owl-def6b3c9-856c-3828-9c1b-6b86a57b7676
+Content-Type: q7/binary
+Entry-Name: contents/test/shakespeare.owl
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAADVWV1T4jAUfd8Z/0MX
+nzGIDzt2EMf1Y2REcVZddx8DvdCuIekkwcK/3ySUlpSCCIEZecL2fpx7c25yIo3z8ZB478BFxOhZ5fio
+VjlvHnxr8KDv/7q6OfjmqY8yocJXj84qoZSxj1CSJEfJyRHjA3R8enqKanVUr1eVRVVMqMTjKhWHlXnn
+sQjKnOu12jH6c99+6oUwxLaLiiaW+NSQcjPZSvxYQpa41VHtB1KvbfsBMNue8beIDhiVjLBBJKRxvx7j
+YUxAoMsQxxL4CVJ+A47jcHK0ELIbbRZS+S0LSSK5UUgR4jcQMWAOeVAV0u9iAS4iVpo6YkN98ztT14mn
+2YO7bKQgT1+nBinPWrTPjE2AJZaTGNaghpBcgUtb0rzkgCUEXhLJ0Htm8U+Oo8C7ZMOYCeANVEg2hYjm
+MeaoLwkWwsBpXZ1VHgmeZJg1BX2Cu0C2g6uDNlAebQ6Pyb4CTA92gaYHG8FRHWXUPR4TdhNAFyMZMm4D
+EqOuMer0jRkHwUa8p1AdpvCRa/xTFOvh73T/QU8+chYDl9agbL1dDDHnEQR2NwI2xBHdVydSCAutmKXg
+mA5gJZh0SK0ureyepoEA2SrQsjyTGSfnVav0XrTI3w+WQO8zW9SccCZhvZon7ks22T9ZcTqsG9bsakpI
+9A5BkS37nRIDYRVjPiTvHrtnq5wYc9npr9W83cyaBuCx/hdsXSTWZN1uGheJHTFOCVNfbzLZznQLlE9+
+z/wWXrfZO4i27ioXbSZkwbAHTruuHlMKpCUIpoHI+q+M/CmX0yc7A/ByV8lSuFtOs6QvdyXrqZcqq2RW
+LirUWzTZUe3XdKDbXtL1AtVcdNn5xKToS3RdWfPMWZELU0W6WyxDnMzdJtRB5KcKyWbd9GTMnJ/yC5bF
+HW1qDt65h6UDiIcEZNaQnBNF5zxicfSXDOkngVyIv2zUjt6g9Tk0H4TtyBAIYS5DvkZUsUo8YwIuw94p
+OrXVOlYsO7fbgOGqTuQRlal0R8gr0ejclfccwjMMYyjyY8uoCZC+DB+iQeg07j1gMeJww3j6zWlw3OuC
+DBcWWhua60nhxc723Kcek/ObrpVyLxuwldEx0fWnOStxKdfz9Zw/Be03ZYvifCxTVjgZSpfKYe6EWYLN
+HFbpXamU+q5pKzmWfcYXeOt8TbJMK+hjBkULdtdjMlNEqJwGFlcbqHwNlp/alvLOA0/lRaYFF2WIu/+E
+KdnjhanuWSacjFLapexUYh86/XtM9yk89ySpX5VCKbvGfPW6HhhXqo7TFod9XxnsCg1r9U9f6rv663u1
+6q3+scGrVpXpf1BLBwi0YfcY1wMAAEgbAABQSwECFAAUAAgICAAAACEAtGH3GNcDAABIGwAACAAJAAAA
+AAAAAAAAAAAAAAAALmNvbnRlbnRVVAUAAQAAAABQSwUGAAAAAAEAAQA/AAAAFgQAAAAA
+------=_contents/test/shakespeare.owl-def6b3c9-856c-3828-9c1b-6b86a57b7676--
+------=_contents/test/.project-692291b7-4dfa-3e9e-9272-95fc5cc5f39a
+Content-Type: q7/binary
+Entry-Name: contents/test/.project
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAACzsa/IzVEoSy0qzszP
+s1Uy1DNQUkjNS85PycxLt1UKDXHTtVCyt+OyKSjKz0pNLnFJLU4uyiwoASq24+K0yUvMTbUrSS0usdEH
+M4FCyfm5ual5JXY2+jAWUBCquxjE1kfmJJVm5qQEF6Qmg2VQeHmJJaVFqRAtcDZcN4pDAFBLBwj6AdxA
+fQAAAMUAAABQSwECFAAUAAgICAAAACEA+gHcQH0AAADFAAAACAAJAAAAAAAAAAAAAAAAAAAALmNvbnRl
+bnRVVAUAAQAAAABQSwUGAAAAAAEAAQA/AAAAvAAAAAAA
+------=_contents/test/.project-692291b7-4dfa-3e9e-9272-95fc5cc5f39a--
+------=_contents/test/test2.txt-cebb77e3-fd72-3380-b017-2115eb6f1db7
+Content-Type: q7/binary
+Entry-Name: contents/test/test2.txt
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAABLVEhSSFZIUUhVSAMA
+UEsHCEn0WDANAAAACwAAAFBLAQIUABQACAgIAAAAIQBJ9FgwDQAAAAsAAAAIAAkAAAAAAAAAAAAAAAAA
+AAAuY29udGVudFVUBQABAAAAAFBLBQYAAAAAAQABAD8AAABMAAAAAAA=
+------=_contents/test/test2.txt-cebb77e3-fd72-3380-b017-2115eb6f1db7--
+------=_contents/test/base.mapping-277db951-19e9-3577-b267-b1a69cb98fe1
+Content-Type: q7/binary
+Entry-Name: contents/test/base.mapping
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAADFWNFumzAUfc9XWEza
+WzE2SdexJN32UGlSpk5rK+2VwU2CBgZhZ7C/360LK7RkuALSPFjk+lzfc67FsZPlZZnE5DfkMkrFymK2
+YxEQQRpGYrey7m6vzi6sy/VsmfhZhiHvsy9hRvBTJpH3L41jWhWNhfRwbmXtlco8SouisNNkZ6f5jv74
++qUFk21Y4WoUdxyG0M1NsIfEP4uEVL4IoJkZhdDKTNIQ4iKPFOQ2HGhFliKsmVWFDTIfsoSfYBkFUllr
+DCyDVCgQSupJXFRGnvqTIQTreLdQqqsohk0a+AqbYlWo7SGOv/lqv7Lo/Up6YLYqVQ1QmIiNf/um/PSB
+69HV41yPCz2eawLPKTRJ1Dt0T+QpCUKwh7m63m4lYDHnMQ4irKOsKoJlELwDtYnEr8dKhIQggzzKlN5y
+qzHxAEeF9GNN0GaNZ6cJziFLcyU1unpGAK0E0jppVMG8U7DbJ7hPF5uY9ryT9mIobT4x7fNO2u+G0nYn
+pn3RSfv9UNrziWmzI29z7+vcR3zRTfzJt9FMkT83RZ/8JAEJCZDtcANMD3kAugdtyU77udGrpm+N4Z9d
+Decvsckp/MakLcysLSO6LJ/YZU1UczPVI5o0n9ikTVS7ZqpH9Hg+scebqJ6bqR7xiOATHxEmqhdmqkc9
+YfjrnTDuK1y7j20DG+/UoSchOfAMOA3JgZZ9GpIDHfY0JAca4mlIDvYv2mE31WWr/Wv3uw6yep0Y673g
+Fkn7FubHF/6vUeDCS9r8a2Y9+wtQSwcI6NCZdj0CAADREQAAUEsBAhQAFAAICAgAAAAhAOjQmXY9AgAA
+0REAAAgACQAAAAAAAAAAAAAAAAAAAC5jb250ZW50VVQFAAEAAAAAUEsFBgAAAAABAAEAPwAAAHwCAAAA
+AA==
+------=_contents/test/base.mapping-277db951-19e9-3577-b267-b1a69cb98fe1--
+------=_contents/test/doc/test.doc-215f6e14-c7c2-3ae8-a31b-e4ba5707f991
+Content-Type: q7/binary
+Entry-Name: contents/test/doc/test.doc
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAADtmV1MXEUUx88su8uC
+FJYFaaUot8tKkZZtAangJyyUbpfPlirWSs0CS0HZXeQj0rfGj8QHjRgfTExTY4KJiYnB6qPRvuhDo9GY
+1LTGh5r40ugDGh9sIqz/M3MvLEuBuyspre4hP+7c2TvnnJk5M3dm7nff5l997+PinylBHqIMWoxlkT0u
+T4A848ZJZNHzFmOxmJEdS8ttJQv6lfvQiv6zAe7zTOAAWSAb3AFywDaQq/e5U7+m5faVoxTF3yRpdJAi
+uI7T6cSpYF0pQsTE6zNTZtHkc2YlbT91+8b8nez45/cAj/984AIFoBDcSRwTRNvBDnAXKAY7QQm4W7dX
+iqsGdgG3nufB9V5QDnaDCnAfqAR7wF5QBbxgH9gPqkENqAX3gzpwADwA6kEDeJD4fUb0MHgEPAoeA42g
+CfhAM2gBB0ErOAT84DAIgDbQDjpAJ+gC3eAIOAp6wDHwOHgC9IInwXHwFDih17GPbq05U8CbjGwVQ/Ys
+i4yJCyo0Wrn/OkYGxqMT0aFJrTc6PljVEn1uKhyKTMqY6OjhvJbogIwETntxI3/31tOfDeefXyMA40So
+ZUTK4kLUZUPLCUSkoQjt7fw9ZpHtbkdvRTGrhSlIo6RiutojKj2ilnyV1BXIoCOgObCDwv4c6wRo8wvq
+Dlgp4rc6JsHJgI2C+P0Zf4N1XV98tFgqyCI4nmyIhhE5n4aIR00eFczOU+HsNNk9AiOjK2CHYTsMl0hj
+ykgJYtPnZB0co7mISvZ9jCYwVgahSYPGEE3L/zz+nOQa1ISAboy+2deIx9I+pxAu4ZY+tMOHCf1pC8Yq
+28lE3Lthwy0aicd5O12jU3giIi2wry7om5a+5sBXl2ycAw7BRbkd+hyiXNa0RpRLK4f1stPyrkCWUpZY
+eFRb1aQho4y7wO9QM42RNlaZHv1qccZldKtek/8OFc0IM2HBjR+GS9xwnbi+gCu/6jgMIvi9DnrMxF0P
+Xodh6kdJDp7acnPWm9BpI3rAjcCSyN+4DHdVPzwdR7lJpKPwU4P9kNQ1ZKJOx+2wZMK7TvnCj0rtXJL1
+NWOSa5M5zVJrCCExBf+DsI5J1KTmVhnuoSW9aD+0mHBuWHDN2ht64lu0wZOqNz4EonC8jnntS3T+sFTS
+Wth2qg1wWmnlOCuTd3xvpZdkp6/MNexn2uRbTEZ4WlIX1/7N15kwvjWTnZS0J2eSLRAvizEOptVTEQfY
+1Vfe/eN617DzwzcdtGf3J1fYM4dQazD+fYxUJXnezQAvk6riDKnZ9SypmfUDUuu5T0mF8QVS67qvSa3t
+LpNa3/1Cao03T8rG37r+awtE99By0G9mmvXz+q2RM3786x0y0rpw2tXQV1ZW9718X5386fJnnDZ+/+19
+ITq0LFR73vWFylIdqL9Z8A4NRkeDkfobdGuWtYg8ucv3ntWPrJBYLE+2q9DT9rh0orwq/5/T/TxnYr7i
+Zwo3fmxJzgvVW5/rV0N+xb3vX62plFw09apbLVXoi/44+z8ItStIy39TLibE380SC13ZAqtpSUtabh05
+RsNyj6vJbYO6Dq/YKWvYPI3LbZKGjYBGXuxVozQg80ewoQghZ9tWVyMtqYq+zkvL/1KE0f8LW+1JWm62
+yHMYN5XOvejV5r5q2jUXsbpB2UzE6gG13UQVNZS7/n5+rf0351gufXPprHen8623sf/ee/0j/j5gS8h7
+mtR3DuNQyEnLe+a18m8l2czvf1zPxG8INyrDZxVntqu0kGfcYRqjLuqnZ5P234VWZYt87iFPl02KYUnA
+7qg8905NsmGd7WYkYZ/9NXb61VjBBFHzVH3I1e0bYqYM+/qGfuRuox6aQvuH5VHvaXmWP7T0xcQ4il1b
+KmDf+GZo1j6f+9Trpwu90tYgtcg12ZQ84OY4NCvFKdSfj3GNcx/bKsvJtUd9CvZ5zjBfw40lWfvx33//
+AVBLBwjk3NGhrgUAAAAkAABQSwECFAAUAAgICAAAACEA5NzRoa4FAAAAJAAACAAJAAAAAAAAAAAAAAAA
+AAAALmNvbnRlbnRVVAUAAQAAAABQSwUGAAAAAAEAAQA/AAAA7QUAAAAA
+------=_contents/test/doc/test.doc-215f6e14-c7c2-3ae8-a31b-e4ba5707f991--
+------=_contents/test/doc/test.docx-77ab94b7-7f09-3396-8f5a-e14363dc6ffb
+Content-Type: q7/binary
+Entry-Name: contents/test/doc/test.docx
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAACNVwk4lG3bnrE0lpF9
+J2vGZ99CGBkhM2TJmn2XfQ1jyPIie5F9HWTwChFDUxGTGLJXthJZUmQXsv3j/Y73/9Xb3/fdz3E/x/Ec
+z3E+z32d93md13Ub6JCSMQEoKCgAFlEOcMCpQU2ctv7OngGSEif3mvSrOqQwcNzqIfPllfeeovHd/d/4
+1X34t0Exucsrg/0gWbea4ykYFc4gEd31FLm5xjXs1X+E1itISoLh/3SD+UkN4aTcQyahkjx2I5I4M9W7
+rxG5ViJ/TsWU2jPA78R36i5XyUn7Vebzuehf61Jx4H9Ukeb3HruTEyGDLpZ+89a92/IJSdO+9oGCfChL
+g2CMkIsNxqrukaIEsx7SaciuDFnlt+culwkOsb5xiCpRBPevGcldGYDVItevK5pjmzOFyy21go/d5HzC
+ep92eQ7ZfEzqK8WPc24VG+iAKBYHgQLjxHihJACAwf/LCD1xBvv4O0k6+Tje9HL2DpQI8fIszxjwnpQC
+v1xFUcF2XnyzYCo0rMi2w58VJRFEATqzvOzThQ0CC5Y/QzqPcSxs0dvTwhuQo900+cOtMPm8QsFQcuz0
+uNK87gSDiHN+9LFKmDXUfwE+hrjxsGGa9fPe5sKIUbGZQZCWhUOUXfhZ8tXBhVbPcvpbzsYJ0yUYE0qh
+2zjTci5WVS27dkv+bAiBrfEMxGvQXU1A2LMeHnf3a47oXgGGlhIhLry7XeN/q7TwKPPYaSuwtu28B635
+xZhroTwc9lt3RymcXXWzpgx8517Rr2S9Yk48MulpS/EE+fF9D+4ef6k0xvYkuJzMJqt15qvlzJy6h6rW
+ftzg4wSXHss/L5BE3JQIehULCTW2GJq32HUQeXKcU90M3b9kExahmxvhI4ZW/CJFAXxRqtxK+cg35guD
+WfDh+MzN8RFNnbefICXURwzVb1USqF6SEhpSgbt6SwETXBbz7J3VmclzueYpdjl2S1KRrqai4qPSkXEP
+gWyXn4m5xVi9W8af6dCT8/f9mHe4io7J7W6QrF8Kn4o7pr0TfGckiocEby3ukXh7ZWWW3fjqvvskwpAg
+1ef2jq5Fswp4wzRVjcyFPj9Vy093ezgXb9ckD7QlXOuDJvn0nY3CKLmXHJprePaY2gsrhDEKWc/OsM07
+uWnIQCuc9kK8jgAncsHkh1StAQEAIPnv5EL7t1wCApGezgEnYuk08dKflKI7arWl30PBqwaNTcheyJh8
+icNRjtH63tNxn2ne40LsbSs/SThzlc5g8Ft5QvFm4SqyKAkVeqvOyR90NnaIXVmV4xFZoD2iZCn5EJd7
+ByMGG7hJKB+6Wy/Oq3xpPxCXW/IB8Txm40K/PLslysfVLbGTg6lLwBFm9EBGz09fx6yCcxaxpAuMN7Yh
+BMqci9BjZs276ZyqHxqbIVwAM9or66h8bZwpzJtVujXrF2bUIIpOHJUrbXnitRz/5fpKJ0J7prmePavS
+AVvZ5Bd2PkF8G98f7+GWWGewrhUK1tkZaeoNYuYJKIMK5bN3qccnWycyK4r4BPrT6Bknqy9RpwzERJa1
+qbXLYuWmBEetHNMj9ousPhGYX6fMSSyLSDkGgOg6xGi6PpK2B1u5ePoP811ccUxfwuFFFPJsodANe2hP
+NtAiIf27ZdKQAzvDSJY1bmB8pa7DUQDxiAAnd52TGMcS7jRXQC/OCg7N3PKAB/Ry13E3Lw3qg8V7eKnG
+IWXseaKLLY2+c7uoc+J6tiuLEShTNjerK1EKUweWomWVdcxHWiEg6PvgG8uunfQ9PKHd9DQ7rfiAWbGs
+acpo10Mc+UOdiXoBHyQf/yjz4Cg1LNpvMcXsHJe16T1pVHVVe7S9/mQ3KCxuBLiKWa2fTgjc1wuTnpd/
+XDKY5N0ocphpQkVjdrXl00cwVnsxqOdc1ZHG5j2+PtrzQf/yjTRUAxG2riwOHcrIAfblud+50uCWFfIC
+OF0+ac6AznBzenAf0tqkT/dqDbF9lJXlwRzQyH4o1q3f71t/E/yqREZc+/5+EUJ5Cy8XemfyPWfRIfBE
+qv2G0fHeRFfbpfidVLn+luq/Df+0v/3b/NOuUnVI0cXuFPG/msKY0KVhvDV8RbcB0oXYdnlKgnAoijTR
+Qvhjx/xB+Kq0pK3tfqr1IMgrJVIMHlViiB3G0PsKN4+cf5AEb+3Su2ZFWRMU1cnJSNao4d2JNBD/JiP4
+tiTh3sR3m2ti4fhCY8g4b3H55+h9/TNMpEKTJiQHtT2RmQq32x56WXvEclb3Qzk40qajvLnjtDNaYQxr
+lfe6gaoSl/YrwrxoMjfGZibbq7f7XhzUXVIrzZn/xFpUWBEL7wfNsASf0LEnKfW8kxgs439n9AHOgYFu
+3q5/5a5mqs7ZDimwxk4B/8Y5BvO1Ku0nsyTPgeoe6GsOV+pLnn+mFM0qU5AN3V/JLEU6pKUR8P4zz3m3
+VZIDN31VuRcspUqj4uhyB/Gc5LggbDEH7M0EgxGPdh4Bb31B4S0ioovJqZ29qkE0m6nxpf8jxmw+1hXD
++3pGjaKf3srHpqFrsnkWnDBCjp/TGr884B7jYVvjOGeoP+Nv3N+0AR7Cv/x6a+zIekLyJMYi5aeK5cQI
+BgG/i5Hh7xhdfLwDje0dPJ1PgqwxgOnhpeieblL1Bn9pBMWUYpgZPsaEoueBlq4j5g2jaaOCWzsteqJ8
+3SXoqeXC8dzx67WXCpmhZ+SLRC4WM1/jdbPlVDLeCN/xPxYmv4LmeAB5MEd/vdYsuLfEU0WTxa2whUtk
+/OVYJqLeewg4EHY74+FLEEg6HA+jUX1tvcaRew/3yN2QibYnig+ZRTnavYuR5ih+duSr7cdEeYMPQ91y
+gbv3zcVCNgRJtvpq8mUWTq4X+cFquWhLimSIHi02XZPPZIrUdXldhia3KKpf473NApSMFJUE0U5xadNt
+vtK8EzTs4edRV6GRi81TSQLhD/SrzR513e1lsQRjCLV2s0IlrIXF4dVVTpuW2WtQdjp9ck4UTrW/OFHp
+Usg2+Qm57V3jFNxE6zch/R25dMRJTCIDfx/fAEl7X98TagvT4B5EamOJDZTWHEdvEIv6XWbcoBE6Ctcr
+Xjn8wrSe5T5c+yj8DaZFdefb1NOZ/KF4r37MgB5daRBWyNnmLvhBIGISKyTZNxuo2RDfITKkTH3hsZog
+5y18UDuSopLPJcHO8aqSRhtGrudscjwy0QtxVoItihCXhcPDdEJ8N248569JdIDPJNsxV1bxRM4hrIrX
+2gzm53ZurTc93n0x+wA4i4p6zn54L+XykMIEoLh8w26sZudZFsmI5q5pBFnId3YYKzJ3YNO94c23kKm2
+uqz9eRXOC8sjjKowfnFqI92VVJzZSOKQdOpXDeq07GQbclQATLPVYUtkLBwSfTfn6A+zKqWGssWrjjvL
+sbqR4w7v5KiG7/NO8IbtKHv7EsAVC7Yn/Foq1UL5ifwC/mOC/i+/jj7+f2k35Zq1focUU/iOmVj4B5y6
+2khyWuUMnKGMLcWn6Vnyl4kLXvZrq1/l5Q2Qa1+LUHoDh+7yH6plJqJuNgzLaqQzaaKR5+9LuCw6N8X7
+GMypjERnZsaxK0Ve3jwQmY3b6OkoqwGbS7Zrtmsr9/SBvZ4qMDl2KaBzdKLVQf7W1zvDIrHP49YlTQHn
+yj8zia7pSg34OrLlt9Nzi5PziPW9zaqJmmZDGKCf4QX5du9v22U+2UU792cgvv8RlTRcxPUaBQHZW4/C
+od7lJRHRH7JoB75W1r/u+1MRraIsr/6YfAGm0R4ZNB+6cDMsuM0CHZaR7qarXZBqOpeHMVJ6jBxYq9tJ
+sWc1k/cZY6SoB3TVyKm+eygQIUgikSuBtZ/Zm3iZVGEqcz/PKOvVnrPid4voFijZHerHrQI3Xx2iBNOH
+Cbue96fQNZ72kPy27HvYRUB+7ftvs4wtq1ocavHPts4HflY92OTZ9DnZoOpl90sOxA2a/O0GMRKn5WWi
+sxCriK0x0tc5wPpki55lXNIn5kDnzq3EblEEFxudOlyZV1r9tpSAoy1D0u6dMEzjh6IAS36ySvrGh+YN
+YauHU+/htSwesk6iFJWFNeNIw4a/0qDWhbbP61Yny+b1N54qdlpNLB5vuxbrLl4Z/4PeXJE2y8aCNTk+
+kIZ7R1016eyu5nUb/8+eZJybOSpjT3EQq0GqhnKKdT22SvYIsBSv5DChIb+QV9pD6ClPI1PaxnqmSfGN
+vaKMjEmO5aYuWRG7A9RwNXWiKMQWzJdovCtQ5GEpbv8aosBTQKaRl8OeuN5J4QUJsHsHjqzQr98sfLGK
+OfJjO8YCY9j+tWS71RpclDzI0EivT1qgir8RLkxGyG5HzpEpK5E8gFepzWfgL8d/X/t+BRs4w3rYtqpS
+1cbgyvzhiHVT4S+v4eeAixCptiE7oRpIwgT4P7JPn1ioAT+PU+e2n4Gne1f6H0AMwF8cb36Gn+4naH+A
+w0j/0e7+DD5dfbl+AC+T/74B+flLp2vcj1Hsn/lF7f4ZftrFGX6AfwD9qiz+jD/tUnQ/4FUo/+n8P6NP
+p9CPiy+g+oWv/WPxp2TB+AMcCv5l1hnokJ85eU1JvFSI/6ykOXn6H1BLBwiXPZFyVQ0AAPoPAABQSwEC
+FAAUAAgICAAAACEAlz2RclUNAAD6DwAACAAJAAAAAAAAAAAAAAAAAAAALmNvbnRlbnRVVAUAAQAAAABQ
+SwUGAAAAAAEAAQA/AAAAlA0AAAAA
+------=_contents/test/doc/test.docx-77ab94b7-7f09-3396-8f5a-e14363dc6ffb--
+------=_.q7.content-3d2e0690-ce48-3609-83e0-c704d49f1eaf
+Content-Type: q7/binary
+Entry-Name: .q7.content
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAACVksFPwyAUxu/7Kwj3
+wTYTY5q2O0yjjdGTcXoySN82XAsEntI/XzrbuoN1envw/fjgvY902dQV+QDnldEZnbMZJaClKZXeZvQd
+N9MLuswnqXFbBrJS1gNz0iIyiQ0Lxu29FRKSdV+tjEZokDS1SgbbRWsbL9I+ifsZ3SHahPMQAjP1lkVz
+/nRX9MiJu4bjPdMeP3A8cnzgKNGijnShFSpRkfW3oMqMvoj57KG4Cc9XIFbT2+v72WVx/hhoPiEklW0X
+Gts6rqwzbyDRd4YIHumXFMWNquBYOWPYIOWj+uKEPv9FZ91LRmS/E3vwFoSLQwnVCFULa2O6ccTGwR+c
+xp/zKuL0O7tjxFRlTL6DSiOHYf3QLmt1fgJojtx5Z99lw/twDrnxIbiU//fL5pNPUEsHCE2ItSctAQAA
+DQMAAFBLAQIUABQACAgIAAAAIQBNiLUnLQEAAA0DAAAIAAkAAAAAAAAAAAAAAAAAAAAuY29udGVudFVU
+BQABAAAAAFBLBQYAAAAAAQABAD8AAABsAQAAAAA=
+------=_.q7.content-3d2e0690-ce48-3609-83e0-c704d49f1eaf--
+------=_contents/test/test3.txt-8512f33f-ed6b-3b9d-9f27-a3cb5ab4bfd1
+Content-Type: q7/binary
+Entry-Name: contents/test/test3.txt
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAABLVEhSSFZIUUhVSAMA
+UEsHCEn0WDANAAAACwAAAFBLAQIUABQACAgIAAAAIQBJ9FgwDQAAAAsAAAAIAAkAAAAAAAAAAAAAAAAA
+AAAuY29udGVudFVUBQABAAAAAFBLBQYAAAAAAQABAD8AAABMAAAAAAA=
+------=_contents/test/test3.txt-8512f33f-ed6b-3b9d-9f27-a3cb5ab4bfd1--
+------=_contents/test/test1.txt-bb54de40-f98f-397a-89a8-acea2f868ef8
+Content-Type: q7/binary
+Entry-Name: contents/test/test1.txt
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAAAz5DLiMuYy4TLlMgMA
+UEsHCIZ5vxANAAAACwAAAFBLAQIUABQACAgIAAAAIQCGeb8QDQAAAAsAAAAIAAkAAAAAAAAAAAAAAAAA
+AAAuY29udGVudFVUBQABAAAAAFBLBQYAAAAAAQABAD8AAABMAAAAAAA=
+------=_contents/test/test1.txt-bb54de40-f98f-397a-89a8-acea2f868ef8--
+------=_contents/test/mapping.ecore-c5cb9bf2-0abf-3474-beed-b634a7472fb2
+Content-Type: q7/binary
+Entry-Name: contents/test/mapping.ecore
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAADtV0lz2jAUvudXeNxz
+UJJeOgyQaVKYYSbbBJLpVYhnokSWPJIcaH99n2RsbJyExXQ51Aew5bd8+t6i5875IhbBK2jDleyGp62T
+MADJ1JTLWTd8GA+Ov4TnvaMOMKWh3b+j7IXOIFjEvF0onTklNCNNG9e74ZO1SZuQ+XzeUvGspfSMfL8e
+FiKmKjL/7CXOTk5OUexqxJ4gpsdcGkslg/AowCvT9BgqusAETwx4AxBHzsgZ6TuxMJA0RuGYJgluBR/N
+w/2wohyrKYi55hZ0C1JSkrzTEPHFSrmHIDpwKagxPOK47QA30bY/EnSwJMa/zJ1eKUYtUhMGdGKspsx2
+Q6tTBAWjNAE9Rk3TDT8RMuxfDy6ogb6AGKQNcClXvlTSUi5Be/cOwAhtMJtqKgZA8R/ewHEPEWhwxC2x
+GJVqBldcviC8NEHvFyqV0254fJpx6y4YexvOOwoizNskUQaZKdaIpXoGNiSNwGRGdgTDMiIcPwWNdXzZ
+PhviYwXnZRS1gKygVnGsCxJnD2Gb3WB9tVbzSWpXtOHbMiJ3k5nskHJa7pynWbA/zsmd0q8GfQqGaZ5k
+1SDUvIh4PeBLE9+opW4h2KrOEW8fgbkqbRb6Zf5swFiKci0Ll+uknOSHKJdDYCp3gd+Vi3tvU0OitN2q
+I9x70fVtZqtEuHQ+QFm45P8DrbpGrftdD/a/URx7RKjetQ8QmfXWVDtfOfZbHVEGFZ87eBjDwpaqaS0H
+ijeN4oyTjba3UWQ21/beYR86dqYQ0VTYRypSrH1khgoftmYdAOT0r4Nvlkb928kzsA/iXMmCRmRFmeiN
+L+1D1vLODOTuikz39/mc7VVv/Itn+kpbXLVGoDkV/CediD0Kqd4bNxZr49HNj1rbzJVF4DfPlvkJuhoN
+D5CAxTH2f/TCdX9uv3Pu5V8B743cbvTPT6c3A4PPlU/X3tEvUEsHCJx9yzfFAgAA8w4AAFBLAQIUABQA
+CAgIAAAAIQCcfcs3xQIAAPMOAAAIAAkAAAAAAAAAAAAAAAAAAAAuY29udGVudFVUBQABAAAAAFBLBQYA
+AAAAAQABAD8AAAAEAwAAAAA=
+------=_contents/test/mapping.ecore-c5cb9bf2-0abf-3474-beed-b634a7472fb2--
+------=_contents/test/shakespeare.txt-2dd14dde-ed7f-3a28-8036-9f549b5687c7
+Content-Type: q7/binary
+Entry-Name: contents/test/shakespeare.txt
+
+UEsDBBQACAgIAAAAIQAAAAAAAAAAAAAAAAAIAAkALmNvbnRlbnRVVAUAAQAAAABtUk1v2zAMvedX8LYN
+2A7rfoGRBqs7Jysaw8GOjM1EQmUxoOQG/vej5CV1l97I98T3+KGtwRcKJ0Ih9BAFj9SNC/gGhY/sR0Df
+wdIRn1C5hC9ZLDv0Q0jZA/aOYooeB2eHAEukgAKfTw7HLwn/Zf0RKtVPyRrbPUWTwt/RkHOcwmfuibNT
+EpnkatuzBz5Aoe98mKCoBoXvhL1tJ/9a2DpFc5tCIdgOF4vtu6Falf83k3OfAuzUF2qDEVa+m9JMBvjD
+A1T2haCcejCk46bi1MhKhCWbLsd+T856SknFr6SiFe55kBRwyMVrwjAIwYHlEl801yStQR+TakM6y5yR
+EXb2lUIid1Yb5Ly5Ata2C0Pfk8DGHk1Uq3sdr89eQ2ug6BgKbSLChqPRrSfmicS2jsJXeBLrW0qq9fjW
+So19uo+iumbYGqHzlaL+RNMs9ZncIZrJ+MqfGX6Sj4568tMoehic0xveO0o/IOiTC6FDRUqbqtHR/7cy
+NkSW8fK2sgfKt70nVH81yd/pkU2WW3VnlA7Kspx9uGery83oDHwgr4stG90DSoTvH2B3b1hzU9mUt5VX
+7O4D7Mf7Vm57aWbgX1BLBwgEz4PrvgEAAIUDAABQSwECFAAUAAgICAAAACEABM+D674BAACFAwAACAAJ
+AAAAAAAAAAAAAAAAAAAALmNvbnRlbnRVVAUAAQAAAABQSwUGAAAAAAEAAQA/AAAA/QEAAAAA
+------=_contents/test/shakespeare.txt-2dd14dde-ed7f-3a28-8036-9f549b5687c7--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/pom.xml b/mapping/tests/org.eclipse.intent.product.tests/pom.xml
new file mode 100644
index 0000000..1f0f1cc
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/pom.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2015, Obeo
+
+   All rights reserved. This program and the accompanying materials
+   are made available under the terms of the Eclipse Public License v1.0
+   which accompanies this distribution, and is available at
+   http://www.eclipse.org/legal/epl-v10.html
+-->
+<project>
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.eclipse.intent</groupId>
+    <artifactId>org.eclipse.intent-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath>../..</relativePath>
+  </parent>
+
+  <artifactId>org.eclipse.intent.product.tests</artifactId>
+  <version>0.10.0-SNAPSHOT</version>
+  <name>Intent Product Tests</name>
+
+  <packaging>rcpttTest</packaging>
+
+
+  <pluginRepositories>
+    <pluginRepository>
+      <id>rcptt-releases</id>
+      <name>RCPTT Maven repository</name>
+      <url>https://repo.eclipse.org/content/repositories/rcptt-releases/</url>
+    </pluginRepository>
+    <pluginRepository>
+      <id>rcptt-snapshots</id>
+      <name>RCPTT Maven Snapshots repository</name>
+      <snapshots>
+        <updatePolicy>always</updatePolicy>
+      </snapshots>
+      <url>https://repo.eclipse.org/content/repositories/rcptt-snapshots/</url>
+    </pluginRepository>
+  </pluginRepositories> 
+
+  <properties>
+    <rcptt-maven-version>2.2.0-SNAPSHOT</rcptt-maven-version>
+  </properties> 
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.rcptt</groupId>
+        <artifactId>rcptt-maven-plugin</artifactId>
+        <version>${rcptt-maven-version}</version>
+        <extensions>true</extensions>
+        <configuration>
+          <aut>
+            <groupId>org.eclipse.intent</groupId>
+            <artifactId>org.eclipse.intent.product</artifactId>
+            <version>0.10.0-SNAPSHOT</version>
+            <injections>
+              <injection>
+                <site>${eclipse-rcptt-inject-site}</site>
+                <features>
+                   <feature>org.eclipse.sirius.runtime.feature.group</feature>
+                   <feature>org.eclipse.sirius.runtime.ide.ui.feature.group</feature>
+                   <feature>org.eclipse.emf.ecoretools.design.feature.group</feature>
+                </features>      
+              </injection>
+            </injections>
+          </aut>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/mapping/tests/org.eclipse.intent.product.tests/rcptt.properties b/mapping/tests/org.eclipse.intent.product.tests/rcptt.properties
new file mode 100644
index 0000000..bfd7a10
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/rcptt.properties
@@ -0,0 +1,9 @@
+--- RCPTT project settings ---
+Format-Version: 1.0
+Element-Name: Project Settings
+Element-Type: projectMetadata
+Element-Version: 2.0
+Id: _6BPp0HwXEeaC-KGN0DI6Vw
+Runtime-Version: 2.1.0.201606221726
+Save-Time: 2/14/17 5:02 PM
+
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Add Report to Link.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Add Report to Link.test
new file mode 100644
index 0000000..325b126
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Add Report to Link.test
@@ -0,0 +1,30 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Add Report to Link
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _bIJXwLMXEeargc_mJ1hPzA
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:47 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+get-view Mapping | get-tab-folder | get-tab-item Report | click
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"1\"/\"1\""
+    get-menu "Synchronize/Add Report" | click
+}
+with [get-window -class MultiLineTextDialog] {
+    get-editbox | set-text "New test report"
+    get-button OK | click
+}
+with [get-view Mapping | get-tree] {
+    get-item "\\/test\\/test1.txt/\"1\"/\"1\"/New test report" | get-property caption | equals "New test report" | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Add to synchronization palette from selection.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Add to synchronization palette from selection.test
new file mode 100644
index 0000000..edb66b2
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Add to synchronization palette from selection.test
@@ -0,0 +1,36 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Add to synchronization palette from selection
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _VwHNoKG0Eea__8ecebJRnQ
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:47 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+with [get-view "Synchronization Palette" | get-tree] {
+    key-type "M1+a"
+    key-type Del
+}
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+    get-menu "Synchronize/Add location to synchronization palette" | click
+}
+with [get-view "Synchronization Palette" | get-tree] {
+    get-item c | get-property caption | equals c | verify-true
+    get-item c | get-property checked | equals false | verify-true
+}
+get-editor "test2.txt" | get-text-viewer | set-caret-pos 1 12
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Change Link description.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Change Link description.test
new file mode 100644
index 0000000..a371c9d
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Change Link description.test
@@ -0,0 +1,33 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Change Link description
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _F1AjkLMSEeargc_mJ1hPzA
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:51 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+get-view Mapping | get-tab-folder | get-tab-item Report | click
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"1\"/\"1\""
+    get-menu "Synchronize/Describe" | click
+}
+with [get-window -class MultiLineTextDialog] {
+    get-editbox | set-text "New description"
+    get-button OK | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"1\"/\"1\""
+    get-menu "Synchronize/Describe" | click
+}
+get-window -class MultiLineTextDialog | get-editbox | get-property text | equals "New description" | verify-true
+get-window -class MultiLineTextDialog | get-button Cancel | click
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Change Location with Link.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Change Location with Link.test
new file mode 100644
index 0000000..74681c8
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Change Location with Link.test
@@ -0,0 +1,74 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Change Location with Link
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _iPQ-oLFaEealg-LeUS-zSA
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:48 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+with [get-view Navigator | get-tree] {
+    select "test/shakespeare.txt" | click -default
+    select "test/shakespeare.txt" | double-click
+}
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view "Synchronization Palette" | get-tree] {
+    key-type "M1+a"
+    key-type Del
+}
+with [get-editor "shakespeare.txt" | get-text-viewer] {
+    set-caret-pos 14 1
+    set-caret-pos 14 2
+    select-range 14 1 14 21
+    get-menu "Synchronize/Add location to synchronization palette" | click
+}
+with [get-view "Synchronization Palette" | get-tree] {
+    get-item "Shakespearean comedy" | check
+    select "Shakespearean comedy"
+}
+with [get-editor "shakespeare.txt" | get-text-viewer] {
+    set-caret-pos 20 5
+    select-range 20 4 20 23
+}
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-editor "shakespeare.txt" | get-text-viewer] {
+    get-menu "Synchronize/Link location as master source" | click
+}
+with [get-editor "shakespeare.txt" | get-text-viewer] {
+    set-caret-pos 20 14
+    select-range 20 12 20 15
+    type-text FOR
+    key-type "M1+s"
+}
+get-view Mapping | get-tab-folder | get-tab-item Report | click
+with [get-view Mapping | get-tree] {
+    get-item "\\/test\\/shakespeare.txt/\"Measure FOR Measure\"/\"Measure FOR Measure\"" | get-property "columns[0]" | equals "\"Measure FOR Measure\"" 
+        | verify-true
+    get-item "\\/test\\/shakespeare.txt/\"Measure FOR Measure\"/\"Measure FOR Measure\"" | get-property "columns[1]" 
+        | equals "\"Shakespearean comedy\"" | verify-true
+    get-item "\\/test\\/shakespeare.txt/\"Measure FOR Measure\"/\"Measure FOR Measure\"/\"Measure for Measure\" at \\(345, 364\\) has been changed to \"Measure FOR Measure\" at \\(345, 364\\)." 
+        | get-property caption | equals "\"Measure for Measure\" at (345, 364) has been changed to \"Measure FOR Measure\" at (345, 364)." | verify-true
+}
+get-view Mapping | get-tab-folder | get-tab-item Document | click
+with [get-view Mapping] {
+    with [get-tree] {
+        get-item "\"Measure FOR Measure\"/\"Measure FOR Measure\"" | get-property "columns[0]" 
+            | equals "\"Measure FOR Measure\"" | verify-true
+        get-item "\"Measure FOR Measure\"/\"Measure FOR Measure\"" | get-property "columns[1]" 
+            | equals "\"Shakespearean comedy\"" | verify-true
+    }
+    with [get-tree -after [get-label "Outgoing Links"]] {
+        get-item "\"Shakespearean comedy\"/\"Measure FOR Measure\"" | get-property "columns[0]" 
+            | equals "\"Measure FOR Measure\"" | verify-true
+        get-item "\"Shakespearean comedy\"/\"Measure FOR Measure\"" | get-property "columns[1]" 
+            | equals "\"Shakespearean comedy\"" | verify-true
+    }
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Change Report description.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Change Report description.test
new file mode 100644
index 0000000..01f6839
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Change Report description.test
@@ -0,0 +1,31 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Change Report description
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _F9QLgLMQEeargc_mJ1hPzA
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:48 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+get-view Mapping | get-tab-folder | get-tab-item Report | click
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"1\"/\"1\"/Report1"
+    get-menu "Synchronize/Describe" | click
+}
+with [get-window -class MultiLineTextDialog] {
+    get-editbox | set-text "Changed report"
+    get-button OK | click
+}
+with [get-view Mapping | get-tree] {
+    get-item  "\\/test\\/test1.txt/\"1\"/\"1\"/Changed report" | get-property caption
+        | equals "Changed report" | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Create link from synchronization palette.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Create link from synchronization palette.test
new file mode 100644
index 0000000..a1e663b
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Create link from synchronization palette.test
@@ -0,0 +1,59 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Create link from synchronization palette
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _018M0LDAEeaTDapXsE3cXA
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:49 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+with [get-view Navigator | get-tree] {
+    select "test/shakespeare.txt" | click -default
+    select "test/shakespeare.txt" | double-click
+}
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view "Synchronization Palette" | get-tree] {
+    key-type "M1+a"
+    key-type Del
+}
+with [get-editor "shakespeare.txt" | get-text-viewer] {
+    set-caret-pos 14 1
+    set-caret-pos 14 2
+    select-range 14 1 14 21
+    get-menu "Synchronize/Add location to synchronization palette" | click
+}
+with [get-view "Synchronization Palette" | get-tree] {
+    get-item "Shakespearean comedy" | check
+    select "Shakespearean comedy"
+}
+with [get-editor "shakespeare.txt" | get-text-viewer] {
+    set-caret-pos 20 5
+    select-range 20 4 20 23
+}
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-editor "shakespeare.txt" | get-text-viewer] {
+    get-menu "Synchronize/Link location as master source" | click
+}
+get-view Mapping | get-tab-folder | get-tab-item Document | click
+with [get-view Mapping] {
+    with [get-tree] {
+        get-item "\"Measure for Measure\"/\"Measure for Measure\"" | get-property "columns[0]" 
+            | equals "\"Measure for Measure\"" | verify-true
+        get-item "\"Measure for Measure\"/\"Measure for Measure\"" | get-property "columns[1]" 
+            | equals "\"Shakespearean comedy\"" | verify-true
+    }
+    with [get-tree -after [get-label "Outgoing Links"]] {
+        get-item "\"Shakespearean comedy\"/\"Measure for Measure\"" | get-property "columns[0]" 
+            | equals "\"Measure for Measure\"" | verify-true
+        get-item "\"Shakespearean comedy\"/\"Measure for Measure\"" | get-property "columns[1]" 
+            | equals "\"Shakespearean comedy\"" | verify-true
+    }
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete Location with Link.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete Location with Link.test
new file mode 100644
index 0000000..d473f53
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete Location with Link.test
@@ -0,0 +1,74 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete Location with Link
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _oxvzcLDGEeaTDapXsE3cXA
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:50 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+with [get-view Navigator | get-tree] {
+    select "test/shakespeare.txt" | click -default
+    select "test/shakespeare.txt" | double-click
+}
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view "Synchronization Palette" | get-tree] {
+    key-type "M1+a"
+    key-type Del
+}
+with [get-editor "shakespeare.txt" | get-text-viewer] {
+    set-caret-pos 14 1
+    set-caret-pos 14 2
+    select-range 14 1 14 21
+    get-menu "Synchronize/Add location to synchronization palette" | click
+}
+with [get-view "Synchronization Palette" | get-tree] {
+    get-item "Shakespearean comedy" | check
+    select "Shakespearean comedy"
+}
+with [get-editor "shakespeare.txt" | get-text-viewer] {
+    set-caret-pos 20 5
+    select-range 20 4 20 23
+}
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-editor "shakespeare.txt" | get-text-viewer] {
+    get-menu "Synchronize/Link location as master source" | click
+}
+with [get-editor "shakespeare.txt" | get-text-viewer] {
+    set-caret-pos 21 1
+    select-range 20 1 21 1
+    key-type BackSpace
+    key-type "M1+s"
+}
+get-view Mapping | get-tab-folder | get-tab-item Report | click
+with [get-view Mapping | get-tree] {
+    get-item "\\/test\\/shakespeare.txt/\\(deleted\\)/\\(deleted\\)" | get-property "columns[0]" | equals "(deleted)" 
+        | verify-true
+    get-item "\\/test\\/shakespeare.txt/\\(deleted\\)/\\(deleted\\)" | get-property "columns[1]" 
+        | equals "\"Shakespearean comedy\"" | verify-true
+    get-item "\\/test\\/shakespeare.txt/\\(deleted\\)/\\(deleted\\)/\"Measure for Measure\" at \\(345, 364\\) has been deleted." 
+        | get-property caption | equals "\"Measure for Measure\" at (345, 364) has been deleted." | verify-true
+}
+get-view Mapping | get-tab-folder | get-tab-item Document | click
+with [get-view Mapping] {
+    with [get-tree] {
+        get-item "\\(deleted\\)/\\(deleted\\)" | get-property "columns[0]" 
+            | equals "(deleted)" | verify-true
+        get-item "\\(deleted\\)/\\(deleted\\)" | get-property "columns[1]" 
+            | equals "\"Shakespearean comedy\"" | verify-true
+    }
+    with [get-tree -after [get-label "Outgoing Links"]] {
+        get-item "\"Shakespearean comedy\"/(deleted)" | get-property "columns[0]" 
+            | equals "(deleted)" | verify-true
+        get-item "\"Shakespearean comedy\"/(deleted)" | get-property "columns[1]" 
+            | equals "\"Shakespearean comedy\"" | verify-true
+    }
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link from Mapping View_Document_Incoming Links.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link from Mapping View_Document_Incoming Links.test
new file mode 100644
index 0000000..82557c8
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link from Mapping View_Document_Incoming Links.test
@@ -0,0 +1,38 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete link from Mapping View/Document/Incoming Links
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _Wm76UKKYEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:49 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Document | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"2\"/\"2\""
+    get-menu "Synchronize/Delete" | click
+    get-items | foreach {
+      get-property caption | equals "\"2\"" | verify-false
+    }
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link from Mapping View_Document_Outgoing Links.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link from Mapping View_Document_Outgoing Links.test
new file mode 100644
index 0000000..dc97304
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link from Mapping View_Document_Outgoing Links.test
@@ -0,0 +1,39 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete link from Mapping View/Document/Outgoing Links
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _pnh2YKKYEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:49 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Document | click
+}
+with [get-view Mapping | get-tree -after [get-label "Outgoing Links"]] {
+    select "\\/test\\/test3.txt/\"2\"/\"b\""
+    get-menu "Synchronize/Delete" | click
+    get-items | foreach {
+      get-property caption | equals "\"2\"" | verify-false 
+      get-property caption | equals "\"b\"" | verify-false 
+    }
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link from Mapping View_Report.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link from Mapping View_Report.test
new file mode 100644
index 0000000..bf777e5
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link from Mapping View_Report.test
@@ -0,0 +1,35 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete link from Mapping View/Report
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _ovBHwKKdEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:49 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Report | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"1\"/\"1\""
+    get-menu "Synchronize/Delete" | get-property enablement | equals false | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link with report from Mapping View_Document_Incoming Links.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link with report from Mapping View_Document_Incoming Links.test
new file mode 100644
index 0000000..5cb47e9
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link with report from Mapping View_Document_Incoming Links.test
@@ -0,0 +1,35 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete link with report from Mapping View/Document/Incoming Links
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _f4lhUKKXEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:49 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Document | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"1\"/\"1\""
+    get-menu "Synchronize/Delete" | get-property enablement | equals false | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link with report from Mapping View_Document_Outgoing Links.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link with report from Mapping View_Document_Outgoing Links.test
new file mode 100644
index 0000000..45cf541
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete link with report from Mapping View_Document_Outgoing Links.test
@@ -0,0 +1,35 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete link with report from Mapping View/Document/Outgoing Links
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _s14eMKKXEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:49 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Document | click
+}
+with [get-view Mapping | get-tree -after [get-label "Outgoing Links"]] {
+    select "\\/test\\/test3.txt/\"1\"/\"a\""
+    get-menu "Synchronize/Delete" | get-property enablement | equals false | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location and link from Mapping View_Document_Incoming Links.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location and link from Mapping View_Document_Incoming Links.test
new file mode 100644
index 0000000..ad89bf6
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location and link from Mapping View_Document_Incoming Links.test
@@ -0,0 +1,41 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete location and link from Mapping View/Document/Incoming Links
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _QQjR8KKWEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:49 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Document | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt"
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"2\"" "\\/test\\/test1.txt/\"2\"/\"2\""
+    get-menu "Synchronize/Delete" | click
+    get-items | foreach {
+      get-property caption | equals "\"2\"" | verify-false 
+    }
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location and link from Mapping View_Document_Outgoing Links.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location and link from Mapping View_Document_Outgoing Links.test
new file mode 100644
index 0000000..5b8d284
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location and link from Mapping View_Document_Outgoing Links.test
@@ -0,0 +1,42 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete location and link from Mapping View/Document/Outgoing Links
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: __mO0QKKWEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:50 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Document | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt"
+}
+with [get-view Mapping | get-tree -after [get-label "Outgoing Links"]] {
+    select "\\/test\\/test3.txt/\"2\"" "\\/test\\/test3.txt/\"2\"/\"b\""
+    get-menu "Synchronize/Delete" | click
+    get-items | foreach {
+      get-property caption | equals "\"2\"" | verify-false 
+      get-property caption | equals "\"b\"" | verify-false 
+    }
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location from Mapping View_Selection_Referenced Locations.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location from Mapping View_Selection_Referenced Locations.test
new file mode 100644
index 0000000..cb4a2a2
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location from Mapping View_Selection_Referenced Locations.test
@@ -0,0 +1,35 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete location from Mapping View/Selection/Referenced Locations
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _Iv7LYKKREea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:50 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Selection | click
+}
+with [get-view Mapping | get-tree -after [get-label "Referenced Locations"]] {
+    select "\\/test\\/test3.txt/\"3\""
+    get-menu "Synchronize/Delete" | get-property enablement | equals false | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location from Mapping View_Selection_Referencing Locations.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location from Mapping View_Selection_Referencing Locations.test
new file mode 100644
index 0000000..8af6ec0
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location from Mapping View_Selection_Referencing Locations.test
@@ -0,0 +1,35 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete location from Mapping View/Selection/Referencing Locations
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _ccmKYKHNEea__8ecebJRnQ
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:50 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Selection | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"3\""
+    get-menu "Synchronize/Delete" | get-property enablement | equals false | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with link from Mapping View_Document_Incoming Links.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with link from Mapping View_Document_Incoming Links.test
new file mode 100644
index 0000000..0764e68
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with link from Mapping View_Document_Incoming Links.test
@@ -0,0 +1,35 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete location with link from Mapping View/Document/Incoming Links
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _M9rBYKKVEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:50 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Document | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"1\""
+    get-menu "Synchronize/Delete" | get-property enablement | equals false | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with link from Mapping View_Document_Outgoing Links.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with link from Mapping View_Document_Outgoing Links.test
new file mode 100644
index 0000000..3eb95e7
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with link from Mapping View_Document_Outgoing Links.test
@@ -0,0 +1,35 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete location with link from Mapping View/Document/Outgoing Links
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _yQ3LEKKVEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:50 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Document | click
+}
+with [get-view Mapping | get-tree -after [get-label "Outgoing Links"]] {
+    select "\\/test\\/test3.txt/\"1\""
+    get-menu "Synchronize/Delete" | get-property enablement | equals false | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with link from Mapping View_Report.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with link from Mapping View_Report.test
new file mode 100644
index 0000000..8b39409
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with link from Mapping View_Report.test
@@ -0,0 +1,35 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete location with link from Mapping View/Report
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _JjrGEKKdEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:50 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Report | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"1\""
+    get-menu "Synchronize/Delete" | get-property enablement | equals false | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with sub location from Mapping View_Document_Incoming Links.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with sub location from Mapping View_Document_Incoming Links.test
new file mode 100644
index 0000000..acc4f02
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with sub location from Mapping View_Document_Incoming Links.test
@@ -0,0 +1,35 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete location with sub location from Mapping View/Document/Incoming Links
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _e4Q0IKKUEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:51 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Document | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt"
+    get-menu "Synchronize/Delete" | get-property enablement | equals false | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with sub location from Mapping View_Document_Outgoing Links.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with sub location from Mapping View_Document_Outgoing Links.test
new file mode 100644
index 0000000..1942b8b
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with sub location from Mapping View_Document_Outgoing Links.test
@@ -0,0 +1,35 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete location with sub location from Mapping View/Document/Outgoing Links
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _xj9eQKKUEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:51 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Document | click
+}
+with [get-view Mapping | get-tree -after [get-label "Outgoing Links"]] {
+    select "\\/test\\/test3.txt"
+    get-menu "Synchronize/Delete" | get-property enablement | equals false | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with sub location from Mapping View_Report.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with sub location from Mapping View_Report.test
new file mode 100644
index 0000000..3b9c800
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete location with sub location from Mapping View_Report.test
@@ -0,0 +1,35 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete location with sub location from Mapping View/Report
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _4yeZwKKcEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:51 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Report | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt"
+    get-menu "Synchronize/Delete" | get-property enablement | equals false | verify-true
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete report from Mapping View_Report.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete report from Mapping View_Report.test
new file mode 100644
index 0000000..1512092
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Delete report from Mapping View_Report.test
@@ -0,0 +1,40 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Delete report from Mapping View/Report
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _EQm0gKKeEea4eqFW9hOBlg
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:51 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+}
+get-view Navigator | get-tree | select "test/test2.txt"
+get-editor "test2.txt" | click
+with [get-view Mapping] {
+    get-tab-folder | get-tab-item Report | click
+}
+with [get-view Mapping | get-tree] {
+    select "\\/test\\/test1.txt/\"1\"/\"1\"/Report1"
+    get-menu "Synchronize/Delete" | click
+    get-items | foreach {
+      get-property caption | equals "\\/test\\/test1.txt" | verify-false 
+      get-property caption | equals "\"1\"" | verify-false 
+      get-property caption | equals "Report1" | verify-false 
+    }
+}
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/EMF mapping base is initialized.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/EMF mapping base is initialized.test
new file mode 100644
index 0000000..f8e315e
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/EMF mapping base is initialized.test
@@ -0,0 +1,19 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: EMF mapping base is initialized
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _kPDvgH4-Eeaqvtvv7cNUUg
+Runtime-Version: 2.1.0.201606221726
+Save-Time: 8/21/17 2:31 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | click
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | get-property "values[1]" | equals test | verify-true
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/EMF mapping base listener is listening.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/EMF mapping base listener is listening.test
new file mode 100644
index 0000000..e6b1866
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/EMF mapping base listener is listening.test
@@ -0,0 +1,27 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: EMF mapping base listener is listening
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _ZJiFMH5BEeaqvtvv7cNUUg
+Runtime-Version: 2.1.0.201606221726
+Save-Time: 8/21/17 2:55 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | get-property "getItemCount()" | equals 2 | verify-true
+get-view "Navigator" | get-tree | select "test/base.mapping" | key-type F2
+with [get-window "Rename Resource"] {
+    with [get-editbox -after [get-label "New name:"]] {
+        key-type Right
+        set-text "base.mappingg"
+    }
+    get-button OK | click
+}
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | get-property "getItemCount()" | equals 1 | verify-true
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Remove from synchronization palette from palette.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Remove from synchronization palette from palette.test
new file mode 100644
index 0000000..5bebd23
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Remove from synchronization palette from palette.test
@@ -0,0 +1,33 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Remove from synchronization palette from palette
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _xi784KHLEea__8ecebJRnQ
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:51 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+with [get-view "Synchronization Palette" | get-tree] {
+    key-type "M1+a"
+    key-type Del
+}
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+    get-menu "Synchronize/Add location to synchronization palette" | click
+}
+get-view "Synchronization Palette" | get-tree | select c | key-type Del
+get-view "Synchronization Palette" | get-tree | get-property itemCount | equals 0 | verify-true
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Remove from synchronization palette from selection.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Remove from synchronization palette from selection.test
new file mode 100644
index 0000000..131104b
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Remove from synchronization palette from selection.test
@@ -0,0 +1,37 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _k2NaAHwYEeaC-KGN0DI6Vw,_a10TIHwYEeaC-KGN0DI6Vw
+Element-Name: Remove from synchronization palette from selection
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _NqlbgKG1Eea__8ecebJRnQ
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:52 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+with [get-view "Synchronization Palette" | get-tree] {
+    key-type "M1+a"
+    key-type Del
+}
+get-view Mapping | get-combo -after [get-label "Mapping base:"] | select test
+with [get-view Navigator | get-tree] {
+    select "test/test2.txt" | click -default
+    select "test/test2.txt" | double-click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+    get-menu "Synchronize/Add location to synchronization palette" | click
+}
+with [get-editor "test2.txt" | get-text-viewer] {
+    set-caret-pos 1 6
+    select-range 1 5 1 6
+    get-menu "Synchronize/Remove location from  synchronization palette" | click
+}
+get-view "Synchronization Palette" | get-tree | get-property itemCount | equals 0 | verify-true
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--
diff --git a/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Sirius/Sirius Add to synchronization palette from selection.test b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Sirius/Sirius Add to synchronization palette from selection.test
new file mode 100644
index 0000000..d008c7e
--- /dev/null
+++ b/mapping/tests/org.eclipse.intent.product.tests/tests/mapping/Sirius/Sirius Add to synchronization palette from selection.test
@@ -0,0 +1,42 @@
+--- RCPTT testcase ---
+Format-Version: 1.0
+Contexts: _l8MccPLOEeadt4DOVTJnHw,_4A3_UPLNEeadt4DOVTJnHw
+Element-Name: Sirius Add to synchronization palette from selection
+Element-Type: testcase
+Element-Version: 3.0
+External-Reference: 
+Id: _dJuhQPLOEeadt4DOVTJnHw
+Runtime-Version: 2.2.0.201706152316
+Save-Time: 8/28/17 2:47 PM
+Testcase-Type: ecl
+
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac
+Content-Type: text/ecl
+Entry-Name: .content
+
+with [get-view "Synchronization Palette" | get-tree] {
+    key-type "M1+a"
+    key-type Del
+}
+
+get-view "Model Explorer" | get-tree | select "sirius.test/mapping.ecore/mapping/mapping class diagram" | double-click
+get-editor "mapping class diagram" | get-diagram -index 1 | get-edit-part -name "mapping class diagram" 
+    | mouse-move 310 549 -height 900 -width 1252
+with [get-view Mapping] {
+    click
+    get-combo -after [get-label "Mapping base:"] | select "Sirius test"
+}
+with [get-editor "mapping class diagram" | get-diagram -index 1] {
+    with [get-edit-part -name "mapping class diagram"] {
+        mouse-move 404 702 -height 900 -width 765
+        with [get-edit-part -name TextLocation | get-edit-part -className DNodeListViewNodeListCompartment2EditPart] {
+            mouse-move 71 46 button3 -height 71 -width 133
+            mouse-press 71 46 button3 -height 71 -width 133
+        }
+    }
+    get-menu "Synchronize/Add location to synchronization palette" | click
+}
+get-view "Synchronization Palette" | click
+get-view "Synchronization Palette" | get-tree | get-item TextLocation | get-property caption | equals TextLocation 
+    | verify-true
+------=_.content-0a7243a0-75d3-3d5f-9791-539de0e5b7ac--