Merge branch 'neon' of https://git.eclipse.org/r/chess/chess.git into neon
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 7c98241..3184e37 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -15,6 +15,8 @@
SKIP_DEPENDENCIES: "false"
AUTO_DEPLOY_TO_PRODUCTION: "false"
+ MAVEN_LOCAL_DISTRIBUTION_REPOSITORY_DIR: "/tmp/maven_repository"
+ MAVEN_LOCAL_DISTRIBUTION_REPOSITORY_PRJ_DIR: "${MAVEN_LOCAL_DISTRIBUTION_REPOSITORY_DIR}/CHESS"
stages:
- build_sde
@@ -53,12 +55,16 @@
only:
refs:
- master
-
+ variables:
+ MAVEN_LOCAL_DISTRIBUTION_PRJ_REPOSITORY_URL: "file://$MAVEN_LOCAL_DISTRIBUTION_REPOSITORY_PRJ_DIR"
+
stage: test
environment: staging
script:
+ #- mkdir -p MAVEN_LOCAL_DISTRIBUTION_REPOSITORY_DIR
+ #- "export DISPLAY=:0.0; cd org.polarsys.chess.parent; mvn $MAVEN_CLI_OPTS -P Neon-Java8,DevelopmentUpdateSite -Ddistribution.repository=$MAVEN_LOCAL_DISTRIBUTION_PRJ_REPOSITORY_URL clean deploy"
- "export DISPLAY=:0.0; cd org.polarsys.chess.parent; mvn $MAVEN_CLI_OPTS -P Neon-Java8,DevelopmentUpdateSite clean install"
-
+
.deploy_to_production_update_site: &deploy_to_production_update_site
dependencies:
- maven_build_and_test
@@ -67,6 +73,7 @@
UPDATE_SITE_MOUNT_DIR: "/tmp/www_ci"
UPDATE_SITE_PROD_TARGET_DIR: "html/tools/aida_chess"
REPOSITORY_TO_COPY: "org.polarsys.chess.parent/releng/eu.fbk.tools.aida.chess.repository/target/repository"
+ MAVEN_REPOSITORY_DIR: "html/tools/maven_repository"
stage: deploy
environment: staging
@@ -77,6 +84,9 @@
- mkdir -p $UPDATE_SITE_MOUNT_DIR/$UPDATE_SITE_PROD_TARGET_DIR
- cp -r ${REPOSITORY_TO_COPY}/* $UPDATE_SITE_MOUNT_DIR/$UPDATE_SITE_PROD_TARGET_DIR
- chmod -R 0777 $UPDATE_SITE_MOUNT_DIR/$UPDATE_SITE_PROD_TARGET_DIR
+ #- echo "Deploy to remote maven repository"
+ #- cp -r ${MAVEN_LOCAL_DISTRIBUTION_REPOSITORY_DIR}/* $UPDATE_SITE_MOUNT_DIR/$MAVEN_REPOSITORY_DIR
+ #- chmod -R 0777 $UPDATE_SITE_MOUNT_DIR/$MAVEN_REPOSITORY_DIR
- fusermount -uz $UPDATE_SITE_MOUNT_DIR
only:
refs:
diff --git a/org.polarsys.chess.parent/bundles/pom.xml b/org.polarsys.chess.parent/bundles/pom.xml
index 96f2dd2..0582b1c 100644
--- a/org.polarsys.chess.parent/bundles/pom.xml
+++ b/org.polarsys.chess.parent/bundles/pom.xml
@@ -9,83 +9,65 @@
<artifactId>org.polarsys.chess.parent</artifactId>
<version>1.0.0-SNAPSHOT</version>
</parent>
- <modules>
- <module>../../plugins/org.polarsys.chess.chessmlprofile</module>
- <module>../../plugins/org.polarsys.chess.core</module>
- <module>../../plugins/org.polarsys.chess.wizards</module>
+ <modules>
<module>../../plugins/contracts/org.polarsys.chess.contracts.profile</module>
- <module>../../plugins/org.polarsys.chess.service</module>
- <module>../../plugins/org.polarsys.chess.cleanCExporter</module>
- <module>../../plugins/org.polarsys.chess.OSSImporter</module>
- <module>../../plugins/org.polarsys.chess.cdo</module>
- <module>../../plugins/org.polarsys.chess.codegen.ada</module>
- <module>../../plugins/org.polarsys.chess.commands</module>
- <module>
- ../../plugins/org.polarsys.chess.constraints.constraintEditor
- </module>
- <module>
- ../../plugins/contracts/org.polarsys.chess.contracts.chessextension
- </module>
- <module>
- ../../plugins/contracts/org.polarsys.chess.contracts.contractEditor
- </module>
- <module>
- ../../plugins/contracts/org.polarsys.chess.contracts.contractPropertyManager
- </module>
- <module>
- ../../plugins/contracts/org.polarsys.chess.contracts.integration
- </module>
- <module>
- ../../plugins/contracts/org.polarsys.chess.contracts.refinementView
- </module>
- <module>
- ../../plugins/contracts/org.polarsys.chess.contracts.safetyAnalysis
- </module>
- <module>
- ../../plugins/contracts/org.polarsys.chess.contracts.transformations
- </module>
- <module>
- ../../plugins/contracts/org.polarsys.chess.contracts.validation
- </module>
- <module>
- ../../plugins/contracts/org.polarsys.chess.contracts.verificationService
- </module>
- <module>
- ../../plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime
- </module>
- <module>../../plugins/org.polarsys.chess.diagram.ui</module>
- <module>../../plugins/org.polarsys.chess.diagramsCreator</module>
- <module>../../plugins/org.polarsys.chess.discovery</module>
- <module>../../plugins/fla/org.polarsys.chess.fla</module>
- <module>
- ../../plugins/fla/org.polarsys.chess.fla.faultTreeGenerator
- </module>
+ <module>../../plugins/contracts/org.polarsys.chess.contracts.chessextension</module>
+ <module>../../plugins/contracts/org.polarsys.chess.contracts.contractEditor</module>
+ <module>../../plugins/contracts/org.polarsys.chess.contracts.contractPropertyManager</module>
+ <module>../../plugins/contracts/org.polarsys.chess.contracts.integration</module>
+ <module>../../plugins/contracts/org.polarsys.chess.contracts.refinementView</module>
+ <module>../../plugins/contracts/org.polarsys.chess.contracts.safetyAnalysis</module>
+ <module>../../plugins/contracts/org.polarsys.chess.contracts.transformations</module>
+ <module>../../plugins/contracts/org.polarsys.chess.contracts.validation</module>
+ <module>../../plugins/contracts/org.polarsys.chess.contracts.verificationService</module>
+ <module>../../plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime</module>
+ <module>../../plugins/contracts/org.polarsys.chess.contracts.hierarchicalContractView</module>
+
+ <module>../../plugins/fla/org.polarsys.chess.fla</module>
+ <module>../../plugins/fla/org.polarsys.chess.fla.faultTreeGenerator</module>
<module>../../plugins/fla/org.polarsys.chess.fla.flamm</module>
<module>../../plugins/fla/org.polarsys.chess.fla.flaxml</module>
- <module>
- ../../plugins/fla/org.polarsys.chess.fla.transformations
- </module>
+ <module>../../plugins/fla/org.polarsys.chess.fla.transformations</module>
+ <!-- module>../../plugins/fla/org.polarsys.chess.fla.FPTC2FLABehavior</module-->
+ <module>../../plugins/fla/org.polarsys.chess.xtext.fladsl</module>
+ <module>../../plugins/fla/org.polarsys.chess.xtext.fladsl.ide</module>
+ <module>../../plugins/fla/org.polarsys.chess.xtext.fladsl.ui</module>
+
+ <module>../../plugins/org.polarsys.chess.cdo</module>
+ <module>../../plugins/org.polarsys.chess.checkers</module>
+ <module>../../plugins/org.polarsys.chess.chessmlprofile</module>
+ <module>../../plugins/org.polarsys.chess.cleanCExporter</module>
+ <module>../../plugins/org.polarsys.chess.codegen.ada</module>
+ <module>../../plugins/org.polarsys.chess.commands</module>
+ <module>../../plugins/org.polarsys.chess.constraints.constraintEditor</module>
+ <module>../../plugins/org.polarsys.chess.core</module>
+ <module>../../plugins/org.polarsys.chess.diagram.ui</module>
+ <module>../../plugins/org.polarsys.chess.diagramsCreator</module>
+ <module>../../plugins/org.polarsys.chess.discovery</module>
<module>../../plugins/org.polarsys.chess.functionBehaviors.functionBehaviorEditor</module>
+ <!-- module>../../plugins/org.polarsys.chess.instance.view</module-->
<module>../../plugins/org.polarsys.chess.m2m</module>
<module>../../plugins/org.polarsys.chess.monitoring</module>
<module>../../plugins/org.polarsys.chess.monitoring.edit</module>
<module>../../plugins/org.polarsys.chess.monitoring.editor</module>
<module>../../plugins/org.polarsys.chess.monitoring.tests</module>
<module>../../plugins/org.polarsys.chess.multicore</module>
+ <module>../../plugins/org.polarsys.chess.OSSImporter</module>
<module>../../plugins/org.polarsys.chess.paramArchConfigurator</module>
<module>../../plugins/org.polarsys.chess.patterns</module>
<module>../../plugins/org.polarsys.chess.patterns.library</module>
<module>../../plugins/org.polarsys.chess.patterns.profile</module>
<module>../../plugins/org.polarsys.chess.properties.propertyEditor</module>
- <module>../../plugins/org.polarsys.chess.validator</module>
- <module>../../plugins/contracts/org.polarsys.chess.contracts.hierarchicalContractView</module>
+ <module>../../plugins/org.polarsys.chess.service</module>
<module>../../plugins/org.polarsys.chess.smvExporter</module>
- <module>../../plugins/sba/org.polarsys.chess.statebased</module>
- <module>../../plugins/org.polarsys.chess.xtext.global</module>
+ <module>../../plugins/org.polarsys.chess.tabbedproperties</module>
+ <module>../../plugins/org.polarsys.chess.test.runtime</module>
<module>../../plugins/org.polarsys.chess.tradeoffAnalysis</module>
+ <module>../../plugins/org.polarsys.chess.validator</module>
+ <module>../../plugins/org.polarsys.chess.wizards</module>
+ <module>../../plugins/org.polarsys.chess.xtext.global</module>
+
+ <module>../../plugins/sba/org.polarsys.chess.statebased</module>
- <!-- module>../../plugins/org.polarsys.chess.tabbedproperties</module>
- <module>../../plugins/fla/org.polarsys.chess.xtext.fladsl</module>
- <module>../../plugins/fla/org.polarsys.chess.xtext.fladsl.ui</module-->
</modules>
</project>
diff --git a/org.polarsys.chess.parent/features/eu.fbk.tools.aida.chess.feature/feature.xml b/org.polarsys.chess.parent/features/eu.fbk.tools.aida.chess.feature/feature.xml
index 5a13c24..1c2707a 100644
--- a/org.polarsys.chess.parent/features/eu.fbk.tools.aida.chess.feature/feature.xml
+++ b/org.polarsys.chess.parent/features/eu.fbk.tools.aida.chess.feature/feature.xml
@@ -80,4 +80,11 @@
version="0.0.0"
unpack="false"/>
+ <plugin
+ id="org.polarsys.chess.checkers"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
</feature>
diff --git a/plugins/org.polarsys.chess.feature/.project b/org.polarsys.chess.parent/features/org.polarsys.chess.feature/.project
similarity index 100%
rename from plugins/org.polarsys.chess.feature/.project
rename to org.polarsys.chess.parent/features/org.polarsys.chess.feature/.project
diff --git a/plugins/org.polarsys.chess.feature/build.properties b/org.polarsys.chess.parent/features/org.polarsys.chess.feature/build.properties
similarity index 100%
rename from plugins/org.polarsys.chess.feature/build.properties
rename to org.polarsys.chess.parent/features/org.polarsys.chess.feature/build.properties
diff --git a/org.polarsys.chess.parent/features/org.polarsys.chess.feature/feature.xml b/org.polarsys.chess.parent/features/org.polarsys.chess.feature/feature.xml
new file mode 100644
index 0000000..26e0fba
--- /dev/null
+++ b/org.polarsys.chess.parent/features/org.polarsys.chess.feature/feature.xml
@@ -0,0 +1,327 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+ id="org.polarsys.chess.feature"
+ label="CHESS"
+ version="1.0.0.qualifier"
+ provider-name="Fondazione Bruno Kessler">
+
+ <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="http://www.example.com/license">
+ [Enter License Description here.]
+ </license>
+
+ <plugin
+ id="org.polarsys.chess.chessmlprofile"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.contracts.profile"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.diagram.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.diagramsCreator"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.functionBehaviors.functionBehaviorEditor"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.service"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.validator"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.wizards"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.checkers"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.OSSImporter"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.cleanCExporter"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.codegen.ada"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.commands"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.constraints.constraintEditor"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.contracts.chessextension"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.contracts.contractEditor"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.contracts.contractPropertyManager"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.contracts.hierarchicalContractView"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.contracts.integration"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"/>
+
+ <plugin
+ id="org.polarsys.chess.contracts.refinementView"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.contracts.safetyAnalysis"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.contracts.transformations"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.contracts.validation"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.contracts.verificationService"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.discovery"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.fla"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.fla.flamm"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.fla.flaxml"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.m2m"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.monitoring"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.multicore"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.paramArchConfigurator"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.patterns"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.patterns.library"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.patterns.profile"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.properties.propertyEditor"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.smvExporter"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.statebased"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.tradeoffAnalysis"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.xtext.fladsl"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.xtext.fladsl.ide"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.xtext.fladsl.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.xtext.global"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+</feature>
diff --git a/plugins/org.polarsys.chess.feature/pom.xml b/org.polarsys.chess.parent/features/org.polarsys.chess.feature/pom.xml
similarity index 70%
rename from plugins/org.polarsys.chess.feature/pom.xml
rename to org.polarsys.chess.parent/features/org.polarsys.chess.feature/pom.xml
index 8d85446..2310ac1 100644
--- a/plugins/org.polarsys.chess.feature/pom.xml
+++ b/org.polarsys.chess.parent/features/org.polarsys.chess.feature/pom.xml
@@ -4,12 +4,9 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.polarsys.chess</groupId>
- <artifactId>CHESS</artifactId>
- <version>0.0.1-SNAPSHOT</version>
- <relativePath>../../</relativePath>
+ <artifactId>org.polarsys.chess.features</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
</parent>
- <groupId>org.polarsys.chess</groupId>
<artifactId>org.polarsys.chess.feature</artifactId>
- <version>0.10.0-SNAPSHOT</version>
<packaging>eclipse-feature</packaging>
</project>
diff --git a/org.polarsys.chess.parent/features/pom.xml b/org.polarsys.chess.parent/features/pom.xml
index 891ccc5..3c6b71d 100644
--- a/org.polarsys.chess.parent/features/pom.xml
+++ b/org.polarsys.chess.parent/features/pom.xml
@@ -14,5 +14,8 @@
<module>
eu.fbk.tools.aida.chess.feature
</module>
+ <module>
+ org.polarsys.chess.feature
+ </module>
</modules>
</project>
diff --git a/org.polarsys.chess.parent/releng/eu.fbk.tools.aida.chess.target.neon/.project b/org.polarsys.chess.parent/releng/eu.fbk.tools.aida.chess.target.neon/.project
new file mode 100644
index 0000000..ecbd97a
--- /dev/null
+++ b/org.polarsys.chess.parent/releng/eu.fbk.tools.aida.chess.target.neon/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>eu.fbk.tools.aida.chess.target.neon</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
diff --git a/org.polarsys.chess.parent/releng/eu.fbk.tools.aida.chess.target.neon/eu.fbk.tools.aida.chess.target.neon.target b/org.polarsys.chess.parent/releng/eu.fbk.tools.aida.chess.target.neon/eu.fbk.tools.aida.chess.target.neon.target
new file mode 100644
index 0000000..6c82e7d
--- /dev/null
+++ b/org.polarsys.chess.parent/releng/eu.fbk.tools.aida.chess.target.neon/eu.fbk.tools.aida.chess.target.neon.target
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde version="3.8"?><target name="eu.fbk.tools.aida.chess.target.neon.target" sequenceNumber="59">
+<locations>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.nebula.widgets.grid.feature.feature.group" version="0.0.0"/>
+<repository location="https://download.eclipse.org/nebula/releases/2.2.0/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.xtext.sdk.feature.group" version="2.12.0.v20170519-1412"/>
+<repository location="http://download.eclipse.org/modeling/tmf/xtext/updates/releases/2.12.0/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.emf.mwe2.language.sdk.feature.group" version="2.9.0.v201605261103"/>
+<unit id="org.eclipse.emf.mwe.sdk.feature.group" version="1.3.20.v201605261103"/>
+<repository location="http://download.eclipse.org/modeling/emft/mwe/updates/releases/2.9.0/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.elk.gmf.feature.feature.group" version="0.4.0"/>
+<unit id="org.eclipse.elk.sdk.feature.feature.group" version="0.4.0"/>
+<unit id="org.eclipse.elk.algorithms.feature.feature.group" version="0.4.0"/>
+<unit id="org.eclipse.elk.graphiti.feature.feature.group" version="0.4.0"/>
+<unit id="org.eclipse.elk.feature.feature.group" version="0.4.0"/>
+<unit id="org.eclipse.elk.ui.feature.feature.group" version="0.4.0"/>
+<unit id="org.eclipse.elk.graphviz.feature.feature.group" version="0.4.0"/>
+<repository location="http://build.eclipse.org/modeling/elk/updates/0.4.0/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.papyrus.sysml.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.sysml.modelexplorer.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.sysml.nattable.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.sysml.properties.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.sysml.diagram.feature.feature.group" version="2.0.0.201703081153"/>
+<unit id="org.eclipse.papyrus.sdk.feature.feature.group" version="2.0.3.201703080851"/>
+<unit id="org.eclipse.papyrus.extra.cdo.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.extra.marte.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.extra.marte.properties.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.extra.marte.textedit.feature.feature.group" version="1.2.0.201703081153"/>
+<repository location="https://download.eclipse.org/modeling/mdt/papyrus/updates/releases/neon/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.uml2.sdk.feature.group" version="5.2.3.v20170227-0935"/>
+<unit id="org.eclipse.ocl.all.sdk.feature.group" version="5.2.0.v20160523-1914"/>
+<unit id="org.eclipse.equinox.sdk.feature.group" version="3.12.0.v20170209-1843"/>
+<unit id="org.eclipse.platform.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.gef.sdk.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.gmf.sdk.feature.group" version="0.0.0"/>
+<repository location="http://download.eclipse.org/releases/neon/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.sirius.specifier.ide.ui.aql.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.specifier.ide.ui.acceleo.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.aql.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.ide.eef.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.specifier.ide.ui.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.properties.feature.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.doc.feature.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.properties.feature.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.ide.ui.acceleo.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.ide.ui.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.acceleo.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.tests.support.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.ocl.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.interpreter.feature.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.specifier.properties.feature.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.interpreter.feature.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.specifier.ide.ui.acceleo.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.aql.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.ide.xtext.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.ide.ui.acceleo.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.specifier.properties.feature.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.acceleo.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.ocl.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.ide.eef.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.samples.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.ide.ui.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.tests.support.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.doc.feature.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.aql.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.samples.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.runtime.ide.xtext.source.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.specifier.ide.ui.aql.feature.group" version="4.1.9.201802221507"/>
+<unit id="org.eclipse.sirius.specifier.ide.ui.feature.group" version="4.1.9.201802221507"/>
+<repository location="http://download.eclipse.org/sirius/updates/releases/4.1.9/neon/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.m2m.atl.feature.group" version="4.1.0.v201909021645"/>
+<repository location="https://download.eclipse.org/mmt/atl/updates/releases/4.1/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.m2m.qvt.oml.sdk.feature.group" version="3.8.0.v20180612-0940"/>
+<repository location="https://download.eclipse.org/mmt/qvto/updates/releases/3.8.0/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.viatra.query.sdk.feature.source.feature.group" version="1.7.2.201803211255"/>
+<unit id="org.eclipse.viatra.addon.viewers.runtime.feature.source.feature.group" version="0.17.2.201803211255"/>
+<repository location="https://download.eclipse.org/viatra/updates/release/1.7.2"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.epsilon.core.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.epsilon.emf.feature.feature.group" version="0.0.0"/>
+<repository location="http://download.eclipse.org/epsilon/updates/1.4"/>
+</location>
+</locations>
+</target>
diff --git a/org.polarsys.chess.parent/releng/eu.fbk.tools.aida.chess.target.neon/pom.xml b/org.polarsys.chess.parent/releng/eu.fbk.tools.aida.chess.target.neon/pom.xml
new file mode 100644
index 0000000..35a22d0
--- /dev/null
+++ b/org.polarsys.chess.parent/releng/eu.fbk.tools.aida.chess.target.neon/pom.xml
@@ -0,0 +1,14 @@
+<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/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.polarsys.chess</groupId>
+ <artifactId>org.polarsys.chess.releng</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+ <groupId>eu.fbk.tools.aida.chess.target</groupId>
+ <artifactId>eu.fbk.tools.aida.chess.target.neon</artifactId>
+ <packaging>eclipse-target-definition</packaging>
+ <dependencies>
+ </dependencies>
+</project>
diff --git a/org.polarsys.chess.parent/releng/org.polarsys.chess.configuration/pom.xml b/org.polarsys.chess.parent/releng/org.polarsys.chess.configuration/pom.xml
index 93263ed..aae4190 100644
--- a/org.polarsys.chess.parent/releng/org.polarsys.chess.configuration/pom.xml
+++ b/org.polarsys.chess.parent/releng/org.polarsys.chess.configuration/pom.xml
@@ -11,6 +11,7 @@
</prerequisites>
<properties>
+ <distribution.repository>file:///tmp/maven_repository/</distribution.repository>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
@@ -23,9 +24,28 @@
<systemProperties></systemProperties>
<tycho.testArgLine></tycho.testArgLine>
<tycho.test.platformArgs />
- <tycho.test.jvmArgs>-Xmx512m ${tycho.test.platformArgs}</tycho.test.jvmArgs>
-
+ <tycho.test.jvmArgs>-Xmx512m ${tycho.test.platformArgs}</tycho.test.jvmArgs>
</properties>
+
+ <distributionManagement>
+ <repository>
+ <id>CHESS</id>
+ <name>CHESS</name>
+ <url>${distribution.repository}</url>
+ </repository>
+ </distributionManagement>
+
+ <repositories>
+ <repository>
+ <id>SDE</id>
+ <url>http://es-static.fbk.eu/tools/maven_repository/SDE</url>
+ </repository>
+
+ <repository>
+ <id>EST</id>
+ <url>http://es-static.fbk.eu/tools/maven_repository/EST</url>
+ </repository>
+ </repositories>
<build>
<plugins>
@@ -41,13 +61,6 @@
<artifactId>target-platform-configuration</artifactId>
<version>${tycho.version}</version>
<configuration>
- <target>
- <artifact>
- <groupId>org.polarsys.chess.target</groupId>
- <artifactId>org.polarsys.chess.target.neon</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- </artifact>
- </target>
<environments>
<environment>
<os>linux</os>
@@ -276,6 +289,74 @@
<configuration>
<target>
<artifact>
+ <groupId>eu.fbk.tools.aida.chess.target</groupId>
+ <artifactId>eu.fbk.tools.aida.chess.target.neon</artifactId>
+ <version>${project.version}</version>
+ </artifact>
+ </target>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.xtend</groupId>
+ <artifactId>xtend-maven-plugin</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>org.eclipse.platform</groupId>
+ <artifactId>org.eclipse.equinox.common</artifactId>
+ <version>[3.8.0,4.0.0)</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.jdt</groupId>
+ <artifactId>org.eclipse.jdt.core</artifactId>
+ <version>3.13.102</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.jdt</groupId>
+ <artifactId>org.eclipse.jdt.compiler.apt</artifactId>
+ <version>1.3.110</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.jdt</groupId>
+ <artifactId>org.eclipse.jdt.compiler.tool</artifactId>
+ <version>1.2.101</version>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>org.eclipse.emf.codegen</artifactId>
+ <version>2.11.0</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>Eclipse-Neon-Java8</id>
+ <properties>
+ <!-- Tycho settings -->
+ <tycho.version>1.0.0</tycho.version>
+ <tycho.extras.version>1.0.0</tycho.extras.version>
+ <maven.compiler.source>1.8</maven.compiler.source>
+ <maven.compiler.target>1.8</maven.compiler.target>
+ <xtextVersion>2.12.0</xtextVersion>
+ <ecore-xcore-version>1.3.1</ecore-xcore-version>
+ <ecore-xcore-codegen-version>1.2.0</ecore-xcore-codegen-version>
+ <ecore-xcore-lib-version>1.1.100</ecore-xcore-lib-version>
+ <mwe2Version>[2.9.0,2.9.1)</mwe2Version>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <maven.compiler.source>1.8</maven.compiler.source>
+ <maven.compiler.target>1.8</maven.compiler.target>
+ <emfRuntimeVersion>2.12</emfRuntimeVersion>
+ </properties>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <version>${tycho.version}</version>
+ <configuration>
+ <target>
+ <artifact>
<groupId>org.polarsys.chess.target</groupId>
<artifactId>org.polarsys.chess.target.neon</artifactId>
<version>${project.version}</version>
diff --git a/org.polarsys.chess.parent/releng/org.polarsys.chess.product/.project b/org.polarsys.chess.parent/releng/org.polarsys.chess.product/.project
new file mode 100644
index 0000000..afd8fce
--- /dev/null
+++ b/org.polarsys.chess.parent/releng/org.polarsys.chess.product/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.polarsys.chess.product</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
diff --git a/org.polarsys.chess.parent/releng/org.polarsys.chess.product/CHESS.product b/org.polarsys.chess.parent/releng/org.polarsys.chess.product/CHESS.product
new file mode 100644
index 0000000..776da3e
--- /dev/null
+++ b/org.polarsys.chess.parent/releng/org.polarsys.chess.product/CHESS.product
@@ -0,0 +1,157 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product name="CHESS Product" uid="org.polarsys.chess.product" id="org.eclipse.platform.ide" application="org.eclipse.ui.ide.workbench" version="1.0.0.qualifier" useFeatures="true" includeLaunchers="true">
+
+ <configIni use="default">
+ </configIni>
+
+ <launcherArgs>
+ <programArgs>-clearPersistedState
+ </programArgs>
+ <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
+ </vmArgsMac>
+ </launcherArgs>
+
+ <windowImages/>
+
+ <launcher name="CHESS">
+ <solaris/>
+ <win useIco="false">
+ <bmp/>
+ </win>
+ </launcher>
+
+ <vm>
+ </vm>
+
+ <plugins>
+ </plugins>
+
+ <features>
+ <feature id="org.eclipse.platform"/>
+ <feature id="org.eclipse.equinox.p2.user.ui"/>
+ <feature id="org.eclipse.ecf.filetransfer.httpclient4.feature"/>
+ <feature id="org.eclipse.help"/>
+ <feature id="org.eclipse.ecf.filetransfer.httpclient4.ssl.feature"/>
+ <feature id="org.eclipse.equinox.p2.extras.feature"/>
+ <feature id="org.eclipse.rcp"/>
+ <feature id="org.eclipse.equinox.p2.core.feature"/>
+ <feature id="org.eclipse.ecf.core.feature"/>
+ <feature id="org.eclipse.equinox.p2.rcp.feature"/>
+ <feature id="org.eclipse.ecf.filetransfer.feature"/>
+ <feature id="org.eclipse.ecf.core.ssl.feature"/>
+ <feature id="org.eclipse.ecf.filetransfer.ssl.feature"/>
+ <feature id="org.eclipse.emf.ecore"/>
+ <feature id="org.eclipse.emf.common"/>
+ <feature id="org.eclipse.e4.rcp"/>
+ <feature id="org.eclipse.papyrus.sysml.diagram.feature"/>
+ <feature id="org.eclipse.papyrus.sysml.feature"/>
+ <feature id="org.eclipse.papyrus.sysml.modelexplorer.feature"/>
+ <feature id="org.eclipse.papyrus.sysml.nattable.feature"/>
+ <feature id="org.eclipse.papyrus.sysml.properties.feature"/>
+ <feature id="org.eclipse.papyrus.sdk.feature"/>
+ <feature id="org.eclipse.papyrus.extra.marte.feature"/>
+ <feature id="org.eclipse.papyrus.extra.marte.properties.feature"/>
+ <feature id="org.eclipse.papyrus.extra.marte.textedit.feature"/>
+ <feature id="org.eclipse.papyrus.uml.ui.feature"/>
+ <feature id="org.eclipse.papyrus.infra.gmfdiag.css.feature"/>
+ <feature id="org.eclipse.papyrus.uml.tools.feature"/>
+ <feature id="org.eclipse.papyrus.uml.search.feature"/>
+ <feature id="org.eclipse.papyrus.views.references.feature"/>
+ <feature id="org.eclipse.papyrus.infra.services.feature"/>
+ <feature id="org.eclipse.papyrus.uml.modelexplorer.feature"/>
+ <feature id="org.eclipse.papyrus.uml.feature"/>
+ <feature id="org.eclipse.papyrus.emf.facet.feature"/>
+ <feature id="org.eclipse.papyrus.infra.viewpoints.feature"/>
+ <feature id="org.eclipse.papyrus.infra.emf.feature"/>
+ <feature id="org.eclipse.papyrus.infra.feature"/>
+ <feature id="org.eclipse.papyrus.uml.properties.feature"/>
+ <feature id="org.eclipse.papyrus.views.modelexplorer.feature"/>
+ <feature id="org.eclipse.papyrus.doc.feature"/>
+ <feature id="org.eclipse.papyrus.uml.assistants.feature"/>
+ <feature id="org.eclipse.papyrus.infra.ui.feature"/>
+ <feature id="org.eclipse.papyrus.infra.nattable.feature"/>
+ <feature id="org.eclipse.papyrus.views.search.feature"/>
+ <feature id="org.eclipse.papyrus.uml.diagram.css.feature"/>
+ <feature id="org.eclipse.papyrus.uml.diagram.feature"/>
+ <feature id="org.eclipse.papyrus.uml.alf.feature"/>
+ <feature id="org.eclipse.papyrus.uml.textedit.feature"/>
+ <feature id="org.eclipse.papyrus.uml.nattable.feature"/>
+ <feature id="org.eclipse.papyrus.editor.feature"/>
+ <feature id="org.eclipse.papyrus.views.validation.feature"/>
+ <feature id="org.eclipse.papyrus.infra.discovery.feature"/>
+ <feature id="org.eclipse.papyrus.customization.feature"/>
+ <feature id="org.eclipse.papyrus.uml.decoratormodel.feature"/>
+ <feature id="org.eclipse.papyrus.views.properties.feature"/>
+ <feature id="org.eclipse.papyrus.uml.xtext.integration.feature"/>
+ <feature id="org.eclipse.papyrus.infra.widget.feature"/>
+ <feature id="org.eclipse.papyrus.infra.core.feature"/>
+ <feature id="org.eclipse.papyrus.infra.gmfdiag.feature"/>
+ <feature id="org.eclipse.xtext.redist"/>
+ <feature id="org.eclipse.nebula.widgets.grid.feature"/>
+ <feature id="org.eclipse.jdt"/>
+ <feature id="org.eclipse.pde"/>
+ <feature id="org.eclipse.draw2d"/>
+ <feature id="org.eclipse.emf.sdk"/>
+ <feature id="org.eclipse.gef.sdk"/>
+ <feature id="org.eclipse.gmf.sdk"/>
+ <feature id="org.eclipse.xtext.sdk"/>
+ <feature id="org.eclipse.elk.gmf.feature"/>
+ <feature id="org.eclipse.elk.algorithms.feature"/>
+ <feature id="org.eclipse.elk.feature"/>
+ <feature id="org.eclipse.elk.sdk.feature"/>
+ <feature id="org.eclipse.elk.ui.feature"/>
+ <feature id="org.eclipse.emf.mwe2.language.sdk"/>
+ <feature id="org.eclipse.emf.mwe.sdk"/>
+ <feature id="org.eclipse.epsilon.emf.feature"/>
+ <feature id="org.eclipse.epsilon.core.feature"/>
+ <feature id="org.eclipse.uml2.sdk"/>
+ <feature id="org.eclipse.ocl.all.sdk"/>
+ <feature id="org.eclipse.m2m.atl"/>
+ <feature id="org.eclipse.m2m.qvt.oml.sdk"/>
+ <feature id="org.eclipse.sirius.runtime.aql"/>
+ <feature id="org.eclipse.sirius.properties.feature"/>
+ <feature id="org.eclipse.sirius.doc.feature"/>
+ <feature id="org.eclipse.sirius.runtime.ide.ui.acceleo"/>
+ <feature id="org.eclipse.sirius.tests.support"/>
+ <feature id="org.eclipse.sirius.runtime.ocl"/>
+ <feature id="org.eclipse.sirius.runtime"/>
+ <feature id="org.eclipse.sirius.specifier.properties.feature"/>
+ <feature id="org.eclipse.sirius.interpreter.feature"/>
+ <feature id="org.eclipse.sirius.specifier.ide.ui.acceleo"/>
+ <feature id="org.eclipse.sirius.aql"/>
+ <feature id="org.eclipse.sirius.runtime.ide.xtext"/>
+ <feature id="org.eclipse.sirius.runtime.acceleo"/>
+ <feature id="org.eclipse.sirius.runtime.ide.eef"/>
+ <feature id="org.eclipse.sirius.runtime.ide.ui"/>
+ <feature id="org.eclipse.sirius.samples"/>
+ <feature id="org.eclipse.sirius.specifier.ide.ui.aql"/>
+ <feature id="org.eclipse.sirius.specifier.ide.ui"/>
+ <feature id="eu.fbk.eclipse.standardtools.feature" installMode="root"/>
+ <feature id="org.polarsys.chess.feature" installMode="root"/>
+ <feature id="eu.fbk.tools.sde.feature" installMode="root"/>
+ </features>
+
+ <configurations>
+ <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
+ <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
+ <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="1" />
+ <plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" />
+ <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
+ </configurations>
+
+ <repositories>
+ <repository location="http://es-static.fbk.eu/tools/eclipse_est_devel" enabled="true" />
+ <repository location="http://es-static.fbk.eu/tools/eclipse_sde_devel" enabled="true" />
+ <repository location="http://es-static.fbk.eu/tools/eclipse_chess" enabled="true" />
+ </repositories>
+
+ <preferencesInfo>
+ <targetfile overwrite="false"/>
+ </preferencesInfo>
+
+ <cssInfo>
+ </cssInfo>
+
+</product>
diff --git a/org.polarsys.chess.parent/releng/org.polarsys.chess.product/pom.xml b/org.polarsys.chess.parent/releng/org.polarsys.chess.product/pom.xml
new file mode 100644
index 0000000..ecb9140
--- /dev/null
+++ b/org.polarsys.chess.parent/releng/org.polarsys.chess.product/pom.xml
@@ -0,0 +1,117 @@
+<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/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.polarsys.chess</groupId>
+ <artifactId>org.polarsys.chess.releng</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>org.polarsys.chess.product</artifactId>
+ <packaging>eclipse-repository</packaging>
+
+ <profiles>
+ <profile>
+ <id>ProductionUpdateSite</id>
+ </profile>
+ <profile>
+ <id>DevelopmentUpdateSite</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+ </profile>
+ </profiles>
+
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.m2e</groupId>
+ <artifactId>lifecycle-mapping</artifactId>
+ <version>1.0.0</version>
+ <configuration>
+ <lifecycleMappingMetadata>
+ <pluginExecutions>
+ <pluginExecution>
+ <pluginExecutionFilter>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-clean-plugin</artifactId>
+ <versionRange>[2.5,)</versionRange>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ </pluginExecutionFilter>
+ <action>
+ <ignore></ignore>
+ </action>
+ </pluginExecution>
+ </pluginExecutions>
+ </lifecycleMappingMetadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+
+ <plugins>
+ <plugin>
+ <groupId>com.google.code.maven-replacer-plugin</groupId>
+ <artifactId>replacer</artifactId>
+ <version>1.5.3</version>
+ <executions>
+ <execution>
+ <phase>prepare-package</phase>
+ <goals>
+ <goal>replace</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <file>${project.basedir}/CHESS.product</file>
+ <replacements>
+ <replacement>
+ <token>SOME</token>
+ <value>SOMEVALUE</value>
+ </replacement>
+ </replacements>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-repository-plugin</artifactId>
+ <version>${tycho.version}</version>
+ <configuration>
+ <includeAllDependencies>true</includeAllDependencies>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-director-plugin</artifactId>
+ <version>${tycho.version}</version>
+ <executions>
+ <execution>
+ <id>materialize-products</id>
+ <goals>
+ <goal>materialize-products</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>archive-products</id>
+ <goals>
+ <goal>archive-products</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <products>
+ <product>
+ <id>org.polarsys.chess.product</id>
+ <archiveFileName>CHESS-${buildNumber}</archiveFileName>
+ </product>
+ </products>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/org.polarsys.chess.parent/releng/org.polarsys.chess.repository/.project b/org.polarsys.chess.parent/releng/org.polarsys.chess.repository/.project
new file mode 100755
index 0000000..f6198cc
--- /dev/null
+++ b/org.polarsys.chess.parent/releng/org.polarsys.chess.repository/.project
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.polarsys.chess.repository</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
diff --git a/org.polarsys.chess.parent/releng/org.polarsys.chess.repository/category.xml b/org.polarsys.chess.parent/releng/org.polarsys.chess.repository/category.xml
new file mode 100755
index 0000000..5b5ee08
--- /dev/null
+++ b/org.polarsys.chess.parent/releng/org.polarsys.chess.repository/category.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<site>
+ <feature url="features/org.polarsys.chess.feature_1.0.0.qualifier.jar" id="org.polarsys.chess.feature" version="1.0.0.qualifier">
+ <category name="org.polarsys.chess"/>
+ </feature>
+ <category-def name="org.polarsys.chess" label="CHESS"/>
+</site>
diff --git a/org.polarsys.chess.parent/releng/org.polarsys.chess.repository/pom.xml b/org.polarsys.chess.parent/releng/org.polarsys.chess.repository/pom.xml
new file mode 100755
index 0000000..0dcd995
--- /dev/null
+++ b/org.polarsys.chess.parent/releng/org.polarsys.chess.repository/pom.xml
@@ -0,0 +1,181 @@
+<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/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.polarsys.chess</groupId>
+ <artifactId>org.polarsys.chess.releng</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>org.polarsys.chess.repository</artifactId>
+ <packaging>eclipse-repository</packaging>
+
+ <properties>
+ <updateSite.mount.dir.root>/tmp</updateSite.mount.dir.root>
+ <updateSite.mount.dir>www_ci</updateSite.mount.dir>
+ <updateSite.root>${updateSite.mount.dir.root}/${updateSite.mount.dir}/html/tools</updateSite.root>
+ <updateSite.url.root>es@es-static.fbk.eu:/</updateSite.url.root>
+ <updateSite.skip>true</updateSite.skip>
+ </properties>
+
+ <profiles>
+ <profile>
+ <id>DevelopmentUpdateSite</id>
+ <properties>
+ <updateSite.dir>${updateSite.root}/eclipse_chess_devel</updateSite.dir>
+ <updateSite.skip>false</updateSite.skip>
+ </properties>
+ </profile>
+ <profile>
+ <id>ProductionUpdateSite</id>
+ <properties>
+ <updateSite.dir>${updateSite.root}/eclipse_chess</updateSite.dir>
+ <updateSite.skip>false</updateSite.skip>
+ </properties>
+ </profile>
+ </profiles>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.m2e</groupId>
+ <artifactId>lifecycle-mapping</artifactId>
+ <version>1.0.0</version>
+ <configuration>
+ <lifecycleMappingMetadata>
+ <pluginExecutions>
+ <pluginExecution>
+ <pluginExecutionFilter>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-clean-plugin</artifactId>
+ <versionRange>[2.5,)</versionRange>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ </pluginExecutionFilter>
+ <action>
+ <ignore></ignore>
+ </action>
+ </pluginExecution>
+ </pluginExecutions>
+ </lifecycleMappingMetadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>exec-maven-plugin</artifactId>
+ <version>1.6.0</version>
+ <executions>
+ <execution>
+ <id>create_mount_dir</id>
+ <goals>
+ <goal>exec</goal>
+ </goals>
+ <phase>install</phase>
+ <configuration>
+ <skip>${updateSite.skip}</skip>
+ <executable>mkdir</executable>
+ <workingDirectory>${updateSite.mount.dir.root}</workingDirectory>
+ <longModulepath>false</longModulepath>
+ <arguments>
+ <argument>-p</argument>
+ <argument>${updateSite.mount.dir}</argument>
+ </arguments>
+ </configuration>
+ </execution>
+ <execution>
+ <id>change_dir_permissions</id>
+ <goals>
+ <goal>exec</goal>
+ </goals>
+ <phase>install</phase>
+ <configuration>
+ <skip>${updateSite.skip}</skip>
+ <executable>chmod</executable>
+ <workingDirectory>${updateSite.mount.dir.root}</workingDirectory>
+ <arguments>
+ <argument>0777</argument>
+ <argument>${updateSite.mount.dir}</argument>
+ </arguments>
+ </configuration>
+ </execution>
+ <execution>
+ <id>mount_sshfs</id>
+ <goals>
+ <goal>exec</goal>
+ </goals>
+ <phase>install</phase>
+ <configuration>
+ <skip>${updateSite.skip}</skip>
+ <executable>sshfs</executable>
+ <workingDirectory>${updateSite.mount.dir.root}</workingDirectory>
+ <arguments>
+ <argument>-o</argument>
+ <argument>nonempty</argument>
+ <argument>-o</argument>
+ <argument>umask=0777</argument>
+ <argument>${updateSite.url.root}</argument>
+ <argument>${updateSite.mount.dir}</argument>
+ </arguments>
+ </configuration>
+ </execution>
+ <execution>
+ <id>update_development_site</id>
+ <goals>
+ <goal>exec</goal>
+ </goals>
+ <phase>install</phase>
+ <configuration>
+ <skip>${updateSite.skip}</skip>
+ <executable>cp</executable>
+ <workingDirectory>${basedir}/target/repository</workingDirectory>
+ <arguments>
+ <argument>-r</argument>
+ <argument>.</argument>
+ <argument>${updateSite.dir}</argument>
+ </arguments>
+ </configuration>
+ </execution>
+ <execution>
+ <id>change_site_permissions</id>
+ <goals>
+ <goal>exec</goal>
+ </goals>
+ <phase>install</phase>
+ <configuration>
+ <executable>chmod</executable>
+ <workingDirectory>${updateSite.dir}</workingDirectory>
+ <arguments>
+ <argument>-R</argument>
+ <argument>0777</argument>
+ <argument>.</argument>
+ </arguments>
+ </configuration>
+ </execution>
+ <execution>
+ <id>umount_sshfs</id>
+ <goals>
+ <goal>exec</goal>
+ </goals>
+ <phase>install</phase>
+ <configuration>
+ <skip>${updateSite.skip}</skip>
+ <executable>fusermount</executable>
+ <workingDirectory>${updateSite.mount.dir.root}</workingDirectory>
+ <arguments>
+ <argument>-u</argument>
+ <argument>${updateSite.mount.dir}</argument>
+ </arguments>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/org.polarsys.chess.parent/releng/org.polarsys.chess.target.neon/org.polarsys.chess.target.neon.target b/org.polarsys.chess.parent/releng/org.polarsys.chess.target.neon/org.polarsys.chess.target.neon.target
index 0d734b2..f12063a 100644
--- a/org.polarsys.chess.parent/releng/org.polarsys.chess.target.neon/org.polarsys.chess.target.neon.target
+++ b/org.polarsys.chess.parent/releng/org.polarsys.chess.target.neon/org.polarsys.chess.target.neon.target
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde version="3.8"?><target name="org.polarsys.chess.target.neon.target" sequenceNumber="59">
+<?pde version="3.8"?><target name="org.polarsys.chess.target.neon.target" sequenceNumber="69">
<locations>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.nebula.widgets.grid.feature.feature.group" version="0.0.0"/>
@@ -26,20 +26,25 @@
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.papyrus.sysml.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.sysml.modelexplorer.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.sysml.nattable.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.sysml.properties.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.sysml.diagram.feature.feature.group" version="2.0.0.201703081153"/>
<unit id="org.eclipse.papyrus.sdk.feature.feature.group" version="2.0.3.201703080851"/>
<unit id="org.eclipse.papyrus.extra.cdo.feature.feature.group" version="1.2.0.201703081153"/>
-<unit id="org.eclipse.papyrus.sysml.diagram.feature.feature.group" version="2.0.0.201703081153"/>
<unit id="org.eclipse.papyrus.extra.marte.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.extra.marte.properties.feature.feature.group" version="1.2.0.201703081153"/>
+<unit id="org.eclipse.papyrus.extra.marte.textedit.feature.feature.group" version="1.2.0.201703081153"/>
<repository location="https://download.eclipse.org/modeling/mdt/papyrus/updates/releases/neon/"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
-<unit id="org.eclipse.epsilon.emf.feature.feature.group" version="1.5.1.201809302027"/>
-<unit id="org.eclipse.epsilon.core.feature.feature.group" version="1.5.1.201809302027"/>
-<repository location="http://download.eclipse.org/epsilon/updates/"/>
-</location>
-<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.uml2.sdk.feature.group" version="5.2.3.v20170227-0935"/>
<unit id="org.eclipse.ocl.all.sdk.feature.group" version="5.2.0.v20160523-1914"/>
+<unit id="org.eclipse.equinox.sdk.feature.group" version="3.12.0.v20170209-1843"/>
+<unit id="org.eclipse.platform.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.gef.sdk.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.gmf.sdk.feature.group" version="0.0.0"/>
<repository location="http://download.eclipse.org/releases/neon/"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
@@ -93,5 +98,10 @@
<unit id="org.eclipse.viatra.addon.viewers.runtime.feature.source.feature.group" version="0.17.2.201803211255"/>
<repository location="https://download.eclipse.org/viatra/updates/release/1.7.2"/>
</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.epsilon.core.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.epsilon.emf.feature.feature.group" version="0.0.0"/>
+<repository location="http://download.eclipse.org/epsilon/updates/1.4"/>
+</location>
</locations>
</target>
diff --git a/org.polarsys.chess.parent/releng/pom.xml b/org.polarsys.chess.parent/releng/pom.xml
index dccc0e5..0d97847 100644
--- a/org.polarsys.chess.parent/releng/pom.xml
+++ b/org.polarsys.chess.parent/releng/pom.xml
@@ -9,10 +9,22 @@
<artifactId>org.polarsys.chess.parent</artifactId>
<version>1.0.0-SNAPSHOT</version>
</parent>
-
- <modules>
+
+ <profiles>
+ <profile>
+ <id>bundle</id>
+ <modules>
+ <module>org.polarsys.chess.product</module>
+ </modules>
+ </profile>
+ </profiles>
+
+
+ <modules>
<module>org.polarsys.chess.configuration</module>
- <module>org.polarsys.chess.target.neon</module>
+ <module>eu.fbk.tools.aida.chess.target.neon</module>
+ <module>org.polarsys.chess.target.neon</module>
<module>eu.fbk.tools.aida.chess.repository</module>
- </modules>
+ <module>org.polarsys.chess.repository</module>
+ </modules>
</project>
diff --git a/plugins/contracts/org.polarsys.chess.contracts.profile/src/org/polarsys/chess/contracts/profile/chesscontract/util/EntityUtil.java b/plugins/contracts/org.polarsys.chess.contracts.profile/src/org/polarsys/chess/contracts/profile/chesscontract/util/EntityUtil.java
index f79e68a..0e0066a 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.profile/src/org/polarsys/chess/contracts/profile/chesscontract/util/EntityUtil.java
+++ b/plugins/contracts/org.polarsys.chess.contracts.profile/src/org/polarsys/chess/contracts/profile/chesscontract/util/EntityUtil.java
@@ -4033,6 +4033,14 @@
return null;
}
+ /**
+ * Returns the first operation found with the given name.
+ * <br>
+ * This is a very trivial method, no additional checks are done.
+ * @param operationName the name of the Operation
+ * @param block the owner class
+ * @return the Operation
+ */
public Operation getOperation(String operationName, Class block) {
return block.getOwnedOperation(operationName, null, null);
// logger.debug("getOperationType: " + block + " , " + operationName);
@@ -4046,6 +4054,18 @@
// return null;
}
+ /**
+ * Returns the first property found with the given name.
+ * <br>
+ * This is a very trivial method, no additional checks are done.
+ * @param propertyName the name of the Property
+ * @param block the owner class
+ * @return the Property
+ */
+ public Property getProperty(String propertyName, Class block) {
+ return block.getOwnedAttribute(propertyName, null);
+ }
+
public boolean isAttribute(String attributeName, Class blockAsClass) {
if (blockAsClass != null) {
Property umlProperty = blockAsClass.getOwnedAttribute(attributeName, null);
@@ -4316,5 +4336,43 @@
return result;
}
+ /**
+ * Returns true if the visibility of the given element is private.
+ * @param e the NamedElement
+ * @return
+ * @throws Exception in case no visibility is set
+ */
+ public boolean isVisibilityPrivate(NamedElement e) throws Exception {
+ if (e.isSetVisibility()) {
+ return (e.getVisibility() == VisibilityKind.PRIVATE_LITERAL);
+ }
+ throw new Exception("Element does not have any visibility");
+ }
+
+ /**
+ * Returns true if the visibility of the given element is priprotected.
+ * @param e the NamedElement
+ * @return
+ * @throws Exception in case no visibility is set
+ */
+ public boolean isVisibilityProtected(NamedElement e) throws Exception {
+ if (e.isSetVisibility()) {
+ return (e.getVisibility() == VisibilityKind.PROTECTED_LITERAL);
+ }
+ throw new Exception("Element does not have any visibility");
+ }
+
+ /**
+ * Returns true if the visibility of the given element is public.
+ * @param e the NamedElement
+ * @return
+ * @throws Exception in case no visibility is set
+ */
+ public boolean isVisibilityPublic(NamedElement e) throws Exception {
+ if (e.isSetVisibility()) {
+ return (e.getVisibility() == VisibilityKind.PUBLIC_LITERAL);
+ }
+ throw new Exception("Element does not have any visibility");
+ }
}
\ No newline at end of file
diff --git a/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generate.emtl b/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generate.emtl
new file mode 100644
index 0000000..581d566
--- /dev/null
+++ b/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generate.emtl
@@ -0,0 +1,10948 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI 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" xmlns:mtl="http://www.eclipse.org/acceleo/mtl/3.0" xmlns:ocl.ecore="http://www.eclipse.org/ocl/1.1.0/Ecore">
+ <mtl:Module name="generate" nsURI="org::polarsys::chess::contracts::transformations::main::generate" startHeaderPosition="754" endHeaderPosition="901">
+ <input>
+ <takesTypesFrom href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
+ </input>
+ <imports href="generateImplementation.emtl#/0"/>
+ <ownedModuleElement xsi:type="mtl:Template" name="mainTemplate" visibility="Public" main="true">
+ <init>
+ <variable name="SystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::System">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="SubSystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::SubSystem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="SystemViewQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Core::CHESSViews::SystemView">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="CompViewQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Core::CHESSViews::ComponentView">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="DeplViewQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Core::CHESSViews::DeploymentView">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="CompImplQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::ComponentModel::ComponentImplementation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="PlatformQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::Platform">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="BlockQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="SysML::Blocks::Block">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="SRACompQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::SRAComponent">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ </init>
+ <body xsi:type="mtl:FileBlock" openMode="OverWrite">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/generateComponent">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="system" referredVariable="/0/mainTemplate/%/%/%/%/%/%/%/%/system">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:BooleanLiteralExp" booleanSymbol="true">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Class)">
+ <source xsi:type="ocl.ecore:VariableExp" name="allBlocks" eType="/3/Set(Class)" referredVariable="/0/mainTemplate/%/%/%/%/%/allBlocks"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="allComps" eType="/3/Set(Component)" referredVariable="/0/mainTemplate/%/%/%/%/%/%/allComps"/>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/union.1"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="generated" eType="/3/Set(String)" referredVariable="/0/mainTemplate/%/%/%/%/%/%/%/generated"/>
+ <argument xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/equalsIgnoreCase">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="checkWeakContracts" referredVariable="/0/mainTemplate/checkWeakContracts">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="true">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <letVariable name="system">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <initExpression xsi:type="mtl:QueryInvocation" definition="/0/getSystem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="allBlocks" eType="/3/Set(Class)" referredVariable="/0/mainTemplate/%/%/%/%/%/allBlocks"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="sysQN" referredVariable="/0/mainTemplate/sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="generated" eType="/3/Set(String)">
+ <initExpression xsi:type="mtl:QueryInvocation" eType="/3/Set(String)" definition="/0/getEmptyStringSet">
+ <argument xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/24">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="allComps" eType="/3/Set(Component)">
+ <initExpression xsi:type="mtl:QueryInvocation" eType="/3/Set(Component)" definition="/0/getAllComponents">
+ <argument xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Component)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="deploymentView" referredVariable="/0/mainTemplate/%/%/%/%/deploymentView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Component">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </argument>
+ </argument>
+ <argument xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Component)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="componentView" referredVariable="/0/mainTemplate/%/%/componentView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Component">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </argument>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="CompImplQN" referredVariable="/0/mainTemplate/@init/@variable.5">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="SRACompQN" referredVariable="/0/mainTemplate/@init/@variable.8">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="allBlocks" eType="/3/Set(Class)">
+ <initExpression xsi:type="mtl:QueryInvocation" eType="/3/Set(Class)" definition="/0/getAllBlocks">
+ <argument xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Class)">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Class)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="componentView" referredVariable="/0/mainTemplate/%/%/componentView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Class)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="systemView" referredVariable="/0/mainTemplate/%/%/%/systemView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/union.1"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="BlockQN" referredVariable="/0/mainTemplate/@init/@variable.7">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="SubSystemQN" referredVariable="/0/mainTemplate/@init/@variable.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="SystemQN" referredVariable="/0/mainTemplate/@init/@variable.0">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="deploymentView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Package)">
+ <source xsi:type="ocl.ecore:VariableExp" name="model" referredVariable="/0/mainTemplate/model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/nestedPackage"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/mainTemplate/%/%/%/%/deploymentView/any/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="DeplViewQN" referredVariable="/0/mainTemplate/@init/@variable.4">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="systemView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Package)">
+ <source xsi:type="ocl.ecore:VariableExp" name="model" referredVariable="/0/mainTemplate/model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/nestedPackage"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/mainTemplate/%/%/%/systemView/any/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="SystemViewQN" referredVariable="/0/mainTemplate/@init/@variable.2">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="componentView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Package)">
+ <source xsi:type="ocl.ecore:VariableExp" name="model" referredVariable="/0/mainTemplate/model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/nestedPackage"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/mainTemplate/%/%/componentView/any/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="CompViewQN" referredVariable="/0/mainTemplate/@init/@variable.3">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <fileUrl xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="filename" referredVariable="/0/mainTemplate/filename">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/concat"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="sysName" referredVariable="/0/mainTemplate/sysName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/concat"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=".oss">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/concat"/>
+ </fileUrl>
+ <charset xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="UTF-8">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </charset>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:TemplateInvocation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <definition href="generateImplementation.emtl#/0/generateImplementation"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/31">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/mainTemplate/%.2/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/owner"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/mainTemplate/%.2/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/owner"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/mainTemplate/%.2/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/owner"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Component">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
+ </ifExpr>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/mainTemplate/%.2/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/owner"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="BlockQN" referredVariable="/0/mainTemplate/@init/@variable.7">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/mainTemplate/%.2/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/owner"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="CompImplQN" referredVariable="/0/mainTemplate/@init/@variable.5">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(StateMachine)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="model" referredVariable="/0/mainTemplate/model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/StateMachine">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </argument>
+ </iterSet>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <parameter name="model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </parameter>
+ <parameter name="sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="sysName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="filename">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="checkWeakContracts">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="generateComponent" visibility="Public">
+ <init>
+ <variable name="SystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::System">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="FlowPortQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="SysML::PortAndFlows::FlowPort">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="FlowPortMarteQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="MARTE::MARTE_DesignModel::GCM::FlowPort">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="ContractPropQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::ContractProperty">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="DelegConstrQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::DelegationConstraint">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="CSPortQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="MARTE::MARTE_DesignModel::GCM::ClientServerPort">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ </init>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	"/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/addToGenerated">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="generated" eType="/3/Set(String)" referredVariable="/0/generateComponent/generated"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	COMPONENT system
"/>
+ <ifExpr xsi:type="ocl.ecore:VariableExp" name="isSystem" referredVariable="/0/generateComponent/isSystem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ifExpr>
+ <else>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	COMPONENT "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ </else>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
	INTERFACE

"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	"/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getDirection">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/toString">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="direction" referredVariable="/0/generateComponent/%.5/%/%/%/%/%/direction">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </source>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="PORT "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" : "/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <letVariable name="direction">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="FlowPortQN" referredVariable="/0/generateComponent/@init/@variable.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="direction">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="FlowPortQN" referredVariable="/0/generateComponent/@init/@variable.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </ifExpr>
+ <elseIf>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	"/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getDirection">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/toString">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="direction" referredVariable="/0/generateComponent/%.5/%/%/%/%/%.2/%/direction">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </source>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="PORT "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" : "/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <letVariable name="direction">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="FlowPortMarteQN" referredVariable="/0/generateComponent/@init/@variable.2">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="direction">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="FlowPortMarteQN" referredVariable="/0/generateComponent/@init/@variable.2">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </ifExpr>
+ </elseIf>
+ </body>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	"/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/toString">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="proreq" referredVariable="/0/generateComponent/%.5/%/%/%/%.1/%/proreq">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </source>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/toUpper"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" OPERATION PORT "/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getOperationName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="op" referredVariable="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" ("/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getParamList">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="op" referredVariable="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=") : "/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getReturn">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="op" referredVariable="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <loopVariable name="op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Operation)">
+ <source xsi:type="ocl.ecore:VariableExp" name="interface" referredVariable="/0/generateComponent/%.5/%/%/%/%.1/%/%/interface">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Interface"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/getOperations"/>
+ </iterSet>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="interface" referredVariable="/0/generateComponent/%.5/%/%/%/%.1/%/%/interface">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Interface"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/67">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/%3C%3E"/>
+ </ifExpr>
+ </body>
+ <letVariable name="interface">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Interface"/>
+ <initExpression xsi:type="mtl:QueryInvocation" definition="/0/getInterface">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Interface"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="proreq">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="CSPortQN" referredVariable="/0/generateComponent/@init/@variable.5">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="kind">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/generateComponent/%.5/%/%/%/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="CSPortQN" referredVariable="/0/generateComponent/@init/@variable.5">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </ifExpr>
+ </body>
+ <letVariable name="port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateComponent/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Port">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateComponent/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Port">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </ifExpr>
+ <elseIf>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	PARAMETER "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateComponent/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" : "/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateComponent/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateComponent/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateComponent/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateComponent/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateComponent/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Component">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </elseIf>
+ </body>
+ <loopVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="props" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/props"/>
+ </body>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	
	CONTRACT "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.1/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
	assume:
		"/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getAssume">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contract" referredVariable="/0/generateComponent/%.5/%.1/%/%/contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
	guarantee:
		"/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getGuarantee">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contract" referredVariable="/0/generateComponent/%.5/%.1/%/%/contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <letVariable name="contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.1/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <loopVariable name="contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="contrProps" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.1/contrProps"/>
+ </body>
+ <letVariable name="contrProps" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateComponent/%.5/%.1/contrProps/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ContractPropQN" referredVariable="/0/generateComponent/@init/@variable.3">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONTRACT "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_allWeak
	assume:
		TRUE;
	guarantee:
	"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="(("/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getAssume">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contract" referredVariable="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=") implies "/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/isAssumptionTrue">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contract" referredVariable="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="("/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getGuarantee">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contract" referredVariable="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=")"/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=")"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/isAssumptionTrue">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contract" referredVariable="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <letVariable name="contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.2/%.1/%/%.3/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <loopVariable name="contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="contrProps" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.2/%.1/contrProps"/>
+ <each xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" and ">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </each>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProps" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.2/%.1/contrProps"/>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/size"/>
+ </source>
+ <argument xsi:type="ocl.ecore:IntegerLiteralExp" integerSymbol="0">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer_Class/%3E"/>
+ </ifExpr>
+ </body>
+ <letVariable name="contrProps" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateComponent/%.5/%.2/%.1/contrProps/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ContractPropQN" referredVariable="/0/generateComponent/@init/@variable.3">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </source>
+ <argument xsi:type="mtl:QueryInvocation" definition="/0/isWeakContract">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateComponent/%.5/%.2/%.1/contrProps/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:VariableExp" name="checkWeak" referredVariable="/0/generateComponent/checkWeak">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ifExpr>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
	REFINEMENT

"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	SUB	"/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateComponent/%.5/%.4/%/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" : "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateComponent/%.5/%.4/%/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <ifExpr xsi:type="mtl:QueryInvocation" definition="/0/isPart">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateComponent/%.5/%.4/%/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </ifExpr>
+ </body>
+ <loopVariable name="part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="parts" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.4/parts"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONNECTION "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" := "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="."/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </ifExpr>
+ <else>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONNECTION "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="."/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" := "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="."/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ </else>
+ <elseIf>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONNECTION "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="."/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" := "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </ifExpr>
+ </elseIf>
+ </body>
+ <ifExpr xsi:type="mtl:QueryInvocation" definition="/0/checkRules">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </argument>
+ </ifExpr>
+ <else>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONNECTION "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" := "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="."/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </ifExpr>
+ <else>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONNECTION "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="."/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" := "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="."/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ </else>
+ <elseIf>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONNECTION "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="."/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" := "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectableElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/role"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </ifExpr>
+ </elseIf>
+ </body>
+ </else>
+ </body>
+ <ifExpr xsi:type="mtl:QueryInvocation" definition="/0/checkConnectedPorts">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </argument>
+ </ifExpr>
+ <else>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	"/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getOperationConnections">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <ifExpr xsi:type="mtl:QueryInvocation" definition="/0/checkOperationPorts">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </argument>
+ </ifExpr>
+ </body>
+ </else>
+ </body>
+ <loopVariable name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="connections" eType="/3/Set(Connector)" referredVariable="/0/generateComponent/%.5/%.4/%.2/connections"/>
+ </body>
+ <letVariable name="connections" eType="/3/Set(Connector)">
+ <initExpression xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Connector)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedConnector"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" 	CONNECTION "/>
+ <body xsi:type="ocl.ecore:VariableExp" name="spec" referredVariable="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/spec.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </body>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/endsWith">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="spec" referredVariable="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/spec.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" 
"/>
+ <letVariable name="spec">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Sequence(String)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ValueSpecification"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="rule" referredVariable="/0/generateComponent/%.5/%.4/%.4/%/rule">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint/specification"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression/body"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="index" referredVariable="/0/generateComponent/%.5/%.4/%.4/%/%/%/index">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)_Class/at"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="index">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(String)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ValueSpecification"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="rule" referredVariable="/0/generateComponent/%.5/%.4/%.4/%/rule">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint/specification"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression/language"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="OCRA">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/indexOf"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ValueSpecification"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="rule" referredVariable="/0/generateComponent/%.5/%.4/%.4/%/rule">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint/specification"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsKindOf"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:IteratorExp" name="collect" eType="/3/Sequence(Boolean)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(String)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ValueSpecification"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="rule" referredVariable="/0/generateComponent/%.5/%.4/%.4/%/rule">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint/specification"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression/language"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/contains">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="temp1" referredVariable="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1/collect/temp1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="OCRA">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="temp1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </iterator>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="rule">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="rules" eType="/3/Set(Constraint)" referredVariable="/0/generateComponent/%.5/%.4/%.4/rules"/>
+ </body>
+ <letVariable name="rules" eType="/3/Set(Constraint)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/Set(Constraint)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Constraint)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/ownedRule"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="c" referredVariable="/0/generateComponent/%.5/%.4/%.4/rules/select/c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="DelegConstrQN" referredVariable="/0/generateComponent/@init/@variable.4">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONTRACT "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.6/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" REFINEDBY "/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getRefinedByStrongWeak">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.6/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="parts" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.4/parts"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <letVariable name="contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.6/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="mtl:QueryInvocation" definition="/0/isRefined">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.6/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </ifExpr>
+ </body>
+ <loopVariable name="contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="contrProps" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.4/%.6/%/contrProps"/>
+ </body>
+ <letVariable name="contrProps" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ContractPropQN" referredVariable="/0/generateComponent/@init/@variable.3">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/isWeakContract">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONTRACT "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_allWeak REFINEDBY "/>
+ <body xsi:type="ocl.ecore:VariableExp" name="refinedByAllWeak" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.2/%/refinedByAllWeak">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="

"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProps" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps"/>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/size"/>
+ </source>
+ <argument xsi:type="ocl.ecore:IntegerLiteralExp" integerSymbol="0">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer_Class/%3E"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/startsWith">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="refinedByAllWeak" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.2/%/refinedByAllWeak">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </body>
+ <letVariable name="refinedByAllWeak">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="mtl:QueryInvocation" definition="/0/getRefinedByAllWeak">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contrProps" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="parts" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.4/parts"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="contrProps" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ContractPropQN" referredVariable="/0/generateComponent/@init/@variable.3">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </source>
+ <argument xsi:type="mtl:QueryInvocation" definition="/0/isWeakContract">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:VariableExp" name="checkWeak" referredVariable="/0/generateComponent/checkWeak">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ifExpr>
+ <else>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONTRACT "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" REFINEDBY "/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getRefinedBy">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <letVariable name="contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="mtl:QueryInvocation" definition="/0/isRefined">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </ifExpr>
+ </body>
+ <loopVariable name="contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="contrProps" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps"/>
+ </body>
+ <letVariable name="contrProps" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ContractPropQN" referredVariable="/0/generateComponent/@init/@variable.3">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ </else>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONSISTENCY NAME "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="nextblock" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/%/%/nextblock">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_"/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_consistency := "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="."/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=".ASSUMPTION;
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/isWeakContract">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/isAssumptionTrue">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="contract" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </body>
+ <letVariable name="contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="contrProp" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <loopVariable name="contrProp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="contrProps" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps"/>
+ </body>
+ <letVariable name="contrProps" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="nextblock" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/%/%/nextblock">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ContractPropQN" referredVariable="/0/generateComponent/@init/@variable.3">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="nextblock">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="allBlocks" eType="/3/Set(Class)" referredVariable="/0/generateComponent/allBlocks"/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="c" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/%/%/nextblock/any/c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/="/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="mtl:QueryInvocation" definition="/0/isPart">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateComponent/%.5/%.4/%.8/%/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </ifExpr>
+ </body>
+ <loopVariable name="part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="parts" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.4/parts"/>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:VariableExp" name="checkWeak" referredVariable="/0/generateComponent/checkWeak">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ifExpr>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	"/>
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/generateComponent">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="newblock" referredVariable="/0/generateComponent/%.5/%.4/%.10/%/%/newblock">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:BooleanLiteralExp" booleanSymbol="false">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="allBlocks" eType="/3/Set(Class)" referredVariable="/0/generateComponent/allBlocks"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="generated" eType="/3/Set(String)" referredVariable="/0/generateComponent/generated"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="checkWeak" referredVariable="/0/generateComponent/checkWeak">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <letVariable name="newblock">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="allBlocks" eType="/3/Set(Class)" referredVariable="/0/generateComponent/allBlocks"/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateComponent/%.5/%.4/%.10/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="c" referredVariable="/0/generateComponent/%.5/%.4/%.10/%/%/newblock/any/c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/="/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/isPart">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateComponent/%.5/%.4/%.10/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/isAlreadyGenerated">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateComponent/%.5/%.4/%.10/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="generated" eType="/3/Set(String)" referredVariable="/0/generateComponent/generated"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="parts" eType="/3/OrderedSet(Property)" referredVariable="/0/generateComponent/%.5/%.4/parts"/>
+ </body>
+ <letVariable name="parts" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:OperationCallExp" eType="/3/OrderedSet(Property)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Property">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="props" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:OperationCallExp" eType="/3/OrderedSet(Property)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateComponent/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Property">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <parameter name="block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </parameter>
+ <parameter name="isSystem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </parameter>
+ <parameter name="allBlocks" eType="/3/Set(Class)"/>
+ <parameter name="generated" eType="/3/Set(String)"/>
+ <parameter name="checkWeak">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </parameter>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getInterface" visibility="Public">
+ <parameter name="port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/207">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getInterface(org.eclipse.uml2.uml.Port)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Port)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/getInterface/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Interface"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getReturn" visibility="Public">
+ <parameter name="op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/210">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getReturn(org.eclipse.uml2.uml.Operation)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Operation)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="op" referredVariable="/0/getReturn/op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getParamList" visibility="Public">
+ <parameter name="op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/213">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getParamList(org.eclipse.uml2.uml.Operation)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Operation)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="op" referredVariable="/0/getParamList/op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getOperationName" visibility="Public">
+ <parameter name="op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </parameter>
+ <parameter name="port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/216">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getOperationName(org.eclipse.uml2.uml.Operation, org.eclipse.uml2.uml.Port)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(ParameterableElement)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="op" referredVariable="/0/getOperationName/op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </item>
+ </part>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="port" referredVariable="/0/getOperationName/port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getSystem" visibility="Public">
+ <parameter name="classes" eType="/3/Set(Class)"/>
+ <parameter name="qname">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" eType="/3/Set(Class)" referredVariable="/219"/>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getSystem(java.util.Set, java.lang.String)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(OclAny)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem" eType="/3/Set(Class)">
+ <item xsi:type="ocl.ecore:VariableExp" name="classes" eType="/3/Set(Class)" referredVariable="/0/getSystem/classes"/>
+ </part>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="qname" referredVariable="/0/getSystem/qname">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getAllBlocks" visibility="Public" type="/3/Set(Class)">
+ <parameter name="classes" eType="/3/Set(Class)"/>
+ <parameter name="blockQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="SubSystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="SystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/Set(Class)">
+ <source xsi:type="ocl.ecore:VariableExp" name="classes" eType="/3/Set(Class)" referredVariable="/0/getAllBlocks/classes"/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="c" referredVariable="/0/getAllBlocks/select/c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="blockQN" referredVariable="/0/getAllBlocks/blockQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="c" referredVariable="/0/getAllBlocks/select/c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="SubSystemQN" referredVariable="/0/getAllBlocks/SubSystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="c" referredVariable="/0/getAllBlocks/select/c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="SystemQN" referredVariable="/0/getAllBlocks/SystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </iterator>
+ </expression>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getAllComponents" visibility="Public" type="/3/Set(Component)">
+ <parameter name="hwcomps" eType="/3/Set(Component)"/>
+ <parameter name="comps" eType="/3/Set(Component)"/>
+ <parameter name="CompImplQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="PlatformQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Component)">
+ <source xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/Set(Component)">
+ <source xsi:type="ocl.ecore:VariableExp" name="comps" eType="/3/Set(Component)" referredVariable="/0/getAllComponents/comps"/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="c" referredVariable="/0/getAllComponents/%/select/c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="CompImplQN" referredVariable="/0/getAllComponents/CompImplQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="c" referredVariable="/0/getAllComponents/%/select/c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="PlatformQN" referredVariable="/0/getAllComponents/PlatformQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </iterator>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="hwcomps" eType="/3/Set(Component)" referredVariable="/0/getAllComponents/hwcomps"/>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/union.1"/>
+ </expression>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getDirection" visibility="Public">
+ <parameter name="dir">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:IfExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <condition xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/228">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="in">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/="/>
+ </condition>
+ <thenExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="INPUT ">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </thenExpression>
+ <elseExpression xsi:type="ocl.ecore:IfExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <condition xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/228">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="out">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/="/>
+ </condition>
+ <thenExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="OUTPUT ">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </thenExpression>
+ <elseExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </elseExpression>
+ </elseExpression>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="isPart" visibility="Public">
+ <parameter name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:IfExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <condition xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/231">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/21/Component">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/231">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::ComponentModel::ComponentImplementation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/231">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="SysML::Blocks::Block">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/231">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::SubSystem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
+ </condition>
+ <thenExpression xsi:type="ocl.ecore:BooleanLiteralExp" booleanSymbol="true">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </thenExpression>
+ <elseExpression xsi:type="ocl.ecore:BooleanLiteralExp" booleanSymbol="false">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </elseExpression>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="isDelegation" visibility="Public">
+ <parameter name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:IfExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <condition xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/isDelegation/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/isDelegation/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/last"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/xor"/>
+ </condition>
+ <thenExpression xsi:type="ocl.ecore:BooleanLiteralExp" booleanSymbol="true">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </thenExpression>
+ <elseExpression xsi:type="ocl.ecore:BooleanLiteralExp" booleanSymbol="false">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </elseExpression>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="firstIsSub" visibility="Public">
+ <parameter name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:IfExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <condition xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(ConnectorEnd)">
+ <source xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/firstIsSub/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector/end"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/first"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd/partWithPort"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </condition>
+ <thenExpression xsi:type="ocl.ecore:BooleanLiteralExp" booleanSymbol="false">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </thenExpression>
+ <elseExpression xsi:type="ocl.ecore:BooleanLiteralExp" booleanSymbol="true">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </elseExpression>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getNewBlocks" visibility="Public" type="/3/Set(String)">
+ <parameter name="parts" eType="/3/Set(Property)"/>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" eType="/3/Set(Property)" referredVariable="/240"/>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getNewBlocks(java.util.Set)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Set(Property))" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem" eType="/3/Set(Property)">
+ <item xsi:type="ocl.ecore:VariableExp" name="parts" eType="/3/Set(Property)" referredVariable="/0/getNewBlocks/parts"/>
+ </part>
+ </argument>
+ </expression>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getEmptyStringSet" visibility="Public" type="/3/Set(String)">
+ <parameter name="traceCtx">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/243">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getEmptyStringSet()">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(OclVoid)" kind="Sequence"/>
+ </expression>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="addToGenerated" visibility="Public">
+ <parameter name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="generated" eType="/3/Set(String)"/>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/246">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="addToGenerated(java.lang.String, java.util.Set)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(OclAny)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="name" referredVariable="/0/addToGenerated/name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </item>
+ </part>
+ <part xsi:type="ocl.ecore:CollectionItem" eType="/3/Set(String)">
+ <item xsi:type="ocl.ecore:VariableExp" name="generated" eType="/3/Set(String)" referredVariable="/0/addToGenerated/generated"/>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="isAlreadyGenerated" visibility="Public">
+ <parameter name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="generated" eType="/3/Set(String)"/>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/249">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="isAlreadyGenerated(java.lang.String, java.util.Set)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(OclAny)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="name" referredVariable="/0/isAlreadyGenerated/name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </item>
+ </part>
+ <part xsi:type="ocl.ecore:CollectionItem" eType="/3/Set(String)">
+ <item xsi:type="ocl.ecore:VariableExp" name="generated" eType="/3/Set(String)" referredVariable="/0/isAlreadyGenerated/generated"/>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getAssume" visibility="Public">
+ <parameter name="contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/252">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getAssume(org.eclipse.uml2.uml.Class)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Class)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="contract" referredVariable="/0/getAssume/contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getGuarantee" visibility="Public">
+ <parameter name="contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/255">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getGuarantee(org.eclipse.uml2.uml.Class)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Class)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="contract" referredVariable="/0/getGuarantee/contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="isRefined" visibility="Public">
+ <parameter name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/258">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="isRefined(org.eclipse.uml2.uml.Property)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Property)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/isRefined/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getRefinedBy" visibility="Public">
+ <parameter name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/261">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getRefinedBy(org.eclipse.uml2.uml.Property)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Property)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/getRefinedBy/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getRefinedByStrongWeak" visibility="Public">
+ <parameter name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </parameter>
+ <parameter name="parts" eType="/3/Set(Property)"/>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/264">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getRefinedByStrongWeak(org.eclipse.uml2.uml.Property,java.util.Set)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(OclAny)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/getRefinedByStrongWeak/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </item>
+ </part>
+ <part xsi:type="ocl.ecore:CollectionItem" eType="/3/Set(Property)">
+ <item xsi:type="ocl.ecore:VariableExp" name="parts" eType="/3/Set(Property)" referredVariable="/0/getRefinedByStrongWeak/parts"/>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getRefinedByAllWeak" visibility="Public">
+ <parameter name="props" eType="/3/Set(Property)"/>
+ <parameter name="parts" eType="/3/Set(Property)"/>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" eType="/3/Set(Property)" referredVariable="/267"/>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getRefinedByAllWeak(java.util.Set,java.util.Set)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Set(Property))" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem" eType="/3/Set(Property)">
+ <item xsi:type="ocl.ecore:VariableExp" name="props" eType="/3/Set(Property)" referredVariable="/0/getRefinedByAllWeak/props"/>
+ </part>
+ <part xsi:type="ocl.ecore:CollectionItem" eType="/3/Set(Property)">
+ <item xsi:type="ocl.ecore:VariableExp" name="parts" eType="/3/Set(Property)" referredVariable="/0/getRefinedByAllWeak/parts"/>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getContractType" visibility="Public">
+ <parameter name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/270">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getContractType(org.eclipse.uml2.uml.Property)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Property)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/getContractType/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="isWeakContract" visibility="Public">
+ <parameter name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/273">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="isWeakContract(org.eclipse.uml2.uml.Property)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Property)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/isWeakContract/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="isAssumptionTrue" visibility="Public">
+ <parameter name="contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/276">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="isAssumptionTrue(org.eclipse.uml2.uml.Class)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Class)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="contract" referredVariable="/0/isAssumptionTrue/contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="checkRules" visibility="Public">
+ <parameter name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/279">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="checkRules(org.eclipse.uml2.uml.Connector)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Connector)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/checkRules/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="checkConnectedPorts" visibility="Public">
+ <parameter name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/282">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="checkConnectedPorts(org.eclipse.uml2.uml.Connector)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Connector)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/checkConnectedPorts/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="checkOperationPorts" visibility="Public">
+ <parameter name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/285">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="checkOperationPorts(org.eclipse.uml2.uml.Connector)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Connector)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/checkOperationPorts/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getOperationConnections" visibility="Public">
+ <parameter name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/288">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getOperationConnections(org.eclipse.uml2.uml.Connector)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Connector)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="conn" referredVariable="/0/getOperationConnections/conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getType" visibility="Public">
+ <parameter name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/291">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getType(org.eclipse.uml2.uml.Type)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Type)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="type" referredVariable="/0/getType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ </mtl:Module>
+ <ecore:EPackage name="additions">
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_String_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eAnnotations>
+ <eOperations name="startsWith">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="substring">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="endsWith">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="substring">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="contains">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="substring">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="equalsIgnoreCase">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="other">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Integer_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Real_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Real"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ecore_EObject_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eAnnotations>
+ <eOperations name="mainTemplate">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/mainTemplate"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </eParameters>
+ <eParameters name="sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="sysName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="filename">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="checkWeakContracts">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="generateComponent">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/generateComponent"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eParameters>
+ <eParameters name="isSystem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </eParameters>
+ <eParameters name="allBlocks" eType="/3/Set(Class)"/>
+ <eParameters name="generated" eType="/3/Set(String)"/>
+ <eParameters name="checkWeak">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getInterface">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getInterface"/>
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Interface"/>
+ <eParameters name="port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getReturn">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getReturn"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getParamList">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getParamList"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getOperationName">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getOperationName"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="op">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </eParameters>
+ <eParameters name="port">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getSystem">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getSystem"/>
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <eParameters name="classes" eType="/3/Set(Class)"/>
+ <eParameters name="qname">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getAllBlocks" eType="/3/Set(Class)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getAllBlocks"/>
+ <eParameters name="classes" eType="/3/Set(Class)"/>
+ <eParameters name="blockQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="SubSystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="SystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getAllComponents" eType="/3/Set(Component)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getAllComponents"/>
+ <eParameters name="hwcomps" eType="/3/Set(Component)"/>
+ <eParameters name="comps" eType="/3/Set(Component)"/>
+ <eParameters name="CompImplQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="PlatformQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getDirection">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getDirection"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="dir">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="isPart">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/isPart"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="isDelegation">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/isDelegation"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="firstIsSub">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/firstIsSub"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getNewBlocks" eType="/3/Set(String)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getNewBlocks"/>
+ <eParameters name="parts" eType="/3/Set(Property)"/>
+ </eOperations>
+ <eOperations name="getEmptyStringSet" eType="/3/Set(String)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getEmptyStringSet"/>
+ <eParameters name="traceCtx">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="addToGenerated">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/addToGenerated"/>
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <eParameters name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="generated" eType="/3/Set(String)"/>
+ </eOperations>
+ <eOperations name="isAlreadyGenerated">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/isAlreadyGenerated"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="generated" eType="/3/Set(String)"/>
+ </eOperations>
+ <eOperations name="getAssume">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getAssume"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getGuarantee">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getGuarantee"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="isRefined">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/isRefined"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getRefinedBy">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getRefinedBy"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getRefinedByStrongWeak">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getRefinedByStrongWeak"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eParameters>
+ <eParameters name="parts" eType="/3/Set(Property)"/>
+ </eOperations>
+ <eOperations name="getRefinedByAllWeak">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getRefinedByAllWeak"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="props" eType="/3/Set(Property)"/>
+ <eParameters name="parts" eType="/3/Set(Property)"/>
+ </eOperations>
+ <eOperations name="getContractType">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getContractType"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="isWeakContract">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/isWeakContract"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="isAssumptionTrue">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/isAssumptionTrue"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="contract">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="checkRules">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/checkRules"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="checkConnectedPorts">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/checkConnectedPorts"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="checkOperationPorts">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/checkOperationPorts"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getOperationConnections">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getOperationConnections"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="conn">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getType">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getType"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="generateImplementation">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="generateImplementation.emtl#/0/generateImplementation"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eParameters>
+ <eParameters name="owner">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_OclAny_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </eAnnotations>
+ <eOperations name="toString">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eOperations>
+ <eOperations name="invoke">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <eParameters name="class">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="method">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="arguments">
+ <eType xsi:type="ocl.ecore:SequenceType" href="http://www.eclipse.org/acceleo/mtl/3.0/mtlnonstdlib.ecore#//Sequence(OclAny)"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Collection(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Collection(T)"/>
+ </eAnnotations>
+ <eOperations name="filter">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:CollectionType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Collection(T)"/>
+ <eParameters name="filter">
+ <eType xsi:type="ocl.ecore:TypeType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclType"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Sequence(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_OrderedSet(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Model_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Class_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Port_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Operation_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="collections_Set(Class)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL" references="/3/Set(Class)"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="collections_Set(Component)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL" references="/3/Set(Component)"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Property_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Connector_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="collections_Set(Property)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL" references="/3/Set(Property)"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Type_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_StateMachine_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eAnnotations>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ecore:EPackage name="collections">
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Class)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(String)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Component)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Property)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Package)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Stereotype)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Element)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:BagType" name="Bag(Class)" instanceClassName="org.eclipse.ocl.util.Bag">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(StateMachine)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(Property)" instanceClassName="java.util.LinkedHashSet">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Operation)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Connector)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(ConnectorEnd)" instanceClassName="java.util.LinkedHashSet">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ConnectorEnd"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Constraint)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(String)" instanceClassName="java.util.LinkedHashSet">
+ <elementType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Boolean)" instanceClassName="java.util.List">
+ <elementType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(String)" instanceClassName="java.util.List">
+ <elementType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Port)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(OclAny)" instanceClassName="java.util.List">
+ <elementType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Operation)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(ParameterableElement)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ParameterableElement"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:BagType" name="Bag(Component)" instanceClassName="org.eclipse.ocl.util.Bag">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Set(Property))" instanceClassName="java.util.List" elementType="/3/Set(Property)"/>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(OclVoid)" instanceClassName="java.util.List">
+ <elementType xsi:type="ocl.ecore:VoidType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclVoid"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Class)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Property)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Connector)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Type)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ecore:EPackage name="types">
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="Component">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="StateMachine">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="Property">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="Port">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self" eType="/3/Set(Class)"/>
+ <ocl.ecore:Variable name="self" eType="/3/Set(Class)"/>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self" eType="/3/Set(Class)"/>
+ <ocl.ecore:Variable name="self" eType="/3/Set(Class)"/>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self" eType="/3/Set(Component)"/>
+ <ocl.ecore:Variable name="self" eType="/3/Set(Component)"/>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self" eType="/3/Set(Property)"/>
+ <ocl.ecore:Variable name="self" eType="/3/Set(Property)"/>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self" eType="/3/Set(Property)"/>
+ <ocl.ecore:Variable name="self" eType="/3/Set(Property)"/>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ecore:EAnnotation source="positions">
+ <eAnnotations source="positions.0" references="/0/mainTemplate">
+ <details key="start" value="907"/>
+ <details key="end" value="3045"/>
+ <details key="line" value="23"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1" references="/0/mainTemplate/@init">
+ <details key="start" value="1033"/>
+ <details key="end" value="1561"/>
+ <details key="line" value="23"/>
+ </eAnnotations>
+ <eAnnotations source="positions.2" references="/0/mainTemplate/@init/@variable.0">
+ <details key="start" value="1037"/>
+ <details key="end" value="1080"/>
+ <details key="line" value="24"/>
+ </eAnnotations>
+ <eAnnotations source="positions.3" references="/0/mainTemplate/@init/@variable.0/%">
+ <details key="start" value="1057"/>
+ <details key="end" value="1080"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.4" references="/0/mainTemplate/@init/@variable.1">
+ <details key="start" value="1084"/>
+ <details key="end" value="1133"/>
+ <details key="line" value="25"/>
+ </eAnnotations>
+ <eAnnotations source="positions.5" references="/0/mainTemplate/@init/@variable.1/%">
+ <details key="start" value="1107"/>
+ <details key="end" value="1133"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.6" references="/0/mainTemplate/@init/@variable.2">
+ <details key="start" value="1137"/>
+ <details key="end" value="1198"/>
+ <details key="line" value="26"/>
+ </eAnnotations>
+ <eAnnotations source="positions.7" references="/0/mainTemplate/@init/@variable.2/%">
+ <details key="start" value="1161"/>
+ <details key="end" value="1198"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.8" references="/0/mainTemplate/@init/@variable.3">
+ <details key="start" value="1202"/>
+ <details key="end" value="1264"/>
+ <details key="line" value="27"/>
+ </eAnnotations>
+ <eAnnotations source="positions.9" references="/0/mainTemplate/@init/@variable.3/%">
+ <details key="start" value="1224"/>
+ <details key="end" value="1264"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.10" references="/0/mainTemplate/@init/@variable.4">
+ <details key="start" value="1268"/>
+ <details key="end" value="1331"/>
+ <details key="line" value="28"/>
+ </eAnnotations>
+ <eAnnotations source="positions.11" references="/0/mainTemplate/@init/@variable.4/%">
+ <details key="start" value="1290"/>
+ <details key="end" value="1331"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.12" references="/0/mainTemplate/@init/@variable.5">
+ <details key="start" value="1335"/>
+ <details key="end" value="1405"/>
+ <details key="line" value="29"/>
+ </eAnnotations>
+ <eAnnotations source="positions.13" references="/0/mainTemplate/@init/@variable.5/%">
+ <details key="start" value="1357"/>
+ <details key="end" value="1405"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.14" references="/0/mainTemplate/@init/@variable.6">
+ <details key="start" value="1409"/>
+ <details key="end" value="1456"/>
+ <details key="line" value="30"/>
+ </eAnnotations>
+ <eAnnotations source="positions.15" references="/0/mainTemplate/@init/@variable.6/%">
+ <details key="start" value="1431"/>
+ <details key="end" value="1456"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.16" references="/0/mainTemplate/@init/@variable.7">
+ <details key="start" value="1460"/>
+ <details key="end" value="1501"/>
+ <details key="line" value="31"/>
+ </eAnnotations>
+ <eAnnotations source="positions.17" references="/0/mainTemplate/@init/@variable.7/%">
+ <details key="start" value="1479"/>
+ <details key="end" value="1501"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.18" references="/0/mainTemplate/@init/@variable.8">
+ <details key="start" value="1505"/>
+ <details key="end" value="1555"/>
+ <details key="line" value="32"/>
+ </eAnnotations>
+ <eAnnotations source="positions.19" references="/0/mainTemplate/@init/@variable.8/%">
+ <details key="start" value="1526"/>
+ <details key="end" value="1555"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.20" references="/0/mainTemplate/%">
+ <details key="start" value="1583"/>
+ <details key="end" value="2684"/>
+ <details key="line" value="36"/>
+ </eAnnotations>
+ <eAnnotations source="positions.21" references="/0/mainTemplate/%/%">
+ <details key="start" value="1662"/>
+ <details key="end" value="2675"/>
+ <details key="line" value="37"/>
+ </eAnnotations>
+ <eAnnotations source="positions.22" references="/0/mainTemplate/%/%/%">
+ <details key="start" value="1783"/>
+ <details key="end" value="2666"/>
+ <details key="line" value="38"/>
+ </eAnnotations>
+ <eAnnotations source="positions.23" references="/0/mainTemplate/%/%/%/%">
+ <details key="start" value="1903"/>
+ <details key="end" value="2657"/>
+ <details key="line" value="39"/>
+ </eAnnotations>
+ <eAnnotations source="positions.24" references="/0/mainTemplate/%/%/%/%/%">
+ <details key="start" value="2026"/>
+ <details key="end" value="2648"/>
+ <details key="line" value="40"/>
+ </eAnnotations>
+ <eAnnotations source="positions.25" references="/0/mainTemplate/%/%/%/%/%/%">
+ <details key="start" value="2206"/>
+ <details key="end" value="2639"/>
+ <details key="line" value="41"/>
+ </eAnnotations>
+ <eAnnotations source="positions.26" references="/0/mainTemplate/%/%/%/%/%/%/%">
+ <details key="start" value="2389"/>
+ <details key="end" value="2630"/>
+ <details key="line" value="42"/>
+ </eAnnotations>
+ <eAnnotations source="positions.27" references="/0/mainTemplate/%/%/%/%/%/%/%/%">
+ <details key="start" value="2443"/>
+ <details key="end" value="2621"/>
+ <details key="line" value="43"/>
+ </eAnnotations>
+ <eAnnotations source="positions.28" references="/0/mainTemplate/%/%/%/%/%/%/%/%/%">
+ <details key="start" value="2496"/>
+ <details key="end" value="2610"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.29" references="/0/mainTemplate/%/%/%/%/%/%/%/%/%/system">
+ <details key="start" value="2514"/>
+ <details key="end" value="2520"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.30" references="/0/mainTemplate/%/%/%/%/%/%/%/%/%/%">
+ <details key="start" value="2522"/>
+ <details key="end" value="2526"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.31" references="/0/mainTemplate/%/%/%/%/%/%/%/%/%/%.1">
+ <details key="start" value="2528"/>
+ <details key="end" value="2554"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.32" references="/0/mainTemplate/%/%/%/%/%/%/%/%/%/%.1/allBlocks">
+ <details key="start" value="2528"/>
+ <details key="end" value="2537"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.33" references="/0/mainTemplate/%/%/%/%/%/%/%/%/%/%.1/allComps">
+ <details key="start" value="2545"/>
+ <details key="end" value="2553"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.34" references="/0/mainTemplate/%/%/%/%/%/%/%/%/%/generated">
+ <details key="start" value="2556"/>
+ <details key="end" value="2565"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.35" references="/0/mainTemplate/%/%/%/%/%/%/%/%/%/%.2">
+ <details key="start" value="2566"/>
+ <details key="end" value="2609"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.36" references="/0/mainTemplate/%/%/%/%/%/%/%/%/%/%.2/checkWeakContracts">
+ <details key="start" value="2566"/>
+ <details key="end" value="2584"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.37" references="/0/mainTemplate/%/%/%/%/%/%/%/%/%/%.2/%">
+ <details key="start" value="2602"/>
+ <details key="end" value="2608"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.38" references="/0/mainTemplate/%/%/%/%/%/%/%/%/%.1">
+ <details key="start" value="2612"/>
+ <details key="end" value="2614"/>
+ <details key="line" value="45"/>
+ </eAnnotations>
+ <eAnnotations source="positions.39" references="/0/mainTemplate/%/%/%/%/%/%/%/%/system">
+ <details key="start" value="2448"/>
+ <details key="end" value="2492"/>
+ <details key="line" value="43"/>
+ </eAnnotations>
+ <eAnnotations source="positions.40" references="/0/mainTemplate/%/%/%/%/%/%/%/%/system/%">
+ <details key="start" value="2466"/>
+ <details key="end" value="2493"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.41" references="/0/mainTemplate/%/%/%/%/%/%/%/%/system/%/allBlocks">
+ <details key="start" value="2476"/>
+ <details key="end" value="2485"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.42" references="/0/mainTemplate/%/%/%/%/%/%/%/%/system/%/sysQN">
+ <details key="start" value="2487"/>
+ <details key="end" value="2492"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.43" references="/0/mainTemplate/%/%/%/%/%/%/%/generated">
+ <details key="start" value="2394"/>
+ <details key="end" value="2439"/>
+ <details key="line" value="42"/>
+ </eAnnotations>
+ <eAnnotations source="positions.44" references="/0/mainTemplate/%/%/%/%/%/%/%/generated/%">
+ <details key="start" value="2421"/>
+ <details key="end" value="2440"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.45" references="/0/mainTemplate/%/%/%/%/%/%/%/generated/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.46" references="/0/mainTemplate/%/%/%/%/%/%/allComps">
+ <details key="start" value="2211"/>
+ <details key="end" value="2385"/>
+ <details key="line" value="41"/>
+ </eAnnotations>
+ <eAnnotations source="positions.47" references="/0/mainTemplate/%/%/%/%/%/%/allComps/%">
+ <details key="start" value="2240"/>
+ <details key="end" value="2386"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.48" references="/0/mainTemplate/%/%/%/%/%/%/allComps/%/%">
+ <details key="start" value="2257"/>
+ <details key="end" value="2309"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.49" references="/0/mainTemplate/%/%/%/%/%/%/allComps/%/%/%">
+ <details key="start" value="2257"/>
+ <details key="end" value="2290"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.50" references="/0/mainTemplate/%/%/%/%/%/%/allComps/%/%/%/deploymentView">
+ <details key="start" value="2257"/>
+ <details key="end" value="2271"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.51" references="/0/mainTemplate/%/%/%/%/%/%/allComps/%/%/%.1">
+ <details key="start" value="2299"/>
+ <details key="end" value="2308"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.52" references="/0/mainTemplate/%/%/%/%/%/%/allComps/%/%.1">
+ <details key="start" value="2311"/>
+ <details key="end" value="2362"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.53" references="/0/mainTemplate/%/%/%/%/%/%/allComps/%/%.1/%">
+ <details key="start" value="2311"/>
+ <details key="end" value="2343"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.54" references="/0/mainTemplate/%/%/%/%/%/%/allComps/%/%.1/%/componentView">
+ <details key="start" value="2311"/>
+ <details key="end" value="2324"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.55" references="/0/mainTemplate/%/%/%/%/%/%/allComps/%/%.1/%.1">
+ <details key="start" value="2352"/>
+ <details key="end" value="2361"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.56" references="/0/mainTemplate/%/%/%/%/%/%/allComps/%/CompImplQN">
+ <details key="start" value="2364"/>
+ <details key="end" value="2374"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.57" references="/0/mainTemplate/%/%/%/%/%/%/allComps/%/SRACompQN">
+ <details key="start" value="2376"/>
+ <details key="end" value="2385"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.58" references="/0/mainTemplate/%/%/%/%/%/allBlocks">
+ <details key="start" value="2031"/>
+ <details key="end" value="2202"/>
+ <details key="line" value="40"/>
+ </eAnnotations>
+ <eAnnotations source="positions.59" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%">
+ <details key="start" value="2057"/>
+ <details key="end" value="2203"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.60" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/%">
+ <details key="start" value="2070"/>
+ <details key="end" value="2170"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.61" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/%/%">
+ <details key="start" value="2070"/>
+ <details key="end" value="2117"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.62" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/%/%/%">
+ <details key="start" value="2070"/>
+ <details key="end" value="2102"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.63" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/%/%/%/componentView">
+ <details key="start" value="2070"/>
+ <details key="end" value="2083"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.64" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/%/%/%.1">
+ <details key="start" value="2111"/>
+ <details key="end" value="2116"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.65" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/%/%.1">
+ <details key="start" value="2125"/>
+ <details key="end" value="2169"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.66" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/%/%.1/%">
+ <details key="start" value="2125"/>
+ <details key="end" value="2154"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.67" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/%/%.1/%/systemView">
+ <details key="start" value="2125"/>
+ <details key="end" value="2135"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.68" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/%/%.1/%.1">
+ <details key="start" value="2163"/>
+ <details key="end" value="2168"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.69" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/BlockQN">
+ <details key="start" value="2172"/>
+ <details key="end" value="2179"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.70" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/SubSystemQN">
+ <details key="start" value="2181"/>
+ <details key="end" value="2192"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.71" references="/0/mainTemplate/%/%/%/%/%/allBlocks/%/SystemQN">
+ <details key="start" value="2194"/>
+ <details key="end" value="2202"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.72" references="/0/mainTemplate/%/%/%/%/deploymentView">
+ <details key="start" value="1908"/>
+ <details key="end" value="2022"/>
+ <details key="line" value="39"/>
+ </eAnnotations>
+ <eAnnotations source="positions.73" references="/0/mainTemplate/%/%/%/%/deploymentView/any">
+ <details key="start" value="1938"/>
+ <details key="end" value="2024"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.74" references="/0/mainTemplate/%/%/%/%/deploymentView/any/%">
+ <details key="start" value="1938"/>
+ <details key="end" value="1957"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.75" references="/0/mainTemplate/%/%/%/%/deploymentView/any/%/model">
+ <details key="start" value="1938"/>
+ <details key="end" value="1943"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.76" references="/0/mainTemplate/%/%/%/%/deploymentView/any/%.1">
+ <details key="start" value="1977"/>
+ <details key="end" value="2023"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.77" references="/0/mainTemplate/%/%/%/%/deploymentView/any/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.78" references="/0/mainTemplate/%/%/%/%/deploymentView/any/%.1/%/%/%">
+ <details key="start" value="1977"/>
+ <details key="end" value="2011"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.79" references="/0/mainTemplate/%/%/%/%/deploymentView/any/%.1/%/%/%/p">
+ <details key="start" value="1977"/>
+ <details key="end" value="1978"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.80" references="/0/mainTemplate/%/%/%/%/deploymentView/any/%.1/%/%/%/DeplViewQN">
+ <details key="start" value="2000"/>
+ <details key="end" value="2010"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.81" references="/0/mainTemplate/%/%/%/%/deploymentView/any/p">
+ <details key="start" value="1963"/>
+ <details key="end" value="1974"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.82" references="/0/mainTemplate/%/%/%/systemView">
+ <details key="start" value="1788"/>
+ <details key="end" value="1899"/>
+ <details key="line" value="38"/>
+ </eAnnotations>
+ <eAnnotations source="positions.83" references="/0/mainTemplate/%/%/%/systemView/any">
+ <details key="start" value="1812"/>
+ <details key="end" value="1900"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.84" references="/0/mainTemplate/%/%/%/systemView/any/%">
+ <details key="start" value="1812"/>
+ <details key="end" value="1831"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.85" references="/0/mainTemplate/%/%/%/systemView/any/%/model">
+ <details key="start" value="1812"/>
+ <details key="end" value="1817"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.86" references="/0/mainTemplate/%/%/%/systemView/any/%.1">
+ <details key="start" value="1851"/>
+ <details key="end" value="1899"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.87" references="/0/mainTemplate/%/%/%/systemView/any/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.88" references="/0/mainTemplate/%/%/%/systemView/any/%.1/%/%/%">
+ <details key="start" value="1851"/>
+ <details key="end" value="1887"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.89" references="/0/mainTemplate/%/%/%/systemView/any/%.1/%/%/%/p">
+ <details key="start" value="1851"/>
+ <details key="end" value="1852"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.90" references="/0/mainTemplate/%/%/%/systemView/any/%.1/%/%/%/SystemViewQN">
+ <details key="start" value="1874"/>
+ <details key="end" value="1886"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.91" references="/0/mainTemplate/%/%/%/systemView/any/p">
+ <details key="start" value="1837"/>
+ <details key="end" value="1848"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.92" references="/0/mainTemplate/%/%/componentView">
+ <details key="start" value="1667"/>
+ <details key="end" value="1779"/>
+ <details key="line" value="37"/>
+ </eAnnotations>
+ <eAnnotations source="positions.93" references="/0/mainTemplate/%/%/componentView/any">
+ <details key="start" value="1694"/>
+ <details key="end" value="1780"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.94" references="/0/mainTemplate/%/%/componentView/any/%">
+ <details key="start" value="1694"/>
+ <details key="end" value="1713"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.95" references="/0/mainTemplate/%/%/componentView/any/%/model">
+ <details key="start" value="1694"/>
+ <details key="end" value="1699"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.96" references="/0/mainTemplate/%/%/componentView/any/%.1">
+ <details key="start" value="1733"/>
+ <details key="end" value="1779"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.97" references="/0/mainTemplate/%/%/componentView/any/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.98" references="/0/mainTemplate/%/%/componentView/any/%.1/%/%/%">
+ <details key="start" value="1733"/>
+ <details key="end" value="1767"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.99" references="/0/mainTemplate/%/%/componentView/any/%.1/%/%/%/p">
+ <details key="start" value="1733"/>
+ <details key="end" value="1734"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.100" references="/0/mainTemplate/%/%/componentView/any/%.1/%/%/%/CompViewQN">
+ <details key="start" value="1756"/>
+ <details key="end" value="1766"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.101" references="/0/mainTemplate/%/%/componentView/any/p">
+ <details key="start" value="1719"/>
+ <details key="end" value="1730"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.102" references="/0/mainTemplate/%/%.1">
+ <details key="start" value="1590"/>
+ <details key="end" value="1641"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.103" references="/0/mainTemplate/%/%.1/%">
+ <details key="start" value="1590"/>
+ <details key="end" value="1626"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.104" references="/0/mainTemplate/%/%.1/%/%">
+ <details key="start" value="1590"/>
+ <details key="end" value="1610"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.105" references="/0/mainTemplate/%/%.1/%/%/filename">
+ <details key="start" value="1590"/>
+ <details key="end" value="1598"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.106" references="/0/mainTemplate/%/%.1/%/%/%">
+ <details key="start" value="1606"/>
+ <details key="end" value="1609"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.107" references="/0/mainTemplate/%/%.1/%/sysName">
+ <details key="start" value="1618"/>
+ <details key="end" value="1625"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.108" references="/0/mainTemplate/%/%.1/%.1">
+ <details key="start" value="1634"/>
+ <details key="end" value="1640"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.109" references="/0/mainTemplate/%/%.2">
+ <details key="start" value="1650"/>
+ <details key="end" value="1657"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.110" references="/0/mainTemplate/%.1">
+ <details key="start" value="2686"/>
+ <details key="end" value="2688"/>
+ <details key="line" value="53"/>
+ </eAnnotations>
+ <eAnnotations source="positions.111" references="/0/mainTemplate/%.2">
+ <details key="start" value="2688"/>
+ <details key="end" value="3028"/>
+ <details key="line" value="54"/>
+ </eAnnotations>
+ <eAnnotations source="positions.112" references="/0/mainTemplate/%.2/%">
+ <details key="start" value="2765"/>
+ <details key="end" value="3020"/>
+ <details key="line" value="55"/>
+ </eAnnotations>
+ <eAnnotations source="positions.113" references="/0/mainTemplate/%.2/%/%">
+ <details key="start" value="2882"/>
+ <details key="end" value="3012"/>
+ <details key="line" value="56"/>
+ </eAnnotations>
+ <eAnnotations source="positions.114" references="/0/mainTemplate/%.2/%/%/%">
+ <details key="start" value="2953"/>
+ <details key="end" value="3002"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.115" references="/0/mainTemplate/%.2/%/%/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.116" references="/0/mainTemplate/%.2/%/%/%/%">
+ <details key="start" value="2976"/>
+ <details key="end" value="3001"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.117" references="/0/mainTemplate/%.2/%/%/%/%/%">
+ <details key="start" value="2976"/>
+ <details key="end" value="2984"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.118" references="/0/mainTemplate/%.2/%/%/%/%/%/sm">
+ <details key="start" value="2976"/>
+ <details key="end" value="2978"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.119" references="/0/mainTemplate/%.2/%/%/%/%/%.1">
+ <details key="start" value="2995"/>
+ <details key="end" value="3000"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.120" references="/0/mainTemplate/%.2/%/%/%.1">
+ <details key="start" value="3004"/>
+ <details key="end" value="3006"/>
+ <details key="line" value="58"/>
+ </eAnnotations>
+ <eAnnotations source="positions.121" references="/0/mainTemplate/%.2/%/%/%.2">
+ <details key="start" value="2885"/>
+ <details key="end" value="2949"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.122" references="/0/mainTemplate/%.2/%/%/%.2/%">
+ <details key="start" value="2886"/>
+ <details key="end" value="2913"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.123" references="/0/mainTemplate/%.2/%/%/%.2/%/%">
+ <details key="start" value="2886"/>
+ <details key="end" value="2894"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.124" references="/0/mainTemplate/%.2/%/%/%.2/%/%/sm">
+ <details key="start" value="2886"/>
+ <details key="end" value="2888"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.125" references="/0/mainTemplate/%.2/%/%/%.2/%/%.1">
+ <details key="start" value="2907"/>
+ <details key="end" value="2912"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.126" references="/0/mainTemplate/%.2/%/%/%.2/%.1">
+ <details key="start" value="2917"/>
+ <details key="end" value="2948"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.127" references="/0/mainTemplate/%.2/%/%/%.2/%.1/%">
+ <details key="start" value="2917"/>
+ <details key="end" value="2925"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.128" references="/0/mainTemplate/%.2/%/%/%.2/%.1/%/sm">
+ <details key="start" value="2917"/>
+ <details key="end" value="2919"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.129" references="/0/mainTemplate/%.2/%/%/%.2/%.1/%.1">
+ <details key="start" value="2938"/>
+ <details key="end" value="2947"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.130" references="/0/mainTemplate/%.2/%/%.1">
+ <details key="start" value="2769"/>
+ <details key="end" value="2878"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.131" references="/0/mainTemplate/%.2/%/%.1/%">
+ <details key="start" value="2770"/>
+ <details key="end" value="2820"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.132" references="/0/mainTemplate/%.2/%/%.1/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.133" references="/0/mainTemplate/%.2/%/%.1/%/%/%/%">
+ <details key="start" value="2770"/>
+ <details key="end" value="2808"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.134" references="/0/mainTemplate/%.2/%/%.1/%/%/%/%/%">
+ <details key="start" value="2770"/>
+ <details key="end" value="2778"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.135" references="/0/mainTemplate/%.2/%/%.1/%/%/%/%/%/sm">
+ <details key="start" value="2770"/>
+ <details key="end" value="2772"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.136" references="/0/mainTemplate/%.2/%/%.1/%/%/%/%/BlockQN">
+ <details key="start" value="2800"/>
+ <details key="end" value="2807"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.137" references="/0/mainTemplate/%.2/%/%.1/%.1">
+ <details key="start" value="2824"/>
+ <details key="end" value="2877"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.138" references="/0/mainTemplate/%.2/%/%.1/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.139" references="/0/mainTemplate/%.2/%/%.1/%.1/%/%/%">
+ <details key="start" value="2824"/>
+ <details key="end" value="2865"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.140" references="/0/mainTemplate/%.2/%/%.1/%.1/%/%/%/%">
+ <details key="start" value="2824"/>
+ <details key="end" value="2832"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.141" references="/0/mainTemplate/%.2/%/%.1/%.1/%/%/%/%/sm">
+ <details key="start" value="2824"/>
+ <details key="end" value="2826"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.142" references="/0/mainTemplate/%.2/%/%.1/%.1/%/%/%/CompImplQN">
+ <details key="start" value="2854"/>
+ <details key="end" value="2864"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.143" references="/0/mainTemplate/%.2/sm">
+ <details key="start" value="2694"/>
+ <details key="end" value="2711"/>
+ <details key="line" value="54"/>
+ </eAnnotations>
+ <eAnnotations source="positions.144" references="/0/mainTemplate/%.2/%.1">
+ <details key="start" value="2714"/>
+ <details key="end" value="2760"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.145" references="/0/mainTemplate/%.2/%.1/%">
+ <details key="start" value="2714"/>
+ <details key="end" value="2738"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.146" references="/0/mainTemplate/%.2/%.1/%/model">
+ <details key="start" value="2714"/>
+ <details key="end" value="2719"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.147" references="/0/mainTemplate/%.2/%.1/%.1">
+ <details key="start" value="2747"/>
+ <details key="end" value="2759"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.148" references="/0/mainTemplate/%.3">
+ <details key="start" value="3030"/>
+ <details key="end" value="3032"/>
+ <details key="line" value="61"/>
+ </eAnnotations>
+ <eAnnotations source="positions.149" references="/0/mainTemplate/model">
+ <details key="start" value="937"/>
+ <details key="end" value="950"/>
+ <details key="line" value="23"/>
+ </eAnnotations>
+ <eAnnotations source="positions.150" references="/0/mainTemplate/sysQN">
+ <details key="start" value="952"/>
+ <details key="end" value="966"/>
+ <details key="line" value="23"/>
+ </eAnnotations>
+ <eAnnotations source="positions.151" references="/0/mainTemplate/sysName">
+ <details key="start" value="969"/>
+ <details key="end" value="985"/>
+ <details key="line" value="23"/>
+ </eAnnotations>
+ <eAnnotations source="positions.152" references="/0/mainTemplate/filename">
+ <details key="start" value="987"/>
+ <details key="end" value="1004"/>
+ <details key="line" value="23"/>
+ </eAnnotations>
+ <eAnnotations source="positions.153" references="/0/mainTemplate/checkWeakContracts">
+ <details key="start" value="1006"/>
+ <details key="end" value="1032"/>
+ <details key="line" value="23"/>
+ </eAnnotations>
+ <eAnnotations source="positions.154" references="/0/generateComponent">
+ <details key="start" value="3049"/>
+ <details key="end" value="10887"/>
+ <details key="line" value="65"/>
+ </eAnnotations>
+ <eAnnotations source="positions.155" references="/0/generateComponent/@init">
+ <details key="start" value="3188"/>
+ <details key="end" value="3572"/>
+ <details key="line" value="65"/>
+ </eAnnotations>
+ <eAnnotations source="positions.156" references="/0/generateComponent/@init/@variable.0">
+ <details key="start" value="3192"/>
+ <details key="end" value="3235"/>
+ <details key="line" value="66"/>
+ </eAnnotations>
+ <eAnnotations source="positions.157" references="/0/generateComponent/@init/@variable.0/%">
+ <details key="start" value="3212"/>
+ <details key="end" value="3235"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.158" references="/0/generateComponent/@init/@variable.1">
+ <details key="start" value="3239"/>
+ <details key="end" value="3292"/>
+ <details key="line" value="67"/>
+ </eAnnotations>
+ <eAnnotations source="positions.159" references="/0/generateComponent/@init/@variable.1/%">
+ <details key="start" value="3261"/>
+ <details key="end" value="3292"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.160" references="/0/generateComponent/@init/@variable.2">
+ <details key="start" value="3296"/>
+ <details key="end" value="3364"/>
+ <details key="line" value="68"/>
+ </eAnnotations>
+ <eAnnotations source="positions.161" references="/0/generateComponent/@init/@variable.2/%">
+ <details key="start" value="3323"/>
+ <details key="end" value="3364"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.162" references="/0/generateComponent/@init/@variable.3">
+ <details key="start" value="3368"/>
+ <details key="end" value="3427"/>
+ <details key="line" value="69"/>
+ </eAnnotations>
+ <eAnnotations source="positions.163" references="/0/generateComponent/@init/@variable.3/%">
+ <details key="start" value="3394"/>
+ <details key="end" value="3427"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.164" references="/0/generateComponent/@init/@variable.4">
+ <details key="start" value="3431"/>
+ <details key="end" value="3493"/>
+ <details key="line" value="70"/>
+ </eAnnotations>
+ <eAnnotations source="positions.165" references="/0/generateComponent/@init/@variable.4/%">
+ <details key="start" value="3456"/>
+ <details key="end" value="3493"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.166" references="/0/generateComponent/@init/@variable.5">
+ <details key="start" value="3497"/>
+ <details key="end" value="3566"/>
+ <details key="line" value="71"/>
+ </eAnnotations>
+ <eAnnotations source="positions.167" references="/0/generateComponent/@init/@variable.5/%">
+ <details key="start" value="3517"/>
+ <details key="end" value="3566"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.168" references="/0/generateComponent/%">
+ <details key="start" value="3575"/>
+ <details key="end" value="3576"/>
+ <details key="line" value="74"/>
+ </eAnnotations>
+ <eAnnotations source="positions.169" references="/0/generateComponent/%.1">
+ <details key="start" value="3577"/>
+ <details key="end" value="3614"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.170" references="/0/generateComponent/%.1/%">
+ <details key="start" value="3592"/>
+ <details key="end" value="3602"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.171" references="/0/generateComponent/%.1/%/block">
+ <details key="start" value="3592"/>
+ <details key="end" value="3597"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.172" references="/0/generateComponent/%.1/generated">
+ <details key="start" value="3604"/>
+ <details key="end" value="3613"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.173" references="/0/generateComponent/%.2">
+ <details key="start" value="3616"/>
+ <details key="end" value="3618"/>
+ <details key="line" value="75"/>
+ </eAnnotations>
+ <eAnnotations source="positions.174" references="/0/generateComponent/%.3">
+ <details key="start" value="3619"/>
+ <details key="end" value="3696"/>
+ <details key="line" value="75"/>
+ </eAnnotations>
+ <eAnnotations source="positions.175" references="/0/generateComponent/%.3/%">
+ <details key="start" value="3636"/>
+ <details key="end" value="3655"/>
+ <details key="line" value="76"/>
+ </eAnnotations>
+ <eAnnotations source="positions.176" references="/0/generateComponent/%.3/isSystem">
+ <details key="start" value="3623"/>
+ <details key="end" value="3633"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.177" references="/0/generateComponent/%.3/%.1">
+ <details key="start" value="3656"/>
+ <details key="end" value="3691"/>
+ <details key="line" value="77"/>
+ </eAnnotations>
+ <eAnnotations source="positions.178" references="/0/generateComponent/%.3/%.1/%">
+ <details key="start" value="3664"/>
+ <details key="end" value="3675"/>
+ <details key="line" value="78"/>
+ </eAnnotations>
+ <eAnnotations source="positions.179" references="/0/generateComponent/%.3/%.1/%.1">
+ <details key="start" value="3676"/>
+ <details key="end" value="3686"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.180" references="/0/generateComponent/%.3/%.1/%.1/block">
+ <details key="start" value="3676"/>
+ <details key="end" value="3681"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.181" references="/0/generateComponent/%.3/%.1/%.2">
+ <details key="start" value="3688"/>
+ <details key="end" value="3690"/>
+ <details key="line" value="79"/>
+ </eAnnotations>
+ <eAnnotations source="positions.182" references="/0/generateComponent/%.4">
+ <details key="start" value="3698"/>
+ <details key="end" value="3714"/>
+ <details key="line" value="80"/>
+ </eAnnotations>
+ <eAnnotations source="positions.183" references="/0/generateComponent/%.5">
+ <details key="start" value="3715"/>
+ <details key="end" value="10872"/>
+ <details key="line" value="83"/>
+ </eAnnotations>
+ <eAnnotations source="positions.184" references="/0/generateComponent/%.5/%">
+ <details key="start" value="3793"/>
+ <details key="end" value="5227"/>
+ <details key="line" value="84"/>
+ </eAnnotations>
+ <eAnnotations source="positions.185" references="/0/generateComponent/%.5/%/%">
+ <details key="start" value="3827"/>
+ <details key="end" value="5218"/>
+ <details key="line" value="85"/>
+ </eAnnotations>
+ <eAnnotations source="positions.186" references="/0/generateComponent/%.5/%/%/%">
+ <details key="start" value="3859"/>
+ <details key="end" value="4996"/>
+ <details key="line" value="86"/>
+ </eAnnotations>
+ <eAnnotations source="positions.187" references="/0/generateComponent/%.5/%/%/%/%">
+ <details key="start" value="3903"/>
+ <details key="end" value="4502"/>
+ <details key="line" value="87"/>
+ </eAnnotations>
+ <eAnnotations source="positions.188" references="/0/generateComponent/%.5/%/%/%/%/%">
+ <details key="start" value="3963"/>
+ <details key="end" value="4189"/>
+ <details key="line" value="88"/>
+ </eAnnotations>
+ <eAnnotations source="positions.189" references="/0/generateComponent/%.5/%/%/%/%/%/%">
+ <details key="start" value="4057"/>
+ <details key="end" value="4058"/>
+ <details key="line" value="89"/>
+ </eAnnotations>
+ <eAnnotations source="positions.190" references="/0/generateComponent/%.5/%/%/%/%/%/%.1">
+ <details key="start" value="4059"/>
+ <details key="end" value="4093"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.191" references="/0/generateComponent/%.5/%/%/%/%/%/%.1/%">
+ <details key="start" value="4072"/>
+ <details key="end" value="4092"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.192" references="/0/generateComponent/%.5/%/%/%/%/%/%.1/%/direction">
+ <details key="start" value="4072"/>
+ <details key="end" value="4081"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.193" references="/0/generateComponent/%.5/%/%/%/%/%/%.2">
+ <details key="start" value="4095"/>
+ <details key="end" value="4100"/>
+ <details key="line" value="89"/>
+ </eAnnotations>
+ <eAnnotations source="positions.194" references="/0/generateComponent/%.5/%/%/%/%/%/%.3">
+ <details key="start" value="4101"/>
+ <details key="end" value="4110"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.195" references="/0/generateComponent/%.5/%/%/%/%/%/%.3/port">
+ <details key="start" value="4101"/>
+ <details key="end" value="4105"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.196" references="/0/generateComponent/%.5/%/%/%/%/%/%.4">
+ <details key="start" value="4112"/>
+ <details key="end" value="4115"/>
+ <details key="line" value="89"/>
+ </eAnnotations>
+ <eAnnotations source="positions.197" references="/0/generateComponent/%.5/%/%/%/%/%/%.5">
+ <details key="start" value="4115"/>
+ <details key="end" value="4179"/>
+ <details key="line" value="89"/>
+ </eAnnotations>
+ <eAnnotations source="positions.198" references="/0/generateComponent/%.5/%/%/%/%/%/%.5/%">
+ <details key="start" value="4153"/>
+ <details key="end" value="4171"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.199" references="/0/generateComponent/%.5/%/%/%/%/%/%.5/%/%">
+ <details key="start" value="4161"/>
+ <details key="end" value="4170"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.200" references="/0/generateComponent/%.5/%/%/%/%/%/%.5/%/%/port">
+ <details key="start" value="4161"/>
+ <details key="end" value="4165"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.201" references="/0/generateComponent/%.5/%/%/%/%/%/%.5/%.1">
+ <details key="start" value="4173"/>
+ <details key="end" value="4174"/>
+ <details key="line" value="89"/>
+ </eAnnotations>
+ <eAnnotations source="positions.202" references="/0/generateComponent/%.5/%/%/%/%/%/%.5/%.2">
+ <details key="start" value="4119"/>
+ <details key="end" value="4151"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.203" references="/0/generateComponent/%.5/%/%/%/%/%/%.5/%.2/%">
+ <details key="start" value="4124"/>
+ <details key="end" value="4150"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.204" references="/0/generateComponent/%.5/%/%/%/%/%/%.5/%.2/%/%">
+ <details key="start" value="4124"/>
+ <details key="end" value="4133"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.205" references="/0/generateComponent/%.5/%/%/%/%/%/%.5/%.2/%/%/port">
+ <details key="start" value="4124"/>
+ <details key="end" value="4128"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.206" references="/0/generateComponent/%.5/%/%/%/%/%/%.6">
+ <details key="start" value="4179"/>
+ <details key="end" value="4181"/>
+ <details key="line" value="90"/>
+ </eAnnotations>
+ <eAnnotations source="positions.207" references="/0/generateComponent/%.5/%/%/%/%/%/direction">
+ <details key="start" value="3968"/>
+ <details key="end" value="4054"/>
+ <details key="line" value="88"/>
+ </eAnnotations>
+ <eAnnotations source="positions.208" references="/0/generateComponent/%.5/%/%/%/%/%/direction/%">
+ <details key="start" value="3990"/>
+ <details key="end" value="4055"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.209" references="/0/generateComponent/%.5/%/%/%/%/%/direction/%/port">
+ <details key="start" value="3990"/>
+ <details key="end" value="3994"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.210" references="/0/generateComponent/%.5/%/%/%/%/%/direction/%/%">
+ <details key="start" value="4004"/>
+ <details key="end" value="4041"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.211" references="/0/generateComponent/%.5/%/%/%/%/%/direction/%/%/port">
+ <details key="start" value="4004"/>
+ <details key="end" value="4008"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.212" references="/0/generateComponent/%.5/%/%/%/%/%/direction/%/%/FlowPortQN">
+ <details key="start" value="4030"/>
+ <details key="end" value="4040"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.213" references="/0/generateComponent/%.5/%/%/%/%/%/direction/%/%.1">
+ <details key="start" value="4043"/>
+ <details key="end" value="4054"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.214" references="/0/generateComponent/%.5/%/%/%/%/%.1">
+ <details key="start" value="3907"/>
+ <details key="end" value="3958"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.215" references="/0/generateComponent/%.5/%/%/%/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.216" references="/0/generateComponent/%.5/%/%/%/%/%.1/%/%/%">
+ <details key="start" value="3908"/>
+ <details key="end" value="3945"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.217" references="/0/generateComponent/%.5/%/%/%/%/%.1/%/%/%/port">
+ <details key="start" value="3908"/>
+ <details key="end" value="3912"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.218" references="/0/generateComponent/%.5/%/%/%/%/%.1/%/%/%/FlowPortQN">
+ <details key="start" value="3934"/>
+ <details key="end" value="3944"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.219" references="/0/generateComponent/%.5/%/%/%/%/%.2">
+ <details key="start" value="4193"/>
+ <details key="end" value="4497"/>
+ <details key="line" value="91"/>
+ </eAnnotations>
+ <eAnnotations source="positions.220" references="/0/generateComponent/%.5/%/%/%/%/%.2/%">
+ <details key="start" value="4262"/>
+ <details key="end" value="4493"/>
+ <details key="line" value="92"/>
+ </eAnnotations>
+ <eAnnotations source="positions.221" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%">
+ <details key="start" value="4361"/>
+ <details key="end" value="4362"/>
+ <details key="line" value="93"/>
+ </eAnnotations>
+ <eAnnotations source="positions.222" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.1">
+ <details key="start" value="4363"/>
+ <details key="end" value="4397"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.223" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.1/%">
+ <details key="start" value="4376"/>
+ <details key="end" value="4396"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.224" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.1/%/direction">
+ <details key="start" value="4376"/>
+ <details key="end" value="4385"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.225" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.2">
+ <details key="start" value="4399"/>
+ <details key="end" value="4404"/>
+ <details key="line" value="93"/>
+ </eAnnotations>
+ <eAnnotations source="positions.226" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.3">
+ <details key="start" value="4405"/>
+ <details key="end" value="4414"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.227" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.3/port">
+ <details key="start" value="4405"/>
+ <details key="end" value="4409"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.228" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.4">
+ <details key="start" value="4416"/>
+ <details key="end" value="4419"/>
+ <details key="line" value="93"/>
+ </eAnnotations>
+ <eAnnotations source="positions.229" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.5">
+ <details key="start" value="4419"/>
+ <details key="end" value="4483"/>
+ <details key="line" value="93"/>
+ </eAnnotations>
+ <eAnnotations source="positions.230" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.5/%">
+ <details key="start" value="4457"/>
+ <details key="end" value="4475"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.231" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.5/%/%">
+ <details key="start" value="4465"/>
+ <details key="end" value="4474"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.232" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.5/%/%/port">
+ <details key="start" value="4465"/>
+ <details key="end" value="4469"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.233" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.5/%.1">
+ <details key="start" value="4477"/>
+ <details key="end" value="4478"/>
+ <details key="line" value="93"/>
+ </eAnnotations>
+ <eAnnotations source="positions.234" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.5/%.2">
+ <details key="start" value="4423"/>
+ <details key="end" value="4455"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.235" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.5/%.2/%">
+ <details key="start" value="4428"/>
+ <details key="end" value="4454"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.236" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.5/%.2/%/%">
+ <details key="start" value="4428"/>
+ <details key="end" value="4437"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.237" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.5/%.2/%/%/port">
+ <details key="start" value="4428"/>
+ <details key="end" value="4432"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.238" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/%.6">
+ <details key="start" value="4483"/>
+ <details key="end" value="4485"/>
+ <details key="line" value="94"/>
+ </eAnnotations>
+ <eAnnotations source="positions.239" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/direction">
+ <details key="start" value="4267"/>
+ <details key="end" value="4358"/>
+ <details key="line" value="92"/>
+ </eAnnotations>
+ <eAnnotations source="positions.240" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/direction/%">
+ <details key="start" value="4289"/>
+ <details key="end" value="4359"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.241" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/direction/%/port">
+ <details key="start" value="4289"/>
+ <details key="end" value="4293"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.242" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/direction/%/%">
+ <details key="start" value="4303"/>
+ <details key="end" value="4345"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.243" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/direction/%/%/port">
+ <details key="start" value="4303"/>
+ <details key="end" value="4307"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.244" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/direction/%/%/FlowPortMarteQN">
+ <details key="start" value="4329"/>
+ <details key="end" value="4344"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.245" references="/0/generateComponent/%.5/%/%/%/%/%.2/%/direction/%/%.1">
+ <details key="start" value="4347"/>
+ <details key="end" value="4358"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.246" references="/0/generateComponent/%.5/%/%/%/%/%.2/%.1">
+ <details key="start" value="4201"/>
+ <details key="end" value="4257"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.247" references="/0/generateComponent/%.5/%/%/%/%/%.2/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.248" references="/0/generateComponent/%.5/%/%/%/%/%.2/%.1/%/%/%">
+ <details key="start" value="4202"/>
+ <details key="end" value="4244"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.249" references="/0/generateComponent/%.5/%/%/%/%/%.2/%.1/%/%/%/port">
+ <details key="start" value="4202"/>
+ <details key="end" value="4206"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.250" references="/0/generateComponent/%.5/%/%/%/%/%.2/%.1/%/%/%/FlowPortMarteQN">
+ <details key="start" value="4228"/>
+ <details key="end" value="4243"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.251" references="/0/generateComponent/%.5/%/%/%/%.1">
+ <details key="start" value="4532"/>
+ <details key="end" value="4987"/>
+ <details key="line" value="97"/>
+ </eAnnotations>
+ <eAnnotations source="positions.252" references="/0/generateComponent/%.5/%/%/%/%.1/%">
+ <details key="start" value="4590"/>
+ <details key="end" value="4978"/>
+ <details key="line" value="98"/>
+ </eAnnotations>
+ <eAnnotations source="positions.253" references="/0/generateComponent/%.5/%/%/%/%.1/%/%">
+ <details key="start" value="4677"/>
+ <details key="end" value="4968"/>
+ <details key="line" value="99"/>
+ </eAnnotations>
+ <eAnnotations source="positions.254" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%">
+ <details key="start" value="4729"/>
+ <details key="end" value="4958"/>
+ <details key="line" value="100"/>
+ </eAnnotations>
+ <eAnnotations source="positions.255" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%">
+ <details key="start" value="4769"/>
+ <details key="end" value="4949"/>
+ <details key="line" value="101"/>
+ </eAnnotations>
+ <eAnnotations source="positions.256" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%">
+ <details key="start" value="4821"/>
+ <details key="end" value="4822"/>
+ <details key="line" value="102"/>
+ </eAnnotations>
+ <eAnnotations source="positions.257" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.1">
+ <details key="start" value="4823"/>
+ <details key="end" value="4850"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.258" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.1/%">
+ <details key="start" value="4823"/>
+ <details key="end" value="4840"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.259" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.1/%/proreq">
+ <details key="start" value="4823"/>
+ <details key="end" value="4829"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.260" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.2">
+ <details key="start" value="4852"/>
+ <details key="end" value="4868"/>
+ <details key="line" value="102"/>
+ </eAnnotations>
+ <eAnnotations source="positions.261" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.3">
+ <details key="start" value="4869"/>
+ <details key="end" value="4895"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.262" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.3/op">
+ <details key="start" value="4886"/>
+ <details key="end" value="4888"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.263" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.3/port">
+ <details key="start" value="4890"/>
+ <details key="end" value="4894"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.264" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.4">
+ <details key="start" value="4897"/>
+ <details key="end" value="4899"/>
+ <details key="line" value="102"/>
+ </eAnnotations>
+ <eAnnotations source="positions.265" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.5">
+ <details key="start" value="4900"/>
+ <details key="end" value="4916"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.266" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.5/op">
+ <details key="start" value="4913"/>
+ <details key="end" value="4915"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.267" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.6">
+ <details key="start" value="4918"/>
+ <details key="end" value="4922"/>
+ <details key="line" value="102"/>
+ </eAnnotations>
+ <eAnnotations source="positions.268" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.7">
+ <details key="start" value="4923"/>
+ <details key="end" value="4936"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.269" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.7/op">
+ <details key="start" value="4933"/>
+ <details key="end" value="4935"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.270" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.8">
+ <details key="start" value="4938"/>
+ <details key="end" value="4941"/>
+ <details key="line" value="102"/>
+ </eAnnotations>
+ <eAnnotations source="positions.271" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/op">
+ <details key="start" value="4775"/>
+ <details key="end" value="4789"/>
+ <details key="line" value="101"/>
+ </eAnnotations>
+ <eAnnotations source="positions.272" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.9">
+ <details key="start" value="4792"/>
+ <details key="end" value="4817"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.273" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%/%.9/interface">
+ <details key="start" value="4792"/>
+ <details key="end" value="4801"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.274" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%.1">
+ <details key="start" value="4733"/>
+ <details key="end" value="4764"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.275" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%.1/interface">
+ <details key="start" value="4734"/>
+ <details key="end" value="4743"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.276" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%.1/%">
+ <details key="start" value="4747"/>
+ <details key="end" value="4763"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.277" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/%/%.1/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.278" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/interface">
+ <details key="start" value="4682"/>
+ <details key="end" value="4724"/>
+ <details key="line" value="99"/>
+ </eAnnotations>
+ <eAnnotations source="positions.279" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/interface/%">
+ <details key="start" value="4707"/>
+ <details key="end" value="4725"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.280" references="/0/generateComponent/%.5/%/%/%/%.1/%/%/interface/%/port">
+ <details key="start" value="4720"/>
+ <details key="end" value="4724"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.281" references="/0/generateComponent/%.5/%/%/%/%.1/%/proreq">
+ <details key="start" value="4595"/>
+ <details key="end" value="4671"/>
+ <details key="line" value="98"/>
+ </eAnnotations>
+ <eAnnotations source="positions.282" references="/0/generateComponent/%.5/%/%/%/%.1/%/proreq/%">
+ <details key="start" value="4614"/>
+ <details key="end" value="4672"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.283" references="/0/generateComponent/%.5/%/%/%/%.1/%/proreq/%/port">
+ <details key="start" value="4614"/>
+ <details key="end" value="4618"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.284" references="/0/generateComponent/%.5/%/%/%/%.1/%/proreq/%/%">
+ <details key="start" value="4628"/>
+ <details key="end" value="4663"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.285" references="/0/generateComponent/%.5/%/%/%/%.1/%/proreq/%/%/port">
+ <details key="start" value="4628"/>
+ <details key="end" value="4632"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.286" references="/0/generateComponent/%.5/%/%/%/%.1/%/proreq/%/%/CSPortQN">
+ <details key="start" value="4654"/>
+ <details key="end" value="4662"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.287" references="/0/generateComponent/%.5/%/%/%/%.1/%/proreq/%/%.1">
+ <details key="start" value="4665"/>
+ <details key="end" value="4671"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.288" references="/0/generateComponent/%.5/%/%/%/%.1/%.1">
+ <details key="start" value="4536"/>
+ <details key="end" value="4585"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.289" references="/0/generateComponent/%.5/%/%/%/%.1/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.290" references="/0/generateComponent/%.5/%/%/%/%.1/%.1/%/%/%">
+ <details key="start" value="4537"/>
+ <details key="end" value="4572"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.291" references="/0/generateComponent/%.5/%/%/%/%.1/%.1/%/%/%/port">
+ <details key="start" value="4537"/>
+ <details key="end" value="4541"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.292" references="/0/generateComponent/%.5/%/%/%/%.1/%.1/%/%/%/CSPortQN">
+ <details key="start" value="4563"/>
+ <details key="end" value="4571"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.293" references="/0/generateComponent/%.5/%/%/%/port">
+ <details key="start" value="3864"/>
+ <details key="end" value="3898"/>
+ <details key="line" value="86"/>
+ </eAnnotations>
+ <eAnnotations source="positions.294" references="/0/generateComponent/%.5/%/%/%/port/%">
+ <details key="start" value="3879"/>
+ <details key="end" value="3899"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.295" references="/0/generateComponent/%.5/%/%/%/port/%/prop">
+ <details key="start" value="3879"/>
+ <details key="end" value="3883"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.296" references="/0/generateComponent/%.5/%/%/%/port/%/%">
+ <details key="start" value="3894"/>
+ <details key="end" value="3898"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.297" references="/0/generateComponent/%.5/%/%/%.1">
+ <details key="start" value="3831"/>
+ <details key="end" value="3855"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.298" references="/0/generateComponent/%.5/%/%/%.1/prop">
+ <details key="start" value="3832"/>
+ <details key="end" value="3836"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.299" references="/0/generateComponent/%.5/%/%/%.1/%">
+ <details key="start" value="3849"/>
+ <details key="end" value="3853"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.300" references="/0/generateComponent/%.5/%/%/%.2">
+ <details key="start" value="4999"/>
+ <details key="end" value="5213"/>
+ <details key="line" value="109"/>
+ </eAnnotations>
+ <eAnnotations source="positions.301" references="/0/generateComponent/%.5/%/%/%.2/%">
+ <details key="start" value="5120"/>
+ <details key="end" value="5131"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.302" references="/0/generateComponent/%.5/%/%/%.2/%.1">
+ <details key="start" value="5132"/>
+ <details key="end" value="5141"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.303" references="/0/generateComponent/%.5/%/%/%.2/%.1/prop">
+ <details key="start" value="5132"/>
+ <details key="end" value="5136"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.304" references="/0/generateComponent/%.5/%/%/%.2/%.2">
+ <details key="start" value="5143"/>
+ <details key="end" value="5146"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.305" references="/0/generateComponent/%.5/%/%/%.2/%.3">
+ <details key="start" value="5146"/>
+ <details key="end" value="5210"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.306" references="/0/generateComponent/%.5/%/%/%.2/%.3/%">
+ <details key="start" value="5184"/>
+ <details key="end" value="5202"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.307" references="/0/generateComponent/%.5/%/%/%.2/%.3/%/%">
+ <details key="start" value="5192"/>
+ <details key="end" value="5201"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.308" references="/0/generateComponent/%.5/%/%/%.2/%.3/%/%/prop">
+ <details key="start" value="5192"/>
+ <details key="end" value="5196"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.309" references="/0/generateComponent/%.5/%/%/%.2/%.3/%.1">
+ <details key="start" value="5204"/>
+ <details key="end" value="5205"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.310" references="/0/generateComponent/%.5/%/%/%.2/%.3/%.2">
+ <details key="start" value="5150"/>
+ <details key="end" value="5182"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.311" references="/0/generateComponent/%.5/%/%/%.2/%.3/%.2/%">
+ <details key="start" value="5155"/>
+ <details key="end" value="5181"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.312" references="/0/generateComponent/%.5/%/%/%.2/%.3/%.2/%/%">
+ <details key="start" value="5155"/>
+ <details key="end" value="5164"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.313" references="/0/generateComponent/%.5/%/%/%.2/%.3/%.2/%/%/prop">
+ <details key="start" value="5155"/>
+ <details key="end" value="5159"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.314" references="/0/generateComponent/%.5/%/%/%.2/%.4">
+ <details key="start" value="5210"/>
+ <details key="end" value="5212"/>
+ <details key="line" value="111"/>
+ </eAnnotations>
+ <eAnnotations source="positions.315" references="/0/generateComponent/%.5/%/%/%.2/%.5">
+ <details key="start" value="5007"/>
+ <details key="end" value="5117"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.316" references="/0/generateComponent/%.5/%/%/%.2/%.5/%">
+ <details key="start" value="5008"/>
+ <details key="end" value="5075"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.317" references="/0/generateComponent/%.5/%/%/%.2/%.5/%/%">
+ <details key="start" value="5008"/>
+ <details key="end" value="5038"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.318" references="/0/generateComponent/%.5/%/%/%.2/%.5/%/%/%">
+ <details key="start" value="5012"/>
+ <details key="end" value="5038"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.319" references="/0/generateComponent/%.5/%/%/%.2/%.5/%/%/%/%">
+ <details key="start" value="5012"/>
+ <details key="end" value="5021"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.320" references="/0/generateComponent/%.5/%/%/%.2/%.5/%/%/%/%/prop">
+ <details key="start" value="5012"/>
+ <details key="end" value="5016"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.321" references="/0/generateComponent/%.5/%/%/%.2/%.5/%/%.1">
+ <details key="start" value="5043"/>
+ <details key="end" value="5075"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.322" references="/0/generateComponent/%.5/%/%/%.2/%.5/%/%.1/%">
+ <details key="start" value="5047"/>
+ <details key="end" value="5075"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.323" references="/0/generateComponent/%.5/%/%/%.2/%.5/%/%.1/%/%">
+ <details key="start" value="5047"/>
+ <details key="end" value="5056"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.324" references="/0/generateComponent/%.5/%/%/%.2/%.5/%/%.1/%/%/prop">
+ <details key="start" value="5047"/>
+ <details key="end" value="5051"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.325" references="/0/generateComponent/%.5/%/%/%.2/%.5/%/%.1/%/%.1">
+ <details key="start" value="5069"/>
+ <details key="end" value="5074"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.326" references="/0/generateComponent/%.5/%/%/%.2/%.5/%.1">
+ <details key="start" value="5080"/>
+ <details key="end" value="5116"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.327" references="/0/generateComponent/%.5/%/%/%.2/%.5/%.1/%">
+ <details key="start" value="5084"/>
+ <details key="end" value="5116"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.328" references="/0/generateComponent/%.5/%/%/%.2/%.5/%.1/%/%">
+ <details key="start" value="5084"/>
+ <details key="end" value="5093"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.329" references="/0/generateComponent/%.5/%/%/%.2/%.5/%.1/%/%/prop">
+ <details key="start" value="5084"/>
+ <details key="end" value="5088"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.330" references="/0/generateComponent/%.5/%/%/%.2/%.5/%.1/%/%.1">
+ <details key="start" value="5106"/>
+ <details key="end" value="5115"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.331" references="/0/generateComponent/%.5/%/prop">
+ <details key="start" value="3799"/>
+ <details key="end" value="3814"/>
+ <details key="line" value="84"/>
+ </eAnnotations>
+ <eAnnotations source="positions.332" references="/0/generateComponent/%.5/%/props">
+ <details key="start" value="3817"/>
+ <details key="end" value="3822"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.333" references="/0/generateComponent/%.5/%.1">
+ <details key="start" value="5230"/>
+ <details key="end" value="5609"/>
+ <details key="line" value="113"/>
+ </eAnnotations>
+ <eAnnotations source="positions.334" references="/0/generateComponent/%.5/%.1/%">
+ <details key="start" value="5370"/>
+ <details key="end" value="5600"/>
+ <details key="line" value="114"/>
+ </eAnnotations>
+ <eAnnotations source="positions.335" references="/0/generateComponent/%.5/%.1/%/%">
+ <details key="start" value="5414"/>
+ <details key="end" value="5591"/>
+ <details key="line" value="115"/>
+ </eAnnotations>
+ <eAnnotations source="positions.336" references="/0/generateComponent/%.5/%.1/%/%/%">
+ <details key="start" value="5472"/>
+ <details key="end" value="5485"/>
+ <details key="line" value="116"/>
+ </eAnnotations>
+ <eAnnotations source="positions.337" references="/0/generateComponent/%.5/%.1/%/%/%.1">
+ <details key="start" value="5486"/>
+ <details key="end" value="5500"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.338" references="/0/generateComponent/%.5/%.1/%/%/%.1/contrProp">
+ <details key="start" value="5486"/>
+ <details key="end" value="5495"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.339" references="/0/generateComponent/%.5/%.1/%/%/%.2">
+ <details key="start" value="5502"/>
+ <details key="end" value="5516"/>
+ <details key="line" value="118"/>
+ </eAnnotations>
+ <eAnnotations source="positions.340" references="/0/generateComponent/%.5/%.1/%/%/%.3">
+ <details key="start" value="5517"/>
+ <details key="end" value="5536"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.341" references="/0/generateComponent/%.5/%.1/%/%/%.3/contract">
+ <details key="start" value="5527"/>
+ <details key="end" value="5535"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.342" references="/0/generateComponent/%.5/%.1/%/%/%.4">
+ <details key="start" value="5538"/>
+ <details key="end" value="5556"/>
+ <details key="line" value="119"/>
+ </eAnnotations>
+ <eAnnotations source="positions.343" references="/0/generateComponent/%.5/%.1/%/%/%.5">
+ <details key="start" value="5557"/>
+ <details key="end" value="5579"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.344" references="/0/generateComponent/%.5/%.1/%/%/%.5/contract">
+ <details key="start" value="5570"/>
+ <details key="end" value="5578"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.345" references="/0/generateComponent/%.5/%.1/%/%/%.6">
+ <details key="start" value="5581"/>
+ <details key="end" value="5584"/>
+ <details key="line" value="121"/>
+ </eAnnotations>
+ <eAnnotations source="positions.346" references="/0/generateComponent/%.5/%.1/%/%/contract">
+ <details key="start" value="5419"/>
+ <details key="end" value="5469"/>
+ <details key="line" value="115"/>
+ </eAnnotations>
+ <eAnnotations source="positions.347" references="/0/generateComponent/%.5/%.1/%/%/contract/%">
+ <details key="start" value="5439"/>
+ <details key="end" value="5470"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.348" references="/0/generateComponent/%.5/%.1/%/%/contract/%/%">
+ <details key="start" value="5439"/>
+ <details key="end" value="5453"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.349" references="/0/generateComponent/%.5/%.1/%/%/contract/%/%/contrProp">
+ <details key="start" value="5439"/>
+ <details key="end" value="5448"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.350" references="/0/generateComponent/%.5/%.1/%/%/contract/%/%.1">
+ <details key="start" value="5464"/>
+ <details key="end" value="5469"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.351" references="/0/generateComponent/%.5/%.1/%/contrProp">
+ <details key="start" value="5376"/>
+ <details key="end" value="5396"/>
+ <details key="line" value="114"/>
+ </eAnnotations>
+ <eAnnotations source="positions.352" references="/0/generateComponent/%.5/%.1/%/contrProps">
+ <details key="start" value="5399"/>
+ <details key="end" value="5409"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.353" references="/0/generateComponent/%.5/%.1/contrProps">
+ <details key="start" value="5235"/>
+ <details key="end" value="5366"/>
+ <details key="line" value="113"/>
+ </eAnnotations>
+ <eAnnotations source="positions.354" references="/0/generateComponent/%.5/%.1/contrProps/select">
+ <details key="start" value="5272"/>
+ <details key="end" value="5367"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.355" references="/0/generateComponent/%.5/%.1/contrProps/select/%">
+ <details key="start" value="5272"/>
+ <details key="end" value="5292"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.356" references="/0/generateComponent/%.5/%.1/contrProps/select/%/block">
+ <details key="start" value="5272"/>
+ <details key="end" value="5277"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.357" references="/0/generateComponent/%.5/%.1/contrProps/select/%.1">
+ <details key="start" value="5316"/>
+ <details key="end" value="5366"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.358" references="/0/generateComponent/%.5/%.1/contrProps/select/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.359" references="/0/generateComponent/%.5/%.1/contrProps/select/%.1/%/%/%">
+ <details key="start" value="5316"/>
+ <details key="end" value="5354"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.360" references="/0/generateComponent/%.5/%.1/contrProps/select/%.1/%/%/%/p">
+ <details key="start" value="5316"/>
+ <details key="end" value="5317"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.361" references="/0/generateComponent/%.5/%.1/contrProps/select/%.1/%/%/%/ContractPropQN">
+ <details key="start" value="5339"/>
+ <details key="end" value="5353"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.362" references="/0/generateComponent/%.5/%.1/contrProps/select/p">
+ <details key="start" value="5301"/>
+ <details key="end" value="5313"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.363" references="/0/generateComponent/%.5/%.2">
+ <details key="start" value="5612"/>
+ <details key="end" value="6187"/>
+ <details key="line" value="125"/>
+ </eAnnotations>
+ <eAnnotations source="positions.364" references="/0/generateComponent/%.5/%.2/%">
+ <details key="start" value="5628"/>
+ <details key="end" value="5630"/>
+ <details key="line" value="126"/>
+ </eAnnotations>
+ <eAnnotations source="positions.365" references="/0/generateComponent/%.5/%.2/%.1">
+ <details key="start" value="5631"/>
+ <details key="end" value="6179"/>
+ <details key="line" value="127"/>
+ </eAnnotations>
+ <eAnnotations source="positions.366" references="/0/generateComponent/%.5/%.2/%.1/%">
+ <details key="start" value="5793"/>
+ <details key="end" value="6170"/>
+ <details key="line" value="128"/>
+ </eAnnotations>
+ <eAnnotations source="positions.367" references="/0/generateComponent/%.5/%.2/%.1/%/%">
+ <details key="start" value="5824"/>
+ <details key="end" value="5834"/>
+ <details key="line" value="129"/>
+ </eAnnotations>
+ <eAnnotations source="positions.368" references="/0/generateComponent/%.5/%.2/%.1/%/%.1">
+ <details key="start" value="5835"/>
+ <details key="end" value="5845"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.369" references="/0/generateComponent/%.5/%.2/%.1/%/%.1/block">
+ <details key="start" value="5835"/>
+ <details key="end" value="5840"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.370" references="/0/generateComponent/%.5/%.2/%.1/%/%.2">
+ <details key="start" value="5847"/>
+ <details key="end" value="5890"/>
+ <details key="line" value="129"/>
+ </eAnnotations>
+ <eAnnotations source="positions.371" references="/0/generateComponent/%.5/%.2/%.1/%/%.3">
+ <details key="start" value="5890"/>
+ <details key="end" value="6161"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.372" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%">
+ <details key="start" value="5951"/>
+ <details key="end" value="6155"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.373" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%">
+ <details key="start" value="6007"/>
+ <details key="end" value="6081"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.374" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%/%">
+ <details key="start" value="6042"/>
+ <details key="end" value="6044"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.375" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%/%.1">
+ <details key="start" value="6045"/>
+ <details key="end" value="6064"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.376" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%/%.1/contract">
+ <details key="start" value="6055"/>
+ <details key="end" value="6063"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.377" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%/%.2">
+ <details key="start" value="6066"/>
+ <details key="end" value="6076"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.378" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%/%.3">
+ <details key="start" value="6011"/>
+ <details key="end" value="6041"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.379" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%/%.3/%">
+ <details key="start" value="6015"/>
+ <details key="end" value="6041"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.380" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%/%.3/%/contract">
+ <details key="start" value="6032"/>
+ <details key="end" value="6040"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.381" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%.1">
+ <details key="start" value="6081"/>
+ <details key="end" value="6082"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.382" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%.2">
+ <details key="start" value="6083"/>
+ <details key="end" value="6105"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.383" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%.2/contract">
+ <details key="start" value="6096"/>
+ <details key="end" value="6104"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.384" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%.3">
+ <details key="start" value="6107"/>
+ <details key="end" value="6108"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.385" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%.4">
+ <details key="start" value="6108"/>
+ <details key="end" value="6149"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.386" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%.4/%">
+ <details key="start" value="6143"/>
+ <details key="end" value="6144"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.387" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%.4/%.1">
+ <details key="start" value="6112"/>
+ <details key="end" value="6142"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.388" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%.4/%.1/%">
+ <details key="start" value="6116"/>
+ <details key="end" value="6142"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.389" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/%.4/%.1/%/contract">
+ <details key="start" value="6133"/>
+ <details key="end" value="6141"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.390" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/contract">
+ <details key="start" value="5956"/>
+ <details key="end" value="6006"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.391" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/contract/%">
+ <details key="start" value="5976"/>
+ <details key="end" value="6007"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.392" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/contract/%/%">
+ <details key="start" value="5976"/>
+ <details key="end" value="5990"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.393" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/contract/%/%/contrProp">
+ <details key="start" value="5976"/>
+ <details key="end" value="5985"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.394" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%/contract/%/%.1">
+ <details key="start" value="6001"/>
+ <details key="end" value="6006"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.395" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/contrProp">
+ <details key="start" value="5896"/>
+ <details key="end" value="5916"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.396" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/contrProps">
+ <details key="start" value="5919"/>
+ <details key="end" value="5929"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.397" references="/0/generateComponent/%.5/%.2/%.1/%/%.3/%.1">
+ <details key="start" value="5942"/>
+ <details key="end" value="5949"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.398" references="/0/generateComponent/%.5/%.2/%.1/%/%.4">
+ <details key="start" value="6161"/>
+ <details key="end" value="6164"/>
+ <details key="line" value="133"/>
+ </eAnnotations>
+ <eAnnotations source="positions.399" references="/0/generateComponent/%.5/%.2/%.1/%/%.5">
+ <details key="start" value="5797"/>
+ <details key="end" value="5821"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.400" references="/0/generateComponent/%.5/%.2/%.1/%/%.5/%">
+ <details key="start" value="5798"/>
+ <details key="end" value="5816"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.401" references="/0/generateComponent/%.5/%.2/%.1/%/%.5/%/contrProps">
+ <details key="start" value="5798"/>
+ <details key="end" value="5808"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.402" references="/0/generateComponent/%.5/%.2/%.1/%/%.5/%.1">
+ <details key="start" value="5819"/>
+ <details key="end" value="5820"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.403" references="/0/generateComponent/%.5/%.2/%.1/contrProps">
+ <details key="start" value="5636"/>
+ <details key="end" value="5789"/>
+ <details key="line" value="127"/>
+ </eAnnotations>
+ <eAnnotations source="positions.404" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select">
+ <details key="start" value="5673"/>
+ <details key="end" value="5790"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.405" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select/%">
+ <details key="start" value="5673"/>
+ <details key="end" value="5693"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.406" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select/%/block">
+ <details key="start" value="5673"/>
+ <details key="end" value="5678"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.407" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select/%.1">
+ <details key="start" value="5717"/>
+ <details key="end" value="5789"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.408" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select/%.1/%">
+ <details key="start" value="5717"/>
+ <details key="end" value="5767"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.409" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select/%.1/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.410" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select/%.1/%/%/%/%">
+ <details key="start" value="5717"/>
+ <details key="end" value="5755"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.411" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select/%.1/%/%/%/%/p">
+ <details key="start" value="5717"/>
+ <details key="end" value="5718"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.412" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select/%.1/%/%/%/%/ContractPropQN">
+ <details key="start" value="5740"/>
+ <details key="end" value="5754"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.413" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select/%.1/%.1">
+ <details key="start" value="5772"/>
+ <details key="end" value="5789"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.414" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select/%.1/%.1/p">
+ <details key="start" value="5787"/>
+ <details key="end" value="5788"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.415" references="/0/generateComponent/%.5/%.2/%.1/contrProps/select/p">
+ <details key="start" value="5702"/>
+ <details key="end" value="5714"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.416" references="/0/generateComponent/%.5/%.2/checkWeak">
+ <details key="start" value="5616"/>
+ <details key="end" value="5625"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.417" references="/0/generateComponent/%.5/%.3">
+ <details key="start" value="6189"/>
+ <details key="end" value="6206"/>
+ <details key="line" value="137"/>
+ </eAnnotations>
+ <eAnnotations source="positions.418" references="/0/generateComponent/%.5/%.4">
+ <details key="start" value="6207"/>
+ <details key="end" value="10863"/>
+ <details key="line" value="140"/>
+ </eAnnotations>
+ <eAnnotations source="positions.419" references="/0/generateComponent/%.5/%.4/%">
+ <details key="start" value="6285"/>
+ <details key="end" value="6397"/>
+ <details key="line" value="141"/>
+ </eAnnotations>
+ <eAnnotations source="positions.420" references="/0/generateComponent/%.5/%.4/%/%">
+ <details key="start" value="6320"/>
+ <details key="end" value="6388"/>
+ <details key="line" value="142"/>
+ </eAnnotations>
+ <eAnnotations source="positions.421" references="/0/generateComponent/%.5/%.4/%/%/%">
+ <details key="start" value="6341"/>
+ <details key="end" value="6346"/>
+ <details key="line" value="143"/>
+ </eAnnotations>
+ <eAnnotations source="positions.422" references="/0/generateComponent/%.5/%.4/%/%/%.1">
+ <details key="start" value="6347"/>
+ <details key="end" value="6356"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.423" references="/0/generateComponent/%.5/%.4/%/%/%.1/part">
+ <details key="start" value="6347"/>
+ <details key="end" value="6351"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.424" references="/0/generateComponent/%.5/%.4/%/%/%.2">
+ <details key="start" value="6358"/>
+ <details key="end" value="6361"/>
+ <details key="line" value="143"/>
+ </eAnnotations>
+ <eAnnotations source="positions.425" references="/0/generateComponent/%.5/%.4/%/%/%.3">
+ <details key="start" value="6362"/>
+ <details key="end" value="6376"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.426" references="/0/generateComponent/%.5/%.4/%/%/%.3/%">
+ <details key="start" value="6362"/>
+ <details key="end" value="6371"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.427" references="/0/generateComponent/%.5/%.4/%/%/%.3/%/part">
+ <details key="start" value="6362"/>
+ <details key="end" value="6366"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.428" references="/0/generateComponent/%.5/%.4/%/%/%.4">
+ <details key="start" value="6378"/>
+ <details key="end" value="6381"/>
+ <details key="line" value="143"/>
+ </eAnnotations>
+ <eAnnotations source="positions.429" references="/0/generateComponent/%.5/%.4/%/%/%.5">
+ <details key="start" value="6324"/>
+ <details key="end" value="6338"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.430" references="/0/generateComponent/%.5/%.4/%/%/%.5/part">
+ <details key="start" value="6332"/>
+ <details key="end" value="6336"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.431" references="/0/generateComponent/%.5/%.4/%/part">
+ <details key="start" value="6291"/>
+ <details key="end" value="6306"/>
+ <details key="line" value="141"/>
+ </eAnnotations>
+ <eAnnotations source="positions.432" references="/0/generateComponent/%.5/%.4/%/parts">
+ <details key="start" value="6309"/>
+ <details key="end" value="6314"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.433" references="/0/generateComponent/%.5/%.4/%.1">
+ <details key="start" value="6399"/>
+ <details key="end" value="6401"/>
+ <details key="line" value="146"/>
+ </eAnnotations>
+ <eAnnotations source="positions.434" references="/0/generateComponent/%.5/%.4/%.2">
+ <details key="start" value="6402"/>
+ <details key="end" value="7791"/>
+ <details key="line" value="147"/>
+ </eAnnotations>
+ <eAnnotations source="positions.435" references="/0/generateComponent/%.5/%.4/%.2/%">
+ <details key="start" value="6462"/>
+ <details key="end" value="7781"/>
+ <details key="line" value="148"/>
+ </eAnnotations>
+ <eAnnotations source="positions.436" references="/0/generateComponent/%.5/%.4/%.2/%/%">
+ <details key="start" value="6503"/>
+ <details key="end" value="7772"/>
+ <details key="line" value="149"/>
+ </eAnnotations>
+ <eAnnotations source="positions.437" references="/0/generateComponent/%.5/%.4/%.2/%/%/%">
+ <details key="start" value="6563"/>
+ <details key="end" value="7647"/>
+ <details key="line" value="151"/>
+ </eAnnotations>
+ <eAnnotations source="positions.438" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%">
+ <details key="start" value="6589"/>
+ <details key="end" value="7108"/>
+ <details key="line" value="152"/>
+ </eAnnotations>
+ <eAnnotations source="positions.439" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%">
+ <details key="start" value="6645"/>
+ <details key="end" value="6657"/>
+ <details key="line" value="153"/>
+ </eAnnotations>
+ <eAnnotations source="positions.440" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.1">
+ <details key="start" value="6658"/>
+ <details key="end" value="6685"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.441" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.1/%">
+ <details key="start" value="6658"/>
+ <details key="end" value="6680"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.442" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.1/%/%">
+ <details key="start" value="6658"/>
+ <details key="end" value="6675"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.443" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.1/%/%/%">
+ <details key="start" value="6658"/>
+ <details key="end" value="6666"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.444" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.1/%/%/%/conn">
+ <details key="start" value="6658"/>
+ <details key="end" value="6662"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.445" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.2">
+ <details key="start" value="6687"/>
+ <details key="end" value="6691"/>
+ <details key="line" value="153"/>
+ </eAnnotations>
+ <eAnnotations source="positions.446" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.3">
+ <details key="start" value="6692"/>
+ <details key="end" value="6726"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.447" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.3/%">
+ <details key="start" value="6692"/>
+ <details key="end" value="6721"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.448" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.3/%/%">
+ <details key="start" value="6692"/>
+ <details key="end" value="6708"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.449" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.3/%/%/%">
+ <details key="start" value="6692"/>
+ <details key="end" value="6700"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.450" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.3/%/%/%/conn">
+ <details key="start" value="6692"/>
+ <details key="end" value="6696"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.451" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.4">
+ <details key="start" value="6728"/>
+ <details key="end" value="6729"/>
+ <details key="line" value="153"/>
+ </eAnnotations>
+ <eAnnotations source="positions.452" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.5">
+ <details key="start" value="6730"/>
+ <details key="end" value="6756"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.453" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.5/%">
+ <details key="start" value="6730"/>
+ <details key="end" value="6751"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.454" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.5/%/%">
+ <details key="start" value="6730"/>
+ <details key="end" value="6746"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.455" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.5/%/%/%">
+ <details key="start" value="6730"/>
+ <details key="end" value="6738"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.456" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.5/%/%/%/conn">
+ <details key="start" value="6730"/>
+ <details key="end" value="6734"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.457" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.6">
+ <details key="start" value="6758"/>
+ <details key="end" value="6761"/>
+ <details key="line" value="153"/>
+ </eAnnotations>
+ <eAnnotations source="positions.458" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.7">
+ <details key="start" value="6593"/>
+ <details key="end" value="6642"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.459" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.7/%">
+ <details key="start" value="6594"/>
+ <details key="end" value="6624"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.460" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.7/%/%">
+ <details key="start" value="6594"/>
+ <details key="end" value="6611"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.461" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.7/%/%/%">
+ <details key="start" value="6594"/>
+ <details key="end" value="6602"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.462" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.7/%/%/%/conn">
+ <details key="start" value="6594"/>
+ <details key="end" value="6598"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.463" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8">
+ <details key="start" value="6939"/>
+ <details key="end" value="7103"/>
+ <details key="line" value="156"/>
+ </eAnnotations>
+ <eAnnotations source="positions.464" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%">
+ <details key="start" value="6947"/>
+ <details key="end" value="6959"/>
+ <details key="line" value="157"/>
+ </eAnnotations>
+ <eAnnotations source="positions.465" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.1">
+ <details key="start" value="6960"/>
+ <details key="end" value="6995"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.466" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.1/%">
+ <details key="start" value="6960"/>
+ <details key="end" value="6990"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.467" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.1/%/%">
+ <details key="start" value="6960"/>
+ <details key="end" value="6977"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.468" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.1/%/%/%">
+ <details key="start" value="6960"/>
+ <details key="end" value="6968"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.469" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.1/%/%/%/conn">
+ <details key="start" value="6960"/>
+ <details key="end" value="6964"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.470" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.2">
+ <details key="start" value="6997"/>
+ <details key="end" value="6998"/>
+ <details key="line" value="157"/>
+ </eAnnotations>
+ <eAnnotations source="positions.471" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.3">
+ <details key="start" value="6999"/>
+ <details key="end" value="7026"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.472" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.3/%">
+ <details key="start" value="6999"/>
+ <details key="end" value="7021"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.473" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.3/%/%">
+ <details key="start" value="6999"/>
+ <details key="end" value="7016"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.474" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.3/%/%/%">
+ <details key="start" value="6999"/>
+ <details key="end" value="7007"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.475" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.3/%/%/%/conn">
+ <details key="start" value="6999"/>
+ <details key="end" value="7003"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.476" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.4">
+ <details key="start" value="7028"/>
+ <details key="end" value="7032"/>
+ <details key="line" value="157"/>
+ </eAnnotations>
+ <eAnnotations source="positions.477" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.5">
+ <details key="start" value="7033"/>
+ <details key="end" value="7067"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.478" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.5/%">
+ <details key="start" value="7033"/>
+ <details key="end" value="7062"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.479" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.5/%/%">
+ <details key="start" value="7033"/>
+ <details key="end" value="7049"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.480" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.5/%/%/%">
+ <details key="start" value="7033"/>
+ <details key="end" value="7041"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.481" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.5/%/%/%/conn">
+ <details key="start" value="7033"/>
+ <details key="end" value="7037"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.482" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.6">
+ <details key="start" value="7069"/>
+ <details key="end" value="7070"/>
+ <details key="line" value="157"/>
+ </eAnnotations>
+ <eAnnotations source="positions.483" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.7">
+ <details key="start" value="7071"/>
+ <details key="end" value="7097"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.484" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.7/%">
+ <details key="start" value="7071"/>
+ <details key="end" value="7092"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.485" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.7/%/%">
+ <details key="start" value="7071"/>
+ <details key="end" value="7087"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.486" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.7/%/%/%">
+ <details key="start" value="7071"/>
+ <details key="end" value="7079"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.487" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.7/%/%/%/conn">
+ <details key="start" value="7071"/>
+ <details key="end" value="7075"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.488" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.8/%.8">
+ <details key="start" value="7099"/>
+ <details key="end" value="7102"/>
+ <details key="line" value="157"/>
+ </eAnnotations>
+ <eAnnotations source="positions.489" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9">
+ <details key="start" value="6762"/>
+ <details key="end" value="6939"/>
+ <details key="line" value="154"/>
+ </eAnnotations>
+ <eAnnotations source="positions.490" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%">
+ <details key="start" value="6821"/>
+ <details key="end" value="6833"/>
+ <details key="line" value="155"/>
+ </eAnnotations>
+ <eAnnotations source="positions.491" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.1">
+ <details key="start" value="6834"/>
+ <details key="end" value="6869"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.492" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.1/%">
+ <details key="start" value="6834"/>
+ <details key="end" value="6864"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.493" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.1/%/%">
+ <details key="start" value="6834"/>
+ <details key="end" value="6851"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.494" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.1/%/%/%">
+ <details key="start" value="6834"/>
+ <details key="end" value="6842"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.495" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.1/%/%/%/conn">
+ <details key="start" value="6834"/>
+ <details key="end" value="6838"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.496" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.2">
+ <details key="start" value="6871"/>
+ <details key="end" value="6872"/>
+ <details key="line" value="155"/>
+ </eAnnotations>
+ <eAnnotations source="positions.497" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.3">
+ <details key="start" value="6873"/>
+ <details key="end" value="6900"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.498" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.3/%">
+ <details key="start" value="6873"/>
+ <details key="end" value="6895"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.499" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.3/%/%">
+ <details key="start" value="6873"/>
+ <details key="end" value="6890"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.500" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.3/%/%/%">
+ <details key="start" value="6873"/>
+ <details key="end" value="6881"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.501" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.3/%/%/%/conn">
+ <details key="start" value="6873"/>
+ <details key="end" value="6877"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.502" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.4">
+ <details key="start" value="6902"/>
+ <details key="end" value="6906"/>
+ <details key="line" value="155"/>
+ </eAnnotations>
+ <eAnnotations source="positions.503" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.5">
+ <details key="start" value="6907"/>
+ <details key="end" value="6933"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.504" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.5/%">
+ <details key="start" value="6907"/>
+ <details key="end" value="6928"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.505" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.5/%/%">
+ <details key="start" value="6907"/>
+ <details key="end" value="6923"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.506" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.5/%/%/%">
+ <details key="start" value="6907"/>
+ <details key="end" value="6915"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.507" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.5/%/%/%/conn">
+ <details key="start" value="6907"/>
+ <details key="end" value="6911"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.508" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.6">
+ <details key="start" value="6935"/>
+ <details key="end" value="6938"/>
+ <details key="line" value="155"/>
+ </eAnnotations>
+ <eAnnotations source="positions.509" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.7">
+ <details key="start" value="6770"/>
+ <details key="end" value="6818"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.510" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.7/%">
+ <details key="start" value="6771"/>
+ <details key="end" value="6800"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.511" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.7/%/%">
+ <details key="start" value="6771"/>
+ <details key="end" value="6787"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.512" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.7/%/%/%">
+ <details key="start" value="6771"/>
+ <details key="end" value="6779"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.513" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%/%.9/%.7/%/%/%/conn">
+ <details key="start" value="6771"/>
+ <details key="end" value="6775"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.514" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.1">
+ <details key="start" value="6567"/>
+ <details key="end" value="6585"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.515" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.1/conn">
+ <details key="start" value="6579"/>
+ <details key="end" value="6583"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.516" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2">
+ <details key="start" value="7111"/>
+ <details key="end" value="7642"/>
+ <details key="line" value="159"/>
+ </eAnnotations>
+ <eAnnotations source="positions.517" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%">
+ <details key="start" value="7120"/>
+ <details key="end" value="7639"/>
+ <details key="line" value="160"/>
+ </eAnnotations>
+ <eAnnotations source="positions.518" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%">
+ <details key="start" value="7175"/>
+ <details key="end" value="7187"/>
+ <details key="line" value="161"/>
+ </eAnnotations>
+ <eAnnotations source="positions.519" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.1">
+ <details key="start" value="7188"/>
+ <details key="end" value="7214"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.520" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.1/%">
+ <details key="start" value="7188"/>
+ <details key="end" value="7209"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.521" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.1/%/%">
+ <details key="start" value="7188"/>
+ <details key="end" value="7204"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.522" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.1/%/%/%">
+ <details key="start" value="7188"/>
+ <details key="end" value="7196"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.523" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.1/%/%/%/conn">
+ <details key="start" value="7188"/>
+ <details key="end" value="7192"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.524" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.2">
+ <details key="start" value="7216"/>
+ <details key="end" value="7220"/>
+ <details key="line" value="161"/>
+ </eAnnotations>
+ <eAnnotations source="positions.525" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.3">
+ <details key="start" value="7221"/>
+ <details key="end" value="7256"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.526" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.3/%">
+ <details key="start" value="7221"/>
+ <details key="end" value="7251"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.527" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.3/%/%">
+ <details key="start" value="7221"/>
+ <details key="end" value="7238"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.528" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.3/%/%/%">
+ <details key="start" value="7221"/>
+ <details key="end" value="7229"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.529" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.3/%/%/%/conn">
+ <details key="start" value="7221"/>
+ <details key="end" value="7225"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.530" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.4">
+ <details key="start" value="7258"/>
+ <details key="end" value="7259"/>
+ <details key="line" value="161"/>
+ </eAnnotations>
+ <eAnnotations source="positions.531" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.5">
+ <details key="start" value="7260"/>
+ <details key="end" value="7287"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.532" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.5/%">
+ <details key="start" value="7260"/>
+ <details key="end" value="7282"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.533" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.5/%/%">
+ <details key="start" value="7260"/>
+ <details key="end" value="7277"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.534" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.5/%/%/%">
+ <details key="start" value="7260"/>
+ <details key="end" value="7268"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.535" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.5/%/%/%/conn">
+ <details key="start" value="7260"/>
+ <details key="end" value="7264"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.536" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.6">
+ <details key="start" value="7289"/>
+ <details key="end" value="7292"/>
+ <details key="line" value="161"/>
+ </eAnnotations>
+ <eAnnotations source="positions.537" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.7">
+ <details key="start" value="7124"/>
+ <details key="end" value="7172"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.538" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.7/%">
+ <details key="start" value="7125"/>
+ <details key="end" value="7154"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.539" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.7/%/%">
+ <details key="start" value="7125"/>
+ <details key="end" value="7141"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.540" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.7/%/%/%">
+ <details key="start" value="7125"/>
+ <details key="end" value="7133"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.541" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.7/%/%/%/conn">
+ <details key="start" value="7125"/>
+ <details key="end" value="7129"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.542" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8">
+ <details key="start" value="7470"/>
+ <details key="end" value="7634"/>
+ <details key="line" value="164"/>
+ </eAnnotations>
+ <eAnnotations source="positions.543" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%">
+ <details key="start" value="7478"/>
+ <details key="end" value="7490"/>
+ <details key="line" value="165"/>
+ </eAnnotations>
+ <eAnnotations source="positions.544" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.1">
+ <details key="start" value="7491"/>
+ <details key="end" value="7525"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.545" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.1/%">
+ <details key="start" value="7491"/>
+ <details key="end" value="7520"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.546" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.1/%/%">
+ <details key="start" value="7491"/>
+ <details key="end" value="7507"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.547" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.1/%/%/%">
+ <details key="start" value="7491"/>
+ <details key="end" value="7499"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.548" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.1/%/%/%/conn">
+ <details key="start" value="7491"/>
+ <details key="end" value="7495"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.549" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.2">
+ <details key="start" value="7527"/>
+ <details key="end" value="7528"/>
+ <details key="line" value="165"/>
+ </eAnnotations>
+ <eAnnotations source="positions.550" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.3">
+ <details key="start" value="7529"/>
+ <details key="end" value="7555"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.551" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.3/%">
+ <details key="start" value="7529"/>
+ <details key="end" value="7550"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.552" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.3/%/%">
+ <details key="start" value="7529"/>
+ <details key="end" value="7545"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.553" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.3/%/%/%">
+ <details key="start" value="7529"/>
+ <details key="end" value="7537"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.554" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.3/%/%/%/conn">
+ <details key="start" value="7529"/>
+ <details key="end" value="7533"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.555" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.4">
+ <details key="start" value="7557"/>
+ <details key="end" value="7561"/>
+ <details key="line" value="165"/>
+ </eAnnotations>
+ <eAnnotations source="positions.556" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.5">
+ <details key="start" value="7562"/>
+ <details key="end" value="7597"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.557" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.5/%">
+ <details key="start" value="7562"/>
+ <details key="end" value="7592"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.558" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.5/%/%">
+ <details key="start" value="7562"/>
+ <details key="end" value="7579"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.559" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.5/%/%/%">
+ <details key="start" value="7562"/>
+ <details key="end" value="7570"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.560" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.5/%/%/%/conn">
+ <details key="start" value="7562"/>
+ <details key="end" value="7566"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.561" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.6">
+ <details key="start" value="7599"/>
+ <details key="end" value="7600"/>
+ <details key="line" value="165"/>
+ </eAnnotations>
+ <eAnnotations source="positions.562" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.7">
+ <details key="start" value="7601"/>
+ <details key="end" value="7628"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.563" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.7/%">
+ <details key="start" value="7601"/>
+ <details key="end" value="7623"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.564" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.7/%/%">
+ <details key="start" value="7601"/>
+ <details key="end" value="7618"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.565" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.7/%/%/%">
+ <details key="start" value="7601"/>
+ <details key="end" value="7609"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.566" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.7/%/%/%/conn">
+ <details key="start" value="7601"/>
+ <details key="end" value="7605"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.567" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.8/%.8">
+ <details key="start" value="7630"/>
+ <details key="end" value="7633"/>
+ <details key="line" value="165"/>
+ </eAnnotations>
+ <eAnnotations source="positions.568" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9">
+ <details key="start" value="7293"/>
+ <details key="end" value="7470"/>
+ <details key="line" value="162"/>
+ </eAnnotations>
+ <eAnnotations source="positions.569" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%">
+ <details key="start" value="7353"/>
+ <details key="end" value="7365"/>
+ <details key="line" value="163"/>
+ </eAnnotations>
+ <eAnnotations source="positions.570" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.1">
+ <details key="start" value="7366"/>
+ <details key="end" value="7400"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.571" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.1/%">
+ <details key="start" value="7366"/>
+ <details key="end" value="7395"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.572" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.1/%/%">
+ <details key="start" value="7366"/>
+ <details key="end" value="7382"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.573" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.1/%/%/%">
+ <details key="start" value="7366"/>
+ <details key="end" value="7374"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.574" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.1/%/%/%/conn">
+ <details key="start" value="7366"/>
+ <details key="end" value="7370"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.575" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.2">
+ <details key="start" value="7402"/>
+ <details key="end" value="7403"/>
+ <details key="line" value="163"/>
+ </eAnnotations>
+ <eAnnotations source="positions.576" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.3">
+ <details key="start" value="7404"/>
+ <details key="end" value="7430"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.577" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.3/%">
+ <details key="start" value="7404"/>
+ <details key="end" value="7425"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.578" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.3/%/%">
+ <details key="start" value="7404"/>
+ <details key="end" value="7420"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.579" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.3/%/%/%">
+ <details key="start" value="7404"/>
+ <details key="end" value="7412"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.580" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.3/%/%/%/conn">
+ <details key="start" value="7404"/>
+ <details key="end" value="7408"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.581" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.4">
+ <details key="start" value="7432"/>
+ <details key="end" value="7436"/>
+ <details key="line" value="163"/>
+ </eAnnotations>
+ <eAnnotations source="positions.582" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.5">
+ <details key="start" value="7437"/>
+ <details key="end" value="7464"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.583" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.5/%">
+ <details key="start" value="7437"/>
+ <details key="end" value="7459"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.584" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.5/%/%">
+ <details key="start" value="7437"/>
+ <details key="end" value="7454"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.585" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.5/%/%/%">
+ <details key="start" value="7437"/>
+ <details key="end" value="7445"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.586" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.5/%/%/%/conn">
+ <details key="start" value="7437"/>
+ <details key="end" value="7441"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.587" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.6">
+ <details key="start" value="7466"/>
+ <details key="end" value="7469"/>
+ <details key="line" value="163"/>
+ </eAnnotations>
+ <eAnnotations source="positions.588" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.7">
+ <details key="start" value="7301"/>
+ <details key="end" value="7350"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.589" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.7/%">
+ <details key="start" value="7302"/>
+ <details key="end" value="7332"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.590" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.7/%/%">
+ <details key="start" value="7302"/>
+ <details key="end" value="7319"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.591" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.7/%/%/%">
+ <details key="start" value="7302"/>
+ <details key="end" value="7310"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.592" references="/0/generateComponent/%.5/%.4/%.2/%/%/%/%.2/%/%.9/%.7/%/%/%/conn">
+ <details key="start" value="7302"/>
+ <details key="end" value="7306"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.593" references="/0/generateComponent/%.5/%.4/%.2/%/%/%.1">
+ <details key="start" value="6507"/>
+ <details key="end" value="6534"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.594" references="/0/generateComponent/%.5/%.4/%.2/%/%/%.1/conn">
+ <details key="start" value="6528"/>
+ <details key="end" value="6532"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.595" references="/0/generateComponent/%.5/%.4/%.2/%/%/%.2">
+ <details key="start" value="7650"/>
+ <details key="end" value="7767"/>
+ <details key="line" value="168"/>
+ </eAnnotations>
+ <eAnnotations source="positions.596" references="/0/generateComponent/%.5/%.4/%.2/%/%/%.2/%">
+ <details key="start" value="7689"/>
+ <details key="end" value="7764"/>
+ <details key="line" value="170"/>
+ </eAnnotations>
+ <eAnnotations source="positions.597" references="/0/generateComponent/%.5/%.4/%.2/%/%/%.2/%/%">
+ <details key="start" value="7723"/>
+ <details key="end" value="7724"/>
+ <details key="line" value="171"/>
+ </eAnnotations>
+ <eAnnotations source="positions.598" references="/0/generateComponent/%.5/%.4/%.2/%/%/%.2/%/%.1">
+ <details key="start" value="7725"/>
+ <details key="end" value="7754"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.599" references="/0/generateComponent/%.5/%.4/%.2/%/%/%.2/%/%.1/conn">
+ <details key="start" value="7749"/>
+ <details key="end" value="7753"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.600" references="/0/generateComponent/%.5/%.4/%.2/%/%/%.2/%/%.2">
+ <details key="start" value="7756"/>
+ <details key="end" value="7758"/>
+ <details key="line" value="172"/>
+ </eAnnotations>
+ <eAnnotations source="positions.601" references="/0/generateComponent/%.5/%.4/%.2/%/%/%.2/%/%.3">
+ <details key="start" value="7693"/>
+ <details key="end" value="7720"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.602" references="/0/generateComponent/%.5/%.4/%.2/%/%/%.2/%/%.3/conn">
+ <details key="start" value="7714"/>
+ <details key="end" value="7718"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.603" references="/0/generateComponent/%.5/%.4/%.2/%/conn">
+ <details key="start" value="6468"/>
+ <details key="end" value="6484"/>
+ <details key="line" value="148"/>
+ </eAnnotations>
+ <eAnnotations source="positions.604" references="/0/generateComponent/%.5/%.4/%.2/%/connections">
+ <details key="start" value="6487"/>
+ <details key="end" value="6498"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.605" references="/0/generateComponent/%.5/%.4/%.2/connections">
+ <details key="start" value="6407"/>
+ <details key="end" value="6458"/>
+ <details key="line" value="147"/>
+ </eAnnotations>
+ <eAnnotations source="positions.606" references="/0/generateComponent/%.5/%.4/%.2/connections/%">
+ <details key="start" value="6439"/>
+ <details key="end" value="6459"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.607" references="/0/generateComponent/%.5/%.4/%.2/connections/%/block">
+ <details key="start" value="6439"/>
+ <details key="end" value="6444"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.608" references="/0/generateComponent/%.5/%.4/%.3">
+ <details key="start" value="7793"/>
+ <details key="end" value="7795"/>
+ <details key="line" value="176"/>
+ </eAnnotations>
+ <eAnnotations source="positions.609" references="/0/generateComponent/%.5/%.4/%.4">
+ <details key="start" value="7796"/>
+ <details key="end" value="8421"/>
+ <details key="line" value="177"/>
+ </eAnnotations>
+ <eAnnotations source="positions.610" references="/0/generateComponent/%.5/%.4/%.4/%">
+ <details key="start" value="7925"/>
+ <details key="end" value="8409"/>
+ <details key="line" value="178"/>
+ </eAnnotations>
+ <eAnnotations source="positions.611" references="/0/generateComponent/%.5/%.4/%.4/%/%">
+ <details key="start" value="7964"/>
+ <details key="end" value="8397"/>
+ <details key="line" value="179"/>
+ </eAnnotations>
+ <eAnnotations source="positions.612" references="/0/generateComponent/%.5/%.4/%.4/%/%/%">
+ <details key="start" value="8116"/>
+ <details key="end" value="8386"/>
+ <details key="line" value="180"/>
+ </eAnnotations>
+ <eAnnotations source="positions.613" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%">
+ <details key="start" value="8219"/>
+ <details key="end" value="8374"/>
+ <details key="line" value="181"/>
+ </eAnnotations>
+ <eAnnotations source="positions.614" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/%">
+ <details key="start" value="8307"/>
+ <details key="end" value="8321"/>
+ <details key="line" value="181"/>
+ </eAnnotations>
+ <eAnnotations source="positions.615" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/spec">
+ <details key="start" value="8322"/>
+ <details key="end" value="8326"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.616" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/%.1">
+ <details key="start" value="8328"/>
+ <details key="end" value="8362"/>
+ <details key="line" value="182"/>
+ </eAnnotations>
+ <eAnnotations source="positions.617" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/%.1/%">
+ <details key="start" value="8356"/>
+ <details key="end" value="8357"/>
+ <details key="line" value="182"/>
+ </eAnnotations>
+ <eAnnotations source="positions.618" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/%.1/%.1">
+ <details key="start" value="8332"/>
+ <details key="end" value="8355"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.619" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/%.1/%.1/%">
+ <details key="start" value="8335"/>
+ <details key="end" value="8355"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.620" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/%.1/%.1/%/spec">
+ <details key="start" value="8336"/>
+ <details key="end" value="8340"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.621" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/%.1/%.1/%/%">
+ <details key="start" value="8350"/>
+ <details key="end" value="8353"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.622" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/%.2">
+ <details key="start" value="8362"/>
+ <details key="end" value="8365"/>
+ <details key="line" value="182"/>
+ </eAnnotations>
+ <eAnnotations source="positions.623" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/spec.1">
+ <details key="start" value="8224"/>
+ <details key="end" value="8303"/>
+ <details key="line" value="181"/>
+ </eAnnotations>
+ <eAnnotations source="positions.624" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/spec.1/%">
+ <details key="start" value="8241"/>
+ <details key="end" value="8304"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.625" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/spec.1/%/%">
+ <details key="start" value="8241"/>
+ <details key="end" value="8293"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.626" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/spec.1/%/%/%">
+ <details key="start" value="8241"/>
+ <details key="end" value="8287"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.627" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/spec.1/%/%/%/%">
+ <details key="start" value="8241"/>
+ <details key="end" value="8259"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.628" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/spec.1/%/%/%/%/rule">
+ <details key="start" value="8241"/>
+ <details key="end" value="8245"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.629" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/spec.1/%/%/%/%.1">
+ <details key="start" value="8270"/>
+ <details key="end" value="8286"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.630" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/%/spec.1/%/index">
+ <details key="start" value="8298"/>
+ <details key="end" value="8303"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.631" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/index">
+ <details key="start" value="8122"/>
+ <details key="end" value="8212"/>
+ <details key="line" value="180"/>
+ </eAnnotations>
+ <eAnnotations source="positions.632" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/index/%">
+ <details key="start" value="8141"/>
+ <details key="end" value="8213"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.633" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/index/%/%">
+ <details key="start" value="8141"/>
+ <details key="end" value="8196"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.634" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/index/%/%/%">
+ <details key="start" value="8141"/>
+ <details key="end" value="8187"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.635" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/index/%/%/%/%">
+ <details key="start" value="8141"/>
+ <details key="end" value="8159"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.636" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/index/%/%/%/%/rule">
+ <details key="start" value="8141"/>
+ <details key="end" value="8145"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.637" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/index/%/%/%/%.1">
+ <details key="start" value="8170"/>
+ <details key="end" value="8186"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.638" references="/0/generateComponent/%.5/%.4/%.4/%/%/%/index/%/%.1">
+ <details key="start" value="8206"/>
+ <details key="end" value="8212"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.639" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1">
+ <details key="start" value="7968"/>
+ <details key="end" value="8109"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.640" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%">
+ <details key="start" value="7970"/>
+ <details key="end" value="8018"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.641" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%/%">
+ <details key="start" value="7970"/>
+ <details key="end" value="7988"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.642" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%/%/rule">
+ <details key="start" value="7970"/>
+ <details key="end" value="7974"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.643" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%/%.1">
+ <details key="start" value="8001"/>
+ <details key="end" value="8017"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.644" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1">
+ <details key="start" value="8023"/>
+ <details key="end" value="8107"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.645" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1/collect">
+ <details key="start" value="8023"/>
+ <details key="end" value="8095"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.646" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1/collect/%">
+ <details key="start" value="8023"/>
+ <details key="end" value="8078"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.647" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1/collect/%/%">
+ <details key="start" value="8023"/>
+ <details key="end" value="8069"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.648" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1/collect/%/%/%">
+ <details key="start" value="8023"/>
+ <details key="end" value="8041"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.649" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1/collect/%/%/%/rule">
+ <details key="start" value="8023"/>
+ <details key="end" value="8027"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.650" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1/collect/%/%/%.1">
+ <details key="start" value="8052"/>
+ <details key="end" value="8068"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.651" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1/collect/%.1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.652" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1/collect/%.1/temp1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.653" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1/collect/%.1/%">
+ <details key="start" value="8088"/>
+ <details key="end" value="8094"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.654" references="/0/generateComponent/%.5/%.4/%.4/%/%/%.1/%.1/collect/temp1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.655" references="/0/generateComponent/%.5/%.4/%.4/%/rule">
+ <details key="start" value="7931"/>
+ <details key="end" value="7948"/>
+ <details key="line" value="178"/>
+ </eAnnotations>
+ <eAnnotations source="positions.656" references="/0/generateComponent/%.5/%.4/%.4/%/rules">
+ <details key="start" value="7951"/>
+ <details key="end" value="7956"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.657" references="/0/generateComponent/%.5/%.4/%.4/rules">
+ <details key="start" value="7801"/>
+ <details key="end" value="7918"/>
+ <details key="line" value="177"/>
+ </eAnnotations>
+ <eAnnotations source="positions.658" references="/0/generateComponent/%.5/%.4/%.4/rules/select">
+ <details key="start" value="7828"/>
+ <details key="end" value="7919"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.659" references="/0/generateComponent/%.5/%.4/%.4/rules/select/%">
+ <details key="start" value="7828"/>
+ <details key="end" value="7843"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.660" references="/0/generateComponent/%.5/%.4/%.4/rules/select/%/block">
+ <details key="start" value="7828"/>
+ <details key="end" value="7833"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.661" references="/0/generateComponent/%.5/%.4/%.4/rules/select/%.1">
+ <details key="start" value="7869"/>
+ <details key="end" value="7918"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.662" references="/0/generateComponent/%.5/%.4/%.4/rules/select/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.663" references="/0/generateComponent/%.5/%.4/%.4/rules/select/%.1/%/%/%">
+ <details key="start" value="7869"/>
+ <details key="end" value="7906"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.664" references="/0/generateComponent/%.5/%.4/%.4/rules/select/%.1/%/%/%/c">
+ <details key="start" value="7869"/>
+ <details key="end" value="7870"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.665" references="/0/generateComponent/%.5/%.4/%.4/rules/select/%.1/%/%/%/DelegConstrQN">
+ <details key="start" value="7892"/>
+ <details key="end" value="7905"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.666" references="/0/generateComponent/%.5/%.4/%.4/rules/select/c">
+ <details key="start" value="7852"/>
+ <details key="end" value="7866"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.667" references="/0/generateComponent/%.5/%.4/%.5">
+ <details key="start" value="8424"/>
+ <details key="end" value="8426"/>
+ <details key="line" value="187"/>
+ </eAnnotations>
+ <eAnnotations source="positions.668" references="/0/generateComponent/%.5/%.4/%.6">
+ <details key="start" value="8427"/>
+ <details key="end" value="9922"/>
+ <details key="line" value="189"/>
+ </eAnnotations>
+ <eAnnotations source="positions.669" references="/0/generateComponent/%.5/%.4/%.6/%">
+ <details key="start" value="8617"/>
+ <details key="end" value="9030"/>
+ <details key="line" value="191"/>
+ </eAnnotations>
+ <eAnnotations source="positions.670" references="/0/generateComponent/%.5/%.4/%.6/%/%">
+ <details key="start" value="8783"/>
+ <details key="end" value="9021"/>
+ <details key="line" value="192"/>
+ </eAnnotations>
+ <eAnnotations source="positions.671" references="/0/generateComponent/%.5/%.4/%.6/%/%/%">
+ <details key="start" value="8827"/>
+ <details key="end" value="9012"/>
+ <details key="line" value="193"/>
+ </eAnnotations>
+ <eAnnotations source="positions.672" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%">
+ <details key="start" value="8857"/>
+ <details key="end" value="9004"/>
+ <details key="line" value="194"/>
+ </eAnnotations>
+ <eAnnotations source="positions.673" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/%">
+ <details key="start" value="8915"/>
+ <details key="end" value="8925"/>
+ <details key="line" value="195"/>
+ </eAnnotations>
+ <eAnnotations source="positions.674" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/%.1">
+ <details key="start" value="8926"/>
+ <details key="end" value="8940"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.675" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/%.1/contrProp">
+ <details key="start" value="8926"/>
+ <details key="end" value="8935"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.676" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/%.2">
+ <details key="start" value="8942"/>
+ <details key="end" value="8953"/>
+ <details key="line" value="195"/>
+ </eAnnotations>
+ <eAnnotations source="positions.677" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/%.3">
+ <details key="start" value="8954"/>
+ <details key="end" value="8993"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.678" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/%.3/contrProp">
+ <details key="start" value="8977"/>
+ <details key="end" value="8986"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.679" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/%.3/parts">
+ <details key="start" value="8987"/>
+ <details key="end" value="8992"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.680" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/%.4">
+ <details key="start" value="8995"/>
+ <details key="end" value="8997"/>
+ <details key="line" value="196"/>
+ </eAnnotations>
+ <eAnnotations source="positions.681" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/contract">
+ <details key="start" value="8862"/>
+ <details key="end" value="8912"/>
+ <details key="line" value="194"/>
+ </eAnnotations>
+ <eAnnotations source="positions.682" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/contract/%">
+ <details key="start" value="8882"/>
+ <details key="end" value="8913"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.683" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/contract/%/%">
+ <details key="start" value="8882"/>
+ <details key="end" value="8896"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.684" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/contract/%/%/contrProp">
+ <details key="start" value="8882"/>
+ <details key="end" value="8891"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.685" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%/contract/%/%.1">
+ <details key="start" value="8907"/>
+ <details key="end" value="8912"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.686" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%.1">
+ <details key="start" value="8831"/>
+ <details key="end" value="8853"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.687" references="/0/generateComponent/%.5/%.4/%.6/%/%/%/%.1/contrProp">
+ <details key="start" value="8842"/>
+ <details key="end" value="8851"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.688" references="/0/generateComponent/%.5/%.4/%.6/%/%/contrProp">
+ <details key="start" value="8789"/>
+ <details key="end" value="8809"/>
+ <details key="line" value="192"/>
+ </eAnnotations>
+ <eAnnotations source="positions.689" references="/0/generateComponent/%.5/%.4/%.6/%/%/contrProps">
+ <details key="start" value="8812"/>
+ <details key="end" value="8822"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.690" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps">
+ <details key="start" value="8622"/>
+ <details key="end" value="8779"/>
+ <details key="line" value="191"/>
+ </eAnnotations>
+ <eAnnotations source="positions.691" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select">
+ <details key="start" value="8659"/>
+ <details key="end" value="8780"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.692" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/%">
+ <details key="start" value="8659"/>
+ <details key="end" value="8679"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.693" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/%/block">
+ <details key="start" value="8659"/>
+ <details key="end" value="8664"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.694" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/%.1">
+ <details key="start" value="8703"/>
+ <details key="end" value="8779"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.695" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/%.1/%">
+ <details key="start" value="8703"/>
+ <details key="end" value="8753"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.696" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/%.1/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.697" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/%.1/%/%/%/%">
+ <details key="start" value="8703"/>
+ <details key="end" value="8741"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.698" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/%.1/%/%/%/%/p">
+ <details key="start" value="8703"/>
+ <details key="end" value="8704"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.699" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/%.1/%/%/%/%/ContractPropQN">
+ <details key="start" value="8726"/>
+ <details key="end" value="8740"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.700" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/%.1/%.1">
+ <details key="start" value="8758"/>
+ <details key="end" value="8779"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.701" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/%.1/%.1/%">
+ <details key="start" value="8762"/>
+ <details key="end" value="8779"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.702" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/%.1/%.1/%/p">
+ <details key="start" value="8777"/>
+ <details key="end" value="8778"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.703" references="/0/generateComponent/%.5/%.4/%.6/%/contrProps/select/p">
+ <details key="start" value="8688"/>
+ <details key="end" value="8700"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.704" references="/0/generateComponent/%.5/%.4/%.6/%.1">
+ <details key="start" value="9032"/>
+ <details key="end" value="9034"/>
+ <details key="line" value="200"/>
+ </eAnnotations>
+ <eAnnotations source="positions.705" references="/0/generateComponent/%.5/%.4/%.6/%.2">
+ <details key="start" value="9035"/>
+ <details key="end" value="9431"/>
+ <details key="line" value="201"/>
+ </eAnnotations>
+ <eAnnotations source="positions.706" references="/0/generateComponent/%.5/%.4/%.6/%.2/%">
+ <details key="start" value="9197"/>
+ <details key="end" value="9422"/>
+ <details key="line" value="202"/>
+ </eAnnotations>
+ <eAnnotations source="positions.707" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%">
+ <details key="start" value="9270"/>
+ <details key="end" value="9413"/>
+ <details key="line" value="203"/>
+ </eAnnotations>
+ <eAnnotations source="positions.708" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%">
+ <details key="start" value="9342"/>
+ <details key="end" value="9352"/>
+ <details key="line" value="204"/>
+ </eAnnotations>
+ <eAnnotations source="positions.709" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.1">
+ <details key="start" value="9353"/>
+ <details key="end" value="9363"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.710" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.1/block">
+ <details key="start" value="9353"/>
+ <details key="end" value="9358"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.711" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.2">
+ <details key="start" value="9365"/>
+ <details key="end" value="9384"/>
+ <details key="line" value="204"/>
+ </eAnnotations>
+ <eAnnotations source="positions.712" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/refinedByAllWeak">
+ <details key="start" value="9385"/>
+ <details key="end" value="9401"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.713" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.3">
+ <details key="start" value="9403"/>
+ <details key="end" value="9407"/>
+ <details key="line" value="205"/>
+ </eAnnotations>
+ <eAnnotations source="positions.714" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.4">
+ <details key="start" value="9274"/>
+ <details key="end" value="9339"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.715" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.4/%">
+ <details key="start" value="9275"/>
+ <details key="end" value="9297"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.716" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.4/%/%">
+ <details key="start" value="9275"/>
+ <details key="end" value="9293"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.717" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.4/%/%/contrProps">
+ <details key="start" value="9275"/>
+ <details key="end" value="9285"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.718" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.4/%/%.1">
+ <details key="start" value="9296"/>
+ <details key="end" value="9297"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.719" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.4/%.1">
+ <details key="start" value="9302"/>
+ <details key="end" value="9338"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.720" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.4/%.1/%">
+ <details key="start" value="9306"/>
+ <details key="end" value="9338"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.721" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.4/%.1/%/refinedByAllWeak">
+ <details key="start" value="9306"/>
+ <details key="end" value="9322"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.722" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/%/%.4/%.1/%/%">
+ <details key="start" value="9334"/>
+ <details key="end" value="9337"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.723" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/refinedByAllWeak">
+ <details key="start" value="9202"/>
+ <details key="end" value="9266"/>
+ <details key="line" value="202"/>
+ </eAnnotations>
+ <eAnnotations source="positions.724" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/refinedByAllWeak/%">
+ <details key="start" value="9230"/>
+ <details key="end" value="9267"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.725" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/refinedByAllWeak/%/contrProps">
+ <details key="start" value="9250"/>
+ <details key="end" value="9260"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.726" references="/0/generateComponent/%.5/%.4/%.6/%.2/%/refinedByAllWeak/%/parts">
+ <details key="start" value="9261"/>
+ <details key="end" value="9266"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.727" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps">
+ <details key="start" value="9040"/>
+ <details key="end" value="9193"/>
+ <details key="line" value="201"/>
+ </eAnnotations>
+ <eAnnotations source="positions.728" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select">
+ <details key="start" value="9077"/>
+ <details key="end" value="9194"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.729" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/%">
+ <details key="start" value="9077"/>
+ <details key="end" value="9097"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.730" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/%/block">
+ <details key="start" value="9077"/>
+ <details key="end" value="9082"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.731" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/%.1">
+ <details key="start" value="9121"/>
+ <details key="end" value="9193"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.732" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/%.1/%">
+ <details key="start" value="9121"/>
+ <details key="end" value="9171"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.733" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/%.1/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.734" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/%.1/%/%/%/%">
+ <details key="start" value="9121"/>
+ <details key="end" value="9159"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.735" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/%.1/%/%/%/%/p">
+ <details key="start" value="9121"/>
+ <details key="end" value="9122"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.736" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/%.1/%/%/%/%/ContractPropQN">
+ <details key="start" value="9144"/>
+ <details key="end" value="9158"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.737" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/%.1/%.1">
+ <details key="start" value="9176"/>
+ <details key="end" value="9193"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.738" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/%.1/%.1/p">
+ <details key="start" value="9191"/>
+ <details key="end" value="9192"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.739" references="/0/generateComponent/%.5/%.4/%.6/%.2/contrProps/select/p">
+ <details key="start" value="9106"/>
+ <details key="end" value="9118"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.740" references="/0/generateComponent/%.5/%.4/%.6/checkWeak">
+ <details key="start" value="8431"/>
+ <details key="end" value="8440"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.741" references="/0/generateComponent/%.5/%.4/%.6/%.3">
+ <details key="start" value="9434"/>
+ <details key="end" value="9917"/>
+ <details key="line" value="209"/>
+ </eAnnotations>
+ <eAnnotations source="positions.742" references="/0/generateComponent/%.5/%.4/%.6/%.3/%">
+ <details key="start" value="9543"/>
+ <details key="end" value="9914"/>
+ <details key="line" value="211"/>
+ </eAnnotations>
+ <eAnnotations source="positions.743" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%">
+ <details key="start" value="9683"/>
+ <details key="end" value="9905"/>
+ <details key="line" value="212"/>
+ </eAnnotations>
+ <eAnnotations source="positions.744" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%">
+ <details key="start" value="9727"/>
+ <details key="end" value="9896"/>
+ <details key="line" value="213"/>
+ </eAnnotations>
+ <eAnnotations source="positions.745" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%">
+ <details key="start" value="9757"/>
+ <details key="end" value="9888"/>
+ <details key="line" value="214"/>
+ </eAnnotations>
+ <eAnnotations source="positions.746" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/%">
+ <details key="start" value="9815"/>
+ <details key="end" value="9825"/>
+ <details key="line" value="215"/>
+ </eAnnotations>
+ <eAnnotations source="positions.747" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/%.1">
+ <details key="start" value="9826"/>
+ <details key="end" value="9840"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.748" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/%.1/contrProp">
+ <details key="start" value="9826"/>
+ <details key="end" value="9835"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.749" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/%.2">
+ <details key="start" value="9842"/>
+ <details key="end" value="9853"/>
+ <details key="line" value="215"/>
+ </eAnnotations>
+ <eAnnotations source="positions.750" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/%.3">
+ <details key="start" value="9854"/>
+ <details key="end" value="9877"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.751" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/%.3/contrProp">
+ <details key="start" value="9867"/>
+ <details key="end" value="9876"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.752" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/%.4">
+ <details key="start" value="9879"/>
+ <details key="end" value="9881"/>
+ <details key="line" value="216"/>
+ </eAnnotations>
+ <eAnnotations source="positions.753" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/contract">
+ <details key="start" value="9762"/>
+ <details key="end" value="9812"/>
+ <details key="line" value="214"/>
+ </eAnnotations>
+ <eAnnotations source="positions.754" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/contract/%">
+ <details key="start" value="9782"/>
+ <details key="end" value="9813"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.755" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/contract/%/%">
+ <details key="start" value="9782"/>
+ <details key="end" value="9796"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.756" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/contract/%/%/contrProp">
+ <details key="start" value="9782"/>
+ <details key="end" value="9791"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.757" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%/contract/%/%.1">
+ <details key="start" value="9807"/>
+ <details key="end" value="9812"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.758" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%.1">
+ <details key="start" value="9731"/>
+ <details key="end" value="9753"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.759" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/%/%.1/contrProp">
+ <details key="start" value="9742"/>
+ <details key="end" value="9751"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.760" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/contrProp">
+ <details key="start" value="9689"/>
+ <details key="end" value="9709"/>
+ <details key="line" value="212"/>
+ </eAnnotations>
+ <eAnnotations source="positions.761" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/%/contrProps">
+ <details key="start" value="9712"/>
+ <details key="end" value="9722"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.762" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps">
+ <details key="start" value="9548"/>
+ <details key="end" value="9679"/>
+ <details key="line" value="211"/>
+ </eAnnotations>
+ <eAnnotations source="positions.763" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps/select">
+ <details key="start" value="9585"/>
+ <details key="end" value="9680"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.764" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps/select/%">
+ <details key="start" value="9585"/>
+ <details key="end" value="9605"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.765" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps/select/%/block">
+ <details key="start" value="9585"/>
+ <details key="end" value="9590"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.766" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps/select/%.1">
+ <details key="start" value="9629"/>
+ <details key="end" value="9679"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.767" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps/select/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.768" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps/select/%.1/%/%/%">
+ <details key="start" value="9629"/>
+ <details key="end" value="9667"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.769" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps/select/%.1/%/%/%/p">
+ <details key="start" value="9629"/>
+ <details key="end" value="9630"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.770" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps/select/%.1/%/%/%/ContractPropQN">
+ <details key="start" value="9652"/>
+ <details key="end" value="9666"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.771" references="/0/generateComponent/%.5/%.4/%.6/%.3/%/contrProps/select/p">
+ <details key="start" value="9614"/>
+ <details key="end" value="9626"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.772" references="/0/generateComponent/%.5/%.4/%.7">
+ <details key="start" value="9924"/>
+ <details key="end" value="9926"/>
+ <details key="line" value="221"/>
+ </eAnnotations>
+ <eAnnotations source="positions.773" references="/0/generateComponent/%.5/%.4/%.8">
+ <details key="start" value="9927"/>
+ <details key="end" value="10573"/>
+ <details key="line" value="222"/>
+ </eAnnotations>
+ <eAnnotations source="positions.774" references="/0/generateComponent/%.5/%.4/%.8/%">
+ <details key="start" value="9946"/>
+ <details key="end" value="10565"/>
+ <details key="line" value="223"/>
+ </eAnnotations>
+ <eAnnotations source="positions.775" references="/0/generateComponent/%.5/%.4/%.8/%/%">
+ <details key="start" value="9981"/>
+ <details key="end" value="10556"/>
+ <details key="line" value="224"/>
+ </eAnnotations>
+ <eAnnotations source="positions.776" references="/0/generateComponent/%.5/%.4/%.8/%/%/%">
+ <details key="start" value="10003"/>
+ <details key="end" value="10547"/>
+ <details key="line" value="225"/>
+ </eAnnotations>
+ <eAnnotations source="positions.777" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%">
+ <details key="start" value="10073"/>
+ <details key="end" value="10537"/>
+ <details key="line" value="226"/>
+ </eAnnotations>
+ <eAnnotations source="positions.778" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%">
+ <details key="start" value="10217"/>
+ <details key="end" value="10528"/>
+ <details key="line" value="227"/>
+ </eAnnotations>
+ <eAnnotations source="positions.779" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%">
+ <details key="start" value="10261"/>
+ <details key="end" value="10519"/>
+ <details key="line" value="228"/>
+ </eAnnotations>
+ <eAnnotations source="positions.780" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%">
+ <details key="start" value="10321"/>
+ <details key="end" value="10510"/>
+ <details key="line" value="229"/>
+ </eAnnotations>
+ <eAnnotations source="positions.781" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%">
+ <details key="start" value="10390"/>
+ <details key="end" value="10408"/>
+ <details key="line" value="230"/>
+ </eAnnotations>
+ <eAnnotations source="positions.782" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.1">
+ <details key="start" value="10409"/>
+ <details key="end" value="10423"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.783" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.1/nextblock">
+ <details key="start" value="10409"/>
+ <details key="end" value="10418"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.784" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.2">
+ <details key="start" value="10425"/>
+ <details key="end" value="10426"/>
+ <details key="line" value="230"/>
+ </eAnnotations>
+ <eAnnotations source="positions.785" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.3">
+ <details key="start" value="10427"/>
+ <details key="end" value="10441"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.786" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.3/contrProp">
+ <details key="start" value="10427"/>
+ <details key="end" value="10436"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.787" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.4">
+ <details key="start" value="10443"/>
+ <details key="end" value="10459"/>
+ <details key="line" value="230"/>
+ </eAnnotations>
+ <eAnnotations source="positions.788" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.5">
+ <details key="start" value="10460"/>
+ <details key="end" value="10469"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.789" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.5/part">
+ <details key="start" value="10460"/>
+ <details key="end" value="10464"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.790" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.6">
+ <details key="start" value="10471"/>
+ <details key="end" value="10472"/>
+ <details key="line" value="230"/>
+ </eAnnotations>
+ <eAnnotations source="positions.791" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.7">
+ <details key="start" value="10473"/>
+ <details key="end" value="10487"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.792" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.7/contrProp">
+ <details key="start" value="10473"/>
+ <details key="end" value="10482"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.793" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.8">
+ <details key="start" value="10489"/>
+ <details key="end" value="10503"/>
+ <details key="line" value="230"/>
+ </eAnnotations>
+ <eAnnotations source="positions.794" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.9">
+ <details key="start" value="10325"/>
+ <details key="end" value="10387"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.795" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.9/%">
+ <details key="start" value="10326"/>
+ <details key="end" value="10351"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.796" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.9/%/contrProp">
+ <details key="start" value="10341"/>
+ <details key="end" value="10350"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.797" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.9/%.1">
+ <details key="start" value="10356"/>
+ <details key="end" value="10386"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.798" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.9/%.1/%">
+ <details key="start" value="10360"/>
+ <details key="end" value="10386"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.799" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/%/%.9/%.1/%/contract">
+ <details key="start" value="10377"/>
+ <details key="end" value="10385"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.800" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/contract">
+ <details key="start" value="10266"/>
+ <details key="end" value="10316"/>
+ <details key="line" value="228"/>
+ </eAnnotations>
+ <eAnnotations source="positions.801" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/contract/%">
+ <details key="start" value="10286"/>
+ <details key="end" value="10317"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.802" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/contract/%/%">
+ <details key="start" value="10286"/>
+ <details key="end" value="10300"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.803" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/contract/%/%/contrProp">
+ <details key="start" value="10286"/>
+ <details key="end" value="10295"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.804" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/%/contract/%/%.1">
+ <details key="start" value="10311"/>
+ <details key="end" value="10316"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.805" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/contrProp">
+ <details key="start" value="10223"/>
+ <details key="end" value="10243"/>
+ <details key="line" value="227"/>
+ </eAnnotations>
+ <eAnnotations source="positions.806" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/%/contrProps">
+ <details key="start" value="10246"/>
+ <details key="end" value="10256"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.807" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps">
+ <details key="start" value="10078"/>
+ <details key="end" value="10213"/>
+ <details key="line" value="226"/>
+ </eAnnotations>
+ <eAnnotations source="positions.808" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps/select">
+ <details key="start" value="10115"/>
+ <details key="end" value="10214"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.809" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps/select/%">
+ <details key="start" value="10115"/>
+ <details key="end" value="10139"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.810" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps/select/%/nextblock">
+ <details key="start" value="10115"/>
+ <details key="end" value="10124"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.811" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps/select/%.1">
+ <details key="start" value="10163"/>
+ <details key="end" value="10213"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.812" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps/select/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.813" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps/select/%.1/%/%/%">
+ <details key="start" value="10163"/>
+ <details key="end" value="10201"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.814" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps/select/%.1/%/%/%/p">
+ <details key="start" value="10163"/>
+ <details key="end" value="10164"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.815" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps/select/%.1/%/%/%/ContractPropQN">
+ <details key="start" value="10186"/>
+ <details key="end" value="10200"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.816" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/%/contrProps/select/p">
+ <details key="start" value="10148"/>
+ <details key="end" value="10160"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.817" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/nextblock">
+ <details key="start" value="10008"/>
+ <details key="end" value="10069"/>
+ <details key="line" value="225"/>
+ </eAnnotations>
+ <eAnnotations source="positions.818" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/nextblock/any">
+ <details key="start" value="10029"/>
+ <details key="end" value="10070"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.819" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/nextblock/any/allBlocks">
+ <details key="start" value="10029"/>
+ <details key="end" value="10038"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.820" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/nextblock/any/%">
+ <details key="start" value="10056"/>
+ <details key="end" value="10069"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.821" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/nextblock/any/%/%">
+ <details key="start" value="10056"/>
+ <details key="end" value="10065"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.822" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/nextblock/any/%/%/part">
+ <details key="start" value="10056"/>
+ <details key="end" value="10060"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.823" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/nextblock/any/%/c">
+ <details key="start" value="10068"/>
+ <details key="end" value="10069"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.824" references="/0/generateComponent/%.5/%.4/%.8/%/%/%/nextblock/any/c">
+ <details key="start" value="10044"/>
+ <details key="end" value="10053"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.825" references="/0/generateComponent/%.5/%.4/%.8/%/%/%.1">
+ <details key="start" value="9985"/>
+ <details key="end" value="9999"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.826" references="/0/generateComponent/%.5/%.4/%.8/%/%/%.1/part">
+ <details key="start" value="9993"/>
+ <details key="end" value="9997"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.827" references="/0/generateComponent/%.5/%.4/%.8/%/part">
+ <details key="start" value="9952"/>
+ <details key="end" value="9967"/>
+ <details key="line" value="223"/>
+ </eAnnotations>
+ <eAnnotations source="positions.828" references="/0/generateComponent/%.5/%.4/%.8/%/parts">
+ <details key="start" value="9970"/>
+ <details key="end" value="9975"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.829" references="/0/generateComponent/%.5/%.4/%.8/checkWeak">
+ <details key="start" value="9931"/>
+ <details key="end" value="9942"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.830" references="/0/generateComponent/%.5/%.4/%.9">
+ <details key="start" value="10575"/>
+ <details key="end" value="10577"/>
+ <details key="line" value="239"/>
+ </eAnnotations>
+ <eAnnotations source="positions.831" references="/0/generateComponent/%.5/%.4/%.10">
+ <details key="start" value="10578"/>
+ <details key="end" value="10854"/>
+ <details key="line" value="240"/>
+ </eAnnotations>
+ <eAnnotations source="positions.832" references="/0/generateComponent/%.5/%.4/%.10/%">
+ <details key="start" value="10612"/>
+ <details key="end" value="10845"/>
+ <details key="line" value="241"/>
+ </eAnnotations>
+ <eAnnotations source="positions.833" references="/0/generateComponent/%.5/%.4/%.10/%/%">
+ <details key="start" value="10689"/>
+ <details key="end" value="10837"/>
+ <details key="line" value="242"/>
+ </eAnnotations>
+ <eAnnotations source="positions.834" references="/0/generateComponent/%.5/%.4/%.10/%/%/%">
+ <details key="start" value="10757"/>
+ <details key="end" value="10758"/>
+ <details key="line" value="243"/>
+ </eAnnotations>
+ <eAnnotations source="positions.835" references="/0/generateComponent/%.5/%.4/%.10/%/%/%.1">
+ <details key="start" value="10759"/>
+ <details key="end" value="10825"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.836" references="/0/generateComponent/%.5/%.4/%.10/%/%/%.1/newblock">
+ <details key="start" value="10777"/>
+ <details key="end" value="10785"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.837" references="/0/generateComponent/%.5/%.4/%.10/%/%/%.1/%">
+ <details key="start" value="10787"/>
+ <details key="end" value="10792"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.838" references="/0/generateComponent/%.5/%.4/%.10/%/%/%.1/allBlocks">
+ <details key="start" value="10794"/>
+ <details key="end" value="10803"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.839" references="/0/generateComponent/%.5/%.4/%.10/%/%/%.1/generated">
+ <details key="start" value="10805"/>
+ <details key="end" value="10814"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.840" references="/0/generateComponent/%.5/%.4/%.10/%/%/%.1/checkWeak">
+ <details key="start" value="10815"/>
+ <details key="end" value="10824"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.841" references="/0/generateComponent/%.5/%.4/%.10/%/%/%.2">
+ <details key="start" value="10827"/>
+ <details key="end" value="10829"/>
+ <details key="line" value="244"/>
+ </eAnnotations>
+ <eAnnotations source="positions.842" references="/0/generateComponent/%.5/%.4/%.10/%/%/newblock">
+ <details key="start" value="10694"/>
+ <details key="end" value="10754"/>
+ <details key="line" value="242"/>
+ </eAnnotations>
+ <eAnnotations source="positions.843" references="/0/generateComponent/%.5/%.4/%.10/%/%/newblock/any">
+ <details key="start" value="10714"/>
+ <details key="end" value="10755"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.844" references="/0/generateComponent/%.5/%.4/%.10/%/%/newblock/any/allBlocks">
+ <details key="start" value="10714"/>
+ <details key="end" value="10723"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.845" references="/0/generateComponent/%.5/%.4/%.10/%/%/newblock/any/%">
+ <details key="start" value="10741"/>
+ <details key="end" value="10754"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.846" references="/0/generateComponent/%.5/%.4/%.10/%/%/newblock/any/%/%">
+ <details key="start" value="10741"/>
+ <details key="end" value="10750"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.847" references="/0/generateComponent/%.5/%.4/%.10/%/%/newblock/any/%/%/part">
+ <details key="start" value="10741"/>
+ <details key="end" value="10745"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.848" references="/0/generateComponent/%.5/%.4/%.10/%/%/newblock/any/%/c">
+ <details key="start" value="10753"/>
+ <details key="end" value="10754"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.849" references="/0/generateComponent/%.5/%.4/%.10/%/%/newblock/any/c">
+ <details key="start" value="10729"/>
+ <details key="end" value="10738"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.850" references="/0/generateComponent/%.5/%.4/%.10/%/%.1">
+ <details key="start" value="10616"/>
+ <details key="end" value="10684"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.851" references="/0/generateComponent/%.5/%.4/%.10/%/%.1/%">
+ <details key="start" value="10617"/>
+ <details key="end" value="10629"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.852" references="/0/generateComponent/%.5/%.4/%.10/%/%.1/%/part">
+ <details key="start" value="10624"/>
+ <details key="end" value="10628"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.853" references="/0/generateComponent/%.5/%.4/%.10/%/%.1/%.1">
+ <details key="start" value="10634"/>
+ <details key="end" value="10683"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.854" references="/0/generateComponent/%.5/%.4/%.10/%/%.1/%.1/%">
+ <details key="start" value="10638"/>
+ <details key="end" value="10683"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.855" references="/0/generateComponent/%.5/%.4/%.10/%/%.1/%.1/%/%">
+ <details key="start" value="10657"/>
+ <details key="end" value="10671"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.856" references="/0/generateComponent/%.5/%.4/%.10/%/%.1/%.1/%/%/%">
+ <details key="start" value="10657"/>
+ <details key="end" value="10666"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.857" references="/0/generateComponent/%.5/%.4/%.10/%/%.1/%.1/%/%/%/part">
+ <details key="start" value="10657"/>
+ <details key="end" value="10661"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.858" references="/0/generateComponent/%.5/%.4/%.10/%/%.1/%.1/%/generated">
+ <details key="start" value="10673"/>
+ <details key="end" value="10682"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.859" references="/0/generateComponent/%.5/%.4/%.10/part">
+ <details key="start" value="10584"/>
+ <details key="end" value="10599"/>
+ <details key="line" value="240"/>
+ </eAnnotations>
+ <eAnnotations source="positions.860" references="/0/generateComponent/%.5/%.4/%.10/parts">
+ <details key="start" value="10602"/>
+ <details key="end" value="10607"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.861" references="/0/generateComponent/%.5/%.4/parts">
+ <details key="start" value="6212"/>
+ <details key="end" value="6281"/>
+ <details key="line" value="140"/>
+ </eAnnotations>
+ <eAnnotations source="positions.862" references="/0/generateComponent/%.5/%.4/parts/%">
+ <details key="start" value="6244"/>
+ <details key="end" value="6282"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.863" references="/0/generateComponent/%.5/%.4/parts/%/%">
+ <details key="start" value="6244"/>
+ <details key="end" value="6264"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.864" references="/0/generateComponent/%.5/%.4/parts/%/%/block">
+ <details key="start" value="6244"/>
+ <details key="end" value="6249"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.865" references="/0/generateComponent/%.5/%.4/parts/%/%.1">
+ <details key="start" value="6273"/>
+ <details key="end" value="6281"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.866" references="/0/generateComponent/%.5/props">
+ <details key="start" value="3720"/>
+ <details key="end" value="3789"/>
+ <details key="line" value="83"/>
+ </eAnnotations>
+ <eAnnotations source="positions.867" references="/0/generateComponent/%.5/props/%">
+ <details key="start" value="3752"/>
+ <details key="end" value="3790"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.868" references="/0/generateComponent/%.5/props/%/%">
+ <details key="start" value="3752"/>
+ <details key="end" value="3772"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.869" references="/0/generateComponent/%.5/props/%/%/block">
+ <details key="start" value="3752"/>
+ <details key="end" value="3757"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.870" references="/0/generateComponent/%.5/props/%/%.1">
+ <details key="start" value="3781"/>
+ <details key="end" value="3789"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.871" references="/0/generateComponent/%.6">
+ <details key="start" value="10874"/>
+ <details key="end" value="10876"/>
+ <details key="line" value="249"/>
+ </eAnnotations>
+ <eAnnotations source="positions.872" references="/0/generateComponent/block">
+ <details key="start" value="3084"/>
+ <details key="end" value="3097"/>
+ <details key="line" value="65"/>
+ </eAnnotations>
+ <eAnnotations source="positions.873" references="/0/generateComponent/isSystem">
+ <details key="start" value="3099"/>
+ <details key="end" value="3117"/>
+ <details key="line" value="65"/>
+ </eAnnotations>
+ <eAnnotations source="positions.874" references="/0/generateComponent/allBlocks">
+ <details key="start" value="3119"/>
+ <details key="end" value="3141"/>
+ <details key="line" value="65"/>
+ </eAnnotations>
+ <eAnnotations source="positions.875" references="/0/generateComponent/generated">
+ <details key="start" value="3143"/>
+ <details key="end" value="3166"/>
+ <details key="line" value="65"/>
+ </eAnnotations>
+ <eAnnotations source="positions.876" references="/0/generateComponent/checkWeak">
+ <details key="start" value="3168"/>
+ <details key="end" value="3187"/>
+ <details key="line" value="65"/>
+ </eAnnotations>
+ <eAnnotations source="positions.877" references="/0/getInterface">
+ <details key="start" value="10891"/>
+ <details key="end" value="11079"/>
+ <details key="line" value="252"/>
+ </eAnnotations>
+ <eAnnotations source="positions.878" references="/0/getInterface/port">
+ <details key="start" value="10918"/>
+ <details key="end" value="10929"/>
+ <details key="line" value="252"/>
+ </eAnnotations>
+ <eAnnotations source="positions.879" references="/0/getInterface/%">
+ <details key="start" value="10947"/>
+ <details key="end" value="11076"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.880" references="/0/getInterface/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.881" references="/0/getInterface/%/%">
+ <details key="start" value="10954"/>
+ <details key="end" value="11016"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.882" references="/0/getInterface/%/%.1">
+ <details key="start" value="11018"/>
+ <details key="end" value="11059"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.883" references="/0/getInterface/%/%.2">
+ <details key="start" value="11061"/>
+ <details key="end" value="11075"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.884" references="/0/getInterface/%/%.2/%/port">
+ <details key="start" value="11070"/>
+ <details key="end" value="11074"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.885" references="/0/getReturn">
+ <details key="start" value="11083"/>
+ <details key="end" value="11267"/>
+ <details key="line" value="255"/>
+ </eAnnotations>
+ <eAnnotations source="positions.886" references="/0/getReturn/op">
+ <details key="start" value="11107"/>
+ <details key="end" value="11121"/>
+ <details key="line" value="255"/>
+ </eAnnotations>
+ <eAnnotations source="positions.887" references="/0/getReturn/%">
+ <details key="start" value="11135"/>
+ <details key="end" value="11264"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.888" references="/0/getReturn/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.889" references="/0/getReturn/%/%">
+ <details key="start" value="11142"/>
+ <details key="end" value="11204"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.890" references="/0/getReturn/%/%.1">
+ <details key="start" value="11206"/>
+ <details key="end" value="11249"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.891" references="/0/getReturn/%/%.2">
+ <details key="start" value="11251"/>
+ <details key="end" value="11263"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.892" references="/0/getReturn/%/%.2/%/op">
+ <details key="start" value="11260"/>
+ <details key="end" value="11262"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.893" references="/0/getParamList">
+ <details key="start" value="11271"/>
+ <details key="end" value="11462"/>
+ <details key="line" value="258"/>
+ </eAnnotations>
+ <eAnnotations source="positions.894" references="/0/getParamList/op">
+ <details key="start" value="11298"/>
+ <details key="end" value="11312"/>
+ <details key="line" value="258"/>
+ </eAnnotations>
+ <eAnnotations source="positions.895" references="/0/getParamList/%">
+ <details key="start" value="11327"/>
+ <details key="end" value="11459"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.896" references="/0/getParamList/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.897" references="/0/getParamList/%/%">
+ <details key="start" value="11334"/>
+ <details key="end" value="11396"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.898" references="/0/getParamList/%/%.1">
+ <details key="start" value="11398"/>
+ <details key="end" value="11444"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.899" references="/0/getParamList/%/%.2">
+ <details key="start" value="11446"/>
+ <details key="end" value="11458"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.900" references="/0/getParamList/%/%.2/%/op">
+ <details key="start" value="11455"/>
+ <details key="end" value="11457"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.901" references="/0/getOperationName">
+ <details key="start" value="11466"/>
+ <details key="end" value="11711"/>
+ <details key="line" value="261"/>
+ </eAnnotations>
+ <eAnnotations source="positions.902" references="/0/getOperationName/op">
+ <details key="start" value="11497"/>
+ <details key="end" value="11511"/>
+ <details key="line" value="261"/>
+ </eAnnotations>
+ <eAnnotations source="positions.903" references="/0/getOperationName/port">
+ <details key="start" value="11513"/>
+ <details key="end" value="11524"/>
+ <details key="line" value="261"/>
+ </eAnnotations>
+ <eAnnotations source="positions.904" references="/0/getOperationName/%">
+ <details key="start" value="11539"/>
+ <details key="end" value="11708"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.905" references="/0/getOperationName/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.906" references="/0/getOperationName/%/%">
+ <details key="start" value="11546"/>
+ <details key="end" value="11608"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.907" references="/0/getOperationName/%/%.1">
+ <details key="start" value="11610"/>
+ <details key="end" value="11687"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.908" references="/0/getOperationName/%/%.2">
+ <details key="start" value="11689"/>
+ <details key="end" value="11707"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.909" references="/0/getOperationName/%/%.2/%/op">
+ <details key="start" value="11698"/>
+ <details key="end" value="11700"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.910" references="/0/getOperationName/%/%.2/%.1/port">
+ <details key="start" value="11702"/>
+ <details key="end" value="11706"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.911" references="/0/getSystem">
+ <details key="start" value="11715"/>
+ <details key="end" value="11934"/>
+ <details key="line" value="264"/>
+ </eAnnotations>
+ <eAnnotations source="positions.912" references="/0/getSystem/classes">
+ <details key="start" value="11739"/>
+ <details key="end" value="11759"/>
+ <details key="line" value="264"/>
+ </eAnnotations>
+ <eAnnotations source="positions.913" references="/0/getSystem/qname">
+ <details key="start" value="11761"/>
+ <details key="end" value="11775"/>
+ <details key="line" value="264"/>
+ </eAnnotations>
+ <eAnnotations source="positions.914" references="/0/getSystem/%">
+ <details key="start" value="11789"/>
+ <details key="end" value="11931"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.915" references="/0/getSystem/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.916" references="/0/getSystem/%/%">
+ <details key="start" value="11796"/>
+ <details key="end" value="11858"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.917" references="/0/getSystem/%/%.1">
+ <details key="start" value="11860"/>
+ <details key="end" value="11904"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.918" references="/0/getSystem/%/%.2">
+ <details key="start" value="11906"/>
+ <details key="end" value="11930"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.919" references="/0/getSystem/%/%.2/%/classes">
+ <details key="start" value="11915"/>
+ <details key="end" value="11922"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.920" references="/0/getSystem/%/%.2/%.1/qname">
+ <details key="start" value="11924"/>
+ <details key="end" value="11929"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.921" references="/0/getAllBlocks">
+ <details key="start" value="11938"/>
+ <details key="end" value="12237"/>
+ <details key="line" value="267"/>
+ </eAnnotations>
+ <eAnnotations source="positions.922" references="/0/getAllBlocks/classes">
+ <details key="start" value="11965"/>
+ <details key="end" value="11985"/>
+ <details key="line" value="267"/>
+ </eAnnotations>
+ <eAnnotations source="positions.923" references="/0/getAllBlocks/blockQN">
+ <details key="start" value="11987"/>
+ <details key="end" value="12003"/>
+ <details key="line" value="267"/>
+ </eAnnotations>
+ <eAnnotations source="positions.924" references="/0/getAllBlocks/SubSystemQN">
+ <details key="start" value="12005"/>
+ <details key="end" value="12025"/>
+ <details key="line" value="267"/>
+ </eAnnotations>
+ <eAnnotations source="positions.925" references="/0/getAllBlocks/SystemQN">
+ <details key="start" value="12027"/>
+ <details key="end" value="12044"/>
+ <details key="line" value="267"/>
+ </eAnnotations>
+ <eAnnotations source="positions.926" references="/0/getAllBlocks/select">
+ <details key="start" value="12063"/>
+ <details key="end" value="12234"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.927" references="/0/getAllBlocks/select/classes">
+ <details key="start" value="12063"/>
+ <details key="end" value="12070"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.928" references="/0/getAllBlocks/select/%">
+ <details key="start" value="12091"/>
+ <details key="end" value="12233"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.929" references="/0/getAllBlocks/select/%/%">
+ <details key="start" value="12091"/>
+ <details key="end" value="12185"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.930" references="/0/getAllBlocks/select/%/%/%">
+ <details key="start" value="12091"/>
+ <details key="end" value="12134"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.931" references="/0/getAllBlocks/select/%/%/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.932" references="/0/getAllBlocks/select/%/%/%/%/%/%">
+ <details key="start" value="12091"/>
+ <details key="end" value="12122"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.933" references="/0/getAllBlocks/select/%/%/%/%/%/%/c">
+ <details key="start" value="12091"/>
+ <details key="end" value="12092"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.934" references="/0/getAllBlocks/select/%/%/%/%/%/%/blockQN">
+ <details key="start" value="12114"/>
+ <details key="end" value="12121"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.935" references="/0/getAllBlocks/select/%/%/%.1">
+ <details key="start" value="12138"/>
+ <details key="end" value="12185"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.936" references="/0/getAllBlocks/select/%/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.937" references="/0/getAllBlocks/select/%/%/%.1/%/%/%">
+ <details key="start" value="12138"/>
+ <details key="end" value="12173"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.938" references="/0/getAllBlocks/select/%/%/%.1/%/%/%/c">
+ <details key="start" value="12138"/>
+ <details key="end" value="12139"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.939" references="/0/getAllBlocks/select/%/%/%.1/%/%/%/SubSystemQN">
+ <details key="start" value="12161"/>
+ <details key="end" value="12172"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.940" references="/0/getAllBlocks/select/%/%.1">
+ <details key="start" value="12189"/>
+ <details key="end" value="12233"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.941" references="/0/getAllBlocks/select/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.942" references="/0/getAllBlocks/select/%/%.1/%/%/%">
+ <details key="start" value="12189"/>
+ <details key="end" value="12221"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.943" references="/0/getAllBlocks/select/%/%.1/%/%/%/c">
+ <details key="start" value="12189"/>
+ <details key="end" value="12190"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.944" references="/0/getAllBlocks/select/%/%.1/%/%/%/SystemQN">
+ <details key="start" value="12212"/>
+ <details key="end" value="12220"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.945" references="/0/getAllBlocks/select/c">
+ <details key="start" value="12079"/>
+ <details key="end" value="12088"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.946" references="/0/getAllComponents">
+ <details key="start" value="12241"/>
+ <details key="end" value="12531"/>
+ <details key="line" value="270"/>
+ </eAnnotations>
+ <eAnnotations source="positions.947" references="/0/getAllComponents/hwcomps">
+ <details key="start" value="12272"/>
+ <details key="end" value="12296"/>
+ <details key="line" value="270"/>
+ </eAnnotations>
+ <eAnnotations source="positions.948" references="/0/getAllComponents/comps">
+ <details key="start" value="12298"/>
+ <details key="end" value="12320"/>
+ <details key="line" value="270"/>
+ </eAnnotations>
+ <eAnnotations source="positions.949" references="/0/getAllComponents/CompImplQN">
+ <details key="start" value="12322"/>
+ <details key="end" value="12341"/>
+ <details key="line" value="270"/>
+ </eAnnotations>
+ <eAnnotations source="positions.950" references="/0/getAllComponents/PlatformQN">
+ <details key="start" value="12343"/>
+ <details key="end" value="12362"/>
+ <details key="line" value="270"/>
+ </eAnnotations>
+ <eAnnotations source="positions.951" references="/0/getAllComponents/%">
+ <details key="start" value="12385"/>
+ <details key="end" value="12528"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.952" references="/0/getAllComponents/%/select">
+ <details key="start" value="12385"/>
+ <details key="end" value="12512"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.953" references="/0/getAllComponents/%/select/comps">
+ <details key="start" value="12385"/>
+ <details key="end" value="12390"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.954" references="/0/getAllComponents/%/select/%">
+ <details key="start" value="12415"/>
+ <details key="end" value="12511"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.955" references="/0/getAllComponents/%/select/%/%">
+ <details key="start" value="12415"/>
+ <details key="end" value="12461"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.956" references="/0/getAllComponents/%/select/%/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.957" references="/0/getAllComponents/%/select/%/%/%/%/%">
+ <details key="start" value="12415"/>
+ <details key="end" value="12449"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.958" references="/0/getAllComponents/%/select/%/%/%/%/%/c">
+ <details key="start" value="12415"/>
+ <details key="end" value="12416"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.959" references="/0/getAllComponents/%/select/%/%/%/%/%/CompImplQN">
+ <details key="start" value="12438"/>
+ <details key="end" value="12448"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.960" references="/0/getAllComponents/%/select/%/%.1">
+ <details key="start" value="12465"/>
+ <details key="end" value="12511"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.961" references="/0/getAllComponents/%/select/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.962" references="/0/getAllComponents/%/select/%/%.1/%/%/%">
+ <details key="start" value="12465"/>
+ <details key="end" value="12499"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.963" references="/0/getAllComponents/%/select/%/%.1/%/%/%/c">
+ <details key="start" value="12465"/>
+ <details key="end" value="12466"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.964" references="/0/getAllComponents/%/select/%/%.1/%/%/%/PlatformQN">
+ <details key="start" value="12488"/>
+ <details key="end" value="12498"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.965" references="/0/getAllComponents/%/select/c">
+ <details key="start" value="12399"/>
+ <details key="end" value="12412"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.966" references="/0/getAllComponents/%/hwcomps">
+ <details key="start" value="12520"/>
+ <details key="end" value="12527"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.967" references="/0/getDirection">
+ <details key="start" value="12535"/>
+ <details key="end" value="12674"/>
+ <details key="line" value="273"/>
+ </eAnnotations>
+ <eAnnotations source="positions.968" references="/0/getDirection/dir">
+ <details key="start" value="12562"/>
+ <details key="end" value="12574"/>
+ <details key="line" value="273"/>
+ </eAnnotations>
+ <eAnnotations source="positions.969" references="/0/getDirection/%">
+ <details key="start" value="12589"/>
+ <details key="end" value="12671"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.970" references="/0/getDirection/%/%">
+ <details key="start" value="12592"/>
+ <details key="end" value="12601"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.971" references="/0/getDirection/%/%/self">
+ <details key="start" value="12592"/>
+ <details key="end" value="12596"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.972" references="/0/getDirection/%/%/%">
+ <details key="start" value="12597"/>
+ <details key="end" value="12601"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.973" references="/0/getDirection/%/%.1">
+ <details key="start" value="12607"/>
+ <details key="end" value="12615"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.974" references="/0/getDirection/%/%.2">
+ <details key="start" value="12621"/>
+ <details key="end" value="12665"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.975" references="/0/getDirection/%/%.2/%">
+ <details key="start" value="12624"/>
+ <details key="end" value="12636"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.976" references="/0/getDirection/%/%.2/%/self">
+ <details key="start" value="12624"/>
+ <details key="end" value="12628"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.977" references="/0/getDirection/%/%.2/%/%">
+ <details key="start" value="12631"/>
+ <details key="end" value="12636"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.978" references="/0/getDirection/%/%.2/%.1">
+ <details key="start" value="12642"/>
+ <details key="end" value="12651"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.979" references="/0/getDirection/%/%.2/%.2">
+ <details key="start" value="12657"/>
+ <details key="end" value="12659"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.980" references="/0/isPart">
+ <details key="start" value="12678"/>
+ <details key="end" value="13035"/>
+ <details key="line" value="276"/>
+ </eAnnotations>
+ <eAnnotations source="positions.981" references="/0/isPart/prop">
+ <details key="start" value="12699"/>
+ <details key="end" value="12714"/>
+ <details key="line" value="276"/>
+ </eAnnotations>
+ <eAnnotations source="positions.982" references="/0/isPart/%">
+ <details key="start" value="12730"/>
+ <details key="end" value="13032"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.983" references="/0/isPart/%/%">
+ <details key="start" value="12733"/>
+ <details key="end" value="13005"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.984" references="/0/isPart/%/%/%">
+ <details key="start" value="12733"/>
+ <details key="end" value="12931"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.985" references="/0/isPart/%/%/%/%">
+ <details key="start" value="12733"/>
+ <details key="end" value="12861"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.986" references="/0/isPart/%/%/%/%/%">
+ <details key="start" value="12733"/>
+ <details key="end" value="12765"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.987" references="/0/isPart/%/%/%/%/%/%">
+ <details key="start" value="12733"/>
+ <details key="end" value="12742"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.988" references="/0/isPart/%/%/%/%/%/%/self">
+ <details key="start" value="12733"/>
+ <details key="end" value="12737"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.989" references="/0/isPart/%/%/%/%/%/%.1">
+ <details key="start" value="12755"/>
+ <details key="end" value="12764"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.990" references="/0/isPart/%/%/%/%/%.1">
+ <details key="start" value="12769"/>
+ <details key="end" value="12861"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.991" references="/0/isPart/%/%/%/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.992" references="/0/isPart/%/%/%/%/%.1/%/%/%">
+ <details key="start" value="12769"/>
+ <details key="end" value="12849"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.993" references="/0/isPart/%/%/%/%/%.1/%/%/%/%">
+ <details key="start" value="12769"/>
+ <details key="end" value="12778"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.994" references="/0/isPart/%/%/%/%/%.1/%/%/%/%/self">
+ <details key="start" value="12769"/>
+ <details key="end" value="12773"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.995" references="/0/isPart/%/%/%/%/%.1/%/%/%/%.1">
+ <details key="start" value="12800"/>
+ <details key="end" value="12848"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.996" references="/0/isPart/%/%/%/%.1">
+ <details key="start" value="12865"/>
+ <details key="end" value="12931"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.997" references="/0/isPart/%/%/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.998" references="/0/isPart/%/%/%/%.1/%/%/%">
+ <details key="start" value="12865"/>
+ <details key="end" value="12919"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.999" references="/0/isPart/%/%/%/%.1/%/%/%/%">
+ <details key="start" value="12865"/>
+ <details key="end" value="12874"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1000" references="/0/isPart/%/%/%/%.1/%/%/%/%/self">
+ <details key="start" value="12865"/>
+ <details key="end" value="12869"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1001" references="/0/isPart/%/%/%/%.1/%/%/%/%.1">
+ <details key="start" value="12896"/>
+ <details key="end" value="12918"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1002" references="/0/isPart/%/%/%.1">
+ <details key="start" value="12935"/>
+ <details key="end" value="13005"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1003" references="/0/isPart/%/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1004" references="/0/isPart/%/%/%.1/%/%/%">
+ <details key="start" value="12935"/>
+ <details key="end" value="12993"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1005" references="/0/isPart/%/%/%.1/%/%/%/%">
+ <details key="start" value="12935"/>
+ <details key="end" value="12944"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1006" references="/0/isPart/%/%/%.1/%/%/%/%/self">
+ <details key="start" value="12935"/>
+ <details key="end" value="12939"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1007" references="/0/isPart/%/%/%.1/%/%/%/%.1">
+ <details key="start" value="12966"/>
+ <details key="end" value="12992"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1008" references="/0/isPart/%/%.1">
+ <details key="start" value="13011"/>
+ <details key="end" value="13015"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1009" references="/0/isPart/%/%.2">
+ <details key="start" value="13021"/>
+ <details key="end" value="13026"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1010" references="/0/isDelegation">
+ <details key="start" value="13039"/>
+ <details key="end" value="13234"/>
+ <details key="line" value="279"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1011" references="/0/isDelegation/conn">
+ <details key="start" value="13066"/>
+ <details key="end" value="13082"/>
+ <details key="line" value="279"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1012" references="/0/isDelegation/%">
+ <details key="start" value="13098"/>
+ <details key="end" value="13231"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1013" references="/0/isDelegation/%/%">
+ <details key="start" value="13101"/>
+ <details key="end" value="13203"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1014" references="/0/isDelegation/%/%/%">
+ <details key="start" value="13101"/>
+ <details key="end" value="13150"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1015" references="/0/isDelegation/%/%/%/%">
+ <details key="start" value="13102"/>
+ <details key="end" value="13132"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1016" references="/0/isDelegation/%/%/%/%/%">
+ <details key="start" value="13102"/>
+ <details key="end" value="13119"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1017" references="/0/isDelegation/%/%/%/%/%/%">
+ <details key="start" value="13102"/>
+ <details key="end" value="13110"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1018" references="/0/isDelegation/%/%/%/%/%/%/conn">
+ <details key="start" value="13102"/>
+ <details key="end" value="13106"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1019" references="/0/isDelegation/%/%/%.1">
+ <details key="start" value="13155"/>
+ <details key="end" value="13203"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1020" references="/0/isDelegation/%/%/%.1/%">
+ <details key="start" value="13156"/>
+ <details key="end" value="13185"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1021" references="/0/isDelegation/%/%/%.1/%/%">
+ <details key="start" value="13156"/>
+ <details key="end" value="13172"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1022" references="/0/isDelegation/%/%/%.1/%/%/%">
+ <details key="start" value="13156"/>
+ <details key="end" value="13164"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1023" references="/0/isDelegation/%/%/%.1/%/%/%/conn">
+ <details key="start" value="13156"/>
+ <details key="end" value="13160"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1024" references="/0/isDelegation/%/%.1">
+ <details key="start" value="13210"/>
+ <details key="end" value="13214"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1025" references="/0/isDelegation/%/%.2">
+ <details key="start" value="13220"/>
+ <details key="end" value="13225"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1026" references="/0/firstIsSub">
+ <details key="start" value="13238"/>
+ <details key="end" value="13377"/>
+ <details key="line" value="283"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1027" references="/0/firstIsSub/conn">
+ <details key="start" value="13263"/>
+ <details key="end" value="13279"/>
+ <details key="line" value="283"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1028" references="/0/firstIsSub/%">
+ <details key="start" value="13296"/>
+ <details key="end" value="13375"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1029" references="/0/firstIsSub/%/%">
+ <details key="start" value="13299"/>
+ <details key="end" value="13348"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1030" references="/0/firstIsSub/%/%/%">
+ <details key="start" value="13300"/>
+ <details key="end" value="13330"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1031" references="/0/firstIsSub/%/%/%/%">
+ <details key="start" value="13300"/>
+ <details key="end" value="13317"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1032" references="/0/firstIsSub/%/%/%/%/%">
+ <details key="start" value="13300"/>
+ <details key="end" value="13308"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1033" references="/0/firstIsSub/%/%/%/%/%/conn">
+ <details key="start" value="13300"/>
+ <details key="end" value="13304"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1034" references="/0/firstIsSub/%/%.1">
+ <details key="start" value="13354"/>
+ <details key="end" value="13359"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1035" references="/0/firstIsSub/%/%.2">
+ <details key="start" value="13365"/>
+ <details key="end" value="13369"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1036" references="/0/getNewBlocks">
+ <details key="start" value="13381"/>
+ <details key="end" value="13570"/>
+ <details key="line" value="286"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1037" references="/0/getNewBlocks/parts">
+ <details key="start" value="13408"/>
+ <details key="end" value="13429"/>
+ <details key="line" value="286"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1038" references="/0/getNewBlocks/%">
+ <details key="start" value="13449"/>
+ <details key="end" value="13567"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1039" references="/0/getNewBlocks/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1040" references="/0/getNewBlocks/%/%">
+ <details key="start" value="13456"/>
+ <details key="end" value="13518"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1041" references="/0/getNewBlocks/%/%.1">
+ <details key="start" value="13520"/>
+ <details key="end" value="13549"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1042" references="/0/getNewBlocks/%/%.2">
+ <details key="start" value="13551"/>
+ <details key="end" value="13566"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1043" references="/0/getNewBlocks/%/%.2/%/parts">
+ <details key="start" value="13560"/>
+ <details key="end" value="13565"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1044" references="/0/getEmptyStringSet">
+ <details key="start" value="13574"/>
+ <details key="end" value="13751"/>
+ <details key="line" value="289"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1045" references="/0/getEmptyStringSet/traceCtx">
+ <details key="start" value="13606"/>
+ <details key="end" value="13623"/>
+ <details key="line" value="289"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1046" references="/0/getEmptyStringSet/%">
+ <details key="start" value="13643"/>
+ <details key="end" value="13748"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1047" references="/0/getEmptyStringSet/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1048" references="/0/getEmptyStringSet/%/%">
+ <details key="start" value="13650"/>
+ <details key="end" value="13712"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1049" references="/0/getEmptyStringSet/%/%.1">
+ <details key="start" value="13714"/>
+ <details key="end" value="13735"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1050" references="/0/getEmptyStringSet/%/%.2">
+ <details key="start" value="13737"/>
+ <details key="end" value="13747"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1051" references="/0/addToGenerated">
+ <details key="start" value="13755"/>
+ <details key="end" value="13988"/>
+ <details key="line" value="292"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1052" references="/0/addToGenerated/name">
+ <details key="start" value="13784"/>
+ <details key="end" value="13797"/>
+ <details key="line" value="292"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1053" references="/0/addToGenerated/generated">
+ <details key="start" value="13799"/>
+ <details key="end" value="13822"/>
+ <details key="line" value="292"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1054" references="/0/addToGenerated/%">
+ <details key="start" value="13837"/>
+ <details key="end" value="13985"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1055" references="/0/addToGenerated/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1056" references="/0/addToGenerated/%/%">
+ <details key="start" value="13844"/>
+ <details key="end" value="13906"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1057" references="/0/addToGenerated/%/%.1">
+ <details key="start" value="13908"/>
+ <details key="end" value="13957"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1058" references="/0/addToGenerated/%/%.2">
+ <details key="start" value="13959"/>
+ <details key="end" value="13984"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1059" references="/0/addToGenerated/%/%.2/%/name">
+ <details key="start" value="13968"/>
+ <details key="end" value="13972"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1060" references="/0/addToGenerated/%/%.2/%.1/generated">
+ <details key="start" value="13974"/>
+ <details key="end" value="13983"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1061" references="/0/isAlreadyGenerated">
+ <details key="start" value="13992"/>
+ <details key="end" value="14234"/>
+ <details key="line" value="295"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1062" references="/0/isAlreadyGenerated/name">
+ <details key="start" value="14025"/>
+ <details key="end" value="14038"/>
+ <details key="line" value="295"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1063" references="/0/isAlreadyGenerated/generated">
+ <details key="start" value="14040"/>
+ <details key="end" value="14063"/>
+ <details key="line" value="295"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1064" references="/0/isAlreadyGenerated/%">
+ <details key="start" value="14079"/>
+ <details key="end" value="14231"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1065" references="/0/isAlreadyGenerated/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1066" references="/0/isAlreadyGenerated/%/%">
+ <details key="start" value="14086"/>
+ <details key="end" value="14148"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1067" references="/0/isAlreadyGenerated/%/%.1">
+ <details key="start" value="14150"/>
+ <details key="end" value="14203"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1068" references="/0/isAlreadyGenerated/%/%.2">
+ <details key="start" value="14205"/>
+ <details key="end" value="14230"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1069" references="/0/isAlreadyGenerated/%/%.2/%/name">
+ <details key="start" value="14214"/>
+ <details key="end" value="14218"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1070" references="/0/isAlreadyGenerated/%/%.2/%.1/generated">
+ <details key="start" value="14220"/>
+ <details key="end" value="14229"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1071" references="/0/getAssume">
+ <details key="start" value="14238"/>
+ <details key="end" value="14425"/>
+ <details key="line" value="298"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1072" references="/0/getAssume/contract">
+ <details key="start" value="14262"/>
+ <details key="end" value="14277"/>
+ <details key="line" value="298"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1073" references="/0/getAssume/%">
+ <details key="start" value="14291"/>
+ <details key="end" value="14422"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1074" references="/0/getAssume/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1075" references="/0/getAssume/%/%">
+ <details key="start" value="14298"/>
+ <details key="end" value="14360"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1076" references="/0/getAssume/%/%.1">
+ <details key="start" value="14362"/>
+ <details key="end" value="14401"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1077" references="/0/getAssume/%/%.2">
+ <details key="start" value="14403"/>
+ <details key="end" value="14421"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1078" references="/0/getAssume/%/%.2/%/contract">
+ <details key="start" value="14412"/>
+ <details key="end" value="14420"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1079" references="/0/getGuarantee">
+ <details key="start" value="14429"/>
+ <details key="end" value="14622"/>
+ <details key="line" value="301"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1080" references="/0/getGuarantee/contract">
+ <details key="start" value="14456"/>
+ <details key="end" value="14471"/>
+ <details key="line" value="301"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1081" references="/0/getGuarantee/%">
+ <details key="start" value="14485"/>
+ <details key="end" value="14619"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1082" references="/0/getGuarantee/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1083" references="/0/getGuarantee/%/%">
+ <details key="start" value="14492"/>
+ <details key="end" value="14554"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1084" references="/0/getGuarantee/%/%.1">
+ <details key="start" value="14556"/>
+ <details key="end" value="14598"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1085" references="/0/getGuarantee/%/%.2">
+ <details key="start" value="14600"/>
+ <details key="end" value="14618"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1086" references="/0/getGuarantee/%/%.2/%/contract">
+ <details key="start" value="14609"/>
+ <details key="end" value="14617"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1087" references="/0/isRefined">
+ <details key="start" value="14626"/>
+ <details key="end" value="14814"/>
+ <details key="line" value="304"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1088" references="/0/isRefined/prop">
+ <details key="start" value="14650"/>
+ <details key="end" value="14665"/>
+ <details key="line" value="304"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1089" references="/0/isRefined/%">
+ <details key="start" value="14681"/>
+ <details key="end" value="14811"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1090" references="/0/isRefined/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1091" references="/0/isRefined/%/%">
+ <details key="start" value="14688"/>
+ <details key="end" value="14750"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1092" references="/0/isRefined/%/%.1">
+ <details key="start" value="14752"/>
+ <details key="end" value="14794"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1093" references="/0/isRefined/%/%.2">
+ <details key="start" value="14796"/>
+ <details key="end" value="14810"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1094" references="/0/isRefined/%/%.2/%/prop">
+ <details key="start" value="14805"/>
+ <details key="end" value="14809"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1095" references="/0/getRefinedBy">
+ <details key="start" value="14818"/>
+ <details key="end" value="15011"/>
+ <details key="line" value="307"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1096" references="/0/getRefinedBy/prop">
+ <details key="start" value="14845"/>
+ <details key="end" value="14860"/>
+ <details key="line" value="307"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1097" references="/0/getRefinedBy/%">
+ <details key="start" value="14875"/>
+ <details key="end" value="15008"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1098" references="/0/getRefinedBy/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1099" references="/0/getRefinedBy/%/%">
+ <details key="start" value="14882"/>
+ <details key="end" value="14944"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1100" references="/0/getRefinedBy/%/%.1">
+ <details key="start" value="14946"/>
+ <details key="end" value="14991"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1101" references="/0/getRefinedBy/%/%.2">
+ <details key="start" value="14993"/>
+ <details key="end" value="15007"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1102" references="/0/getRefinedBy/%/%.2/%/prop">
+ <details key="start" value="15002"/>
+ <details key="end" value="15006"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1103" references="/0/getRefinedByStrongWeak">
+ <details key="start" value="15015"/>
+ <details key="end" value="15272"/>
+ <details key="line" value="310"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1104" references="/0/getRefinedByStrongWeak/prop">
+ <details key="start" value="15052"/>
+ <details key="end" value="15067"/>
+ <details key="line" value="310"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1105" references="/0/getRefinedByStrongWeak/parts">
+ <details key="start" value="15069"/>
+ <details key="end" value="15091"/>
+ <details key="line" value="310"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1106" references="/0/getRefinedByStrongWeak/%">
+ <details key="start" value="15106"/>
+ <details key="end" value="15269"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1107" references="/0/getRefinedByStrongWeak/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1108" references="/0/getRefinedByStrongWeak/%/%">
+ <details key="start" value="15113"/>
+ <details key="end" value="15175"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1109" references="/0/getRefinedByStrongWeak/%/%.1">
+ <details key="start" value="15177"/>
+ <details key="end" value="15246"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1110" references="/0/getRefinedByStrongWeak/%/%.2">
+ <details key="start" value="15248"/>
+ <details key="end" value="15268"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1111" references="/0/getRefinedByStrongWeak/%/%.2/%/prop">
+ <details key="start" value="15257"/>
+ <details key="end" value="15261"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1112" references="/0/getRefinedByStrongWeak/%/%.2/%.1/parts">
+ <details key="start" value="15262"/>
+ <details key="end" value="15267"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1113" references="/0/getRefinedByAllWeak">
+ <details key="start" value="15276"/>
+ <details key="end" value="15519"/>
+ <details key="line" value="313"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1114" references="/0/getRefinedByAllWeak/props">
+ <details key="start" value="15310"/>
+ <details key="end" value="15332"/>
+ <details key="line" value="313"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1115" references="/0/getRefinedByAllWeak/parts">
+ <details key="start" value="15334"/>
+ <details key="end" value="15356"/>
+ <details key="line" value="313"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1116" references="/0/getRefinedByAllWeak/%">
+ <details key="start" value="15371"/>
+ <details key="end" value="15516"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1117" references="/0/getRefinedByAllWeak/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1118" references="/0/getRefinedByAllWeak/%/%">
+ <details key="start" value="15378"/>
+ <details key="end" value="15440"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1119" references="/0/getRefinedByAllWeak/%/%.1">
+ <details key="start" value="15442"/>
+ <details key="end" value="15492"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1120" references="/0/getRefinedByAllWeak/%/%.2">
+ <details key="start" value="15494"/>
+ <details key="end" value="15515"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1121" references="/0/getRefinedByAllWeak/%/%.2/%/props">
+ <details key="start" value="15503"/>
+ <details key="end" value="15508"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1122" references="/0/getRefinedByAllWeak/%/%.2/%.1/parts">
+ <details key="start" value="15509"/>
+ <details key="end" value="15514"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1123" references="/0/getContractType">
+ <details key="start" value="15523"/>
+ <details key="end" value="15722"/>
+ <details key="line" value="316"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1124" references="/0/getContractType/prop">
+ <details key="start" value="15553"/>
+ <details key="end" value="15568"/>
+ <details key="line" value="316"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1125" references="/0/getContractType/%">
+ <details key="start" value="15583"/>
+ <details key="end" value="15719"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1126" references="/0/getContractType/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1127" references="/0/getContractType/%/%">
+ <details key="start" value="15590"/>
+ <details key="end" value="15652"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1128" references="/0/getContractType/%/%.1">
+ <details key="start" value="15654"/>
+ <details key="end" value="15702"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1129" references="/0/getContractType/%/%.2">
+ <details key="start" value="15704"/>
+ <details key="end" value="15718"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1130" references="/0/getContractType/%/%.2/%/prop">
+ <details key="start" value="15713"/>
+ <details key="end" value="15717"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1131" references="/0/isWeakContract">
+ <details key="start" value="15726"/>
+ <details key="end" value="15924"/>
+ <details key="line" value="319"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1132" references="/0/isWeakContract/prop">
+ <details key="start" value="15755"/>
+ <details key="end" value="15770"/>
+ <details key="line" value="319"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1133" references="/0/isWeakContract/%">
+ <details key="start" value="15786"/>
+ <details key="end" value="15921"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1134" references="/0/isWeakContract/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1135" references="/0/isWeakContract/%/%">
+ <details key="start" value="15793"/>
+ <details key="end" value="15855"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1136" references="/0/isWeakContract/%/%.1">
+ <details key="start" value="15857"/>
+ <details key="end" value="15904"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1137" references="/0/isWeakContract/%/%.2">
+ <details key="start" value="15906"/>
+ <details key="end" value="15920"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1138" references="/0/isWeakContract/%/%.2/%/prop">
+ <details key="start" value="15915"/>
+ <details key="end" value="15919"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1139" references="/0/isAssumptionTrue">
+ <details key="start" value="15928"/>
+ <details key="end" value="16131"/>
+ <details key="line" value="322"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1140" references="/0/isAssumptionTrue/contract">
+ <details key="start" value="15959"/>
+ <details key="end" value="15974"/>
+ <details key="line" value="322"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1141" references="/0/isAssumptionTrue/%">
+ <details key="start" value="15990"/>
+ <details key="end" value="16128"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1142" references="/0/isAssumptionTrue/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1143" references="/0/isAssumptionTrue/%/%">
+ <details key="start" value="15997"/>
+ <details key="end" value="16059"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1144" references="/0/isAssumptionTrue/%/%.1">
+ <details key="start" value="16061"/>
+ <details key="end" value="16107"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1145" references="/0/isAssumptionTrue/%/%.2">
+ <details key="start" value="16109"/>
+ <details key="end" value="16127"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1146" references="/0/isAssumptionTrue/%/%.2/%/contract">
+ <details key="start" value="16118"/>
+ <details key="end" value="16126"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1147" references="/0/checkRules">
+ <details key="start" value="16135"/>
+ <details key="end" value="16327"/>
+ <details key="line" value="325"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1148" references="/0/checkRules/conn">
+ <details key="start" value="16160"/>
+ <details key="end" value="16176"/>
+ <details key="line" value="325"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1149" references="/0/checkRules/%">
+ <details key="start" value="16192"/>
+ <details key="end" value="16324"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1150" references="/0/checkRules/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1151" references="/0/checkRules/%/%">
+ <details key="start" value="16199"/>
+ <details key="end" value="16261"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1152" references="/0/checkRules/%/%.1">
+ <details key="start" value="16263"/>
+ <details key="end" value="16307"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1153" references="/0/checkRules/%/%.2">
+ <details key="start" value="16309"/>
+ <details key="end" value="16323"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1154" references="/0/checkRules/%/%.2/%/conn">
+ <details key="start" value="16318"/>
+ <details key="end" value="16322"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1155" references="/0/checkConnectedPorts">
+ <details key="start" value="16331"/>
+ <details key="end" value="16541"/>
+ <details key="line" value="328"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1156" references="/0/checkConnectedPorts/conn">
+ <details key="start" value="16365"/>
+ <details key="end" value="16381"/>
+ <details key="line" value="328"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1157" references="/0/checkConnectedPorts/%">
+ <details key="start" value="16397"/>
+ <details key="end" value="16538"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1158" references="/0/checkConnectedPorts/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1159" references="/0/checkConnectedPorts/%/%">
+ <details key="start" value="16404"/>
+ <details key="end" value="16466"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1160" references="/0/checkConnectedPorts/%/%.1">
+ <details key="start" value="16468"/>
+ <details key="end" value="16521"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1161" references="/0/checkConnectedPorts/%/%.2">
+ <details key="start" value="16523"/>
+ <details key="end" value="16537"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1162" references="/0/checkConnectedPorts/%/%.2/%/conn">
+ <details key="start" value="16532"/>
+ <details key="end" value="16536"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1163" references="/0/checkOperationPorts">
+ <details key="start" value="16545"/>
+ <details key="end" value="16755"/>
+ <details key="line" value="331"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1164" references="/0/checkOperationPorts/conn">
+ <details key="start" value="16579"/>
+ <details key="end" value="16595"/>
+ <details key="line" value="331"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1165" references="/0/checkOperationPorts/%">
+ <details key="start" value="16611"/>
+ <details key="end" value="16752"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1166" references="/0/checkOperationPorts/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1167" references="/0/checkOperationPorts/%/%">
+ <details key="start" value="16618"/>
+ <details key="end" value="16680"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1168" references="/0/checkOperationPorts/%/%.1">
+ <details key="start" value="16682"/>
+ <details key="end" value="16735"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1169" references="/0/checkOperationPorts/%/%.2">
+ <details key="start" value="16737"/>
+ <details key="end" value="16751"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1170" references="/0/checkOperationPorts/%/%.2/%/conn">
+ <details key="start" value="16746"/>
+ <details key="end" value="16750"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1171" references="/0/getOperationConnections">
+ <details key="start" value="16759"/>
+ <details key="end" value="16976"/>
+ <details key="line" value="334"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1172" references="/0/getOperationConnections/conn">
+ <details key="start" value="16797"/>
+ <details key="end" value="16813"/>
+ <details key="line" value="334"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1173" references="/0/getOperationConnections/%">
+ <details key="start" value="16828"/>
+ <details key="end" value="16973"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1174" references="/0/getOperationConnections/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1175" references="/0/getOperationConnections/%/%">
+ <details key="start" value="16835"/>
+ <details key="end" value="16897"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1176" references="/0/getOperationConnections/%/%.1">
+ <details key="start" value="16899"/>
+ <details key="end" value="16956"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1177" references="/0/getOperationConnections/%/%.2">
+ <details key="start" value="16958"/>
+ <details key="end" value="16972"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1178" references="/0/getOperationConnections/%/%.2/%/conn">
+ <details key="start" value="16967"/>
+ <details key="end" value="16971"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1179" references="/0/getType">
+ <details key="start" value="16980"/>
+ <details key="end" value="17155"/>
+ <details key="line" value="337"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1180" references="/0/getType/type">
+ <details key="start" value="17002"/>
+ <details key="end" value="17013"/>
+ <details key="line" value="337"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1181" references="/0/getType/%">
+ <details key="start" value="17028"/>
+ <details key="end" value="17152"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1182" references="/0/getType/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1183" references="/0/getType/%/%">
+ <details key="start" value="17035"/>
+ <details key="end" value="17097"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1184" references="/0/getType/%/%.1">
+ <details key="start" value="17099"/>
+ <details key="end" value="17135"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1185" references="/0/getType/%/%.2">
+ <details key="start" value="17137"/>
+ <details key="end" value="17151"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1186" references="/0/getType/%/%.2/%/type">
+ <details key="start" value="17146"/>
+ <details key="end" value="17150"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ </ecore:EAnnotation>
+</xmi:XMI>
diff --git a/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generateErrorModel.emtl b/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generateErrorModel.emtl
new file mode 100644
index 0000000..0a5b41e
--- /dev/null
+++ b/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generateErrorModel.emtl
@@ -0,0 +1,6762 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI 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" xmlns:mtl="http://www.eclipse.org/acceleo/mtl/3.0" xmlns:ocl.ecore="http://www.eclipse.org/ocl/1.1.0/Ecore">
+ <mtl:Module name="generateErrorModel" nsURI="org::polarsys::chess::contracts::transformations::main::generateErrorModel" startHeaderPosition="699" endHeaderPosition="841">
+ <input>
+ <takesTypesFrom href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
+ </input>
+ <imports href="generate.emtl#/0"/>
+ <ownedModuleElement xsi:type="mtl:Template" name="generateErrorModel" visibility="Public" main="true">
+ <init>
+ <variable name="SystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::System">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="SubSystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::SubSystem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="SystemViewQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Core::CHESSViews::SystemView">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="CompViewQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Core::CHESSViews::ComponentView">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="DeplViewQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Core::CHESSViews::DeploymentView">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="CompImplQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::ComponentModel::ComponentImplementation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="BlockQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="SysML::Blocks::Block">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="SRACompQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::SRAComponent">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ </init>
+ <body xsi:type="mtl:FileBlock" openMode="OverWrite">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/generateModule">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="system" referredVariable="/0/generateErrorModel/%/%/%/%/%/%/%/%/system">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Class)">
+ <source xsi:type="ocl.ecore:VariableExp" name="allBlocks" eType="/3/Set(Class)" referredVariable="/0/generateErrorModel/%/%/%/%/%/allBlocks"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="allComps" eType="/3/Set(Component)" referredVariable="/0/generateErrorModel/%/%/%/%/%/%/allComps"/>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/union.1"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="generated" eType="/3/Set(String)" referredVariable="/0/generateErrorModel/%/%/%/%/%/%/%/generated"/>
+ <argument xsi:type="ocl.ecore:BooleanLiteralExp" booleanSymbol="true">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <letVariable name="system">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <initExpression xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <definition href="generate.emtl#/0/getSystem"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="allBlocks" eType="/3/Set(Class)" referredVariable="/0/generateErrorModel/%/%/%/%/%/allBlocks"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="sysQN" referredVariable="/0/generateErrorModel/sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="generated" eType="/3/Set(String)">
+ <initExpression xsi:type="mtl:QueryInvocation" eType="/3/Set(String)">
+ <definition href="generate.emtl#/0/getEmptyStringSet"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/23">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="allComps" eType="/3/Set(Component)">
+ <initExpression xsi:type="mtl:QueryInvocation" eType="/3/Set(Component)">
+ <definition href="generate.emtl#/0/getAllComponents"/>
+ <argument xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Component)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="deploymentView" referredVariable="/0/generateErrorModel/%/%/%/%/deploymentView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Component">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </argument>
+ </argument>
+ <argument xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Component)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="componentView" referredVariable="/0/generateErrorModel/%/%/componentView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Component">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </argument>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="CompImplQN" referredVariable="/0/generateErrorModel/@init/@variable.5">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="SRACompQN" referredVariable="/0/generateErrorModel/@init/@variable.7">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="allBlocks" eType="/3/Set(Class)">
+ <initExpression xsi:type="mtl:QueryInvocation" eType="/3/Set(Class)">
+ <definition href="generate.emtl#/0/getAllBlocks"/>
+ <argument xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Class)">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Class)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="componentView" referredVariable="/0/generateErrorModel/%/%/componentView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Class)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="systemView" referredVariable="/0/generateErrorModel/%/%/%/systemView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/union.1"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="BlockQN" referredVariable="/0/generateErrorModel/@init/@variable.6">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="SubSystemQN" referredVariable="/0/generateErrorModel/@init/@variable.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="SystemQN" referredVariable="/0/generateErrorModel/@init/@variable.0">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="deploymentView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Package)">
+ <source xsi:type="ocl.ecore:VariableExp" name="model" referredVariable="/0/generateErrorModel/model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/nestedPackage"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateErrorModel/%/%/%/%/deploymentView/any/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="DeplViewQN" referredVariable="/0/generateErrorModel/@init/@variable.4">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="systemView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Package)">
+ <source xsi:type="ocl.ecore:VariableExp" name="model" referredVariable="/0/generateErrorModel/model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/nestedPackage"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateErrorModel/%/%/%/systemView/any/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="SystemViewQN" referredVariable="/0/generateErrorModel/@init/@variable.2">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="componentView">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Package)">
+ <source xsi:type="ocl.ecore:VariableExp" name="model" referredVariable="/0/generateErrorModel/model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/nestedPackage"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateErrorModel/%/%/componentView/any/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="CompViewQN" referredVariable="/0/generateErrorModel/@init/@variable.3">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <fileUrl xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="filename" referredVariable="/0/generateErrorModel/filename">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=".smv">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/concat"/>
+ </fileUrl>
+ <charset xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="UTF-8">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </charset>
+ </body>
+ <parameter name="model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </parameter>
+ <parameter name="sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="sysName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="filename">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Template" name="generateModule" visibility="Public">
+ <init>
+ <variable name="SystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::System">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="ContractPropQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::ContractProperty">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="FlowPortQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="SysML::PortAndFlows::FlowPort">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="ErrorModelQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Dependability::ThreatsPropagation::ErrorModel">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="ExternalFaultQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Dependability::ThreatsPropagation::InternalPropagation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="InternalFaultQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Dependability::ThreatsPropagation::InternalFault">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="ClientServerPortQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="MARTE::MARTE_DesignModel::GCM::ClientServerPort">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="MARTEFlowPortQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="MARTE::MARTE_DesignModel::GCM::FlowPort">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ </init>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	"/>
+ <body xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <definition href="generate.emtl#/0/addToGenerated"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="generated" eType="/3/Set(String)" referredVariable="/0/generateModule/generated"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="MODULE main
"/>
+ <ifExpr xsi:type="ocl.ecore:VariableExp" name="isSystem" referredVariable="/0/generateModule/isSystem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </ifExpr>
+ <else>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="MODULE "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="("/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getModuleFormalParameter">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=")
"/>
+ </else>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	VAR
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="		"/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" : "/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getTypeNameForProperty">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </body>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getModuleInstanceActualParameter">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/oclIsInvalid"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/equalsIgnoreCase">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="event">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="vars" eType="/3/OrderedSet(Property)" referredVariable="/0/generateModule/%.5/vars"/>
+ </body>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="		"/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%.1/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" : "/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getTypeNameForProperty">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%.1/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </body>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getModuleInstanceActualParameter">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%.1/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/equalsIgnoreCase">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/toString">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%.1/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="flowPortStereo" referredVariable="/0/generateModule/%.5/%.1/%/%/%/flowPortStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="direction">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </source>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="out">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </ifExpr>
+ </body>
+ <letVariable name="flowPortStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%.1/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="MARTEFlowPortQN" referredVariable="/0/generateModule/@init/@variable.7">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%.1/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/oclIsInvalid"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/equalsIgnoreCase">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%.1/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="event">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="ports" eType="/3/OrderedSet(Property)" referredVariable="/0/generateModule/%.5/%.1/ports"/>
+ </body>
+ <letVariable name="ports" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/attribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/%.1/ports/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ContractPropQN" referredVariable="/0/generateModule/@init/@variable.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/%.1/ports/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="FlowPortQN" referredVariable="/0/generateModule/@init/@variable.2">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/%.1/ports/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ClientServerPortQN" referredVariable="/0/generateModule/@init/@variable.6">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/%.1/ports/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="MARTEFlowPortQN" referredVariable="/0/generateModule/@init/@variable.7">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
	DEFINE "/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="rule" referredVariable="/0/generateModule/%.5/%.2/%/rule">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/getLabel"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" := "/>
+ <body xsi:type="ocl.ecore:VariableExp" name="spec" referredVariable="/0/generateModule/%.5/%.2/%/%/%/%/spec.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </body>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/endsWith">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="spec" referredVariable="/0/generateModule/%.5/%.2/%/%/%/%/spec.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <letVariable name="spec">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Sequence(String)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ValueSpecification"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="rule" referredVariable="/0/generateModule/%.5/%.2/%/rule">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint/specification"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression/body"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="index" referredVariable="/0/generateModule/%.5/%.2/%/%/%/index">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)_Class/at"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="index">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(String)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ValueSpecification"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="rule" referredVariable="/0/generateModule/%.5/%.2/%/rule">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint/specification"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression/language"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="SMV">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/indexOf"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ValueSpecification"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="rule" referredVariable="/0/generateModule/%.5/%.2/%/rule">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint/specification"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsKindOf"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(String)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(String)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ValueSpecification"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="rule" referredVariable="/0/generateModule/%.5/%.2/%/rule">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint/specification"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression/language"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/contains">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="l" referredVariable="/0/generateModule/%.5/%.2/%/%/%.1/%.1/select/l">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="SMV">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="l">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </iterator>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="rule">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="rules" eType="/3/Set(Constraint)" referredVariable="/0/generateModule/%.5/%.2/rules"/>
+ </body>
+ <letVariable name="rules" eType="/3/Set(Constraint)">
+ <initExpression xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Constraint)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/ownedRule"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	CONSTANTS "/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%.3/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property/getDefault"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <loopVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="vars" eType="/3/OrderedSet(Property)" referredVariable="/0/generateModule/%.5/%.3/vars"/>
+ </body>
+ <letVariable name="vars" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/attribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/%.3/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuralFeature/isReadOnly"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/%.3/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="FlowPortQN" referredVariable="/0/generateModule/@init/@variable.2">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/%.3/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ClientServerPortQN" referredVariable="/0/generateModule/@init/@variable.6">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/%.3/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="MARTEFlowPortQN" referredVariable="/0/generateModule/@init/@variable.7">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	IVAR	
"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="		"/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%.5/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" : boolean;
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%.5/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/oclIsInvalid"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/equalsIgnoreCase">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.5/%.5/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="event">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="vars" eType="/3/OrderedSet(Property)" referredVariable="/0/generateModule/%.5/vars"/>
+ </body>
+ <letVariable name="vars" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/attribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ContractPropQN" referredVariable="/0/generateModule/@init/@variable.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="FlowPortQN" referredVariable="/0/generateModule/@init/@variable.2">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ClientServerPortQN" referredVariable="/0/generateModule/@init/@variable.6">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.5/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="MARTEFlowPortQN" referredVariable="/0/generateModule/@init/@variable.7">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.6/%.1/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/oclIsInvalid"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/equalsIgnoreCase">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.6/%.1/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="event">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="vars" eType="/3/OrderedSet(Property)" referredVariable="/0/generateModule/%.6/vars"/>
+ </body>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="		"/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="tr" referredVariable="/0/generateModule/%.6/%.2/%/%/tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/getLabel"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" : boolean;
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="tr" referredVariable="/0/generateModule/%.6/%.2/%/%/tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="InternalFaultQN" referredVariable="/0/generateModule/@init/@variable.5">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="tr" referredVariable="/0/generateModule/%.6/%.2/%/%/tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ExternalFaultQN" referredVariable="/0/generateModule/@init/@variable.4">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="transitions" eType="/3/Sequence(Transition)" referredVariable="/0/generateModule/%.6/%.2/%/transitions"/>
+ </body>
+ <letVariable name="transitions" eType="/3/Sequence(Transition)">
+ <initExpression xsi:type="ocl.ecore:OperationCallExp" eType="/3/Sequence(Transition)">
+ <source xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/Bag(Transition)">
+ <source xsi:type="ocl.ecore:IteratorExp" name="collect" eType="/3/Bag(Transition)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Region)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorModel" referredVariable="/0/generateModule/%.6/%.2/errorModel">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/StateMachine">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine/region"/>
+ </source>
+ <body xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Transition)">
+ <source xsi:type="ocl.ecore:VariableExp" name="temp1" referredVariable="/0/generateModule/%.6/%.2/%/transitions/%/select/collect/temp1">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region/transition"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="temp1">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </iterator>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="tr" referredVariable="/0/generateModule/%.6/%.2/%/transitions/%/select/tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition/source"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Pseudostate">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Pseudostate"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="tr" referredVariable="/0/generateModule/%.6/%.2/%/transitions/%/select/tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition/target"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Pseudostate">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Pseudostate"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </iterator>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Bag(T)_Class/asSequence"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="		nominal_event : boolean;
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	TRANS
 	nominal_event = FALSE;
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="toNominal" eType="/3/Sequence(Transition)" referredVariable="/0/generateModule/%.6/%.2/%.2/toNominal"/>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)_Class/isEmpty"/>
+ </ifExpr>
+ <else>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	TRANS
		nominal_event = TRUE;
"/>
+ </else>
+ </body>
+ <letVariable name="toNominal" eType="/3/Sequence(Transition)">
+ <initExpression xsi:type="ocl.ecore:OperationCallExp" eType="/3/Sequence(Transition)">
+ <source xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/Bag(Transition)">
+ <source xsi:type="ocl.ecore:IteratorExp" name="collect" eType="/3/Bag(Transition)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Region)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorModel" referredVariable="/0/generateModule/%.6/%.2/errorModel">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/StateMachine">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine/region"/>
+ </source>
+ <body xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Transition)">
+ <source xsi:type="ocl.ecore:VariableExp" name="temp1" referredVariable="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/collect/temp2">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region/transition"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="temp2">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </iterator>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="tr" referredVariable="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition/source"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Pseudostate">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Pseudostate"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="tr" referredVariable="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition/target"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/getLabel"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="NominalState">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/="/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </iterator>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Bag(T)_Class/asSequence"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="errorModel">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Behavior)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioredClassifier/ownedBehavior"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="em" referredVariable="/0/generateModule/%.6/%.2/errorModel/any/em">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ErrorModelQN" referredVariable="/0/generateModule/@init/@variable.3">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="em">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="vars" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/attribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.6/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ContractPropQN" referredVariable="/0/generateModule/@init/@variable.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.6/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="FlowPortQN" referredVariable="/0/generateModule/@init/@variable.2">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.6/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="MARTEFlowPortQN" referredVariable="/0/generateModule/@init/@variable.7">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	ASSIGN
	next("/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.8/%/%/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=") :=
		case
			"/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getEffectOnProperty">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="nominalModel" referredVariable="/0/generateModule/%.8/nominalModel">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.8/%/%/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
		esac;	
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/getEffectOnProperty">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="nominalModel" referredVariable="/0/generateModule/%.8/nominalModel">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.8/%/%/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/%3C%3E"/>
+ </ifExpr>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/equalsIgnoreCase">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.8/%/%/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="event">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	ASSIGN
		init("/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.8/%/%/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=") := "/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Sequence(String)">
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ValueSpecification"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.8/%/%/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property/defaultValue"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression/body"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)_Class/first"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ValueSpecification"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.8/%/%/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property/defaultValue"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </ifExpr>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ValueSpecification"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.8/%/%/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property/defaultValue"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsUndefined"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.8/%/%/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuralFeature/isReadOnly"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateModule/%.8/%/%/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="event">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/%3C%3E"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="vars" eType="/3/OrderedSet(Property)" referredVariable="/0/generateModule/%.8/%/%/vars"/>
+ </body>
+ <letVariable name="vars" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/attribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.8/%/%/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ContractPropQN" referredVariable="/0/generateModule/@init/@variable.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.8/%/%/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="FlowPortQN" referredVariable="/0/generateModule/@init/@variable.2">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateModule/%.8/%/%/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ClientServerPortQN" referredVariable="/0/generateModule/@init/@variable.6">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="trSet" eType="/3/Set(Transition)">
+ <initExpression xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(Transition)">
+ <source xsi:type="ocl.ecore:IteratorExp" name="collect" eType="/3/Bag(Transition)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Region)">
+ <source xsi:type="ocl.ecore:VariableExp" name="nominalModel" referredVariable="/0/generateModule/%.8/nominalModel">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine/region"/>
+ </source>
+ <body xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Transition)">
+ <source xsi:type="ocl.ecore:VariableExp" name="temp1" referredVariable="/0/generateModule/%.8/%/trSet/%/collect/temp3">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region/transition"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="temp3">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </iterator>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Bag(T)_Class/asSet"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="nominalModel">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/3/Set(StateMachine)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/Set(Behavior)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioredClassifier/ownedBehavior"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/StateMachine">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </argument>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/generateModule/%.8/nominalModel/any/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ErrorModelQN" referredVariable="/0/generateModule/@init/@variable.3">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="-- END MODULE "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" --
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:TemplateInvocation" definition="/0/generateModule">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="newblock" referredVariable="/0/generateModule/%.12/%/%/%/%/newblock">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="allBlocks" eType="/3/Set(Class)" referredVariable="/0/generateModule/allBlocks"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="generated" eType="/3/Set(String)" referredVariable="/0/generateModule/generated"/>
+ <argument xsi:type="ocl.ecore:BooleanLiteralExp" booleanSymbol="false">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <letVariable name="newblock">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="allBlocks" eType="/3/Set(Class)" referredVariable="/0/generateModule/allBlocks"/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateModule/%.12/%/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="c" referredVariable="/0/generateModule/%.12/%/%/%/%/newblock/any/c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/="/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="c">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <definition href="generate.emtl#/0/isPart"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateModule/%.12/%/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <definition href="generate.emtl#/0/isAlreadyGenerated"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateModule/%.12/%/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="generated" eType="/3/Set(String)" referredVariable="/0/generateModule/generated"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </ifExpr>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="part" referredVariable="/0/generateModule/%.12/%/part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/oclIsInvalid"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="part">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="parts" eType="/3/OrderedSet(Property)" referredVariable="/0/generateModule/%.12/parts"/>
+ </body>
+ <letVariable name="parts" eType="/3/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:OperationCallExp" eType="/3/OrderedSet(Property)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/3/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/generateModule/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Property">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <parameter name="block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </parameter>
+ <parameter name="allBlocks" eType="/3/Set(Class)"/>
+ <parameter name="generated" eType="/3/Set(String)"/>
+ <parameter name="isSystem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </parameter>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getTransitionTarget" visibility="Public">
+ <parameter name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="str">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/129">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getTransitionTarget(java.lang.String, java.lang.String)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(String)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="name" referredVariable="/0/getTransitionTarget/name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </item>
+ </part>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="str" referredVariable="/0/getTransitionTarget/str">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getType" visibility="Public">
+ <parameter name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/132">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getType4FTA(org.eclipse.uml2.uml.Type)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Type)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="type" referredVariable="/0/getType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getInitCondition" visibility="Public">
+ <parameter name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/135">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getInitCondition(org.eclipse.uml2.uml.StateMachine)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(StateMachine)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/getInitCondition/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getPropertyAffectedByTransition" visibility="Public">
+ <parameter name="t">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/138">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getPropertyAffectedByTransition(org.eclipse.uml2.uml.Transition)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Transition)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="t" referredVariable="/0/getPropertyAffectedByTransition/t">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getEffectOnProperty" visibility="Public">
+ <parameter name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </parameter>
+ <parameter name="propertyName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/141">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getEffectOnProperty(org.eclipse.uml2.uml.StateMachine, java.lang.String)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(OclAny)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/getEffectOnProperty/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </item>
+ </part>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="propertyName" referredVariable="/0/getEffectOnProperty/propertyName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getModuleFormalParameter" visibility="Public">
+ <parameter name="block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/144">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getModuleFormalParameter(org.eclipse.uml2.uml.Class)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Class)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/getModuleFormalParameter/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getModuleInstanceActualParameter" visibility="Public">
+ <parameter name="block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </parameter>
+ <parameter name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/147">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getModuleInstanceActualParameter(org.eclipse.uml2.uml.Class, org.eclipse.uml2.uml.Property)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(ParameterableElement)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="block" referredVariable="/0/getModuleInstanceActualParameter/block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </item>
+ </part>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/getModuleInstanceActualParameter/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getTypeNameForProperty" visibility="Public">
+ <parameter name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/150">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getTypeNameForProperty(org.eclipse.uml2.uml.Property)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/3/Sequence(Property)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/getTypeNameForProperty/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ </mtl:Module>
+ <ecore:EPackage name="additions">
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_String_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eAnnotations>
+ <eOperations name="endsWith">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="substring">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="contains">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="substring">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="equalsIgnoreCase">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="other">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Integer_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Real_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Real"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ecore_EObject_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eAnnotations>
+ <eOperations name="generateErrorModel">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/generateErrorModel"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </eParameters>
+ <eParameters name="sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="sysName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="filename">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="generateModule">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/generateModule"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eParameters>
+ <eParameters name="allBlocks" eType="/3/Set(Class)"/>
+ <eParameters name="generated" eType="/3/Set(String)"/>
+ <eParameters name="isSystem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getTransitionTarget">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getTransitionTarget"/>
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <eParameters name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="str">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getType">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getType"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getInitCondition">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getInitCondition"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getPropertyAffectedByTransition">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getPropertyAffectedByTransition"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="t">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getEffectOnProperty">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getEffectOnProperty"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eParameters>
+ <eParameters name="propertyName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getModuleFormalParameter">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getModuleFormalParameter"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getModuleInstanceActualParameter">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getModuleInstanceActualParameter"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="block">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eParameters>
+ <eParameters name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getTypeNameForProperty">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getTypeNameForProperty"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getSystem">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="generate.emtl#/0/getSystem"/>
+ </eAnnotations>
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <eParameters name="classes">
+ <eType xsi:type="ocl.ecore:SetType" href="generate.emtl#/3/Set(Class)"/>
+ </eParameters>
+ <eParameters name="qname">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getAllBlocks">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="generate.emtl#/0/getAllBlocks"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:SetType" href="generate.emtl#/3/Set(Class)"/>
+ <eParameters name="classes">
+ <eType xsi:type="ocl.ecore:SetType" href="generate.emtl#/3/Set(Class)"/>
+ </eParameters>
+ <eParameters name="blockQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="SubSystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="SystemQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getAllComponents">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="generate.emtl#/0/getAllComponents"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:SetType" href="generate.emtl#/3/Set(Component)"/>
+ <eParameters name="hwcomps">
+ <eType xsi:type="ocl.ecore:SetType" href="generate.emtl#/3/Set(Component)"/>
+ </eParameters>
+ <eParameters name="comps">
+ <eType xsi:type="ocl.ecore:SetType" href="generate.emtl#/3/Set(Component)"/>
+ </eParameters>
+ <eParameters name="CompImplQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="PlatformQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="isPart">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="generate.emtl#/0/isPart"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getEmptyStringSet">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="generate.emtl#/0/getEmptyStringSet"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:SetType" href="generate.emtl#/3/Set(String)"/>
+ <eParameters name="traceCtx">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="addToGenerated">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="generate.emtl#/0/addToGenerated"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <eParameters name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="generated">
+ <eType xsi:type="ocl.ecore:SetType" href="generate.emtl#/3/Set(String)"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="isAlreadyGenerated">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL">
+ <references href="generate.emtl#/0/isAlreadyGenerated"/>
+ </eAnnotations>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="name">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="generated">
+ <eType xsi:type="ocl.ecore:SetType" href="generate.emtl#/3/Set(String)"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_OclAny_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </eAnnotations>
+ <eOperations name="toString">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eOperations>
+ <eOperations name="invoke">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <eParameters name="class">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="method">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="arguments">
+ <eType xsi:type="ocl.ecore:SequenceType" href="http://www.eclipse.org/acceleo/mtl/3.0/mtlnonstdlib.ecore#//Sequence(OclAny)"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Collection(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Collection(T)"/>
+ </eAnnotations>
+ <eOperations name="filter">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:CollectionType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Collection(T)"/>
+ <eParameters name="filter">
+ <eType xsi:type="ocl.ecore:TypeType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclType"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Sequence(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_OrderedSet(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Model_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Class_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Type_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_StateMachine_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Transition_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Property_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Port_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Port"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Operation_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="collections_Set(Class)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="generate.emtl#/3/Set(Class)"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="collections_Set(Component)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="generate.emtl#/3/Set(Component)"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Connector_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Connector"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="collections_Set(Property)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="generate.emtl#/3/Set(Property)"/>
+ </eAnnotations>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ecore:EPackage name="collections">
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Class)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(String)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Package)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Stereotype)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Element)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:BagType" name="Bag(Class)" instanceClassName="org.eclipse.ocl.util.Bag">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Component)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(Property)" instanceClassName="java.util.LinkedHashSet">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Constraint)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(String)" instanceClassName="java.util.LinkedHashSet">
+ <elementType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(String)" instanceClassName="java.util.List">
+ <elementType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Behavior)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Region)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Transition)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:BagType" name="Bag(Transition)" instanceClassName="org.eclipse.ocl.util.Bag">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Transition)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(StateMachine)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(OclAny)" instanceClassName="java.util.List">
+ <elementType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Type)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(StateMachine)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Class)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(ParameterableElement)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//ParameterableElement"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Property)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ecore:EPackage name="types">
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="Component">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Component"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="OpaqueExpression">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueExpression"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="StateMachine">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="Pseudostate">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Pseudostate"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="Property">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ecore:EAnnotation source="positions">
+ <eAnnotations source="positions.0" references="/0/generateErrorModel">
+ <details key="start" value="845"/>
+ <details key="end" value="2457"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1" references="/0/generateErrorModel/@init">
+ <details key="start" value="949"/>
+ <details key="end" value="1416"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.2" references="/0/generateErrorModel/@init/@variable.0">
+ <details key="start" value="952"/>
+ <details key="end" value="995"/>
+ <details key="line" value="23"/>
+ </eAnnotations>
+ <eAnnotations source="positions.3" references="/0/generateErrorModel/@init/@variable.0/%">
+ <details key="start" value="972"/>
+ <details key="end" value="995"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.4" references="/0/generateErrorModel/@init/@variable.1">
+ <details key="start" value="998"/>
+ <details key="end" value="1047"/>
+ <details key="line" value="24"/>
+ </eAnnotations>
+ <eAnnotations source="positions.5" references="/0/generateErrorModel/@init/@variable.1/%">
+ <details key="start" value="1021"/>
+ <details key="end" value="1047"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.6" references="/0/generateErrorModel/@init/@variable.2">
+ <details key="start" value="1051"/>
+ <details key="end" value="1112"/>
+ <details key="line" value="25"/>
+ </eAnnotations>
+ <eAnnotations source="positions.7" references="/0/generateErrorModel/@init/@variable.2/%">
+ <details key="start" value="1075"/>
+ <details key="end" value="1112"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.8" references="/0/generateErrorModel/@init/@variable.3">
+ <details key="start" value="1115"/>
+ <details key="end" value="1177"/>
+ <details key="line" value="26"/>
+ </eAnnotations>
+ <eAnnotations source="positions.9" references="/0/generateErrorModel/@init/@variable.3/%">
+ <details key="start" value="1137"/>
+ <details key="end" value="1177"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.10" references="/0/generateErrorModel/@init/@variable.4">
+ <details key="start" value="1180"/>
+ <details key="end" value="1243"/>
+ <details key="line" value="27"/>
+ </eAnnotations>
+ <eAnnotations source="positions.11" references="/0/generateErrorModel/@init/@variable.4/%">
+ <details key="start" value="1202"/>
+ <details key="end" value="1243"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.12" references="/0/generateErrorModel/@init/@variable.5">
+ <details key="start" value="1246"/>
+ <details key="end" value="1316"/>
+ <details key="line" value="28"/>
+ </eAnnotations>
+ <eAnnotations source="positions.13" references="/0/generateErrorModel/@init/@variable.5/%">
+ <details key="start" value="1268"/>
+ <details key="end" value="1316"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.14" references="/0/generateErrorModel/@init/@variable.6">
+ <details key="start" value="1319"/>
+ <details key="end" value="1360"/>
+ <details key="line" value="29"/>
+ </eAnnotations>
+ <eAnnotations source="positions.15" references="/0/generateErrorModel/@init/@variable.6/%">
+ <details key="start" value="1338"/>
+ <details key="end" value="1360"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.16" references="/0/generateErrorModel/@init/@variable.7">
+ <details key="start" value="1363"/>
+ <details key="end" value="1413"/>
+ <details key="line" value="30"/>
+ </eAnnotations>
+ <eAnnotations source="positions.17" references="/0/generateErrorModel/@init/@variable.7/%">
+ <details key="start" value="1384"/>
+ <details key="end" value="1413"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.18" references="/0/generateErrorModel/%">
+ <details key="start" value="1435"/>
+ <details key="end" value="2445"/>
+ <details key="line" value="33"/>
+ </eAnnotations>
+ <eAnnotations source="positions.19" references="/0/generateErrorModel/%/%">
+ <details key="start" value="1485"/>
+ <details key="end" value="2437"/>
+ <details key="line" value="34"/>
+ </eAnnotations>
+ <eAnnotations source="positions.20" references="/0/generateErrorModel/%/%/%">
+ <details key="start" value="1605"/>
+ <details key="end" value="2429"/>
+ <details key="line" value="35"/>
+ </eAnnotations>
+ <eAnnotations source="positions.21" references="/0/generateErrorModel/%/%/%/%">
+ <details key="start" value="1724"/>
+ <details key="end" value="2421"/>
+ <details key="line" value="36"/>
+ </eAnnotations>
+ <eAnnotations source="positions.22" references="/0/generateErrorModel/%/%/%/%/%">
+ <details key="start" value="1846"/>
+ <details key="end" value="2413"/>
+ <details key="line" value="37"/>
+ </eAnnotations>
+ <eAnnotations source="positions.23" references="/0/generateErrorModel/%/%/%/%/%/%">
+ <details key="start" value="2025"/>
+ <details key="end" value="2405"/>
+ <details key="line" value="38"/>
+ </eAnnotations>
+ <eAnnotations source="positions.24" references="/0/generateErrorModel/%/%/%/%/%/%/%">
+ <details key="start" value="2207"/>
+ <details key="end" value="2397"/>
+ <details key="line" value="39"/>
+ </eAnnotations>
+ <eAnnotations source="positions.25" references="/0/generateErrorModel/%/%/%/%/%/%/%/%">
+ <details key="start" value="2260"/>
+ <details key="end" value="2389"/>
+ <details key="line" value="40"/>
+ </eAnnotations>
+ <eAnnotations source="positions.26" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/%">
+ <details key="start" value="2312"/>
+ <details key="end" value="2379"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.27" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/%/system">
+ <details key="start" value="2327"/>
+ <details key="end" value="2333"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.28" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/%/%">
+ <details key="start" value="2335"/>
+ <details key="end" value="2361"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.29" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/%/%/allBlocks">
+ <details key="start" value="2335"/>
+ <details key="end" value="2344"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.30" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/%/%/allComps">
+ <details key="start" value="2352"/>
+ <details key="end" value="2360"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.31" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/%/generated">
+ <details key="start" value="2363"/>
+ <details key="end" value="2372"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.32" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/%/%.1">
+ <details key="start" value="2374"/>
+ <details key="end" value="2378"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.33" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/%.1">
+ <details key="start" value="2381"/>
+ <details key="end" value="2382"/>
+ <details key="line" value="42"/>
+ </eAnnotations>
+ <eAnnotations source="positions.34" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/system">
+ <details key="start" value="2265"/>
+ <details key="end" value="2309"/>
+ <details key="line" value="40"/>
+ </eAnnotations>
+ <eAnnotations source="positions.35" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/system/%">
+ <details key="start" value="2283"/>
+ <details key="end" value="2310"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.36" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/system/%/allBlocks">
+ <details key="start" value="2293"/>
+ <details key="end" value="2302"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.37" references="/0/generateErrorModel/%/%/%/%/%/%/%/%/system/%/sysQN">
+ <details key="start" value="2304"/>
+ <details key="end" value="2309"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.38" references="/0/generateErrorModel/%/%/%/%/%/%/%/generated">
+ <details key="start" value="2212"/>
+ <details key="end" value="2257"/>
+ <details key="line" value="39"/>
+ </eAnnotations>
+ <eAnnotations source="positions.39" references="/0/generateErrorModel/%/%/%/%/%/%/%/generated/%">
+ <details key="start" value="2239"/>
+ <details key="end" value="2258"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.40" references="/0/generateErrorModel/%/%/%/%/%/%/%/generated/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.41" references="/0/generateErrorModel/%/%/%/%/%/%/allComps">
+ <details key="start" value="2030"/>
+ <details key="end" value="2204"/>
+ <details key="line" value="38"/>
+ </eAnnotations>
+ <eAnnotations source="positions.42" references="/0/generateErrorModel/%/%/%/%/%/%/allComps/%">
+ <details key="start" value="2059"/>
+ <details key="end" value="2205"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.43" references="/0/generateErrorModel/%/%/%/%/%/%/allComps/%/%">
+ <details key="start" value="2076"/>
+ <details key="end" value="2128"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.44" references="/0/generateErrorModel/%/%/%/%/%/%/allComps/%/%/%">
+ <details key="start" value="2076"/>
+ <details key="end" value="2109"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.45" references="/0/generateErrorModel/%/%/%/%/%/%/allComps/%/%/%/deploymentView">
+ <details key="start" value="2076"/>
+ <details key="end" value="2090"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.46" references="/0/generateErrorModel/%/%/%/%/%/%/allComps/%/%/%.1">
+ <details key="start" value="2118"/>
+ <details key="end" value="2127"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.47" references="/0/generateErrorModel/%/%/%/%/%/%/allComps/%/%.1">
+ <details key="start" value="2130"/>
+ <details key="end" value="2181"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.48" references="/0/generateErrorModel/%/%/%/%/%/%/allComps/%/%.1/%">
+ <details key="start" value="2130"/>
+ <details key="end" value="2162"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.49" references="/0/generateErrorModel/%/%/%/%/%/%/allComps/%/%.1/%/componentView">
+ <details key="start" value="2130"/>
+ <details key="end" value="2143"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.50" references="/0/generateErrorModel/%/%/%/%/%/%/allComps/%/%.1/%.1">
+ <details key="start" value="2171"/>
+ <details key="end" value="2180"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.51" references="/0/generateErrorModel/%/%/%/%/%/%/allComps/%/CompImplQN">
+ <details key="start" value="2183"/>
+ <details key="end" value="2193"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.52" references="/0/generateErrorModel/%/%/%/%/%/%/allComps/%/SRACompQN">
+ <details key="start" value="2195"/>
+ <details key="end" value="2204"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.53" references="/0/generateErrorModel/%/%/%/%/%/allBlocks">
+ <details key="start" value="1851"/>
+ <details key="end" value="2022"/>
+ <details key="line" value="37"/>
+ </eAnnotations>
+ <eAnnotations source="positions.54" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%">
+ <details key="start" value="1877"/>
+ <details key="end" value="2023"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.55" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/%">
+ <details key="start" value="1890"/>
+ <details key="end" value="1990"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.56" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/%/%">
+ <details key="start" value="1890"/>
+ <details key="end" value="1937"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.57" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/%/%/%">
+ <details key="start" value="1890"/>
+ <details key="end" value="1922"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.58" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/%/%/%/componentView">
+ <details key="start" value="1890"/>
+ <details key="end" value="1903"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.59" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/%/%/%.1">
+ <details key="start" value="1931"/>
+ <details key="end" value="1936"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.60" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/%/%.1">
+ <details key="start" value="1945"/>
+ <details key="end" value="1989"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.61" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/%/%.1/%">
+ <details key="start" value="1945"/>
+ <details key="end" value="1974"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.62" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/%/%.1/%/systemView">
+ <details key="start" value="1945"/>
+ <details key="end" value="1955"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.63" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/%/%.1/%.1">
+ <details key="start" value="1983"/>
+ <details key="end" value="1988"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.64" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/BlockQN">
+ <details key="start" value="1992"/>
+ <details key="end" value="1999"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.65" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/SubSystemQN">
+ <details key="start" value="2001"/>
+ <details key="end" value="2012"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.66" references="/0/generateErrorModel/%/%/%/%/%/allBlocks/%/SystemQN">
+ <details key="start" value="2014"/>
+ <details key="end" value="2022"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.67" references="/0/generateErrorModel/%/%/%/%/deploymentView">
+ <details key="start" value="1729"/>
+ <details key="end" value="1843"/>
+ <details key="line" value="36"/>
+ </eAnnotations>
+ <eAnnotations source="positions.68" references="/0/generateErrorModel/%/%/%/%/deploymentView/any">
+ <details key="start" value="1759"/>
+ <details key="end" value="1845"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.69" references="/0/generateErrorModel/%/%/%/%/deploymentView/any/%">
+ <details key="start" value="1759"/>
+ <details key="end" value="1778"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.70" references="/0/generateErrorModel/%/%/%/%/deploymentView/any/%/model">
+ <details key="start" value="1759"/>
+ <details key="end" value="1764"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.71" references="/0/generateErrorModel/%/%/%/%/deploymentView/any/%.1">
+ <details key="start" value="1798"/>
+ <details key="end" value="1844"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.72" references="/0/generateErrorModel/%/%/%/%/deploymentView/any/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.73" references="/0/generateErrorModel/%/%/%/%/deploymentView/any/%.1/%/%/%">
+ <details key="start" value="1798"/>
+ <details key="end" value="1832"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.74" references="/0/generateErrorModel/%/%/%/%/deploymentView/any/%.1/%/%/%/p">
+ <details key="start" value="1798"/>
+ <details key="end" value="1799"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.75" references="/0/generateErrorModel/%/%/%/%/deploymentView/any/%.1/%/%/%/DeplViewQN">
+ <details key="start" value="1821"/>
+ <details key="end" value="1831"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.76" references="/0/generateErrorModel/%/%/%/%/deploymentView/any/p">
+ <details key="start" value="1784"/>
+ <details key="end" value="1795"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.77" references="/0/generateErrorModel/%/%/%/systemView">
+ <details key="start" value="1610"/>
+ <details key="end" value="1721"/>
+ <details key="line" value="35"/>
+ </eAnnotations>
+ <eAnnotations source="positions.78" references="/0/generateErrorModel/%/%/%/systemView/any">
+ <details key="start" value="1634"/>
+ <details key="end" value="1722"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.79" references="/0/generateErrorModel/%/%/%/systemView/any/%">
+ <details key="start" value="1634"/>
+ <details key="end" value="1653"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.80" references="/0/generateErrorModel/%/%/%/systemView/any/%/model">
+ <details key="start" value="1634"/>
+ <details key="end" value="1639"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.81" references="/0/generateErrorModel/%/%/%/systemView/any/%.1">
+ <details key="start" value="1673"/>
+ <details key="end" value="1721"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.82" references="/0/generateErrorModel/%/%/%/systemView/any/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.83" references="/0/generateErrorModel/%/%/%/systemView/any/%.1/%/%/%">
+ <details key="start" value="1673"/>
+ <details key="end" value="1709"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.84" references="/0/generateErrorModel/%/%/%/systemView/any/%.1/%/%/%/p">
+ <details key="start" value="1673"/>
+ <details key="end" value="1674"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.85" references="/0/generateErrorModel/%/%/%/systemView/any/%.1/%/%/%/SystemViewQN">
+ <details key="start" value="1696"/>
+ <details key="end" value="1708"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.86" references="/0/generateErrorModel/%/%/%/systemView/any/p">
+ <details key="start" value="1659"/>
+ <details key="end" value="1670"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.87" references="/0/generateErrorModel/%/%/componentView">
+ <details key="start" value="1490"/>
+ <details key="end" value="1602"/>
+ <details key="line" value="34"/>
+ </eAnnotations>
+ <eAnnotations source="positions.88" references="/0/generateErrorModel/%/%/componentView/any">
+ <details key="start" value="1517"/>
+ <details key="end" value="1603"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.89" references="/0/generateErrorModel/%/%/componentView/any/%">
+ <details key="start" value="1517"/>
+ <details key="end" value="1536"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.90" references="/0/generateErrorModel/%/%/componentView/any/%/model">
+ <details key="start" value="1517"/>
+ <details key="end" value="1522"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.91" references="/0/generateErrorModel/%/%/componentView/any/%.1">
+ <details key="start" value="1556"/>
+ <details key="end" value="1602"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.92" references="/0/generateErrorModel/%/%/componentView/any/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.93" references="/0/generateErrorModel/%/%/componentView/any/%.1/%/%/%">
+ <details key="start" value="1556"/>
+ <details key="end" value="1590"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.94" references="/0/generateErrorModel/%/%/componentView/any/%.1/%/%/%/p">
+ <details key="start" value="1556"/>
+ <details key="end" value="1557"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.95" references="/0/generateErrorModel/%/%/componentView/any/%.1/%/%/%/CompViewQN">
+ <details key="start" value="1579"/>
+ <details key="end" value="1589"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.96" references="/0/generateErrorModel/%/%/componentView/any/p">
+ <details key="start" value="1542"/>
+ <details key="end" value="1553"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.97" references="/0/generateErrorModel/%/%.1">
+ <details key="start" value="1442"/>
+ <details key="end" value="1465"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.98" references="/0/generateErrorModel/%/%.1/filename">
+ <details key="start" value="1442"/>
+ <details key="end" value="1450"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.99" references="/0/generateErrorModel/%/%.1/%">
+ <details key="start" value="1458"/>
+ <details key="end" value="1464"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.100" references="/0/generateErrorModel/%/%.2">
+ <details key="start" value="1474"/>
+ <details key="end" value="1481"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.101" references="/0/generateErrorModel/model">
+ <details key="start" value="881"/>
+ <details key="end" value="894"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.102" references="/0/generateErrorModel/sysQN">
+ <details key="start" value="896"/>
+ <details key="end" value="910"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.103" references="/0/generateErrorModel/sysName">
+ <details key="start" value="913"/>
+ <details key="end" value="929"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.104" references="/0/generateErrorModel/filename">
+ <details key="start" value="931"/>
+ <details key="end" value="948"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.105" references="/0/generateModule">
+ <details key="start" value="2458"/>
+ <details key="end" value="9218"/>
+ <details key="line" value="51"/>
+ </eAnnotations>
+ <eAnnotations source="positions.106" references="/0/generateModule/@init">
+ <details key="start" value="2572"/>
+ <details key="end" value="3153"/>
+ <details key="line" value="51"/>
+ </eAnnotations>
+ <eAnnotations source="positions.107" references="/0/generateModule/@init/@variable.0">
+ <details key="start" value="2575"/>
+ <details key="end" value="2618"/>
+ <details key="line" value="52"/>
+ </eAnnotations>
+ <eAnnotations source="positions.108" references="/0/generateModule/@init/@variable.0/%">
+ <details key="start" value="2595"/>
+ <details key="end" value="2618"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.109" references="/0/generateModule/@init/@variable.1">
+ <details key="start" value="2621"/>
+ <details key="end" value="2680"/>
+ <details key="line" value="53"/>
+ </eAnnotations>
+ <eAnnotations source="positions.110" references="/0/generateModule/@init/@variable.1/%">
+ <details key="start" value="2647"/>
+ <details key="end" value="2680"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.111" references="/0/generateModule/@init/@variable.2">
+ <details key="start" value="2683"/>
+ <details key="end" value="2736"/>
+ <details key="line" value="54"/>
+ </eAnnotations>
+ <eAnnotations source="positions.112" references="/0/generateModule/@init/@variable.2/%">
+ <details key="start" value="2705"/>
+ <details key="end" value="2736"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.113" references="/0/generateModule/@init/@variable.3">
+ <details key="start" value="2739"/>
+ <details key="end" value="2817"/>
+ <details key="line" value="55"/>
+ </eAnnotations>
+ <eAnnotations source="positions.114" references="/0/generateModule/@init/@variable.3/%">
+ <details key="start" value="2763"/>
+ <details key="end" value="2817"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.115" references="/0/generateModule/@init/@variable.4">
+ <details key="start" value="2820"/>
+ <details key="end" value="2910"/>
+ <details key="line" value="56"/>
+ </eAnnotations>
+ <eAnnotations source="positions.116" references="/0/generateModule/@init/@variable.4/%">
+ <details key="start" value="2847"/>
+ <details key="end" value="2910"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.117" references="/0/generateModule/@init/@variable.5">
+ <details key="start" value="2913"/>
+ <details key="end" value="2997"/>
+ <details key="line" value="57"/>
+ </eAnnotations>
+ <eAnnotations source="positions.118" references="/0/generateModule/@init/@variable.5/%">
+ <details key="start" value="2940"/>
+ <details key="end" value="2997"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.119" references="/0/generateModule/@init/@variable.6">
+ <details key="start" value="3000"/>
+ <details key="end" value="3079"/>
+ <details key="line" value="58"/>
+ </eAnnotations>
+ <eAnnotations source="positions.120" references="/0/generateModule/@init/@variable.6/%">
+ <details key="start" value="3030"/>
+ <details key="end" value="3079"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.121" references="/0/generateModule/@init/@variable.7">
+ <details key="start" value="3082"/>
+ <details key="end" value="3150"/>
+ <details key="line" value="59"/>
+ </eAnnotations>
+ <eAnnotations source="positions.122" references="/0/generateModule/@init/@variable.7/%">
+ <details key="start" value="3109"/>
+ <details key="end" value="3150"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.123" references="/0/generateModule/%">
+ <details key="start" value="3155"/>
+ <details key="end" value="3156"/>
+ <details key="line" value="61"/>
+ </eAnnotations>
+ <eAnnotations source="positions.124" references="/0/generateModule/%.1">
+ <details key="start" value="3157"/>
+ <details key="end" value="3194"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.125" references="/0/generateModule/%.1/%">
+ <details key="start" value="3172"/>
+ <details key="end" value="3182"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.126" references="/0/generateModule/%.1/%/block">
+ <details key="start" value="3172"/>
+ <details key="end" value="3177"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.127" references="/0/generateModule/%.1/generated">
+ <details key="start" value="3184"/>
+ <details key="end" value="3193"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.128" references="/0/generateModule/%.2">
+ <details key="start" value="3196"/>
+ <details key="end" value="3197"/>
+ <details key="line" value="62"/>
+ </eAnnotations>
+ <eAnnotations source="positions.129" references="/0/generateModule/%.3">
+ <details key="start" value="3197"/>
+ <details key="end" value="3294"/>
+ <details key="line" value="62"/>
+ </eAnnotations>
+ <eAnnotations source="positions.130" references="/0/generateModule/%.3/%">
+ <details key="start" value="3213"/>
+ <details key="end" value="3225"/>
+ <details key="line" value="63"/>
+ </eAnnotations>
+ <eAnnotations source="positions.131" references="/0/generateModule/%.3/isSystem">
+ <details key="start" value="3201"/>
+ <details key="end" value="3211"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.132" references="/0/generateModule/%.3/%.1">
+ <details key="start" value="3225"/>
+ <details key="end" value="3289"/>
+ <details key="line" value="64"/>
+ </eAnnotations>
+ <eAnnotations source="positions.133" references="/0/generateModule/%.3/%.1/%">
+ <details key="start" value="3232"/>
+ <details key="end" value="3239"/>
+ <details key="line" value="65"/>
+ </eAnnotations>
+ <eAnnotations source="positions.134" references="/0/generateModule/%.3/%.1/%.1">
+ <details key="start" value="3240"/>
+ <details key="end" value="3250"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.135" references="/0/generateModule/%.3/%.1/%.1/block">
+ <details key="start" value="3240"/>
+ <details key="end" value="3245"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.136" references="/0/generateModule/%.3/%.1/%.2">
+ <details key="start" value="3252"/>
+ <details key="end" value="3253"/>
+ <details key="line" value="65"/>
+ </eAnnotations>
+ <eAnnotations source="positions.137" references="/0/generateModule/%.3/%.1/%.3">
+ <details key="start" value="3254"/>
+ <details key="end" value="3285"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.138" references="/0/generateModule/%.3/%.1/%.3/block">
+ <details key="start" value="3279"/>
+ <details key="end" value="3284"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.139" references="/0/generateModule/%.3/%.1/%.4">
+ <details key="start" value="3287"/>
+ <details key="end" value="3289"/>
+ <details key="line" value="65"/>
+ </eAnnotations>
+ <eAnnotations source="positions.140" references="/0/generateModule/%.4">
+ <details key="start" value="3295"/>
+ <details key="end" value="3300"/>
+ <details key="line" value="67"/>
+ </eAnnotations>
+ <eAnnotations source="positions.141" references="/0/generateModule/%.5">
+ <details key="start" value="3301"/>
+ <details key="end" value="5815"/>
+ <details key="line" value="68"/>
+ </eAnnotations>
+ <eAnnotations source="positions.142" references="/0/generateModule/%.5/%">
+ <details key="start" value="3597"/>
+ <details key="end" value="3959"/>
+ <details key="line" value="71"/>
+ </eAnnotations>
+ <eAnnotations source="positions.143" references="/0/generateModule/%.5/%/%">
+ <details key="start" value="3629"/>
+ <details key="end" value="3951"/>
+ <details key="line" value="72"/>
+ </eAnnotations>
+ <eAnnotations source="positions.144" references="/0/generateModule/%.5/%/%/%">
+ <details key="start" value="3847"/>
+ <details key="end" value="3849"/>
+ <details key="line" value="74"/>
+ </eAnnotations>
+ <eAnnotations source="positions.145" references="/0/generateModule/%.5/%/%/%.1">
+ <details key="start" value="3850"/>
+ <details key="end" value="3859"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.146" references="/0/generateModule/%.5/%/%/%.1/prop">
+ <details key="start" value="3850"/>
+ <details key="end" value="3854"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.147" references="/0/generateModule/%.5/%/%/%.2">
+ <details key="start" value="3861"/>
+ <details key="end" value="3864"/>
+ <details key="line" value="74"/>
+ </eAnnotations>
+ <eAnnotations source="positions.148" references="/0/generateModule/%.5/%/%/%.3">
+ <details key="start" value="3865"/>
+ <details key="end" value="3893"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.149" references="/0/generateModule/%.5/%/%/%.3/prop">
+ <details key="start" value="3888"/>
+ <details key="end" value="3892"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.150" references="/0/generateModule/%.5/%/%/%.4">
+ <details key="start" value="3896"/>
+ <details key="end" value="3941"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.151" references="/0/generateModule/%.5/%/%/%.4/block">
+ <details key="start" value="3929"/>
+ <details key="end" value="3934"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.152" references="/0/generateModule/%.5/%/%/%.4/prop">
+ <details key="start" value="3936"/>
+ <details key="end" value="3940"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.153" references="/0/generateModule/%.5/%/%/%.5">
+ <details key="start" value="3943"/>
+ <details key="end" value="3945"/>
+ <details key="line" value="74"/>
+ </eAnnotations>
+ <eAnnotations source="positions.154" references="/0/generateModule/%.5/%/%/%.6">
+ <details key="start" value="3633"/>
+ <details key="end" value="3723"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.155" references="/0/generateModule/%.5/%/%/%.6/%">
+ <details key="start" value="3634"/>
+ <details key="end" value="3667"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.156" references="/0/generateModule/%.5/%/%/%.6/%/%">
+ <details key="start" value="3638"/>
+ <details key="end" value="3667"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.157" references="/0/generateModule/%.5/%/%/%.6/%/%/%">
+ <details key="start" value="3638"/>
+ <details key="end" value="3652"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.158" references="/0/generateModule/%.5/%/%/%.6/%/%/%/%">
+ <details key="start" value="3638"/>
+ <details key="end" value="3647"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.159" references="/0/generateModule/%.5/%/%/%.6/%/%/%/%/prop">
+ <details key="start" value="3638"/>
+ <details key="end" value="3642"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.160" references="/0/generateModule/%.5/%/%/%.6/%.1">
+ <details key="start" value="3672"/>
+ <details key="end" value="3722"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.161" references="/0/generateModule/%.5/%/%/%.6/%.1/%">
+ <details key="start" value="3676"/>
+ <details key="end" value="3722"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.162" references="/0/generateModule/%.5/%/%/%.6/%.1/%/%">
+ <details key="start" value="3677"/>
+ <details key="end" value="3695"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.163" references="/0/generateModule/%.5/%/%/%.6/%.1/%/%/%">
+ <details key="start" value="3685"/>
+ <details key="end" value="3694"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.164" references="/0/generateModule/%.5/%/%/%.6/%.1/%/%/%/prop">
+ <details key="start" value="3685"/>
+ <details key="end" value="3689"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.165" references="/0/generateModule/%.5/%/%/%.6/%.1/%/%.1">
+ <details key="start" value="3713"/>
+ <details key="end" value="3720"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.166" references="/0/generateModule/%.5/%/prop">
+ <details key="start" value="3603"/>
+ <details key="end" value="3618"/>
+ <details key="line" value="71"/>
+ </eAnnotations>
+ <eAnnotations source="positions.167" references="/0/generateModule/%.5/%/vars">
+ <details key="start" value="3621"/>
+ <details key="end" value="3625"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.168" references="/0/generateModule/%.5/%.1">
+ <details key="start" value="3961"/>
+ <details key="end" value="4741"/>
+ <details key="line" value="77"/>
+ </eAnnotations>
+ <eAnnotations source="positions.169" references="/0/generateModule/%.5/%.1/%">
+ <details key="start" value="4259"/>
+ <details key="end" value="4733"/>
+ <details key="line" value="80"/>
+ </eAnnotations>
+ <eAnnotations source="positions.170" references="/0/generateModule/%.5/%.1/%/%">
+ <details key="start" value="4292"/>
+ <details key="end" value="4725"/>
+ <details key="line" value="81"/>
+ </eAnnotations>
+ <eAnnotations source="positions.171" references="/0/generateModule/%.5/%.1/%/%/%">
+ <details key="start" value="4436"/>
+ <details key="end" value="4718"/>
+ <details key="line" value="83"/>
+ </eAnnotations>
+ <eAnnotations source="positions.172" references="/0/generateModule/%.5/%.1/%/%/%/%">
+ <details key="start" value="4518"/>
+ <details key="end" value="4709"/>
+ <details key="line" value="84"/>
+ </eAnnotations>
+ <eAnnotations source="positions.173" references="/0/generateModule/%.5/%.1/%/%/%/%/%">
+ <details key="start" value="4604"/>
+ <details key="end" value="4606"/>
+ <details key="line" value="84"/>
+ </eAnnotations>
+ <eAnnotations source="positions.174" references="/0/generateModule/%.5/%.1/%/%/%/%/%.1">
+ <details key="start" value="4607"/>
+ <details key="end" value="4616"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.175" references="/0/generateModule/%.5/%.1/%/%/%/%/%.1/prop">
+ <details key="start" value="4607"/>
+ <details key="end" value="4611"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.176" references="/0/generateModule/%.5/%.1/%/%/%/%/%.2">
+ <details key="start" value="4618"/>
+ <details key="end" value="4621"/>
+ <details key="line" value="85"/>
+ </eAnnotations>
+ <eAnnotations source="positions.177" references="/0/generateModule/%.5/%.1/%/%/%/%/%.3">
+ <details key="start" value="4622"/>
+ <details key="end" value="4650"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.178" references="/0/generateModule/%.5/%.1/%/%/%/%/%.3/prop">
+ <details key="start" value="4645"/>
+ <details key="end" value="4649"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.179" references="/0/generateModule/%.5/%.1/%/%/%/%/%.4">
+ <details key="start" value="4653"/>
+ <details key="end" value="4698"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.180" references="/0/generateModule/%.5/%.1/%/%/%/%/%.4/block">
+ <details key="start" value="4686"/>
+ <details key="end" value="4691"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.181" references="/0/generateModule/%.5/%.1/%/%/%/%/%.4/prop">
+ <details key="start" value="4693"/>
+ <details key="end" value="4697"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.182" references="/0/generateModule/%.5/%.1/%/%/%/%/%.5">
+ <details key="start" value="4700"/>
+ <details key="end" value="4702"/>
+ <details key="line" value="85"/>
+ </eAnnotations>
+ <eAnnotations source="positions.183" references="/0/generateModule/%.5/%.1/%/%/%/%/%.6">
+ <details key="start" value="4522"/>
+ <details key="end" value="4601"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.184" references="/0/generateModule/%.5/%.1/%/%/%/%/%.6/%">
+ <details key="start" value="4523"/>
+ <details key="end" value="4576"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.185" references="/0/generateModule/%.5/%.1/%/%/%/%/%.6/%/%">
+ <details key="start" value="4523"/>
+ <details key="end" value="4565"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.186" references="/0/generateModule/%.5/%.1/%/%/%/%/%.6/%/%/prop">
+ <details key="start" value="4523"/>
+ <details key="end" value="4527"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.187" references="/0/generateModule/%.5/%.1/%/%/%/%/%.6/%/%/flowPortStereo">
+ <details key="start" value="4537"/>
+ <details key="end" value="4551"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.188" references="/0/generateModule/%.5/%.1/%/%/%/%/%.6/%/%/%">
+ <details key="start" value="4553"/>
+ <details key="end" value="4564"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.189" references="/0/generateModule/%.5/%.1/%/%/%/%/%.6/%.1">
+ <details key="start" value="4594"/>
+ <details key="end" value="4599"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.190" references="/0/generateModule/%.5/%.1/%/%/%/flowPortStereo">
+ <details key="start" value="4441"/>
+ <details key="end" value="4513"/>
+ <details key="line" value="83"/>
+ </eAnnotations>
+ <eAnnotations source="positions.191" references="/0/generateModule/%.5/%.1/%/%/%/flowPortStereo/%">
+ <details key="start" value="4472"/>
+ <details key="end" value="4514"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.192" references="/0/generateModule/%.5/%.1/%/%/%/flowPortStereo/%/prop">
+ <details key="start" value="4472"/>
+ <details key="end" value="4476"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.193" references="/0/generateModule/%.5/%.1/%/%/%/flowPortStereo/%/MARTEFlowPortQN">
+ <details key="start" value="4498"/>
+ <details key="end" value="4513"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.194" references="/0/generateModule/%.5/%.1/%/%/%.1">
+ <details key="start" value="4296"/>
+ <details key="end" value="4386"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.195" references="/0/generateModule/%.5/%.1/%/%/%.1/%">
+ <details key="start" value="4297"/>
+ <details key="end" value="4330"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.196" references="/0/generateModule/%.5/%.1/%/%/%.1/%/%">
+ <details key="start" value="4301"/>
+ <details key="end" value="4330"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.197" references="/0/generateModule/%.5/%.1/%/%/%.1/%/%/%">
+ <details key="start" value="4301"/>
+ <details key="end" value="4315"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.198" references="/0/generateModule/%.5/%.1/%/%/%.1/%/%/%/%">
+ <details key="start" value="4301"/>
+ <details key="end" value="4310"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.199" references="/0/generateModule/%.5/%.1/%/%/%.1/%/%/%/%/prop">
+ <details key="start" value="4301"/>
+ <details key="end" value="4305"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.200" references="/0/generateModule/%.5/%.1/%/%/%.1/%.1">
+ <details key="start" value="4335"/>
+ <details key="end" value="4385"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.201" references="/0/generateModule/%.5/%.1/%/%/%.1/%.1/%">
+ <details key="start" value="4339"/>
+ <details key="end" value="4385"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.202" references="/0/generateModule/%.5/%.1/%/%/%.1/%.1/%/%">
+ <details key="start" value="4340"/>
+ <details key="end" value="4358"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.203" references="/0/generateModule/%.5/%.1/%/%/%.1/%.1/%/%/%">
+ <details key="start" value="4348"/>
+ <details key="end" value="4357"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.204" references="/0/generateModule/%.5/%.1/%/%/%.1/%.1/%/%/%/prop">
+ <details key="start" value="4348"/>
+ <details key="end" value="4352"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.205" references="/0/generateModule/%.5/%.1/%/%/%.1/%.1/%/%.1">
+ <details key="start" value="4376"/>
+ <details key="end" value="4383"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.206" references="/0/generateModule/%.5/%.1/%/prop">
+ <details key="start" value="4265"/>
+ <details key="end" value="4280"/>
+ <details key="line" value="80"/>
+ </eAnnotations>
+ <eAnnotations source="positions.207" references="/0/generateModule/%.5/%.1/%/ports">
+ <details key="start" value="4283"/>
+ <details key="end" value="4288"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.208" references="/0/generateModule/%.5/%.1/ports">
+ <details key="start" value="3966"/>
+ <details key="end" value="4256"/>
+ <details key="line" value="77"/>
+ </eAnnotations>
+ <eAnnotations source="positions.209" references="/0/generateModule/%.5/%.1/ports/select">
+ <details key="start" value="3998"/>
+ <details key="end" value="4257"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.210" references="/0/generateModule/%.5/%.1/ports/select/%">
+ <details key="start" value="3998"/>
+ <details key="end" value="4013"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.211" references="/0/generateModule/%.5/%.1/ports/select/%/block">
+ <details key="start" value="3998"/>
+ <details key="end" value="4003"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.212" references="/0/generateModule/%.5/%.1/ports/select/%.1">
+ <details key="start" value="4037"/>
+ <details key="end" value="4256"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.213" references="/0/generateModule/%.5/%.1/ports/select/%.1/%">
+ <details key="start" value="4037"/>
+ <details key="end" value="4197"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.214" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%">
+ <details key="start" value="4037"/>
+ <details key="end" value="4139"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.215" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%/%">
+ <details key="start" value="4037"/>
+ <details key="end" value="4086"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.216" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.217" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%/%/%/%/%">
+ <details key="start" value="4037"/>
+ <details key="end" value="4075"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.218" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%/%/%/%/%/p">
+ <details key="start" value="4037"/>
+ <details key="end" value="4038"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.219" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%/%/%/%/%/ContractPropQN">
+ <details key="start" value="4060"/>
+ <details key="end" value="4074"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.220" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%/%.1">
+ <details key="start" value="4094"/>
+ <details key="end" value="4139"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.221" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.222" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%/%.1/%/%/%">
+ <details key="start" value="4094"/>
+ <details key="end" value="4128"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.223" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%/%.1/%/%/%/p">
+ <details key="start" value="4094"/>
+ <details key="end" value="4095"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.224" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%/%.1/%/%/%/FlowPortQN">
+ <details key="start" value="4117"/>
+ <details key="end" value="4127"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.225" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%.1">
+ <details key="start" value="4144"/>
+ <details key="end" value="4197"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.226" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.227" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%.1/%/%/%">
+ <details key="start" value="4144"/>
+ <details key="end" value="4186"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.228" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%.1/%/%/%/p">
+ <details key="start" value="4144"/>
+ <details key="end" value="4145"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.229" references="/0/generateModule/%.5/%.1/ports/select/%.1/%/%.1/%/%/%/ClientServerPortQN">
+ <details key="start" value="4167"/>
+ <details key="end" value="4185"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.230" references="/0/generateModule/%.5/%.1/ports/select/%.1/%.1">
+ <details key="start" value="4205"/>
+ <details key="end" value="4256"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.231" references="/0/generateModule/%.5/%.1/ports/select/%.1/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.232" references="/0/generateModule/%.5/%.1/ports/select/%.1/%.1/%/%/%">
+ <details key="start" value="4205"/>
+ <details key="end" value="4244"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.233" references="/0/generateModule/%.5/%.1/ports/select/%.1/%.1/%/%/%/p">
+ <details key="start" value="4205"/>
+ <details key="end" value="4206"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.234" references="/0/generateModule/%.5/%.1/ports/select/%.1/%.1/%/%/%/MARTEFlowPortQN">
+ <details key="start" value="4228"/>
+ <details key="end" value="4243"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.235" references="/0/generateModule/%.5/%.1/ports/select/p">
+ <details key="start" value="4022"/>
+ <details key="end" value="4034"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.236" references="/0/generateModule/%.5/%.2">
+ <details key="start" value="4743"/>
+ <details key="end" value="5297"/>
+ <details key="line" value="91"/>
+ </eAnnotations>
+ <eAnnotations source="positions.237" references="/0/generateModule/%.5/%.2/%">
+ <details key="start" value="4792"/>
+ <details key="end" value="5289"/>
+ <details key="line" value="92"/>
+ </eAnnotations>
+ <eAnnotations source="positions.238" references="/0/generateModule/%.5/%.2/%/%">
+ <details key="start" value="4827"/>
+ <details key="end" value="5281"/>
+ <details key="line" value="93"/>
+ </eAnnotations>
+ <eAnnotations source="positions.239" references="/0/generateModule/%.5/%.2/%/%/%">
+ <details key="start" value="5000"/>
+ <details key="end" value="5274"/>
+ <details key="line" value="95"/>
+ </eAnnotations>
+ <eAnnotations source="positions.240" references="/0/generateModule/%.5/%.2/%/%/%/%">
+ <details key="start" value="5098"/>
+ <details key="end" value="5266"/>
+ <details key="line" value="96"/>
+ </eAnnotations>
+ <eAnnotations source="positions.241" references="/0/generateModule/%.5/%.2/%/%/%/%/%">
+ <details key="start" value="5184"/>
+ <details key="end" value="5193"/>
+ <details key="line" value="97"/>
+ </eAnnotations>
+ <eAnnotations source="positions.242" references="/0/generateModule/%.5/%.2/%/%/%/%/%.1">
+ <details key="start" value="5194"/>
+ <details key="end" value="5209"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.243" references="/0/generateModule/%.5/%.2/%/%/%/%/%.1/rule">
+ <details key="start" value="5194"/>
+ <details key="end" value="5198"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.244" references="/0/generateModule/%.5/%.2/%/%/%/%/%.2">
+ <details key="start" value="5211"/>
+ <details key="end" value="5215"/>
+ <details key="line" value="98"/>
+ </eAnnotations>
+ <eAnnotations source="positions.245" references="/0/generateModule/%.5/%.2/%/%/%/%/spec">
+ <details key="start" value="5216"/>
+ <details key="end" value="5220"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.246" references="/0/generateModule/%.5/%.2/%/%/%/%/%.3">
+ <details key="start" value="5222"/>
+ <details key="end" value="5258"/>
+ <details key="line" value="98"/>
+ </eAnnotations>
+ <eAnnotations source="positions.247" references="/0/generateModule/%.5/%.2/%/%/%/%/%.3/%">
+ <details key="start" value="5250"/>
+ <details key="end" value="5252"/>
+ <details key="line" value="98"/>
+ </eAnnotations>
+ <eAnnotations source="positions.248" references="/0/generateModule/%.5/%.2/%/%/%/%/%.3/%.1">
+ <details key="start" value="5226"/>
+ <details key="end" value="5249"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.249" references="/0/generateModule/%.5/%.2/%/%/%/%/%.3/%.1/%">
+ <details key="start" value="5229"/>
+ <details key="end" value="5249"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.250" references="/0/generateModule/%.5/%.2/%/%/%/%/%.3/%.1/%/spec">
+ <details key="start" value="5230"/>
+ <details key="end" value="5234"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.251" references="/0/generateModule/%.5/%.2/%/%/%/%/%.3/%.1/%/%">
+ <details key="start" value="5244"/>
+ <details key="end" value="5247"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.252" references="/0/generateModule/%.5/%.2/%/%/%/%/spec.1">
+ <details key="start" value="5103"/>
+ <details key="end" value="5182"/>
+ <details key="line" value="96"/>
+ </eAnnotations>
+ <eAnnotations source="positions.253" references="/0/generateModule/%.5/%.2/%/%/%/%/spec.1/%">
+ <details key="start" value="5120"/>
+ <details key="end" value="5183"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.254" references="/0/generateModule/%.5/%.2/%/%/%/%/spec.1/%/%">
+ <details key="start" value="5120"/>
+ <details key="end" value="5172"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.255" references="/0/generateModule/%.5/%.2/%/%/%/%/spec.1/%/%/%">
+ <details key="start" value="5120"/>
+ <details key="end" value="5166"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.256" references="/0/generateModule/%.5/%.2/%/%/%/%/spec.1/%/%/%/%">
+ <details key="start" value="5120"/>
+ <details key="end" value="5138"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.257" references="/0/generateModule/%.5/%.2/%/%/%/%/spec.1/%/%/%/%/rule">
+ <details key="start" value="5120"/>
+ <details key="end" value="5124"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.258" references="/0/generateModule/%.5/%.2/%/%/%/%/spec.1/%/%/%/%.1">
+ <details key="start" value="5149"/>
+ <details key="end" value="5165"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.259" references="/0/generateModule/%.5/%.2/%/%/%/%/spec.1/%/index">
+ <details key="start" value="5177"/>
+ <details key="end" value="5182"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.260" references="/0/generateModule/%.5/%.2/%/%/%/index">
+ <details key="start" value="5006"/>
+ <details key="end" value="5095"/>
+ <details key="line" value="95"/>
+ </eAnnotations>
+ <eAnnotations source="positions.261" references="/0/generateModule/%.5/%.2/%/%/%/index/%">
+ <details key="start" value="5025"/>
+ <details key="end" value="5096"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.262" references="/0/generateModule/%.5/%.2/%/%/%/index/%/%">
+ <details key="start" value="5025"/>
+ <details key="end" value="5080"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.263" references="/0/generateModule/%.5/%.2/%/%/%/index/%/%/%">
+ <details key="start" value="5025"/>
+ <details key="end" value="5071"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.264" references="/0/generateModule/%.5/%.2/%/%/%/index/%/%/%/%">
+ <details key="start" value="5025"/>
+ <details key="end" value="5043"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.265" references="/0/generateModule/%.5/%.2/%/%/%/index/%/%/%/%/rule">
+ <details key="start" value="5025"/>
+ <details key="end" value="5029"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.266" references="/0/generateModule/%.5/%.2/%/%/%/index/%/%/%/%.1">
+ <details key="start" value="5054"/>
+ <details key="end" value="5070"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.267" references="/0/generateModule/%.5/%.2/%/%/%/index/%/%.1">
+ <details key="start" value="5090"/>
+ <details key="end" value="5095"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.268" references="/0/generateModule/%.5/%.2/%/%/%.1">
+ <details key="start" value="4831"/>
+ <details key="end" value="4997"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.269" references="/0/generateModule/%.5/%.2/%/%/%.1/%">
+ <details key="start" value="4832"/>
+ <details key="end" value="4880"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.270" references="/0/generateModule/%.5/%.2/%/%/%.1/%/%">
+ <details key="start" value="4832"/>
+ <details key="end" value="4850"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.271" references="/0/generateModule/%.5/%.2/%/%/%.1/%/%/rule">
+ <details key="start" value="4832"/>
+ <details key="end" value="4836"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.272" references="/0/generateModule/%.5/%.2/%/%/%.1/%/%.1">
+ <details key="start" value="4863"/>
+ <details key="end" value="4879"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.273" references="/0/generateModule/%.5/%.2/%/%/%.1/%.1">
+ <details key="start" value="4888"/>
+ <details key="end" value="4996"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.274" references="/0/generateModule/%.5/%.2/%/%/%.1/%.1/select">
+ <details key="start" value="4888"/>
+ <details key="end" value="4984"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.275" references="/0/generateModule/%.5/%.2/%/%/%.1/%.1/select/%">
+ <details key="start" value="4888"/>
+ <details key="end" value="4943"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.276" references="/0/generateModule/%.5/%.2/%/%/%.1/%.1/select/%/%">
+ <details key="start" value="4888"/>
+ <details key="end" value="4934"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.277" references="/0/generateModule/%.5/%.2/%/%/%.1/%.1/select/%/%/%">
+ <details key="start" value="4888"/>
+ <details key="end" value="4906"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.278" references="/0/generateModule/%.5/%.2/%/%/%.1/%.1/select/%/%/%/rule">
+ <details key="start" value="4888"/>
+ <details key="end" value="4892"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.279" references="/0/generateModule/%.5/%.2/%/%/%.1/%.1/select/%/%/%.1">
+ <details key="start" value="4917"/>
+ <details key="end" value="4933"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.280" references="/0/generateModule/%.5/%.2/%/%/%.1/%.1/select/%.1">
+ <details key="start" value="4966"/>
+ <details key="end" value="4983"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.281" references="/0/generateModule/%.5/%.2/%/%/%.1/%.1/select/%.1/l">
+ <details key="start" value="4966"/>
+ <details key="end" value="4967"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.282" references="/0/generateModule/%.5/%.2/%/%/%.1/%.1/select/%.1/%">
+ <details key="start" value="4977"/>
+ <details key="end" value="4982"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.283" references="/0/generateModule/%.5/%.2/%/%/%.1/%.1/select/l">
+ <details key="start" value="4953"/>
+ <details key="end" value="4963"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.284" references="/0/generateModule/%.5/%.2/%/rule">
+ <details key="start" value="4798"/>
+ <details key="end" value="4815"/>
+ <details key="line" value="92"/>
+ </eAnnotations>
+ <eAnnotations source="positions.285" references="/0/generateModule/%.5/%.2/%/rules">
+ <details key="start" value="4818"/>
+ <details key="end" value="4823"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.286" references="/0/generateModule/%.5/%.2/rules">
+ <details key="start" value="4748"/>
+ <details key="end" value="4789"/>
+ <details key="line" value="91"/>
+ </eAnnotations>
+ <eAnnotations source="positions.287" references="/0/generateModule/%.5/%.2/rules/%">
+ <details key="start" value="4775"/>
+ <details key="end" value="4790"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.288" references="/0/generateModule/%.5/%.2/rules/%/block">
+ <details key="start" value="4775"/>
+ <details key="end" value="4780"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.289" references="/0/generateModule/%.5/%.3">
+ <details key="start" value="5299"/>
+ <details key="end" value="5636"/>
+ <details key="line" value="105"/>
+ </eAnnotations>
+ <eAnnotations source="positions.290" references="/0/generateModule/%.5/%.3/%">
+ <details key="start" value="5558"/>
+ <details key="end" value="5628"/>
+ <details key="line" value="108"/>
+ </eAnnotations>
+ <eAnnotations source="positions.291" references="/0/generateModule/%.5/%.3/%/%">
+ <details key="start" value="5589"/>
+ <details key="end" value="5600"/>
+ <details key="line" value="109"/>
+ </eAnnotations>
+ <eAnnotations source="positions.292" references="/0/generateModule/%.5/%.3/%/%.1">
+ <details key="start" value="5601"/>
+ <details key="end" value="5618"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.293" references="/0/generateModule/%.5/%.3/%/%.1/prop">
+ <details key="start" value="5601"/>
+ <details key="end" value="5605"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.294" references="/0/generateModule/%.5/%.3/%/%.2">
+ <details key="start" value="5620"/>
+ <details key="end" value="5621"/>
+ <details key="line" value="110"/>
+ </eAnnotations>
+ <eAnnotations source="positions.295" references="/0/generateModule/%.5/%.3/%/prop">
+ <details key="start" value="5564"/>
+ <details key="end" value="5579"/>
+ <details key="line" value="108"/>
+ </eAnnotations>
+ <eAnnotations source="positions.296" references="/0/generateModule/%.5/%.3/%/vars">
+ <details key="start" value="5582"/>
+ <details key="end" value="5586"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.297" references="/0/generateModule/%.5/%.3/vars">
+ <details key="start" value="5304"/>
+ <details key="end" value="5555"/>
+ <details key="line" value="105"/>
+ </eAnnotations>
+ <eAnnotations source="positions.298" references="/0/generateModule/%.5/%.3/vars/select">
+ <details key="start" value="5335"/>
+ <details key="end" value="5556"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.299" references="/0/generateModule/%.5/%.3/vars/select/%">
+ <details key="start" value="5335"/>
+ <details key="end" value="5350"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.300" references="/0/generateModule/%.5/%.3/vars/select/%/block">
+ <details key="start" value="5335"/>
+ <details key="end" value="5340"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.301" references="/0/generateModule/%.5/%.3/vars/select/%.1">
+ <details key="start" value="5374"/>
+ <details key="end" value="5555"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.302" references="/0/generateModule/%.5/%.3/vars/select/%.1/%">
+ <details key="start" value="5374"/>
+ <details key="end" value="5497"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.303" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%">
+ <details key="start" value="5374"/>
+ <details key="end" value="5439"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.304" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%/%">
+ <details key="start" value="5374"/>
+ <details key="end" value="5386"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.305" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%/%/p">
+ <details key="start" value="5374"/>
+ <details key="end" value="5375"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.306" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%/%.1">
+ <details key="start" value="5394"/>
+ <details key="end" value="5439"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.307" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.308" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%/%.1/%/%/%">
+ <details key="start" value="5394"/>
+ <details key="end" value="5428"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.309" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%/%.1/%/%/%/p">
+ <details key="start" value="5394"/>
+ <details key="end" value="5395"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.310" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%/%.1/%/%/%/FlowPortQN">
+ <details key="start" value="5417"/>
+ <details key="end" value="5427"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.311" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%.1">
+ <details key="start" value="5444"/>
+ <details key="end" value="5497"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.312" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.313" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%.1/%/%/%">
+ <details key="start" value="5444"/>
+ <details key="end" value="5486"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.314" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%.1/%/%/%/p">
+ <details key="start" value="5444"/>
+ <details key="end" value="5445"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.315" references="/0/generateModule/%.5/%.3/vars/select/%.1/%/%.1/%/%/%/ClientServerPortQN">
+ <details key="start" value="5467"/>
+ <details key="end" value="5485"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.316" references="/0/generateModule/%.5/%.3/vars/select/%.1/%.1">
+ <details key="start" value="5505"/>
+ <details key="end" value="5555"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.317" references="/0/generateModule/%.5/%.3/vars/select/%.1/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.318" references="/0/generateModule/%.5/%.3/vars/select/%.1/%.1/%/%/%">
+ <details key="start" value="5505"/>
+ <details key="end" value="5544"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.319" references="/0/generateModule/%.5/%.3/vars/select/%.1/%.1/%/%/%/p">
+ <details key="start" value="5505"/>
+ <details key="end" value="5506"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.320" references="/0/generateModule/%.5/%.3/vars/select/%.1/%.1/%/%/%/MARTEFlowPortQN">
+ <details key="start" value="5528"/>
+ <details key="end" value="5543"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.321" references="/0/generateModule/%.5/%.3/vars/select/p">
+ <details key="start" value="5359"/>
+ <details key="end" value="5371"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.322" references="/0/generateModule/%.5/%.4">
+ <details key="start" value="5637"/>
+ <details key="end" value="5644"/>
+ <details key="line" value="112"/>
+ </eAnnotations>
+ <eAnnotations source="positions.323" references="/0/generateModule/%.5/%.5">
+ <details key="start" value="5645"/>
+ <details key="end" value="5807"/>
+ <details key="line" value="113"/>
+ </eAnnotations>
+ <eAnnotations source="positions.324" references="/0/generateModule/%.5/%.5/%">
+ <details key="start" value="5677"/>
+ <details key="end" value="5799"/>
+ <details key="line" value="114"/>
+ </eAnnotations>
+ <eAnnotations source="positions.325" references="/0/generateModule/%.5/%.5/%/%">
+ <details key="start" value="5767"/>
+ <details key="end" value="5769"/>
+ <details key="line" value="115"/>
+ </eAnnotations>
+ <eAnnotations source="positions.326" references="/0/generateModule/%.5/%.5/%/%.1">
+ <details key="start" value="5770"/>
+ <details key="end" value="5779"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.327" references="/0/generateModule/%.5/%.5/%/%.1/prop">
+ <details key="start" value="5770"/>
+ <details key="end" value="5774"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.328" references="/0/generateModule/%.5/%.5/%/%.2">
+ <details key="start" value="5781"/>
+ <details key="end" value="5793"/>
+ <details key="line" value="115"/>
+ </eAnnotations>
+ <eAnnotations source="positions.329" references="/0/generateModule/%.5/%.5/%/%.3">
+ <details key="start" value="5681"/>
+ <details key="end" value="5765"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.330" references="/0/generateModule/%.5/%.5/%/%.3/%">
+ <details key="start" value="5682"/>
+ <details key="end" value="5715"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.331" references="/0/generateModule/%.5/%.5/%/%.3/%/%">
+ <details key="start" value="5686"/>
+ <details key="end" value="5715"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.332" references="/0/generateModule/%.5/%.5/%/%.3/%/%/%">
+ <details key="start" value="5686"/>
+ <details key="end" value="5700"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.333" references="/0/generateModule/%.5/%.5/%/%.3/%/%/%/%">
+ <details key="start" value="5686"/>
+ <details key="end" value="5695"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.334" references="/0/generateModule/%.5/%.5/%/%.3/%/%/%/%/prop">
+ <details key="start" value="5686"/>
+ <details key="end" value="5690"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.335" references="/0/generateModule/%.5/%.5/%/%.3/%.1">
+ <details key="start" value="5720"/>
+ <details key="end" value="5764"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.336" references="/0/generateModule/%.5/%.5/%/%.3/%.1/%">
+ <details key="start" value="5720"/>
+ <details key="end" value="5738"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.337" references="/0/generateModule/%.5/%.5/%/%.3/%.1/%/%">
+ <details key="start" value="5728"/>
+ <details key="end" value="5737"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.338" references="/0/generateModule/%.5/%.5/%/%.3/%.1/%/%/prop">
+ <details key="start" value="5728"/>
+ <details key="end" value="5732"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.339" references="/0/generateModule/%.5/%.5/%/%.3/%.1/%.1">
+ <details key="start" value="5756"/>
+ <details key="end" value="5763"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.340" references="/0/generateModule/%.5/%.5/prop">
+ <details key="start" value="5651"/>
+ <details key="end" value="5666"/>
+ <details key="line" value="113"/>
+ </eAnnotations>
+ <eAnnotations source="positions.341" references="/0/generateModule/%.5/%.5/vars">
+ <details key="start" value="5669"/>
+ <details key="end" value="5673"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.342" references="/0/generateModule/%.5/vars">
+ <details key="start" value="3306"/>
+ <details key="end" value="3594"/>
+ <details key="line" value="68"/>
+ </eAnnotations>
+ <eAnnotations source="positions.343" references="/0/generateModule/%.5/vars/select">
+ <details key="start" value="3337"/>
+ <details key="end" value="3595"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.344" references="/0/generateModule/%.5/vars/select/%">
+ <details key="start" value="3337"/>
+ <details key="end" value="3352"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.345" references="/0/generateModule/%.5/vars/select/%/block">
+ <details key="start" value="3337"/>
+ <details key="end" value="3342"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.346" references="/0/generateModule/%.5/vars/select/%.1">
+ <details key="start" value="3376"/>
+ <details key="end" value="3594"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.347" references="/0/generateModule/%.5/vars/select/%.1/%">
+ <details key="start" value="3376"/>
+ <details key="end" value="3536"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.348" references="/0/generateModule/%.5/vars/select/%.1/%/%">
+ <details key="start" value="3376"/>
+ <details key="end" value="3478"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.349" references="/0/generateModule/%.5/vars/select/%.1/%/%/%">
+ <details key="start" value="3376"/>
+ <details key="end" value="3425"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.350" references="/0/generateModule/%.5/vars/select/%.1/%/%/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.351" references="/0/generateModule/%.5/vars/select/%.1/%/%/%/%/%/%">
+ <details key="start" value="3376"/>
+ <details key="end" value="3414"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.352" references="/0/generateModule/%.5/vars/select/%.1/%/%/%/%/%/%/p">
+ <details key="start" value="3376"/>
+ <details key="end" value="3377"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.353" references="/0/generateModule/%.5/vars/select/%.1/%/%/%/%/%/%/ContractPropQN">
+ <details key="start" value="3399"/>
+ <details key="end" value="3413"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.354" references="/0/generateModule/%.5/vars/select/%.1/%/%/%.1">
+ <details key="start" value="3433"/>
+ <details key="end" value="3478"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.355" references="/0/generateModule/%.5/vars/select/%.1/%/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.356" references="/0/generateModule/%.5/vars/select/%.1/%/%/%.1/%/%/%">
+ <details key="start" value="3433"/>
+ <details key="end" value="3467"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.357" references="/0/generateModule/%.5/vars/select/%.1/%/%/%.1/%/%/%/p">
+ <details key="start" value="3433"/>
+ <details key="end" value="3434"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.358" references="/0/generateModule/%.5/vars/select/%.1/%/%/%.1/%/%/%/FlowPortQN">
+ <details key="start" value="3456"/>
+ <details key="end" value="3466"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.359" references="/0/generateModule/%.5/vars/select/%.1/%/%.1">
+ <details key="start" value="3483"/>
+ <details key="end" value="3536"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.360" references="/0/generateModule/%.5/vars/select/%.1/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.361" references="/0/generateModule/%.5/vars/select/%.1/%/%.1/%/%/%">
+ <details key="start" value="3483"/>
+ <details key="end" value="3525"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.362" references="/0/generateModule/%.5/vars/select/%.1/%/%.1/%/%/%/p">
+ <details key="start" value="3483"/>
+ <details key="end" value="3484"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.363" references="/0/generateModule/%.5/vars/select/%.1/%/%.1/%/%/%/ClientServerPortQN">
+ <details key="start" value="3506"/>
+ <details key="end" value="3524"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.364" references="/0/generateModule/%.5/vars/select/%.1/%.1">
+ <details key="start" value="3544"/>
+ <details key="end" value="3594"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.365" references="/0/generateModule/%.5/vars/select/%.1/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.366" references="/0/generateModule/%.5/vars/select/%.1/%.1/%/%/%">
+ <details key="start" value="3544"/>
+ <details key="end" value="3583"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.367" references="/0/generateModule/%.5/vars/select/%.1/%.1/%/%/%/p">
+ <details key="start" value="3544"/>
+ <details key="end" value="3545"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.368" references="/0/generateModule/%.5/vars/select/%.1/%.1/%/%/%/MARTEFlowPortQN">
+ <details key="start" value="3567"/>
+ <details key="end" value="3582"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.369" references="/0/generateModule/%.5/vars/select/p">
+ <details key="start" value="3361"/>
+ <details key="end" value="3373"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.370" references="/0/generateModule/%.6">
+ <details key="start" value="5818"/>
+ <details key="end" value="7371"/>
+ <details key="line" value="119"/>
+ </eAnnotations>
+ <eAnnotations source="positions.371" references="/0/generateModule/%.6/%">
+ <details key="start" value="6056"/>
+ <details key="end" value="6057"/>
+ <details key="line" value="121"/>
+ </eAnnotations>
+ <eAnnotations source="positions.372" references="/0/generateModule/%.6/%.1">
+ <details key="start" value="6058"/>
+ <details key="end" value="6260"/>
+ <details key="line" value="122"/>
+ </eAnnotations>
+ <eAnnotations source="positions.373" references="/0/generateModule/%.6/%.1/%">
+ <details key="start" value="6090"/>
+ <details key="end" value="6252"/>
+ <details key="line" value="123"/>
+ </eAnnotations>
+ <eAnnotations source="positions.374" references="/0/generateModule/%.6/%.1/%/%">
+ <details key="start" value="6094"/>
+ <details key="end" value="6184"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.375" references="/0/generateModule/%.6/%.1/%/%/%">
+ <details key="start" value="6095"/>
+ <details key="end" value="6128"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.376" references="/0/generateModule/%.6/%.1/%/%/%/%">
+ <details key="start" value="6099"/>
+ <details key="end" value="6128"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.377" references="/0/generateModule/%.6/%.1/%/%/%/%/%">
+ <details key="start" value="6099"/>
+ <details key="end" value="6113"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.378" references="/0/generateModule/%.6/%.1/%/%/%/%/%/%">
+ <details key="start" value="6099"/>
+ <details key="end" value="6108"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.379" references="/0/generateModule/%.6/%.1/%/%/%/%/%/%/prop">
+ <details key="start" value="6099"/>
+ <details key="end" value="6103"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.380" references="/0/generateModule/%.6/%.1/%/%/%.1">
+ <details key="start" value="6133"/>
+ <details key="end" value="6183"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.381" references="/0/generateModule/%.6/%.1/%/%/%.1/%">
+ <details key="start" value="6137"/>
+ <details key="end" value="6183"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.382" references="/0/generateModule/%.6/%.1/%/%/%.1/%/%">
+ <details key="start" value="6138"/>
+ <details key="end" value="6156"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.383" references="/0/generateModule/%.6/%.1/%/%/%.1/%/%/%">
+ <details key="start" value="6146"/>
+ <details key="end" value="6155"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.384" references="/0/generateModule/%.6/%.1/%/%/%.1/%/%/%/prop">
+ <details key="start" value="6146"/>
+ <details key="end" value="6150"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.385" references="/0/generateModule/%.6/%.1/%/%/%.1/%/%.1">
+ <details key="start" value="6174"/>
+ <details key="end" value="6181"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.386" references="/0/generateModule/%.6/%.1/prop">
+ <details key="start" value="6064"/>
+ <details key="end" value="6079"/>
+ <details key="line" value="122"/>
+ </eAnnotations>
+ <eAnnotations source="positions.387" references="/0/generateModule/%.6/%.1/vars">
+ <details key="start" value="6082"/>
+ <details key="end" value="6086"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.388" references="/0/generateModule/%.6/%.2">
+ <details key="start" value="6301"/>
+ <details key="end" value="7363"/>
+ <details key="line" value="128"/>
+ </eAnnotations>
+ <eAnnotations source="positions.389" references="/0/generateModule/%.6/%.2/%">
+ <details key="start" value="6424"/>
+ <details key="end" value="6853"/>
+ <details key="line" value="129"/>
+ </eAnnotations>
+ <eAnnotations source="positions.390" references="/0/generateModule/%.6/%.2/%/%">
+ <details key="start" value="6646"/>
+ <details key="end" value="6845"/>
+ <details key="line" value="130"/>
+ </eAnnotations>
+ <eAnnotations source="positions.391" references="/0/generateModule/%.6/%.2/%/%/%">
+ <details key="start" value="6685"/>
+ <details key="end" value="6837"/>
+ <details key="line" value="131"/>
+ </eAnnotations>
+ <eAnnotations source="positions.392" references="/0/generateModule/%.6/%.2/%/%/%/%">
+ <details key="start" value="6801"/>
+ <details key="end" value="6803"/>
+ <details key="line" value="132"/>
+ </eAnnotations>
+ <eAnnotations source="positions.393" references="/0/generateModule/%.6/%.2/%/%/%/%.1">
+ <details key="start" value="6804"/>
+ <details key="end" value="6817"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.394" references="/0/generateModule/%.6/%.2/%/%/%/%.1/tr">
+ <details key="start" value="6804"/>
+ <details key="end" value="6806"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.395" references="/0/generateModule/%.6/%.2/%/%/%/%.2">
+ <details key="start" value="6819"/>
+ <details key="end" value="6831"/>
+ <details key="line" value="132"/>
+ </eAnnotations>
+ <eAnnotations source="positions.396" references="/0/generateModule/%.6/%.2/%/%/%/%.3">
+ <details key="start" value="6689"/>
+ <details key="end" value="6799"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.397" references="/0/generateModule/%.6/%.2/%/%/%/%.3/%">
+ <details key="start" value="6690"/>
+ <details key="end" value="6742"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.398" references="/0/generateModule/%.6/%.2/%/%/%/%.3/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.399" references="/0/generateModule/%.6/%.2/%/%/%/%.3/%/%/%/%">
+ <details key="start" value="6690"/>
+ <details key="end" value="6730"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.400" references="/0/generateModule/%.6/%.2/%/%/%/%.3/%/%/%/%/tr">
+ <details key="start" value="6690"/>
+ <details key="end" value="6692"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.401" references="/0/generateModule/%.6/%.2/%/%/%/%.3/%/%/%/%/InternalFaultQN">
+ <details key="start" value="6714"/>
+ <details key="end" value="6729"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.402" references="/0/generateModule/%.6/%.2/%/%/%/%.3/%.1">
+ <details key="start" value="6746"/>
+ <details key="end" value="6798"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.403" references="/0/generateModule/%.6/%.2/%/%/%/%.3/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.404" references="/0/generateModule/%.6/%.2/%/%/%/%.3/%.1/%/%/%">
+ <details key="start" value="6746"/>
+ <details key="end" value="6786"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.405" references="/0/generateModule/%.6/%.2/%/%/%/%.3/%.1/%/%/%/tr">
+ <details key="start" value="6746"/>
+ <details key="end" value="6748"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.406" references="/0/generateModule/%.6/%.2/%/%/%/%.3/%.1/%/%/%/ExternalFaultQN">
+ <details key="start" value="6770"/>
+ <details key="end" value="6785"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.407" references="/0/generateModule/%.6/%.2/%/%/tr">
+ <details key="start" value="6652"/>
+ <details key="end" value="6667"/>
+ <details key="line" value="130"/>
+ </eAnnotations>
+ <eAnnotations source="positions.408" references="/0/generateModule/%.6/%.2/%/%/transitions">
+ <details key="start" value="6670"/>
+ <details key="end" value="6681"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.409" references="/0/generateModule/%.6/%.2/%/transitions">
+ <details key="start" value="6429"/>
+ <details key="end" value="6643"/>
+ <details key="line" value="129"/>
+ </eAnnotations>
+ <eAnnotations source="positions.410" references="/0/generateModule/%.6/%.2/%/transitions/%">
+ <details key="start" value="6467"/>
+ <details key="end" value="6644"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.411" references="/0/generateModule/%.6/%.2/%/transitions/%/select">
+ <details key="start" value="6467"/>
+ <details key="end" value="6630"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.412" references="/0/generateModule/%.6/%.2/%/transitions/%/select/collect">
+ <details key="start" value="6467"/>
+ <details key="end" value="6519"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.413" references="/0/generateModule/%.6/%.2/%/transitions/%/select/collect/%">
+ <details key="start" value="6467"/>
+ <details key="end" value="6508"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.414" references="/0/generateModule/%.6/%.2/%/transitions/%/select/collect/%/%">
+ <details key="start" value="6467"/>
+ <details key="end" value="6501"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.415" references="/0/generateModule/%.6/%.2/%/transitions/%/select/collect/%/%/errorModel">
+ <details key="start" value="6467"/>
+ <details key="end" value="6477"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.416" references="/0/generateModule/%.6/%.2/%/transitions/%/select/collect/%/%/%">
+ <details key="start" value="6488"/>
+ <details key="end" value="6500"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.417" references="/0/generateModule/%.6/%.2/%/transitions/%/select/collect/%.1">
+ <details key="start" value="6509"/>
+ <details key="end" value="6519"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.418" references="/0/generateModule/%.6/%.2/%/transitions/%/select/collect/%.1/temp1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.419" references="/0/generateModule/%.6/%.2/%/transitions/%/select/collect/temp1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.420" references="/0/generateModule/%.6/%.2/%/transitions/%/select/%">
+ <details key="start" value="6546"/>
+ <details key="end" value="6629"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.421" references="/0/generateModule/%.6/%.2/%/transitions/%/select/%/%">
+ <details key="start" value="6546"/>
+ <details key="end" value="6585"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.422" references="/0/generateModule/%.6/%.2/%/transitions/%/select/%/%/%">
+ <details key="start" value="6549"/>
+ <details key="end" value="6585"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.423" references="/0/generateModule/%.6/%.2/%/transitions/%/select/%/%/%/%">
+ <details key="start" value="6550"/>
+ <details key="end" value="6559"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.424" references="/0/generateModule/%.6/%.2/%/transitions/%/select/%/%/%/%/tr">
+ <details key="start" value="6550"/>
+ <details key="end" value="6552"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.425" references="/0/generateModule/%.6/%.2/%/transitions/%/select/%/%/%/%.1">
+ <details key="start" value="6572"/>
+ <details key="end" value="6583"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.426" references="/0/generateModule/%.6/%.2/%/transitions/%/select/%/%.1">
+ <details key="start" value="6590"/>
+ <details key="end" value="6629"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.427" references="/0/generateModule/%.6/%.2/%/transitions/%/select/%/%.1/%">
+ <details key="start" value="6593"/>
+ <details key="end" value="6629"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.428" references="/0/generateModule/%.6/%.2/%/transitions/%/select/%/%.1/%/%">
+ <details key="start" value="6594"/>
+ <details key="end" value="6603"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.429" references="/0/generateModule/%.6/%.2/%/transitions/%/select/%/%.1/%/%/tr">
+ <details key="start" value="6594"/>
+ <details key="end" value="6596"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.430" references="/0/generateModule/%.6/%.2/%/transitions/%/select/%/%.1/%/%.1">
+ <details key="start" value="6616"/>
+ <details key="end" value="6627"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.431" references="/0/generateModule/%.6/%.2/%/transitions/%/select/tr">
+ <details key="start" value="6528"/>
+ <details key="end" value="6543"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.432" references="/0/generateModule/%.6/%.2/%.1">
+ <details key="start" value="6854"/>
+ <details key="end" value="6881"/>
+ <details key="line" value="136"/>
+ </eAnnotations>
+ <eAnnotations source="positions.433" references="/0/generateModule/%.6/%.2/%.2">
+ <details key="start" value="7023"/>
+ <details key="end" value="7355"/>
+ <details key="line" value="138"/>
+ </eAnnotations>
+ <eAnnotations source="positions.434" references="/0/generateModule/%.6/%.2/%.2/%">
+ <details key="start" value="7239"/>
+ <details key="end" value="7347"/>
+ <details key="line" value="139"/>
+ </eAnnotations>
+ <eAnnotations source="positions.435" references="/0/generateModule/%.6/%.2/%.2/%/%">
+ <details key="start" value="7267"/>
+ <details key="end" value="7302"/>
+ <details key="line" value="140"/>
+ </eAnnotations>
+ <eAnnotations source="positions.436" references="/0/generateModule/%.6/%.2/%.2/%/%.1">
+ <details key="start" value="7243"/>
+ <details key="end" value="7265"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.437" references="/0/generateModule/%.6/%.2/%.2/%/%.1/toNominal">
+ <details key="start" value="7244"/>
+ <details key="end" value="7253"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.438" references="/0/generateModule/%.6/%.2/%.2/%/%.2">
+ <details key="start" value="7303"/>
+ <details key="end" value="7342"/>
+ <details key="line" value="142"/>
+ </eAnnotations>
+ <eAnnotations source="positions.439" references="/0/generateModule/%.6/%.2/%.2/%/%.2/%">
+ <details key="start" value="7310"/>
+ <details key="end" value="7341"/>
+ <details key="line" value="143"/>
+ </eAnnotations>
+ <eAnnotations source="positions.440" references="/0/generateModule/%.6/%.2/%.2/toNominal">
+ <details key="start" value="7028"/>
+ <details key="end" value="7236"/>
+ <details key="line" value="138"/>
+ </eAnnotations>
+ <eAnnotations source="positions.441" references="/0/generateModule/%.6/%.2/%.2/toNominal/%">
+ <details key="start" value="7064"/>
+ <details key="end" value="7237"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.442" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select">
+ <details key="start" value="7064"/>
+ <details key="end" value="7223"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.443" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/collect">
+ <details key="start" value="7064"/>
+ <details key="end" value="7116"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.444" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/collect/%">
+ <details key="start" value="7064"/>
+ <details key="end" value="7105"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.445" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/collect/%/%">
+ <details key="start" value="7064"/>
+ <details key="end" value="7098"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.446" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/collect/%/%/errorModel">
+ <details key="start" value="7064"/>
+ <details key="end" value="7074"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.447" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/collect/%/%/%">
+ <details key="start" value="7085"/>
+ <details key="end" value="7097"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.448" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/collect/%.1">
+ <details key="start" value="7106"/>
+ <details key="end" value="7116"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.449" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/collect/%.1/temp1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.450" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/collect/temp2">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.451" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/%">
+ <details key="start" value="7143"/>
+ <details key="end" value="7222"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.452" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/%/%">
+ <details key="start" value="7143"/>
+ <details key="end" value="7182"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.453" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/%/%/%">
+ <details key="start" value="7146"/>
+ <details key="end" value="7182"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.454" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/%/%/%/%">
+ <details key="start" value="7147"/>
+ <details key="end" value="7156"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.455" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/%/%/%/%/tr">
+ <details key="start" value="7147"/>
+ <details key="end" value="7149"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.456" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/%/%/%/%.1">
+ <details key="start" value="7169"/>
+ <details key="end" value="7180"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.457" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/%/%.1">
+ <details key="start" value="7187"/>
+ <details key="end" value="7222"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.458" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/%/%.1/%">
+ <details key="start" value="7187"/>
+ <details key="end" value="7207"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.459" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/%/%.1/%/%">
+ <details key="start" value="7187"/>
+ <details key="end" value="7196"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.460" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/%/%.1/%/%/tr">
+ <details key="start" value="7187"/>
+ <details key="end" value="7189"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.461" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/%/%.1/%.1">
+ <details key="start" value="7208"/>
+ <details key="end" value="7222"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.462" references="/0/generateModule/%.6/%.2/%.2/toNominal/%/select/tr">
+ <details key="start" value="7125"/>
+ <details key="end" value="7140"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.463" references="/0/generateModule/%.6/%.2/errorModel">
+ <details key="start" value="6306"/>
+ <details key="end" value="6421"/>
+ <details key="line" value="128"/>
+ </eAnnotations>
+ <eAnnotations source="positions.464" references="/0/generateModule/%.6/%.2/errorModel/any">
+ <details key="start" value="6331"/>
+ <details key="end" value="6422"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.465" references="/0/generateModule/%.6/%.2/errorModel/any/%">
+ <details key="start" value="6331"/>
+ <details key="end" value="6350"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.466" references="/0/generateModule/%.6/%.2/errorModel/any/%/block">
+ <details key="start" value="6331"/>
+ <details key="end" value="6336"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.467" references="/0/generateModule/%.6/%.2/errorModel/any/%.1">
+ <details key="start" value="6372"/>
+ <details key="end" value="6421"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.468" references="/0/generateModule/%.6/%.2/errorModel/any/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.469" references="/0/generateModule/%.6/%.2/errorModel/any/%.1/%/%/%">
+ <details key="start" value="6372"/>
+ <details key="end" value="6409"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.470" references="/0/generateModule/%.6/%.2/errorModel/any/%.1/%/%/%/em">
+ <details key="start" value="6372"/>
+ <details key="end" value="6374"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.471" references="/0/generateModule/%.6/%.2/errorModel/any/%.1/%/%/%/ErrorModelQN">
+ <details key="start" value="6396"/>
+ <details key="end" value="6408"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.472" references="/0/generateModule/%.6/%.2/errorModel/any/em">
+ <details key="start" value="6356"/>
+ <details key="end" value="6369"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.473" references="/0/generateModule/%.6/vars">
+ <details key="start" value="5823"/>
+ <details key="end" value="6054"/>
+ <details key="line" value="119"/>
+ </eAnnotations>
+ <eAnnotations source="positions.474" references="/0/generateModule/%.6/vars/select">
+ <details key="start" value="5854"/>
+ <details key="end" value="6055"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.475" references="/0/generateModule/%.6/vars/select/%">
+ <details key="start" value="5854"/>
+ <details key="end" value="5869"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.476" references="/0/generateModule/%.6/vars/select/%/block">
+ <details key="start" value="5854"/>
+ <details key="end" value="5859"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.477" references="/0/generateModule/%.6/vars/select/%.1">
+ <details key="start" value="5893"/>
+ <details key="end" value="6053"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.478" references="/0/generateModule/%.6/vars/select/%.1/%">
+ <details key="start" value="5893"/>
+ <details key="end" value="5942"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.479" references="/0/generateModule/%.6/vars/select/%.1/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.480" references="/0/generateModule/%.6/vars/select/%.1/%/%/%/%">
+ <details key="start" value="5893"/>
+ <details key="end" value="5931"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.481" references="/0/generateModule/%.6/vars/select/%.1/%/%/%/%/p">
+ <details key="start" value="5893"/>
+ <details key="end" value="5894"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.482" references="/0/generateModule/%.6/vars/select/%.1/%/%/%/%/ContractPropQN">
+ <details key="start" value="5916"/>
+ <details key="end" value="5930"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.483" references="/0/generateModule/%.6/vars/select/%.1/%.1">
+ <details key="start" value="5950"/>
+ <details key="end" value="6053"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.484" references="/0/generateModule/%.6/vars/select/%.1/%.1/%">
+ <details key="start" value="5951"/>
+ <details key="end" value="5997"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.485" references="/0/generateModule/%.6/vars/select/%.1/%.1/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.486" references="/0/generateModule/%.6/vars/select/%.1/%.1/%/%/%/%">
+ <details key="start" value="5951"/>
+ <details key="end" value="5985"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.487" references="/0/generateModule/%.6/vars/select/%.1/%.1/%/%/%/%/p">
+ <details key="start" value="5951"/>
+ <details key="end" value="5952"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.488" references="/0/generateModule/%.6/vars/select/%.1/%.1/%/%/%/%/FlowPortQN">
+ <details key="start" value="5974"/>
+ <details key="end" value="5984"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.489" references="/0/generateModule/%.6/vars/select/%.1/%.1/%.1">
+ <details key="start" value="6001"/>
+ <details key="end" value="6052"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.490" references="/0/generateModule/%.6/vars/select/%.1/%.1/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.491" references="/0/generateModule/%.6/vars/select/%.1/%.1/%.1/%/%/%">
+ <details key="start" value="6001"/>
+ <details key="end" value="6040"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.492" references="/0/generateModule/%.6/vars/select/%.1/%.1/%.1/%/%/%/p">
+ <details key="start" value="6001"/>
+ <details key="end" value="6002"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.493" references="/0/generateModule/%.6/vars/select/%.1/%.1/%.1/%/%/%/MARTEFlowPortQN">
+ <details key="start" value="6024"/>
+ <details key="end" value="6039"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.494" references="/0/generateModule/%.6/vars/select/p">
+ <details key="start" value="5878"/>
+ <details key="end" value="5890"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.495" references="/0/generateModule/%.7">
+ <details key="start" value="7737"/>
+ <details key="end" value="7739"/>
+ <details key="line" value="157"/>
+ </eAnnotations>
+ <eAnnotations source="positions.496" references="/0/generateModule/%.8">
+ <details key="start" value="7739"/>
+ <details key="end" value="8783"/>
+ <details key="line" value="158"/>
+ </eAnnotations>
+ <eAnnotations source="positions.497" references="/0/generateModule/%.8/%">
+ <details key="start" value="7892"/>
+ <details key="end" value="8776"/>
+ <details key="line" value="159"/>
+ </eAnnotations>
+ <eAnnotations source="positions.498" references="/0/generateModule/%.8/%/%">
+ <details key="start" value="7964"/>
+ <details key="end" value="8769"/>
+ <details key="line" value="160"/>
+ </eAnnotations>
+ <eAnnotations source="positions.499" references="/0/generateModule/%.8/%/%/%">
+ <details key="start" value="8204"/>
+ <details key="end" value="8762"/>
+ <details key="line" value="163"/>
+ </eAnnotations>
+ <eAnnotations source="positions.500" references="/0/generateModule/%.8/%/%/%/%">
+ <details key="start" value="8236"/>
+ <details key="end" value="8464"/>
+ <details key="line" value="164"/>
+ </eAnnotations>
+ <eAnnotations source="positions.501" references="/0/generateModule/%.8/%/%/%/%/%">
+ <details key="start" value="8296"/>
+ <details key="end" value="8457"/>
+ <details key="line" value="165"/>
+ </eAnnotations>
+ <eAnnotations source="positions.502" references="/0/generateModule/%.8/%/%/%/%/%/%">
+ <details key="start" value="8352"/>
+ <details key="end" value="8366"/>
+ <details key="line" value="166"/>
+ </eAnnotations>
+ <eAnnotations source="positions.503" references="/0/generateModule/%.8/%/%/%/%/%/%.1">
+ <details key="start" value="8367"/>
+ <details key="end" value="8376"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.504" references="/0/generateModule/%.8/%/%/%/%/%/%.1/prop">
+ <details key="start" value="8367"/>
+ <details key="end" value="8371"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.505" references="/0/generateModule/%.8/%/%/%/%/%/%.2">
+ <details key="start" value="8378"/>
+ <details key="end" value="8393"/>
+ <details key="line" value="167"/>
+ </eAnnotations>
+ <eAnnotations source="positions.506" references="/0/generateModule/%.8/%/%/%/%/%/%.3">
+ <details key="start" value="8394"/>
+ <details key="end" value="8438"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.507" references="/0/generateModule/%.8/%/%/%/%/%/%.3/nominalModel">
+ <details key="start" value="8414"/>
+ <details key="end" value="8426"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.508" references="/0/generateModule/%.8/%/%/%/%/%/%.3/%">
+ <details key="start" value="8428"/>
+ <details key="end" value="8437"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.509" references="/0/generateModule/%.8/%/%/%/%/%/%.3/%/prop">
+ <details key="start" value="8428"/>
+ <details key="end" value="8432"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.510" references="/0/generateModule/%.8/%/%/%/%/%/%.4">
+ <details key="start" value="8440"/>
+ <details key="end" value="8450"/>
+ <details key="line" value="170"/>
+ </eAnnotations>
+ <eAnnotations source="positions.511" references="/0/generateModule/%.8/%/%/%/%/%/%.5">
+ <details key="start" value="8300"/>
+ <details key="end" value="8350"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.512" references="/0/generateModule/%.8/%/%/%/%/%/%.5/%">
+ <details key="start" value="8300"/>
+ <details key="end" value="8344"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.513" references="/0/generateModule/%.8/%/%/%/%/%/%.5/%/nominalModel">
+ <details key="start" value="8320"/>
+ <details key="end" value="8332"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.514" references="/0/generateModule/%.8/%/%/%/%/%/%.5/%/%">
+ <details key="start" value="8334"/>
+ <details key="end" value="8343"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.515" references="/0/generateModule/%.8/%/%/%/%/%/%.5/%/%/prop">
+ <details key="start" value="8334"/>
+ <details key="end" value="8338"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.516" references="/0/generateModule/%.8/%/%/%/%/%/%.5/%.1">
+ <details key="start" value="8348"/>
+ <details key="end" value="8350"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.517" references="/0/generateModule/%.8/%/%/%/%/%.1">
+ <details key="start" value="8240"/>
+ <details key="end" value="8292"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.518" references="/0/generateModule/%.8/%/%/%/%/%.1/%">
+ <details key="start" value="8245"/>
+ <details key="end" value="8291"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.519" references="/0/generateModule/%.8/%/%/%/%/%.1/%/%">
+ <details key="start" value="8246"/>
+ <details key="end" value="8264"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.520" references="/0/generateModule/%.8/%/%/%/%/%.1/%/%/%">
+ <details key="start" value="8254"/>
+ <details key="end" value="8263"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.521" references="/0/generateModule/%.8/%/%/%/%/%.1/%/%/%/prop">
+ <details key="start" value="8254"/>
+ <details key="end" value="8258"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.522" references="/0/generateModule/%.8/%/%/%/%/%.1/%/%.1">
+ <details key="start" value="8282"/>
+ <details key="end" value="8289"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.523" references="/0/generateModule/%.8/%/%/%/%.1">
+ <details key="start" value="8466"/>
+ <details key="end" value="8755"/>
+ <details key="line" value="173"/>
+ </eAnnotations>
+ <eAnnotations source="positions.524" references="/0/generateModule/%.8/%/%/%/%.1/%">
+ <details key="start" value="8509"/>
+ <details key="end" value="8748"/>
+ <details key="line" value="174"/>
+ </eAnnotations>
+ <eAnnotations source="positions.525" references="/0/generateModule/%.8/%/%/%/%.1/%/%">
+ <details key="start" value="8582"/>
+ <details key="end" value="8740"/>
+ <details key="line" value="175"/>
+ </eAnnotations>
+ <eAnnotations source="positions.526" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%">
+ <details key="start" value="8635"/>
+ <details key="end" value="8650"/>
+ <details key="line" value="176"/>
+ </eAnnotations>
+ <eAnnotations source="positions.527" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.1">
+ <details key="start" value="8651"/>
+ <details key="end" value="8660"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.528" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.1/prop">
+ <details key="start" value="8651"/>
+ <details key="end" value="8655"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.529" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.2">
+ <details key="start" value="8662"/>
+ <details key="end" value="8667"/>
+ <details key="line" value="177"/>
+ </eAnnotations>
+ <eAnnotations source="positions.530" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.3">
+ <details key="start" value="8668"/>
+ <details key="end" value="8728"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.531" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.3/%">
+ <details key="start" value="8668"/>
+ <details key="end" value="8719"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.532" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.3/%/%">
+ <details key="start" value="8668"/>
+ <details key="end" value="8713"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.533" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.3/%/%/%">
+ <details key="start" value="8668"/>
+ <details key="end" value="8685"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.534" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.3/%/%/%/prop">
+ <details key="start" value="8668"/>
+ <details key="end" value="8672"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.535" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.3/%/%/%.1">
+ <details key="start" value="8696"/>
+ <details key="end" value="8712"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.536" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.4">
+ <details key="start" value="8730"/>
+ <details key="end" value="8732"/>
+ <details key="line" value="177"/>
+ </eAnnotations>
+ <eAnnotations source="positions.537" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.5">
+ <details key="start" value="8586"/>
+ <details key="end" value="8633"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.538" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.5/%">
+ <details key="start" value="8586"/>
+ <details key="end" value="8603"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.539" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.5/%/prop">
+ <details key="start" value="8586"/>
+ <details key="end" value="8590"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.540" references="/0/generateModule/%.8/%/%/%/%.1/%/%/%.5/%.1">
+ <details key="start" value="8616"/>
+ <details key="end" value="8632"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.541" references="/0/generateModule/%.8/%/%/%/%.1/%/%.1">
+ <details key="start" value="8513"/>
+ <details key="end" value="8577"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.542" references="/0/generateModule/%.8/%/%/%/%.1/%/%.1/%">
+ <details key="start" value="8513"/>
+ <details key="end" value="8553"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.543" references="/0/generateModule/%.8/%/%/%/%.1/%/%.1/%/%">
+ <details key="start" value="8517"/>
+ <details key="end" value="8553"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.544" references="/0/generateModule/%.8/%/%/%/%.1/%/%.1/%/%/%">
+ <details key="start" value="8518"/>
+ <details key="end" value="8535"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.545" references="/0/generateModule/%.8/%/%/%/%.1/%/%.1/%/%/%/prop">
+ <details key="start" value="8518"/>
+ <details key="end" value="8522"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.546" references="/0/generateModule/%.8/%/%/%/%.1/%/%.1/%.1">
+ <details key="start" value="8558"/>
+ <details key="end" value="8577"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.547" references="/0/generateModule/%.8/%/%/%/%.1/%/%.1/%.1/%">
+ <details key="start" value="8562"/>
+ <details key="end" value="8577"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.548" references="/0/generateModule/%.8/%/%/%/%.1/%/%.1/%.1/%/prop">
+ <details key="start" value="8562"/>
+ <details key="end" value="8566"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.549" references="/0/generateModule/%.8/%/%/%/%.1/%.1">
+ <details key="start" value="8470"/>
+ <details key="end" value="8504"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.550" references="/0/generateModule/%.8/%/%/%/%.1/%.1/%">
+ <details key="start" value="8473"/>
+ <details key="end" value="8491"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.551" references="/0/generateModule/%.8/%/%/%/%.1/%.1/%/%">
+ <details key="start" value="8481"/>
+ <details key="end" value="8490"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.552" references="/0/generateModule/%.8/%/%/%/%.1/%.1/%/%/prop">
+ <details key="start" value="8481"/>
+ <details key="end" value="8485"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.553" references="/0/generateModule/%.8/%/%/%/%.1/%.1/%.1">
+ <details key="start" value="8495"/>
+ <details key="end" value="8502"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.554" references="/0/generateModule/%.8/%/%/%/prop">
+ <details key="start" value="8210"/>
+ <details key="end" value="8225"/>
+ <details key="line" value="163"/>
+ </eAnnotations>
+ <eAnnotations source="positions.555" references="/0/generateModule/%.8/%/%/%/vars">
+ <details key="start" value="8228"/>
+ <details key="end" value="8232"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.556" references="/0/generateModule/%.8/%/%/vars">
+ <details key="start" value="7969"/>
+ <details key="end" value="8202"/>
+ <details key="line" value="160"/>
+ </eAnnotations>
+ <eAnnotations source="positions.557" references="/0/generateModule/%.8/%/%/vars/select">
+ <details key="start" value="8000"/>
+ <details key="end" value="8203"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.558" references="/0/generateModule/%.8/%/%/vars/select/%">
+ <details key="start" value="8000"/>
+ <details key="end" value="8015"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.559" references="/0/generateModule/%.8/%/%/vars/select/%/block">
+ <details key="start" value="8000"/>
+ <details key="end" value="8005"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.560" references="/0/generateModule/%.8/%/%/vars/select/%.1">
+ <details key="start" value="8039"/>
+ <details key="end" value="8199"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.561" references="/0/generateModule/%.8/%/%/vars/select/%.1/%">
+ <details key="start" value="8039"/>
+ <details key="end" value="8141"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.562" references="/0/generateModule/%.8/%/%/vars/select/%.1/%/%">
+ <details key="start" value="8039"/>
+ <details key="end" value="8088"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.563" references="/0/generateModule/%.8/%/%/vars/select/%.1/%/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.564" references="/0/generateModule/%.8/%/%/vars/select/%.1/%/%/%/%/%">
+ <details key="start" value="8039"/>
+ <details key="end" value="8077"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.565" references="/0/generateModule/%.8/%/%/vars/select/%.1/%/%/%/%/%/p">
+ <details key="start" value="8039"/>
+ <details key="end" value="8040"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.566" references="/0/generateModule/%.8/%/%/vars/select/%.1/%/%/%/%/%/ContractPropQN">
+ <details key="start" value="8062"/>
+ <details key="end" value="8076"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.567" references="/0/generateModule/%.8/%/%/vars/select/%.1/%/%.1">
+ <details key="start" value="8096"/>
+ <details key="end" value="8141"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.568" references="/0/generateModule/%.8/%/%/vars/select/%.1/%/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.569" references="/0/generateModule/%.8/%/%/vars/select/%.1/%/%.1/%/%/%">
+ <details key="start" value="8096"/>
+ <details key="end" value="8130"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.570" references="/0/generateModule/%.8/%/%/vars/select/%.1/%/%.1/%/%/%/p">
+ <details key="start" value="8096"/>
+ <details key="end" value="8097"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.571" references="/0/generateModule/%.8/%/%/vars/select/%.1/%/%.1/%/%/%/FlowPortQN">
+ <details key="start" value="8119"/>
+ <details key="end" value="8129"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.572" references="/0/generateModule/%.8/%/%/vars/select/%.1/%.1">
+ <details key="start" value="8146"/>
+ <details key="end" value="8199"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.573" references="/0/generateModule/%.8/%/%/vars/select/%.1/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.574" references="/0/generateModule/%.8/%/%/vars/select/%.1/%.1/%/%/%">
+ <details key="start" value="8146"/>
+ <details key="end" value="8188"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.575" references="/0/generateModule/%.8/%/%/vars/select/%.1/%.1/%/%/%/p">
+ <details key="start" value="8146"/>
+ <details key="end" value="8147"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.576" references="/0/generateModule/%.8/%/%/vars/select/%.1/%.1/%/%/%/ClientServerPortQN">
+ <details key="start" value="8169"/>
+ <details key="end" value="8187"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.577" references="/0/generateModule/%.8/%/%/vars/select/p">
+ <details key="start" value="8024"/>
+ <details key="end" value="8036"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.578" references="/0/generateModule/%.8/%/trSet">
+ <details key="start" value="7897"/>
+ <details key="end" value="7962"/>
+ <details key="line" value="159"/>
+ </eAnnotations>
+ <eAnnotations source="positions.579" references="/0/generateModule/%.8/%/trSet/%">
+ <details key="start" value="7924"/>
+ <details key="end" value="7963"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.580" references="/0/generateModule/%.8/%/trSet/%/collect">
+ <details key="start" value="7924"/>
+ <details key="end" value="7954"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.581" references="/0/generateModule/%.8/%/trSet/%/collect/%">
+ <details key="start" value="7924"/>
+ <details key="end" value="7943"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.582" references="/0/generateModule/%.8/%/trSet/%/collect/%/nominalModel">
+ <details key="start" value="7924"/>
+ <details key="end" value="7936"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.583" references="/0/generateModule/%.8/%/trSet/%/collect/%.1">
+ <details key="start" value="7944"/>
+ <details key="end" value="7954"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.584" references="/0/generateModule/%.8/%/trSet/%/collect/%.1/temp1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.585" references="/0/generateModule/%.8/%/trSet/%/collect/temp3">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.586" references="/0/generateModule/%.8/nominalModel">
+ <details key="start" value="7744"/>
+ <details key="end" value="7890"/>
+ <details key="line" value="158"/>
+ </eAnnotations>
+ <eAnnotations source="positions.587" references="/0/generateModule/%.8/nominalModel/any">
+ <details key="start" value="7775"/>
+ <details key="end" value="7891"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.588" references="/0/generateModule/%.8/nominalModel/any/%">
+ <details key="start" value="7775"/>
+ <details key="end" value="7816"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.589" references="/0/generateModule/%.8/nominalModel/any/%/%">
+ <details key="start" value="7775"/>
+ <details key="end" value="7794"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.590" references="/0/generateModule/%.8/nominalModel/any/%/%/block">
+ <details key="start" value="7775"/>
+ <details key="end" value="7780"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.591" references="/0/generateModule/%.8/nominalModel/any/%/%.1">
+ <details key="start" value="7803"/>
+ <details key="end" value="7815"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.592" references="/0/generateModule/%.8/nominalModel/any/%.1">
+ <details key="start" value="7842"/>
+ <details key="end" value="7890"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.593" references="/0/generateModule/%.8/nominalModel/any/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.594" references="/0/generateModule/%.8/nominalModel/any/%.1/%/%/%">
+ <details key="start" value="7842"/>
+ <details key="end" value="7879"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.595" references="/0/generateModule/%.8/nominalModel/any/%.1/%/%/%/sm">
+ <details key="start" value="7842"/>
+ <details key="end" value="7844"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.596" references="/0/generateModule/%.8/nominalModel/any/%.1/%/%/%/ErrorModelQN">
+ <details key="start" value="7866"/>
+ <details key="end" value="7878"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.597" references="/0/generateModule/%.8/nominalModel/any/sm">
+ <details key="start" value="7822"/>
+ <details key="end" value="7839"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.598" references="/0/generateModule/%.9">
+ <details key="start" value="8784"/>
+ <details key="end" value="8798"/>
+ <details key="line" value="185"/>
+ </eAnnotations>
+ <eAnnotations source="positions.599" references="/0/generateModule/%.10">
+ <details key="start" value="8799"/>
+ <details key="end" value="8809"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.600" references="/0/generateModule/%.10/block">
+ <details key="start" value="8799"/>
+ <details key="end" value="8804"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.601" references="/0/generateModule/%.11">
+ <details key="start" value="8811"/>
+ <details key="end" value="8815"/>
+ <details key="line" value="185"/>
+ </eAnnotations>
+ <eAnnotations source="positions.602" references="/0/generateModule/%.12">
+ <details key="start" value="8816"/>
+ <details key="end" value="9206"/>
+ <details key="line" value="186"/>
+ </eAnnotations>
+ <eAnnotations source="positions.603" references="/0/generateModule/%.12/%">
+ <details key="start" value="8893"/>
+ <details key="end" value="9198"/>
+ <details key="line" value="187"/>
+ </eAnnotations>
+ <eAnnotations source="positions.604" references="/0/generateModule/%.12/%/%">
+ <details key="start" value="8926"/>
+ <details key="end" value="9190"/>
+ <details key="line" value="188"/>
+ </eAnnotations>
+ <eAnnotations source="positions.605" references="/0/generateModule/%.12/%/%/%">
+ <details key="start" value="8968"/>
+ <details key="end" value="9183"/>
+ <details key="line" value="189"/>
+ </eAnnotations>
+ <eAnnotations source="positions.606" references="/0/generateModule/%.12/%/%/%/%">
+ <details key="start" value="9044"/>
+ <details key="end" value="9176"/>
+ <details key="line" value="190"/>
+ </eAnnotations>
+ <eAnnotations source="positions.607" references="/0/generateModule/%.12/%/%/%/%/%">
+ <details key="start" value="9112"/>
+ <details key="end" value="9165"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.608" references="/0/generateModule/%.12/%/%/%/%/%/newblock">
+ <details key="start" value="9127"/>
+ <details key="end" value="9135"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.609" references="/0/generateModule/%.12/%/%/%/%/%/allBlocks">
+ <details key="start" value="9137"/>
+ <details key="end" value="9146"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.610" references="/0/generateModule/%.12/%/%/%/%/%/generated">
+ <details key="start" value="9148"/>
+ <details key="end" value="9157"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.611" references="/0/generateModule/%.12/%/%/%/%/%/%">
+ <details key="start" value="9159"/>
+ <details key="end" value="9164"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.612" references="/0/generateModule/%.12/%/%/%/%/%.1">
+ <details key="start" value="9167"/>
+ <details key="end" value="9168"/>
+ <details key="line" value="192"/>
+ </eAnnotations>
+ <eAnnotations source="positions.613" references="/0/generateModule/%.12/%/%/%/%/newblock">
+ <details key="start" value="9049"/>
+ <details key="end" value="9109"/>
+ <details key="line" value="190"/>
+ </eAnnotations>
+ <eAnnotations source="positions.614" references="/0/generateModule/%.12/%/%/%/%/newblock/any">
+ <details key="start" value="9069"/>
+ <details key="end" value="9110"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.615" references="/0/generateModule/%.12/%/%/%/%/newblock/any/allBlocks">
+ <details key="start" value="9069"/>
+ <details key="end" value="9078"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.616" references="/0/generateModule/%.12/%/%/%/%/newblock/any/%">
+ <details key="start" value="9096"/>
+ <details key="end" value="9109"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.617" references="/0/generateModule/%.12/%/%/%/%/newblock/any/%/%">
+ <details key="start" value="9096"/>
+ <details key="end" value="9105"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.618" references="/0/generateModule/%.12/%/%/%/%/newblock/any/%/%/part">
+ <details key="start" value="9096"/>
+ <details key="end" value="9100"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.619" references="/0/generateModule/%.12/%/%/%/%/newblock/any/%/c">
+ <details key="start" value="9108"/>
+ <details key="end" value="9109"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.620" references="/0/generateModule/%.12/%/%/%/%/newblock/any/c">
+ <details key="start" value="9084"/>
+ <details key="end" value="9093"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.621" references="/0/generateModule/%.12/%/%/%/%.1">
+ <details key="start" value="8972"/>
+ <details key="end" value="9040"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.622" references="/0/generateModule/%.12/%/%/%/%.1/%">
+ <details key="start" value="8973"/>
+ <details key="end" value="8985"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.623" references="/0/generateModule/%.12/%/%/%/%.1/%/part">
+ <details key="start" value="8980"/>
+ <details key="end" value="8984"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.624" references="/0/generateModule/%.12/%/%/%/%.1/%.1">
+ <details key="start" value="8990"/>
+ <details key="end" value="9039"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.625" references="/0/generateModule/%.12/%/%/%/%.1/%.1/%">
+ <details key="start" value="8994"/>
+ <details key="end" value="9039"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.626" references="/0/generateModule/%.12/%/%/%/%.1/%.1/%/%">
+ <details key="start" value="9013"/>
+ <details key="end" value="9027"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.627" references="/0/generateModule/%.12/%/%/%/%.1/%.1/%/%/%">
+ <details key="start" value="9013"/>
+ <details key="end" value="9022"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.628" references="/0/generateModule/%.12/%/%/%/%.1/%.1/%/%/%/part">
+ <details key="start" value="9013"/>
+ <details key="end" value="9017"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.629" references="/0/generateModule/%.12/%/%/%/%.1/%.1/%/generated">
+ <details key="start" value="9029"/>
+ <details key="end" value="9038"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.630" references="/0/generateModule/%.12/%/%/%.1">
+ <details key="start" value="8930"/>
+ <details key="end" value="8965"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.631" references="/0/generateModule/%.12/%/%/%.1/%">
+ <details key="start" value="8935"/>
+ <details key="end" value="8964"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.632" references="/0/generateModule/%.12/%/%/%.1/%/%">
+ <details key="start" value="8935"/>
+ <details key="end" value="8949"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.633" references="/0/generateModule/%.12/%/%/%.1/%/%/%">
+ <details key="start" value="8935"/>
+ <details key="end" value="8944"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.634" references="/0/generateModule/%.12/%/%/%.1/%/%/%/part">
+ <details key="start" value="8935"/>
+ <details key="end" value="8939"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.635" references="/0/generateModule/%.12/%/part">
+ <details key="start" value="8899"/>
+ <details key="end" value="8914"/>
+ <details key="line" value="187"/>
+ </eAnnotations>
+ <eAnnotations source="positions.636" references="/0/generateModule/%.12/%/parts">
+ <details key="start" value="8917"/>
+ <details key="end" value="8922"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.637" references="/0/generateModule/%.12/parts">
+ <details key="start" value="8821"/>
+ <details key="end" value="8890"/>
+ <details key="line" value="186"/>
+ </eAnnotations>
+ <eAnnotations source="positions.638" references="/0/generateModule/%.12/parts/%">
+ <details key="start" value="8853"/>
+ <details key="end" value="8891"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.639" references="/0/generateModule/%.12/parts/%/%">
+ <details key="start" value="8853"/>
+ <details key="end" value="8873"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.640" references="/0/generateModule/%.12/parts/%/%/block">
+ <details key="start" value="8853"/>
+ <details key="end" value="8858"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.641" references="/0/generateModule/%.12/parts/%/%.1">
+ <details key="start" value="8882"/>
+ <details key="end" value="8890"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.642" references="/0/generateModule/block">
+ <details key="start" value="2490"/>
+ <details key="end" value="2503"/>
+ <details key="line" value="51"/>
+ </eAnnotations>
+ <eAnnotations source="positions.643" references="/0/generateModule/allBlocks">
+ <details key="start" value="2505"/>
+ <details key="end" value="2527"/>
+ <details key="line" value="51"/>
+ </eAnnotations>
+ <eAnnotations source="positions.644" references="/0/generateModule/generated">
+ <details key="start" value="2529"/>
+ <details key="end" value="2552"/>
+ <details key="line" value="51"/>
+ </eAnnotations>
+ <eAnnotations source="positions.645" references="/0/generateModule/isSystem">
+ <details key="start" value="2554"/>
+ <details key="end" value="2571"/>
+ <details key="line" value="51"/>
+ </eAnnotations>
+ <eAnnotations source="positions.646" references="/0/getTransitionTarget">
+ <details key="start" value="9220"/>
+ <details key="end" value="9448"/>
+ <details key="line" value="199"/>
+ </eAnnotations>
+ <eAnnotations source="positions.647" references="/0/getTransitionTarget/name">
+ <details key="start" value="9254"/>
+ <details key="end" value="9267"/>
+ <details key="line" value="199"/>
+ </eAnnotations>
+ <eAnnotations source="positions.648" references="/0/getTransitionTarget/str">
+ <details key="start" value="9269"/>
+ <details key="end" value="9281"/>
+ <details key="line" value="199"/>
+ </eAnnotations>
+ <eAnnotations source="positions.649" references="/0/getTransitionTarget/%">
+ <details key="start" value="9295"/>
+ <details key="end" value="9445"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.650" references="/0/getTransitionTarget/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.651" references="/0/getTransitionTarget/%/%">
+ <details key="start" value="9302"/>
+ <details key="end" value="9364"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.652" references="/0/getTransitionTarget/%/%.1">
+ <details key="start" value="9366"/>
+ <details key="end" value="9423"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.653" references="/0/getTransitionTarget/%/%.2">
+ <details key="start" value="9425"/>
+ <details key="end" value="9444"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.654" references="/0/getTransitionTarget/%/%.2/%/name">
+ <details key="start" value="9434"/>
+ <details key="end" value="9438"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.655" references="/0/getTransitionTarget/%/%.2/%.1/str">
+ <details key="start" value="9440"/>
+ <details key="end" value="9443"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.656" references="/0/getType">
+ <details key="start" value="9450"/>
+ <details key="end" value="9626"/>
+ <details key="line" value="202"/>
+ </eAnnotations>
+ <eAnnotations source="positions.657" references="/0/getType/type">
+ <details key="start" value="9472"/>
+ <details key="end" value="9483"/>
+ <details key="line" value="202"/>
+ </eAnnotations>
+ <eAnnotations source="positions.658" references="/0/getType/%">
+ <details key="start" value="9496"/>
+ <details key="end" value="9624"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.659" references="/0/getType/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.660" references="/0/getType/%/%">
+ <details key="start" value="9503"/>
+ <details key="end" value="9565"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.661" references="/0/getType/%/%.1">
+ <details key="start" value="9567"/>
+ <details key="end" value="9607"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.662" references="/0/getType/%/%.2">
+ <details key="start" value="9609"/>
+ <details key="end" value="9623"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.663" references="/0/getType/%/%.2/%/type">
+ <details key="start" value="9618"/>
+ <details key="end" value="9622"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.664" references="/0/getInitCondition">
+ <details key="start" value="9628"/>
+ <details key="end" value="9831"/>
+ <details key="line" value="205"/>
+ </eAnnotations>
+ <eAnnotations source="positions.665" references="/0/getInitCondition/sm">
+ <details key="start" value="9659"/>
+ <details key="end" value="9676"/>
+ <details key="line" value="205"/>
+ </eAnnotations>
+ <eAnnotations source="positions.666" references="/0/getInitCondition/%">
+ <details key="start" value="9690"/>
+ <details key="end" value="9828"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.667" references="/0/getInitCondition/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.668" references="/0/getInitCondition/%/%">
+ <details key="start" value="9697"/>
+ <details key="end" value="9759"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.669" references="/0/getInitCondition/%/%.1">
+ <details key="start" value="9760"/>
+ <details key="end" value="9813"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.670" references="/0/getInitCondition/%/%.2">
+ <details key="start" value="9815"/>
+ <details key="end" value="9827"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.671" references="/0/getInitCondition/%/%.2/%/sm">
+ <details key="start" value="9824"/>
+ <details key="end" value="9826"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.672" references="/0/getPropertyAffectedByTransition">
+ <details key="start" value="9835"/>
+ <details key="end" value="10060"/>
+ <details key="line" value="210"/>
+ </eAnnotations>
+ <eAnnotations source="positions.673" references="/0/getPropertyAffectedByTransition/t">
+ <details key="start" value="9881"/>
+ <details key="end" value="9894"/>
+ <details key="line" value="210"/>
+ </eAnnotations>
+ <eAnnotations source="positions.674" references="/0/getPropertyAffectedByTransition/%">
+ <details key="start" value="9907"/>
+ <details key="end" value="10057"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.675" references="/0/getPropertyAffectedByTransition/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.676" references="/0/getPropertyAffectedByTransition/%/%">
+ <details key="start" value="9914"/>
+ <details key="end" value="9976"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.677" references="/0/getPropertyAffectedByTransition/%/%.1">
+ <details key="start" value="9977"/>
+ <details key="end" value="10043"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.678" references="/0/getPropertyAffectedByTransition/%/%.2">
+ <details key="start" value="10045"/>
+ <details key="end" value="10056"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.679" references="/0/getPropertyAffectedByTransition/%/%.2/%/t">
+ <details key="start" value="10054"/>
+ <details key="end" value="10055"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.680" references="/0/getEffectOnProperty">
+ <details key="start" value="10062"/>
+ <details key="end" value="10321"/>
+ <details key="line" value="213"/>
+ </eAnnotations>
+ <eAnnotations source="positions.681" references="/0/getEffectOnProperty/sm">
+ <details key="start" value="10096"/>
+ <details key="end" value="10111"/>
+ <details key="line" value="213"/>
+ </eAnnotations>
+ <eAnnotations source="positions.682" references="/0/getEffectOnProperty/propertyName">
+ <details key="start" value="10113"/>
+ <details key="end" value="10132"/>
+ <details key="line" value="213"/>
+ </eAnnotations>
+ <eAnnotations source="positions.683" references="/0/getEffectOnProperty/%">
+ <details key="start" value="10145"/>
+ <details key="end" value="10318"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.684" references="/0/getEffectOnProperty/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.685" references="/0/getEffectOnProperty/%/%">
+ <details key="start" value="10152"/>
+ <details key="end" value="10214"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.686" references="/0/getEffectOnProperty/%/%.1">
+ <details key="start" value="10215"/>
+ <details key="end" value="10289"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.687" references="/0/getEffectOnProperty/%/%.2">
+ <details key="start" value="10291"/>
+ <details key="end" value="10317"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.688" references="/0/getEffectOnProperty/%/%.2/%/sm">
+ <details key="start" value="10300"/>
+ <details key="end" value="10302"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.689" references="/0/getEffectOnProperty/%/%.2/%.1/propertyName">
+ <details key="start" value="10304"/>
+ <details key="end" value="10316"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.690" references="/0/getModuleFormalParameter">
+ <details key="start" value="10323"/>
+ <details key="end" value="10533"/>
+ <details key="line" value="216"/>
+ </eAnnotations>
+ <eAnnotations source="positions.691" references="/0/getModuleFormalParameter/block">
+ <details key="start" value="10362"/>
+ <details key="end" value="10375"/>
+ <details key="line" value="216"/>
+ </eAnnotations>
+ <eAnnotations source="positions.692" references="/0/getModuleFormalParameter/%">
+ <details key="start" value="10388"/>
+ <details key="end" value="10530"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.693" references="/0/getModuleFormalParameter/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.694" references="/0/getModuleFormalParameter/%/%">
+ <details key="start" value="10395"/>
+ <details key="end" value="10457"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.695" references="/0/getModuleFormalParameter/%/%.1">
+ <details key="start" value="10458"/>
+ <details key="end" value="10512"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.696" references="/0/getModuleFormalParameter/%/%.2">
+ <details key="start" value="10514"/>
+ <details key="end" value="10529"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.697" references="/0/getModuleFormalParameter/%/%.2/%/block">
+ <details key="start" value="10523"/>
+ <details key="end" value="10528"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.698" references="/0/getModuleInstanceActualParameter">
+ <details key="start" value="10535"/>
+ <details key="end" value="10815"/>
+ <details key="line" value="219"/>
+ </eAnnotations>
+ <eAnnotations source="positions.699" references="/0/getModuleInstanceActualParameter/block">
+ <details key="start" value="10582"/>
+ <details key="end" value="10595"/>
+ <details key="line" value="219"/>
+ </eAnnotations>
+ <eAnnotations source="positions.700" references="/0/getModuleInstanceActualParameter/prop">
+ <details key="start" value="10597"/>
+ <details key="end" value="10612"/>
+ <details key="line" value="219"/>
+ </eAnnotations>
+ <eAnnotations source="positions.701" references="/0/getModuleInstanceActualParameter/%">
+ <details key="start" value="10625"/>
+ <details key="end" value="10812"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.702" references="/0/getModuleInstanceActualParameter/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.703" references="/0/getModuleInstanceActualParameter/%/%">
+ <details key="start" value="10632"/>
+ <details key="end" value="10694"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.704" references="/0/getModuleInstanceActualParameter/%/%.1">
+ <details key="start" value="10695"/>
+ <details key="end" value="10788"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.705" references="/0/getModuleInstanceActualParameter/%/%.2">
+ <details key="start" value="10790"/>
+ <details key="end" value="10811"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.706" references="/0/getModuleInstanceActualParameter/%/%.2/%/block">
+ <details key="start" value="10799"/>
+ <details key="end" value="10804"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.707" references="/0/getModuleInstanceActualParameter/%/%.2/%.1/prop">
+ <details key="start" value="10806"/>
+ <details key="end" value="10810"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.708" references="/0/getTypeNameForProperty">
+ <details key="start" value="10817"/>
+ <details key="end" value="11027"/>
+ <details key="line" value="222"/>
+ </eAnnotations>
+ <eAnnotations source="positions.709" references="/0/getTypeNameForProperty/prop">
+ <details key="start" value="10854"/>
+ <details key="end" value="10869"/>
+ <details key="line" value="222"/>
+ </eAnnotations>
+ <eAnnotations source="positions.710" references="/0/getTypeNameForProperty/%">
+ <details key="start" value="10882"/>
+ <details key="end" value="11024"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.711" references="/0/getTypeNameForProperty/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.712" references="/0/getTypeNameForProperty/%/%">
+ <details key="start" value="10889"/>
+ <details key="end" value="10951"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.713" references="/0/getTypeNameForProperty/%/%.1">
+ <details key="start" value="10952"/>
+ <details key="end" value="11007"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.714" references="/0/getTypeNameForProperty/%/%.2">
+ <details key="start" value="11009"/>
+ <details key="end" value="11023"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.715" references="/0/getTypeNameForProperty/%/%.2/%/prop">
+ <details key="start" value="11018"/>
+ <details key="end" value="11022"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ </ecore:EAnnotation>
+</xmi:XMI>
diff --git a/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generateFaultExtensions.emtl b/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generateFaultExtensions.emtl
new file mode 100644
index 0000000..9a39d25
--- /dev/null
+++ b/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generateFaultExtensions.emtl
@@ -0,0 +1,3119 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI 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" xmlns:mtl="http://www.eclipse.org/acceleo/mtl/3.0" xmlns:ocl.ecore="http://www.eclipse.org/ocl/1.1.0/Ecore">
+ <mtl:Module name="generateFaultExtensions" nsURI="org::polarsys::chess::contracts::transformations::main::generateFaultExtensions" startHeaderPosition="699" endHeaderPosition="1554">
+ <input>
+ <takesTypesFrom href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
+ </input>
+ <ownedModuleElement xsi:type="mtl:Template" name="generateFaultExtensions" visibility="Public" main="true">
+ <init>
+ <variable name="ErrorModelQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Dependability::ThreatsPropagation::ErrorModel">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="ErrorQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Dependability::ThreatsPropagation::ErrorState">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="StuckAtQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Dependability::ThreatsPropagation::StuckAt">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="StuckAtFixedQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Dependability::ThreatsPropagation::StuckAtFixed">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="InvertedQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Dependability::ThreatsPropagation::Inverted">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="RampDownQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Dependability::ThreatsPropagation::RampDown">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="InternalFaultQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Dependability::ThreatsPropagation::InternalFault">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ <variable name="ExternalFaultQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESS::Dependability::ThreatsPropagation::InternalPropagation">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ </init>
+ <body xsi:type="mtl:FileBlock" openMode="OverWrite">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="<fault_extension_info name=""/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="system" referredVariable="/0/generateFaultExtensions/%/%/system">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="" desc="Generated by CHESS" smv_file=""/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="model" referredVariable="/0/generateFaultExtensions/model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/concat"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="sysName" referredVariable="/0/generateFaultExtensions/sysName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/concat"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=".smv">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/concat"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="">
 <extensions>
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" <nominal_component_extensions module=""/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="cl" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/cl">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="">
 <fault_models>
"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" <fault_model name=""/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorModel" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/errorModel">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="">
 <fault_modes>
"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" <fault_mode enabled="yes" probability=""/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="errorStereo" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/errorStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="probability">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="">
 <user_info>
 <name>"/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="</name>
 <desc></desc>
 </user_info>
"/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" <effects_model name="StuckAtByReference_D" desc="">
 <values>
 <input reads="term" value=""/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="stuckAtStereo" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/stuckAtStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="value">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=""/>
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" <output writes="varout" reads="input" binds=""/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="" type=""/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getTypeNameForProperty">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=""/>
"/>
+ <letVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="stuckAtStereo" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/stuckAtStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="property">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Property">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" </values>
 </effects_model>
"/>
+ <letVariable name="stuckAtStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="StuckAtQN" referredVariable="/0/generateFaultExtensions/@init/@variable.2">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="StuckAtQN" referredVariable="/0/generateFaultExtensions/@init/@variable.2">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </ifExpr>
+ <elseIf>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="			 <effects_model name="Inverted" desc="">
 <values>
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" <output writes="varout" reads="input" binds=""/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="" type=""/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=""/>
"/>
+ <letVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="invertedStereo" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/invertedStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="property">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Property">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" </values>
 </effects_model>
"/>
+ <letVariable name="invertedStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="InvertedQN" referredVariable="/0/generateFaultExtensions/@init/@variable.4">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="InvertedQN" referredVariable="/0/generateFaultExtensions/@init/@variable.4">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </ifExpr>
+ </elseIf>
+ <elseIf>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="			 <effects_model name="StuckAtFixed" desc="">
 <values>
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" <output writes="varout" reads="input" binds=""/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="" type=""/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=""/>
"/>
+ <letVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="stuckAtFixedStereo" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/stuckAtFixedStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="property">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Property">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" </values>
 </effects_model>
"/>
+ <letVariable name="stuckAtFixedStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="InvertedQN" referredVariable="/0/generateFaultExtensions/@init/@variable.4">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="StuckAtFixedQN" referredVariable="/0/generateFaultExtensions/@init/@variable.3">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </ifExpr>
+ </elseIf>
+ <elseIf>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="			 <effects_model name="RampDown" desc="">
 <values>
				 <input reads="decr" value=""/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="rampDownStereo" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/rampDownStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="decr">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=""/>
 <input reads="end_value" value=""/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="rampDownStereo" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/rampDownStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="endValue">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=""/>
"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" <output writes="varout" reads="input" binds=""/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="" type=""/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=""/>
"/>
+ <letVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="rampDownStereo" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/rampDownStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="property">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getValue"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Property">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" </values>
 </effects_model>
"/>
+ <letVariable name="rampDownStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="InvertedQN" referredVariable="/0/generateFaultExtensions/@init/@variable.4">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="RampDownQN" referredVariable="/0/generateFaultExtensions/@init/@variable.5">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </ifExpr>
+ </elseIf>
+ </body>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" <local_dynamics_model name="Permanent" desc="">
 <events>
 <event type="output" name="failure" connected="no"/>
 </events>
 </local_dynamics_model>
"/>
+ <letVariable name="tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="any">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/19/Set(Transition)">
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex/incoming"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="fault" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/fault">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="InternalFaultQN" referredVariable="/0/generateFaultExtensions/@init/@variable.6">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="fault" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/fault">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ExternalFaultQN" referredVariable="/0/generateFaultExtensions/@init/@variable.7">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/or"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="fault">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="errorStereo">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <initExpression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="errorState" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ErrorQN" referredVariable="/0/generateFaultExtensions/@init/@variable.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" </fault_mode>
"/>
+ <loopVariable name="errorState">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:IteratorExp" name="select" eType="/19/Bag(State)">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/19/Bag(State)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:IteratorExp" name="collect" eType="/19/Bag(Vertex)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/19/Set(Region)">
+ <source xsi:type="ocl.ecore:VariableExp" name="errorModel" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/errorModel">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine/region"/>
+ </source>
+ <body xsi:type="ocl.ecore:PropertyCallExp" eType="/19/Set(Vertex)">
+ <source xsi:type="ocl.ecore:VariableExp" name="temp1" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%/collect/temp1">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region/subvertex"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="temp1">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </iterator>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/State">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </argument>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="error" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/error">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ErrorQN" referredVariable="/0/generateFaultExtensions/@init/@variable.1">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="error">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </iterator>
+ </iterSet>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" </fault_modes>
 </fault_model>
"/>
+ <loopVariable name="errorModel">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:IteratorExp" name="select" eType="/19/Set(StateMachine)">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/19/Set(StateMachine)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/19/Set(Behavior)">
+ <source xsi:type="ocl.ecore:VariableExp" name="cl" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/cl">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioredClassifier/ownedBehavior"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/StateMachine">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </argument>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ErrorModelQN" referredVariable="/0/generateFaultExtensions/@init/@variable.0">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </iterator>
+ </iterSet>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" </fault_models>
 </nominal_component_extensions>
"/>
+ <loopVariable name="cl">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="nominalComponents" eType="/19/Set(Class)" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" </extensions>
</fault_extension_info>
"/>
+ <letVariable name="nominalComponents" eType="/19/Set(Class)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/19/Set(Class)">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/19/Set(Class)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/19/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="model" referredVariable="/0/generateFaultExtensions/model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ </source>
+ <body xsi:type="ocl.ecore:IteratorExp" name="exists">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/19/Set(StateMachine)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/19/Set(Behavior)">
+ <source xsi:type="ocl.ecore:VariableExp" name="cl" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/cl">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioredClassifier/ownedBehavior"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/StateMachine">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </argument>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ErrorModelQN" referredVariable="/0/generateFaultExtensions/@init/@variable.0">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </iterator>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="cl">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="systemClasses" eType="/19/Set(Class)">
+ <initExpression xsi:type="ocl.ecore:OperationCallExp" eType="/19/Set(Class)">
+ <source xsi:type="ocl.ecore:IteratorExp" name="collect" eType="/19/Bag(Class)">
+ <source xsi:type="ocl.ecore:VariableExp" name="systemProps" eType="/19/Set(Property)" referredVariable="/0/generateFaultExtensions/%/%/%.5/systemProps"/>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="pr" referredVariable="/0/generateFaultExtensions/%/%/%.5/%/systemClasses/%/collect/pr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="pr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Bag(T)_Class/asSet"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="systemProps" eType="/19/Set(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/19/Set(Property)">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/19/Set(Property)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/19/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="system" referredVariable="/0/generateFaultExtensions/%/%/system">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Property">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </argument>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateFaultExtensions/%/%/%.5/systemProps/select/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <letVariable name="system">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <initExpression xsi:type="mtl:QueryInvocation" definition="/0/getSystem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="model" referredVariable="/0/generateFaultExtensions/model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:VariableExp" name="sysQN" referredVariable="/0/generateFaultExtensions/sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </initExpression>
+ </letVariable>
+ </body>
+ <fileUrl xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="model" referredVariable="/0/generateFaultExtensions/model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="_">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/concat"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="sysName" referredVariable="/0/generateFaultExtensions/sysName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/concat"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=".fei">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/concat"/>
+ </fileUrl>
+ <charset xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="UTF-8">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </charset>
+ </body>
+ <parameter name="model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </parameter>
+ <parameter name="sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="sysName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <parameter name="filename">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getSystem" visibility="Public">
+ <parameter name="model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </parameter>
+ <parameter name="sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/19/Sequence(NamedElement)">
+ <source xsi:type="ocl.ecore:IteratorExp" name="select" eType="/19/Set(NamedElement)">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/19/Set(NamedElement)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/19/Set(Element)">
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/67">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/NamedElement">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ </argument>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Set(String)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <item xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="elem" referredVariable="/0/getSystem/%/%/%/select/elem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/qualifiedName"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/notEmpty"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_String_Class/equalsIgnoreCase">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="elem" referredVariable="/0/getSystem/%/%/%/select/elem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/qualifiedName"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="sysQN" referredVariable="/0/getSystem/sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="elem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ </iterator>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/asSequence"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)_Class/first"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/20/Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </expression>
+ <type xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getType" visibility="Public">
+ <parameter name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/70">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getType(org.eclipse.uml2.uml.Type)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Sequence(Type)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="type" referredVariable="/0/getType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getTypeNameForProperty" visibility="Public">
+ <parameter name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/73">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getTypeNameForProperty(org.eclipse.uml2.uml.Property)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/19/Sequence(Property)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/getTypeNameForProperty/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ </mtl:Module>
+ <ecore:EPackage name="additions">
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_String_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eAnnotations>
+ <eOperations name="equalsIgnoreCase">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <eParameters name="other">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Integer_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Real_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Real"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ecore_EObject_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eAnnotations>
+ <eOperations name="generateFaultExtensions">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/generateFaultExtensions"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </eParameters>
+ <eParameters name="sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="sysName">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="filename">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getSystem">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getSystem"/>
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <eParameters name="model">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </eParameters>
+ <eParameters name="sysQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getType">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getType"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getTypeNameForProperty">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getTypeNameForProperty"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_OclAny_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </eAnnotations>
+ <eOperations name="invoke">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <eParameters name="class">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="method">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="arguments">
+ <eType xsi:type="ocl.ecore:SequenceType" href="http://www.eclipse.org/acceleo/mtl/3.0/mtlnonstdlib.ecore#//Sequence(OclAny)"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Collection(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Collection(T)"/>
+ </eAnnotations>
+ <eOperations name="filter">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:CollectionType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Collection(T)"/>
+ <eParameters name="filter">
+ <eType xsi:type="ocl.ecore:TypeType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclType"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Sequence(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_OrderedSet(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Model_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Type_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Property_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eAnnotations>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ecore:EPackage name="collections">
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Element)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Property)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:BagType" name="Bag(Class)" instanceClassName="org.eclipse.ocl.util.Bag">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Class)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Behavior)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(StateMachine)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Stereotype)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Region)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Vertex)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:BagType" name="Bag(Vertex)" instanceClassName="org.eclipse.ocl.util.Bag">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:BagType" name="Bag(State)" instanceClassName="org.eclipse.ocl.util.Bag">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Transition)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(NamedElement)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(String)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(NamedElement)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Type)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(OclAny)" instanceClassName="java.util.List">
+ <elementType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Property)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ecore:EPackage name="types">
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="Property">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="Class">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="StateMachine">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="State">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="NamedElement">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Model"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ecore:EAnnotation source="positions">
+ <eAnnotations source="positions.0" references="/0/generateFaultExtensions">
+ <details key="start" value="775"/>
+ <details key="end" value="6246"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1" references="/0/generateFaultExtensions/@init">
+ <details key="start" value="884"/>
+ <details key="end" value="1538"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.2" references="/0/generateFaultExtensions/@init/@variable.0">
+ <details key="start" value="887"/>
+ <details key="end" value="965"/>
+ <details key="line" value="23"/>
+ </eAnnotations>
+ <eAnnotations source="positions.3" references="/0/generateFaultExtensions/@init/@variable.0/%">
+ <details key="start" value="911"/>
+ <details key="end" value="965"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.4" references="/0/generateFaultExtensions/@init/@variable.1">
+ <details key="start" value="968"/>
+ <details key="end" value="1041"/>
+ <details key="line" value="24"/>
+ </eAnnotations>
+ <eAnnotations source="positions.5" references="/0/generateFaultExtensions/@init/@variable.1/%">
+ <details key="start" value="987"/>
+ <details key="end" value="1041"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.6" references="/0/generateFaultExtensions/@init/@variable.2">
+ <details key="start" value="1044"/>
+ <details key="end" value="1116"/>
+ <details key="line" value="25"/>
+ </eAnnotations>
+ <eAnnotations source="positions.7" references="/0/generateFaultExtensions/@init/@variable.2/%">
+ <details key="start" value="1065"/>
+ <details key="end" value="1116"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.8" references="/0/generateFaultExtensions/@init/@variable.3">
+ <details key="start" value="1119"/>
+ <details key="end" value="1201"/>
+ <details key="line" value="26"/>
+ </eAnnotations>
+ <eAnnotations source="positions.9" references="/0/generateFaultExtensions/@init/@variable.3/%">
+ <details key="start" value="1145"/>
+ <details key="end" value="1201"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.10" references="/0/generateFaultExtensions/@init/@variable.4">
+ <details key="start" value="1204"/>
+ <details key="end" value="1278"/>
+ <details key="line" value="27"/>
+ </eAnnotations>
+ <eAnnotations source="positions.11" references="/0/generateFaultExtensions/@init/@variable.4/%">
+ <details key="start" value="1226"/>
+ <details key="end" value="1278"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.12" references="/0/generateFaultExtensions/@init/@variable.5">
+ <details key="start" value="1281"/>
+ <details key="end" value="1355"/>
+ <details key="line" value="28"/>
+ </eAnnotations>
+ <eAnnotations source="positions.13" references="/0/generateFaultExtensions/@init/@variable.5/%">
+ <details key="start" value="1303"/>
+ <details key="end" value="1355"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.14" references="/0/generateFaultExtensions/@init/@variable.6">
+ <details key="start" value="1358"/>
+ <details key="end" value="1442"/>
+ <details key="line" value="29"/>
+ </eAnnotations>
+ <eAnnotations source="positions.15" references="/0/generateFaultExtensions/@init/@variable.6/%">
+ <details key="start" value="1385"/>
+ <details key="end" value="1442"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.16" references="/0/generateFaultExtensions/@init/@variable.7">
+ <details key="start" value="1445"/>
+ <details key="end" value="1535"/>
+ <details key="line" value="30"/>
+ </eAnnotations>
+ <eAnnotations source="positions.17" references="/0/generateFaultExtensions/@init/@variable.7/%">
+ <details key="start" value="1472"/>
+ <details key="end" value="1535"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.18" references="/0/generateFaultExtensions/%">
+ <details key="start" value="1557"/>
+ <details key="end" value="6234"/>
+ <details key="line" value="33"/>
+ </eAnnotations>
+ <eAnnotations source="positions.19" references="/0/generateFaultExtensions/%/%">
+ <details key="start" value="1636"/>
+ <details key="end" value="6226"/>
+ <details key="line" value="34"/>
+ </eAnnotations>
+ <eAnnotations source="positions.20" references="/0/generateFaultExtensions/%/%/%">
+ <details key="start" value="1683"/>
+ <details key="end" value="1711"/>
+ <details key="line" value="35"/>
+ </eAnnotations>
+ <eAnnotations source="positions.21" references="/0/generateFaultExtensions/%/%/%.1">
+ <details key="start" value="1712"/>
+ <details key="end" value="1723"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.22" references="/0/generateFaultExtensions/%/%/%.1/system">
+ <details key="start" value="1712"/>
+ <details key="end" value="1718"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.23" references="/0/generateFaultExtensions/%/%/%.2">
+ <details key="start" value="1725"/>
+ <details key="end" value="1763"/>
+ <details key="line" value="35"/>
+ </eAnnotations>
+ <eAnnotations source="positions.24" references="/0/generateFaultExtensions/%/%/%.3">
+ <details key="start" value="1764"/>
+ <details key="end" value="1817"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.25" references="/0/generateFaultExtensions/%/%/%.3/%">
+ <details key="start" value="1764"/>
+ <details key="end" value="1802"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.26" references="/0/generateFaultExtensions/%/%/%.3/%/%">
+ <details key="start" value="1764"/>
+ <details key="end" value="1786"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.27" references="/0/generateFaultExtensions/%/%/%.3/%/%/%">
+ <details key="start" value="1764"/>
+ <details key="end" value="1774"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.28" references="/0/generateFaultExtensions/%/%/%.3/%/%/%/model">
+ <details key="start" value="1764"/>
+ <details key="end" value="1769"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.29" references="/0/generateFaultExtensions/%/%/%.3/%/%/%.1">
+ <details key="start" value="1782"/>
+ <details key="end" value="1785"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.30" references="/0/generateFaultExtensions/%/%/%.3/%/sysName">
+ <details key="start" value="1794"/>
+ <details key="end" value="1801"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.31" references="/0/generateFaultExtensions/%/%/%.3/%.1">
+ <details key="start" value="1810"/>
+ <details key="end" value="1816"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.32" references="/0/generateFaultExtensions/%/%/%.4">
+ <details key="start" value="1819"/>
+ <details key="end" value="1837"/>
+ <details key="line" value="35"/>
+ </eAnnotations>
+ <eAnnotations source="positions.33" references="/0/generateFaultExtensions/%/%/%.5">
+ <details key="start" value="1837"/>
+ <details key="end" value="6219"/>
+ <details key="line" value="37"/>
+ </eAnnotations>
+ <eAnnotations source="positions.34" references="/0/generateFaultExtensions/%/%/%.5/%">
+ <details key="start" value="1974"/>
+ <details key="end" value="6212"/>
+ <details key="line" value="38"/>
+ </eAnnotations>
+ <eAnnotations source="positions.35" references="/0/generateFaultExtensions/%/%/%.5/%/%">
+ <details key="start" value="2081"/>
+ <details key="end" value="6205"/>
+ <details key="line" value="39"/>
+ </eAnnotations>
+ <eAnnotations source="positions.36" references="/0/generateFaultExtensions/%/%/%.5/%/%/%">
+ <details key="start" value="2303"/>
+ <details key="end" value="6158"/>
+ <details key="line" value="41"/>
+ </eAnnotations>
+ <eAnnotations source="positions.37" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%">
+ <details key="start" value="2342"/>
+ <details key="end" value="2384"/>
+ <details key="line" value="42"/>
+ </eAnnotations>
+ <eAnnotations source="positions.38" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.1">
+ <details key="start" value="2385"/>
+ <details key="end" value="2392"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.39" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.1/cl">
+ <details key="start" value="2385"/>
+ <details key="end" value="2387"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.40" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.2">
+ <details key="start" value="2394"/>
+ <details key="end" value="2418"/>
+ <details key="line" value="42"/>
+ </eAnnotations>
+ <eAnnotations source="positions.41" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3">
+ <details key="start" value="2421"/>
+ <details key="end" value="6091"/>
+ <details key="line" value="44"/>
+ </eAnnotations>
+ <eAnnotations source="positions.42" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%">
+ <details key="start" value="2575"/>
+ <details key="end" value="2602"/>
+ <details key="line" value="45"/>
+ </eAnnotations>
+ <eAnnotations source="positions.43" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.1">
+ <details key="start" value="2603"/>
+ <details key="end" value="2618"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.44" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.1/errorModel">
+ <details key="start" value="2603"/>
+ <details key="end" value="2613"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.45" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.2">
+ <details key="start" value="2620"/>
+ <details key="end" value="2647"/>
+ <details key="line" value="45"/>
+ </eAnnotations>
+ <eAnnotations source="positions.46" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3">
+ <details key="start" value="2657"/>
+ <details key="end" value="6030"/>
+ <details key="line" value="47"/>
+ </eAnnotations>
+ <eAnnotations source="positions.47" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%">
+ <details key="start" value="2805"/>
+ <details key="end" value="5987"/>
+ <details key="line" value="48"/>
+ </eAnnotations>
+ <eAnnotations source="positions.48" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%">
+ <details key="start" value="2879"/>
+ <details key="end" value="2930"/>
+ <details key="line" value="49"/>
+ </eAnnotations>
+ <eAnnotations source="positions.49" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.1">
+ <details key="start" value="2931"/>
+ <details key="end" value="2978"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.50" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.1/errorState">
+ <details key="start" value="2931"/>
+ <details key="end" value="2941"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.51" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.1/errorStereo">
+ <details key="start" value="2951"/>
+ <details key="end" value="2962"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.52" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.1/%">
+ <details key="start" value="2964"/>
+ <details key="end" value="2977"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.53" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.2">
+ <details key="start" value="2980"/>
+ <details key="end" value="3031"/>
+ <details key="line" value="49"/>
+ </eAnnotations>
+ <eAnnotations source="positions.54" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.3">
+ <details key="start" value="3032"/>
+ <details key="end" value="3047"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.55" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.3/errorState">
+ <details key="start" value="3032"/>
+ <details key="end" value="3042"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.56" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.4">
+ <details key="start" value="3049"/>
+ <details key="end" value="3114"/>
+ <details key="line" value="51"/>
+ </eAnnotations>
+ <eAnnotations source="positions.57" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5">
+ <details key="start" value="3119"/>
+ <details key="end" value="5531"/>
+ <details key="line" value="54"/>
+ </eAnnotations>
+ <eAnnotations source="positions.58" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%">
+ <details key="start" value="3188"/>
+ <details key="end" value="3754"/>
+ <details key="line" value="55"/>
+ </eAnnotations>
+ <eAnnotations source="positions.59" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%">
+ <details key="start" value="3266"/>
+ <details key="end" value="3402"/>
+ <details key="line" value="56"/>
+ </eAnnotations>
+ <eAnnotations source="positions.60" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.1">
+ <details key="start" value="3403"/>
+ <details key="end" value="3446"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.61" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.1/errorState">
+ <details key="start" value="3403"/>
+ <details key="end" value="3413"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.62" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.1/stuckAtStereo">
+ <details key="start" value="3423"/>
+ <details key="end" value="3436"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.63" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.1/%">
+ <details key="start" value="3438"/>
+ <details key="end" value="3445"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.64" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.2">
+ <details key="start" value="3448"/>
+ <details key="end" value="3452"/>
+ <details key="line" value="58"/>
+ </eAnnotations>
+ <eAnnotations source="positions.65" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3">
+ <details key="start" value="3458"/>
+ <details key="end" value="3685"/>
+ <details key="line" value="59"/>
+ </eAnnotations>
+ <eAnnotations source="positions.66" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/%">
+ <details key="start" value="3554"/>
+ <details key="end" value="3617"/>
+ <details key="line" value="59"/>
+ </eAnnotations>
+ <eAnnotations source="positions.67" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/%.1">
+ <details key="start" value="3618"/>
+ <details key="end" value="3627"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.68" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/%.1/prop">
+ <details key="start" value="3618"/>
+ <details key="end" value="3622"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.69" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/%.2">
+ <details key="start" value="3629"/>
+ <details key="end" value="3637"/>
+ <details key="line" value="60"/>
+ </eAnnotations>
+ <eAnnotations source="positions.70" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/%.3">
+ <details key="start" value="3638"/>
+ <details key="end" value="3666"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.71" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/%.3/prop">
+ <details key="start" value="3661"/>
+ <details key="end" value="3665"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.72" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/%.4">
+ <details key="start" value="3668"/>
+ <details key="end" value="3672"/>
+ <details key="line" value="60"/>
+ </eAnnotations>
+ <eAnnotations source="positions.73" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/prop">
+ <details key="start" value="3463"/>
+ <details key="end" value="3547"/>
+ <details key="line" value="59"/>
+ </eAnnotations>
+ <eAnnotations source="positions.74" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/prop/%">
+ <details key="start" value="3482"/>
+ <details key="end" value="3548"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.75" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/prop/%/%">
+ <details key="start" value="3482"/>
+ <details key="end" value="3528"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.76" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/prop/%/%/errorState">
+ <details key="start" value="3482"/>
+ <details key="end" value="3492"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.77" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/prop/%/%/stuckAtStereo">
+ <details key="start" value="3502"/>
+ <details key="end" value="3515"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.78" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/prop/%/%/%">
+ <details key="start" value="3517"/>
+ <details key="end" value="3527"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.79" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.3/prop/%/%.1">
+ <details key="start" value="3539"/>
+ <details key="end" value="3547"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.80" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/%.4">
+ <details key="start" value="3686"/>
+ <details key="end" value="3743"/>
+ <details key="line" value="62"/>
+ </eAnnotations>
+ <eAnnotations source="positions.81" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/stuckAtStereo">
+ <details key="start" value="3193"/>
+ <details key="end" value="3264"/>
+ <details key="line" value="55"/>
+ </eAnnotations>
+ <eAnnotations source="positions.82" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/stuckAtStereo/%">
+ <details key="start" value="3223"/>
+ <details key="end" value="3265"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.83" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/stuckAtStereo/%/errorState">
+ <details key="start" value="3223"/>
+ <details key="end" value="3233"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.84" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%/stuckAtStereo/%/StuckAtQN">
+ <details key="start" value="3255"/>
+ <details key="end" value="3264"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.85" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.1">
+ <details key="start" value="3123"/>
+ <details key="end" value="3179"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.86" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.87" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.1/%/%/%">
+ <details key="start" value="3124"/>
+ <details key="end" value="3166"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.88" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.1/%/%/%/errorState">
+ <details key="start" value="3124"/>
+ <details key="end" value="3134"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.89" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.1/%/%/%/StuckAtQN">
+ <details key="start" value="3156"/>
+ <details key="end" value="3165"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.90" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2">
+ <details key="start" value="3760"/>
+ <details key="end" value="4281"/>
+ <details key="line" value="65"/>
+ </eAnnotations>
+ <eAnnotations source="positions.91" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%">
+ <details key="start" value="3832"/>
+ <details key="end" value="4275"/>
+ <details key="line" value="66"/>
+ </eAnnotations>
+ <eAnnotations source="positions.92" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%">
+ <details key="start" value="3912"/>
+ <details key="end" value="3982"/>
+ <details key="line" value="67"/>
+ </eAnnotations>
+ <eAnnotations source="positions.93" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1">
+ <details key="start" value="3988"/>
+ <details key="end" value="4206"/>
+ <details key="line" value="69"/>
+ </eAnnotations>
+ <eAnnotations source="positions.94" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/%">
+ <details key="start" value="4085"/>
+ <details key="end" value="4148"/>
+ <details key="line" value="69"/>
+ </eAnnotations>
+ <eAnnotations source="positions.95" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/%.1">
+ <details key="start" value="4149"/>
+ <details key="end" value="4158"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.96" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/%.1/prop">
+ <details key="start" value="4149"/>
+ <details key="end" value="4153"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.97" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/%.2">
+ <details key="start" value="4160"/>
+ <details key="end" value="4168"/>
+ <details key="line" value="70"/>
+ </eAnnotations>
+ <eAnnotations source="positions.98" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/%.3">
+ <details key="start" value="4169"/>
+ <details key="end" value="4187"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.99" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/%.3/%">
+ <details key="start" value="4177"/>
+ <details key="end" value="4186"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.100" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/%.3/%/prop">
+ <details key="start" value="4177"/>
+ <details key="end" value="4181"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.101" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/%.4">
+ <details key="start" value="4189"/>
+ <details key="end" value="4193"/>
+ <details key="line" value="70"/>
+ </eAnnotations>
+ <eAnnotations source="positions.102" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/prop">
+ <details key="start" value="3993"/>
+ <details key="end" value="4078"/>
+ <details key="line" value="69"/>
+ </eAnnotations>
+ <eAnnotations source="positions.103" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/prop/%">
+ <details key="start" value="4012"/>
+ <details key="end" value="4079"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.104" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/prop/%/%">
+ <details key="start" value="4012"/>
+ <details key="end" value="4059"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.105" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/prop/%/%/errorState">
+ <details key="start" value="4012"/>
+ <details key="end" value="4022"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.106" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/prop/%/%/invertedStereo">
+ <details key="start" value="4032"/>
+ <details key="end" value="4046"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.107" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/prop/%/%/%">
+ <details key="start" value="4048"/>
+ <details key="end" value="4058"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.108" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.1/prop/%/%.1">
+ <details key="start" value="4070"/>
+ <details key="end" value="4078"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.109" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/%.2">
+ <details key="start" value="4207"/>
+ <details key="end" value="4264"/>
+ <details key="line" value="72"/>
+ </eAnnotations>
+ <eAnnotations source="positions.110" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/invertedStereo">
+ <details key="start" value="3837"/>
+ <details key="end" value="3910"/>
+ <details key="line" value="66"/>
+ </eAnnotations>
+ <eAnnotations source="positions.111" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/invertedStereo/%">
+ <details key="start" value="3868"/>
+ <details key="end" value="3911"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.112" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/invertedStereo/%/errorState">
+ <details key="start" value="3868"/>
+ <details key="end" value="3878"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.113" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%/invertedStereo/%/InvertedQN">
+ <details key="start" value="3900"/>
+ <details key="end" value="3910"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.114" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%.1">
+ <details key="start" value="3768"/>
+ <details key="end" value="3825"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.115" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.116" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%.1/%/%/%">
+ <details key="start" value="3769"/>
+ <details key="end" value="3812"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.117" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%.1/%/%/%/errorState">
+ <details key="start" value="3769"/>
+ <details key="end" value="3779"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.118" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.2/%.1/%/%/%/InvertedQN">
+ <details key="start" value="3801"/>
+ <details key="end" value="3811"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.119" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3">
+ <details key="start" value="4281"/>
+ <details key="end" value="4818"/>
+ <details key="line" value="75"/>
+ </eAnnotations>
+ <eAnnotations source="positions.120" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%">
+ <details key="start" value="4357"/>
+ <details key="end" value="4812"/>
+ <details key="line" value="76"/>
+ </eAnnotations>
+ <eAnnotations source="positions.121" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%">
+ <details key="start" value="4441"/>
+ <details key="end" value="4515"/>
+ <details key="line" value="77"/>
+ </eAnnotations>
+ <eAnnotations source="positions.122" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1">
+ <details key="start" value="4521"/>
+ <details key="end" value="4743"/>
+ <details key="line" value="79"/>
+ </eAnnotations>
+ <eAnnotations source="positions.123" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/%">
+ <details key="start" value="4622"/>
+ <details key="end" value="4685"/>
+ <details key="line" value="79"/>
+ </eAnnotations>
+ <eAnnotations source="positions.124" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/%.1">
+ <details key="start" value="4686"/>
+ <details key="end" value="4695"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.125" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/%.1/prop">
+ <details key="start" value="4686"/>
+ <details key="end" value="4690"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.126" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/%.2">
+ <details key="start" value="4697"/>
+ <details key="end" value="4705"/>
+ <details key="line" value="80"/>
+ </eAnnotations>
+ <eAnnotations source="positions.127" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/%.3">
+ <details key="start" value="4706"/>
+ <details key="end" value="4724"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.128" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/%.3/%">
+ <details key="start" value="4714"/>
+ <details key="end" value="4723"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.129" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/%.3/%/prop">
+ <details key="start" value="4714"/>
+ <details key="end" value="4718"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.130" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/%.4">
+ <details key="start" value="4726"/>
+ <details key="end" value="4730"/>
+ <details key="line" value="80"/>
+ </eAnnotations>
+ <eAnnotations source="positions.131" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/prop">
+ <details key="start" value="4526"/>
+ <details key="end" value="4615"/>
+ <details key="line" value="79"/>
+ </eAnnotations>
+ <eAnnotations source="positions.132" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/prop/%">
+ <details key="start" value="4545"/>
+ <details key="end" value="4616"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.133" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/prop/%/%">
+ <details key="start" value="4545"/>
+ <details key="end" value="4596"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.134" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/prop/%/%/errorState">
+ <details key="start" value="4545"/>
+ <details key="end" value="4555"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.135" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/prop/%/%/stuckAtFixedStereo">
+ <details key="start" value="4565"/>
+ <details key="end" value="4583"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.136" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/prop/%/%/%">
+ <details key="start" value="4585"/>
+ <details key="end" value="4595"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.137" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.1/prop/%/%.1">
+ <details key="start" value="4607"/>
+ <details key="end" value="4615"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.138" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/%.2">
+ <details key="start" value="4744"/>
+ <details key="end" value="4801"/>
+ <details key="line" value="82"/>
+ </eAnnotations>
+ <eAnnotations source="positions.139" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/stuckAtFixedStereo">
+ <details key="start" value="4362"/>
+ <details key="end" value="4439"/>
+ <details key="line" value="76"/>
+ </eAnnotations>
+ <eAnnotations source="positions.140" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/stuckAtFixedStereo/%">
+ <details key="start" value="4397"/>
+ <details key="end" value="4440"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.141" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/stuckAtFixedStereo/%/errorState">
+ <details key="start" value="4397"/>
+ <details key="end" value="4407"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.142" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%/stuckAtFixedStereo/%/InvertedQN">
+ <details key="start" value="4429"/>
+ <details key="end" value="4439"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.143" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%.1">
+ <details key="start" value="4289"/>
+ <details key="end" value="4350"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.144" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.145" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%.1/%/%/%">
+ <details key="start" value="4290"/>
+ <details key="end" value="4337"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.146" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%.1/%/%/%/errorState">
+ <details key="start" value="4290"/>
+ <details key="end" value="4300"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.147" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.3/%.1/%/%/%/StuckAtFixedQN">
+ <details key="start" value="4322"/>
+ <details key="end" value="4336"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.148" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4">
+ <details key="start" value="4818"/>
+ <details key="end" value="5526"/>
+ <details key="line" value="85"/>
+ </eAnnotations>
+ <eAnnotations source="positions.149" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%">
+ <details key="start" value="4890"/>
+ <details key="end" value="5520"/>
+ <details key="line" value="86"/>
+ </eAnnotations>
+ <eAnnotations source="positions.150" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%">
+ <details key="start" value="4970"/>
+ <details key="end" value="5073"/>
+ <details key="line" value="87"/>
+ </eAnnotations>
+ <eAnnotations source="positions.151" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.1">
+ <details key="start" value="5074"/>
+ <details key="end" value="5117"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.152" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.1/errorState">
+ <details key="start" value="5074"/>
+ <details key="end" value="5084"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.153" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.1/rampDownStereo">
+ <details key="start" value="5094"/>
+ <details key="end" value="5108"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.154" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.1/%">
+ <details key="start" value="5110"/>
+ <details key="end" value="5116"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.155" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.2">
+ <details key="start" value="5119"/>
+ <details key="end" value="5173"/>
+ <details key="line" value="89"/>
+ </eAnnotations>
+ <eAnnotations source="positions.156" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.3">
+ <details key="start" value="5174"/>
+ <details key="end" value="5221"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.157" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.3/errorState">
+ <details key="start" value="5174"/>
+ <details key="end" value="5184"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.158" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.3/rampDownStereo">
+ <details key="start" value="5194"/>
+ <details key="end" value="5208"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.159" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.3/%">
+ <details key="start" value="5210"/>
+ <details key="end" value="5220"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.160" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.4">
+ <details key="start" value="5223"/>
+ <details key="end" value="5227"/>
+ <details key="line" value="90"/>
+ </eAnnotations>
+ <eAnnotations source="positions.161" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5">
+ <details key="start" value="5233"/>
+ <details key="end" value="5451"/>
+ <details key="line" value="91"/>
+ </eAnnotations>
+ <eAnnotations source="positions.162" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/%">
+ <details key="start" value="5330"/>
+ <details key="end" value="5393"/>
+ <details key="line" value="91"/>
+ </eAnnotations>
+ <eAnnotations source="positions.163" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/%.1">
+ <details key="start" value="5394"/>
+ <details key="end" value="5403"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.164" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/%.1/prop">
+ <details key="start" value="5394"/>
+ <details key="end" value="5398"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.165" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/%.2">
+ <details key="start" value="5405"/>
+ <details key="end" value="5413"/>
+ <details key="line" value="92"/>
+ </eAnnotations>
+ <eAnnotations source="positions.166" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/%.3">
+ <details key="start" value="5414"/>
+ <details key="end" value="5432"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.167" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/%.3/%">
+ <details key="start" value="5422"/>
+ <details key="end" value="5431"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.168" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/%.3/%/prop">
+ <details key="start" value="5422"/>
+ <details key="end" value="5426"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.169" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/%.4">
+ <details key="start" value="5434"/>
+ <details key="end" value="5438"/>
+ <details key="line" value="92"/>
+ </eAnnotations>
+ <eAnnotations source="positions.170" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/prop">
+ <details key="start" value="5238"/>
+ <details key="end" value="5323"/>
+ <details key="line" value="91"/>
+ </eAnnotations>
+ <eAnnotations source="positions.171" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/prop/%">
+ <details key="start" value="5257"/>
+ <details key="end" value="5324"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.172" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/prop/%/%">
+ <details key="start" value="5257"/>
+ <details key="end" value="5304"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.173" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/prop/%/%/errorState">
+ <details key="start" value="5257"/>
+ <details key="end" value="5267"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.174" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/prop/%/%/rampDownStereo">
+ <details key="start" value="5277"/>
+ <details key="end" value="5291"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.175" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/prop/%/%/%">
+ <details key="start" value="5293"/>
+ <details key="end" value="5303"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.176" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.5/prop/%/%.1">
+ <details key="start" value="5315"/>
+ <details key="end" value="5323"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.177" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/%.6">
+ <details key="start" value="5452"/>
+ <details key="end" value="5509"/>
+ <details key="line" value="94"/>
+ </eAnnotations>
+ <eAnnotations source="positions.178" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/rampDownStereo">
+ <details key="start" value="4895"/>
+ <details key="end" value="4968"/>
+ <details key="line" value="86"/>
+ </eAnnotations>
+ <eAnnotations source="positions.179" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/rampDownStereo/%">
+ <details key="start" value="4926"/>
+ <details key="end" value="4969"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.180" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/rampDownStereo/%/errorState">
+ <details key="start" value="4926"/>
+ <details key="end" value="4936"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.181" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%/rampDownStereo/%/InvertedQN">
+ <details key="start" value="4958"/>
+ <details key="end" value="4968"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.182" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%.1">
+ <details key="start" value="4826"/>
+ <details key="end" value="4883"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.183" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.184" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%.1/%/%/%">
+ <details key="start" value="4827"/>
+ <details key="end" value="4870"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.185" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%.1/%/%/%/errorState">
+ <details key="start" value="4827"/>
+ <details key="end" value="4837"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.186" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.5/%.4/%.1/%/%/%/RampDownQN">
+ <details key="start" value="4859"/>
+ <details key="end" value="4869"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.187" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6">
+ <details key="start" value="5537"/>
+ <details key="end" value="5975"/>
+ <details key="line" value="98"/>
+ </eAnnotations>
+ <eAnnotations source="positions.188" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/%">
+ <details key="start" value="5742"/>
+ <details key="end" value="5964"/>
+ <details key="line" value="99"/>
+ </eAnnotations>
+ <eAnnotations source="positions.189" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr">
+ <details key="start" value="5542"/>
+ <details key="end" value="5739"/>
+ <details key="line" value="98"/>
+ </eAnnotations>
+ <eAnnotations source="positions.190" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any">
+ <details key="start" value="5561"/>
+ <details key="end" value="5740"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.191" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%">
+ <details key="start" value="5561"/>
+ <details key="end" value="5580"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.192" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%/errorState">
+ <details key="start" value="5561"/>
+ <details key="end" value="5571"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.193" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%.1">
+ <details key="start" value="5607"/>
+ <details key="end" value="5739"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.194" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%.1/%">
+ <details key="start" value="5607"/>
+ <details key="end" value="5662"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.195" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%.1/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.196" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%.1/%/%/%/%">
+ <details key="start" value="5607"/>
+ <details key="end" value="5650"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.197" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%.1/%/%/%/%/fault">
+ <details key="start" value="5607"/>
+ <details key="end" value="5612"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.198" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%.1/%/%/%/%/InternalFaultQN">
+ <details key="start" value="5634"/>
+ <details key="end" value="5649"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.199" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%.1/%.1">
+ <details key="start" value="5684"/>
+ <details key="end" value="5739"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.200" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%.1/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.201" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%.1/%.1/%/%/%">
+ <details key="start" value="5684"/>
+ <details key="end" value="5727"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.202" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%.1/%.1/%/%/%/fault">
+ <details key="start" value="5684"/>
+ <details key="end" value="5689"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.203" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/%.1/%.1/%/%/%/ExternalFaultQN">
+ <details key="start" value="5711"/>
+ <details key="end" value="5726"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.204" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/%.6/tr/any/fault">
+ <details key="start" value="5586"/>
+ <details key="end" value="5604"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.205" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/errorStereo">
+ <details key="start" value="2810"/>
+ <details key="end" value="2877"/>
+ <details key="line" value="48"/>
+ </eAnnotations>
+ <eAnnotations source="positions.206" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/errorStereo/%">
+ <details key="start" value="2838"/>
+ <details key="end" value="2878"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.207" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/errorStereo/%/errorState">
+ <details key="start" value="2838"/>
+ <details key="end" value="2848"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.208" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%/errorStereo/%/ErrorQN">
+ <details key="start" value="2870"/>
+ <details key="end" value="2877"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.209" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/%.1">
+ <details key="start" value="5988"/>
+ <details key="end" value="6014"/>
+ <details key="line" value="107"/>
+ </eAnnotations>
+ <eAnnotations source="positions.210" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/errorState">
+ <details key="start" value="2663"/>
+ <details key="end" value="2681"/>
+ <details key="line" value="47"/>
+ </eAnnotations>
+ <eAnnotations source="positions.211" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select">
+ <details key="start" value="2684"/>
+ <details key="end" value="2799"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.212" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%">
+ <details key="start" value="2684"/>
+ <details key="end" value="2726"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.213" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%/collect">
+ <details key="start" value="2684"/>
+ <details key="end" value="2711"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.214" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%/collect/%">
+ <details key="start" value="2684"/>
+ <details key="end" value="2701"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.215" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%/collect/%/errorModel">
+ <details key="start" value="2684"/>
+ <details key="end" value="2694"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.216" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%/collect/%.1">
+ <details key="start" value="2702"/>
+ <details key="end" value="2711"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.217" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%/collect/%.1/temp1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.218" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%/collect/temp1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.219" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%/%">
+ <details key="start" value="2720"/>
+ <details key="end" value="2725"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.220" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%.1">
+ <details key="start" value="2751"/>
+ <details key="end" value="2798"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.221" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.222" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%.1/%/%/%">
+ <details key="start" value="2751"/>
+ <details key="end" value="2786"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.223" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%.1/%/%/%/error">
+ <details key="start" value="2751"/>
+ <details key="end" value="2756"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.224" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/%.1/%/%/%/ErrorQN">
+ <details key="start" value="2778"/>
+ <details key="end" value="2785"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.225" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.3/select/error">
+ <details key="start" value="2735"/>
+ <details key="end" value="2748"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.226" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/%.4">
+ <details key="start" value="6031"/>
+ <details key="end" value="6079"/>
+ <details key="line" value="109"/>
+ </eAnnotations>
+ <eAnnotations source="positions.227" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/errorModel">
+ <details key="start" value="2427"/>
+ <details key="end" value="2452"/>
+ <details key="line" value="44"/>
+ </eAnnotations>
+ <eAnnotations source="positions.228" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select">
+ <details key="start" value="2455"/>
+ <details key="end" value="2572"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.229" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select/%">
+ <details key="start" value="2455"/>
+ <details key="end" value="2493"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.230" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select/%/%">
+ <details key="start" value="2455"/>
+ <details key="end" value="2471"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.231" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select/%/%/cl">
+ <details key="start" value="2455"/>
+ <details key="end" value="2457"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.232" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select/%/%.1">
+ <details key="start" value="2480"/>
+ <details key="end" value="2492"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.233" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select/%.1">
+ <details key="start" value="2522"/>
+ <details key="end" value="2571"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.234" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.235" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select/%.1/%/%/%">
+ <details key="start" value="2522"/>
+ <details key="end" value="2559"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.236" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select/%.1/%/%/%/sm">
+ <details key="start" value="2522"/>
+ <details key="end" value="2524"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.237" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select/%.1/%/%/%/ErrorModelQN">
+ <details key="start" value="2546"/>
+ <details key="end" value="2558"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.238" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.3/select/sm">
+ <details key="start" value="2502"/>
+ <details key="end" value="2519"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.239" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/%.4">
+ <details key="start" value="6092"/>
+ <details key="end" value="6150"/>
+ <details key="line" value="112"/>
+ </eAnnotations>
+ <eAnnotations source="positions.240" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/cl">
+ <details key="start" value="2309"/>
+ <details key="end" value="2319"/>
+ <details key="line" value="41"/>
+ </eAnnotations>
+ <eAnnotations source="positions.241" references="/0/generateFaultExtensions/%/%/%.5/%/%/%/nominalComponents">
+ <details key="start" value="2322"/>
+ <details key="end" value="2339"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.242" references="/0/generateFaultExtensions/%/%/%.5/%/%/%.1">
+ <details key="start" value="6159"/>
+ <details key="end" value="6199"/>
+ <details key="line" value="115"/>
+ </eAnnotations>
+ <eAnnotations source="positions.243" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents">
+ <details key="start" value="2086"/>
+ <details key="end" value="2299"/>
+ <details key="line" value="39"/>
+ </eAnnotations>
+ <eAnnotations source="positions.244" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select">
+ <details key="start" value="2120"/>
+ <details key="end" value="2300"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.245" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/%">
+ <details key="start" value="2120"/>
+ <details key="end" value="2159"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.246" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/%/%">
+ <details key="start" value="2120"/>
+ <details key="end" value="2144"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.247" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/%/%/model">
+ <details key="start" value="2120"/>
+ <details key="end" value="2125"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.248" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/%/%.1">
+ <details key="start" value="2153"/>
+ <details key="end" value="2158"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.249" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists">
+ <details key="start" value="2181"/>
+ <details key="end" value="2299"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.250" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists/%">
+ <details key="start" value="2181"/>
+ <details key="end" value="2219"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.251" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists/%/%">
+ <details key="start" value="2181"/>
+ <details key="end" value="2197"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.252" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists/%/%/cl">
+ <details key="start" value="2181"/>
+ <details key="end" value="2183"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.253" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists/%/%.1">
+ <details key="start" value="2206"/>
+ <details key="end" value="2218"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.254" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists/%.1">
+ <details key="start" value="2249"/>
+ <details key="end" value="2298"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.255" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.256" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists/%.1/%/%/%">
+ <details key="start" value="2249"/>
+ <details key="end" value="2286"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.257" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists/%.1/%/%/%/sm">
+ <details key="start" value="2249"/>
+ <details key="end" value="2251"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.258" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists/%.1/%/%/%/ErrorModelQN">
+ <details key="start" value="2273"/>
+ <details key="end" value="2285"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.259" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/exists/sm">
+ <details key="start" value="2229"/>
+ <details key="end" value="2246"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.260" references="/0/generateFaultExtensions/%/%/%.5/%/%/nominalComponents/select/cl">
+ <details key="start" value="2168"/>
+ <details key="end" value="2178"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.261" references="/0/generateFaultExtensions/%/%/%.5/%/systemClasses">
+ <details key="start" value="1979"/>
+ <details key="end" value="2079"/>
+ <details key="line" value="38"/>
+ </eAnnotations>
+ <eAnnotations source="positions.262" references="/0/generateFaultExtensions/%/%/%.5/%/systemClasses/%">
+ <details key="start" value="2009"/>
+ <details key="end" value="2080"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.263" references="/0/generateFaultExtensions/%/%/%.5/%/systemClasses/%/collect">
+ <details key="start" value="2009"/>
+ <details key="end" value="2071"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.264" references="/0/generateFaultExtensions/%/%/%.5/%/systemClasses/%/collect/systemProps">
+ <details key="start" value="2009"/>
+ <details key="end" value="2020"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.265" references="/0/generateFaultExtensions/%/%/%.5/%/systemClasses/%/collect/%">
+ <details key="start" value="2046"/>
+ <details key="end" value="2070"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.266" references="/0/generateFaultExtensions/%/%/%.5/%/systemClasses/%/collect/%/%">
+ <details key="start" value="2046"/>
+ <details key="end" value="2053"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.267" references="/0/generateFaultExtensions/%/%/%.5/%/systemClasses/%/collect/%/%/pr">
+ <details key="start" value="2046"/>
+ <details key="end" value="2048"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.268" references="/0/generateFaultExtensions/%/%/%.5/%/systemClasses/%/collect/%/%.1">
+ <details key="start" value="2064"/>
+ <details key="end" value="2069"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.269" references="/0/generateFaultExtensions/%/%/%.5/%/systemClasses/%/collect/pr">
+ <details key="start" value="2030"/>
+ <details key="end" value="2043"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.270" references="/0/generateFaultExtensions/%/%/%.5/systemProps">
+ <details key="start" value="1842"/>
+ <details key="end" value="1971"/>
+ <details key="line" value="37"/>
+ </eAnnotations>
+ <eAnnotations source="positions.271" references="/0/generateFaultExtensions/%/%/%.5/systemProps/select">
+ <details key="start" value="1873"/>
+ <details key="end" value="1972"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.272" references="/0/generateFaultExtensions/%/%/%.5/systemProps/select/%">
+ <details key="start" value="1873"/>
+ <details key="end" value="1916"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.273" references="/0/generateFaultExtensions/%/%/%.5/systemProps/select/%/%">
+ <details key="start" value="1873"/>
+ <details key="end" value="1898"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.274" references="/0/generateFaultExtensions/%/%/%.5/systemProps/select/%/%/system">
+ <details key="start" value="1873"/>
+ <details key="end" value="1879"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.275" references="/0/generateFaultExtensions/%/%/%.5/systemProps/select/%/%.1">
+ <details key="start" value="1907"/>
+ <details key="end" value="1915"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.276" references="/0/generateFaultExtensions/%/%/%.5/systemProps/select/%.1">
+ <details key="start" value="1943"/>
+ <details key="end" value="1971"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.277" references="/0/generateFaultExtensions/%/%/%.5/systemProps/select/%.1/%">
+ <details key="start" value="1943"/>
+ <details key="end" value="1952"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.278" references="/0/generateFaultExtensions/%/%/%.5/systemProps/select/%.1/%/prop">
+ <details key="start" value="1943"/>
+ <details key="end" value="1947"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.279" references="/0/generateFaultExtensions/%/%/%.5/systemProps/select/%.1/%.1">
+ <details key="start" value="1965"/>
+ <details key="end" value="1970"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.280" references="/0/generateFaultExtensions/%/%/%.5/systemProps/select/prop">
+ <details key="start" value="1925"/>
+ <details key="end" value="1940"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.281" references="/0/generateFaultExtensions/%/%/system">
+ <details key="start" value="1641"/>
+ <details key="end" value="1681"/>
+ <details key="line" value="34"/>
+ </eAnnotations>
+ <eAnnotations source="positions.282" references="/0/generateFaultExtensions/%/%/system/%">
+ <details key="start" value="1659"/>
+ <details key="end" value="1682"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.283" references="/0/generateFaultExtensions/%/%/system/%/model">
+ <details key="start" value="1669"/>
+ <details key="end" value="1674"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.284" references="/0/generateFaultExtensions/%/%/system/%/sysQN">
+ <details key="start" value="1676"/>
+ <details key="end" value="1681"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.285" references="/0/generateFaultExtensions/%/%.1">
+ <details key="start" value="1564"/>
+ <details key="end" value="1617"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.286" references="/0/generateFaultExtensions/%/%.1/%">
+ <details key="start" value="1564"/>
+ <details key="end" value="1602"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.287" references="/0/generateFaultExtensions/%/%.1/%/%">
+ <details key="start" value="1564"/>
+ <details key="end" value="1586"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.288" references="/0/generateFaultExtensions/%/%.1/%/%/%">
+ <details key="start" value="1564"/>
+ <details key="end" value="1574"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.289" references="/0/generateFaultExtensions/%/%.1/%/%/%/model">
+ <details key="start" value="1564"/>
+ <details key="end" value="1569"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.290" references="/0/generateFaultExtensions/%/%.1/%/%/%.1">
+ <details key="start" value="1582"/>
+ <details key="end" value="1585"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.291" references="/0/generateFaultExtensions/%/%.1/%/sysName">
+ <details key="start" value="1594"/>
+ <details key="end" value="1601"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.292" references="/0/generateFaultExtensions/%/%.1/%.1">
+ <details key="start" value="1610"/>
+ <details key="end" value="1616"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.293" references="/0/generateFaultExtensions/%/%.2">
+ <details key="start" value="1626"/>
+ <details key="end" value="1633"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.294" references="/0/generateFaultExtensions/model">
+ <details key="start" value="816"/>
+ <details key="end" value="829"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.295" references="/0/generateFaultExtensions/sysQN">
+ <details key="start" value="831"/>
+ <details key="end" value="845"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.296" references="/0/generateFaultExtensions/sysName">
+ <details key="start" value="848"/>
+ <details key="end" value="864"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.297" references="/0/generateFaultExtensions/filename">
+ <details key="start" value="866"/>
+ <details key="end" value="883"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.298" references="/0/getSystem">
+ <details key="start" value="6249"/>
+ <details key="end" value="6511"/>
+ <details key="line" value="125"/>
+ </eAnnotations>
+ <eAnnotations source="positions.299" references="/0/getSystem/model">
+ <details key="start" value="6273"/>
+ <details key="end" value="6286"/>
+ <details key="line" value="125"/>
+ </eAnnotations>
+ <eAnnotations source="positions.300" references="/0/getSystem/sysQN">
+ <details key="start" value="6288"/>
+ <details key="end" value="6302"/>
+ <details key="line" value="125"/>
+ </eAnnotations>
+ <eAnnotations source="positions.301" references="/0/getSystem/%">
+ <details key="start" value="6314"/>
+ <details key="end" value="6509"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.302" references="/0/getSystem/%/%">
+ <details key="start" value="6314"/>
+ <details key="end" value="6492"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.303" references="/0/getSystem/%/%/%">
+ <details key="start" value="6314"/>
+ <details key="end" value="6483"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.304" references="/0/getSystem/%/%/%/select">
+ <details key="start" value="6314"/>
+ <details key="end" value="6469"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.305" references="/0/getSystem/%/%/%/select/%">
+ <details key="start" value="6314"/>
+ <details key="end" value="6359"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.306" references="/0/getSystem/%/%/%/select/%/%">
+ <details key="start" value="6314"/>
+ <details key="end" value="6337"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.307" references="/0/getSystem/%/%/%/select/%/%/self">
+ <details key="start" value="6314"/>
+ <details key="end" value="6318"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.308" references="/0/getSystem/%/%/%/select/%/%.1">
+ <details key="start" value="6346"/>
+ <details key="end" value="6358"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.309" references="/0/getSystem/%/%/%/select/%.1">
+ <details key="start" value="6391"/>
+ <details key="end" value="6468"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.310" references="/0/getSystem/%/%/%/select/%.1/%">
+ <details key="start" value="6391"/>
+ <details key="end" value="6421"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.311" references="/0/getSystem/%/%/%/select/%.1/%/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.312" references="/0/getSystem/%/%/%/select/%.1/%/%/%/%">
+ <details key="start" value="6391"/>
+ <details key="end" value="6409"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.313" references="/0/getSystem/%/%/%/select/%.1/%/%/%/%/elem">
+ <details key="start" value="6391"/>
+ <details key="end" value="6395"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.314" references="/0/getSystem/%/%/%/select/%.1/%.1">
+ <details key="start" value="6426"/>
+ <details key="end" value="6468"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.315" references="/0/getSystem/%/%/%/select/%.1/%.1/%">
+ <details key="start" value="6426"/>
+ <details key="end" value="6444"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.316" references="/0/getSystem/%/%/%/select/%.1/%.1/%/elem">
+ <details key="start" value="6426"/>
+ <details key="end" value="6430"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.317" references="/0/getSystem/%/%/%/select/%.1/%.1/sysQN">
+ <details key="start" value="6462"/>
+ <details key="end" value="6467"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.318" references="/0/getSystem/%/%/%/select/elem">
+ <details key="start" value="6369"/>
+ <details key="end" value="6388"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.319" references="/0/getSystem/%/%.1">
+ <details key="start" value="6503"/>
+ <details key="end" value="6508"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.320" references="/0/getType">
+ <details key="start" value="6513"/>
+ <details key="end" value="6685"/>
+ <details key="line" value="128"/>
+ </eAnnotations>
+ <eAnnotations source="positions.321" references="/0/getType/type">
+ <details key="start" value="6535"/>
+ <details key="end" value="6546"/>
+ <details key="line" value="128"/>
+ </eAnnotations>
+ <eAnnotations source="positions.322" references="/0/getType/%">
+ <details key="start" value="6559"/>
+ <details key="end" value="6683"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.323" references="/0/getType/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.324" references="/0/getType/%/%">
+ <details key="start" value="6566"/>
+ <details key="end" value="6628"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.325" references="/0/getType/%/%.1">
+ <details key="start" value="6630"/>
+ <details key="end" value="6666"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.326" references="/0/getType/%/%.2">
+ <details key="start" value="6668"/>
+ <details key="end" value="6682"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.327" references="/0/getType/%/%.2/%/type">
+ <details key="start" value="6677"/>
+ <details key="end" value="6681"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.328" references="/0/getTypeNameForProperty">
+ <details key="start" value="6687"/>
+ <details key="end" value="6897"/>
+ <details key="line" value="131"/>
+ </eAnnotations>
+ <eAnnotations source="positions.329" references="/0/getTypeNameForProperty/prop">
+ <details key="start" value="6724"/>
+ <details key="end" value="6739"/>
+ <details key="line" value="131"/>
+ </eAnnotations>
+ <eAnnotations source="positions.330" references="/0/getTypeNameForProperty/%">
+ <details key="start" value="6752"/>
+ <details key="end" value="6894"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.331" references="/0/getTypeNameForProperty/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.332" references="/0/getTypeNameForProperty/%/%">
+ <details key="start" value="6759"/>
+ <details key="end" value="6821"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.333" references="/0/getTypeNameForProperty/%/%.1">
+ <details key="start" value="6822"/>
+ <details key="end" value="6877"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.334" references="/0/getTypeNameForProperty/%/%.2">
+ <details key="start" value="6879"/>
+ <details key="end" value="6893"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.335" references="/0/getTypeNameForProperty/%/%.2/%/prop">
+ <details key="start" value="6888"/>
+ <details key="end" value="6892"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ </ecore:EAnnotation>
+</xmi:XMI>
diff --git a/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generateImplementation.emtl b/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generateImplementation.emtl
new file mode 100644
index 0000000..a283061
--- /dev/null
+++ b/plugins/contracts/org.polarsys.chess.contracts.transformations/src/org/polarsys/chess/contracts/transformations/main/generateImplementation.emtl
@@ -0,0 +1,1452 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI 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" xmlns:mtl="http://www.eclipse.org/acceleo/mtl/3.0" xmlns:ocl.ecore="http://www.eclipse.org/ocl/1.1.0/Ecore">
+ <mtl:Module name="generateImplementation" nsURI="org::polarsys::chess::contracts::transformations::main::generateImplementation" startHeaderPosition="699" endHeaderPosition="1158">
+ <input>
+ <takesTypesFrom href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
+ </input>
+ <ownedModuleElement xsi:type="mtl:Template" name="generateImplementation" visibility="Public">
+ <init>
+ <variable name="ContractPropQN">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <initExpression xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="CHESSContract::ContractProperty">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </initExpression>
+ </variable>
+ </init>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="

"/>
+ <body xsi:type="mtl:FileBlock" openMode="OverWrite">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	MODULE main

"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	VAR
	states	: {
"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="				"/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="vertex" referredVariable="/0/generateImplementation/%.1/%.1/%.1/vertex">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=","/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="i" referredVariable="/17">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="states" eType="/10/Sequence(State)" referredVariable="/0/generateImplementation/%.1/%.1/states"/>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)_Class/size"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer_Class/%3C"/>
+ </ifExpr>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <loopVariable name="vertex">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="states" eType="/10/Sequence(State)" referredVariable="/0/generateImplementation/%.1/%.1/states"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="				};
"/>
+ <letVariable name="states" eType="/10/Sequence(State)">
+ <initExpression xsi:type="ocl.ecore:OperationCallExp" eType="/10/Sequence(State)">
+ <source xsi:type="ocl.ecore:OperationCallExp" eType="/10/Bag(State)" referredOperation="/1/oclstdlib_Collection(T)_Class/filter">
+ <source xsi:type="ocl.ecore:IteratorExp" name="collect" eType="/10/Bag(Vertex)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/10/Set(Region)">
+ <source xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/generateImplementation/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine/region"/>
+ </source>
+ <body xsi:type="ocl.ecore:PropertyCallExp" eType="/10/Set(Vertex)">
+ <source xsi:type="ocl.ecore:VariableExp" name="temp1" referredVariable="/0/generateImplementation/%.1/%.1/states/%/%/collect/temp1">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region/subvertex"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="temp1">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </iterator>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/7/State">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </argument>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Bag(T)_Class/asSequence"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="		"/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateImplementation/%.1/%.2/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" : "/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateImplementation/%.1/%.2/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=";
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateImplementation/%.1/%.2/%/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="event">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/="/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </ifExpr>
+ </body>
+ <loopVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="vars" eType="/10/OrderedSet(Property)" referredVariable="/0/generateImplementation/%.1/%.2/vars"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
	IVAR
"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="		"/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateImplementation/%.1/%.2/%.2/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" : boolean;
"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="mtl:QueryInvocation" definition="/0/getType">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="prop" referredVariable="/0/generateImplementation/%.1/%.2/%.2/prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TypedElement/type"/>
+ </argument>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="event">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/="/>
+ </ifExpr>
+ </body>
+ <loopVariable name="prop">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="vars" eType="/10/OrderedSet(Property)" referredVariable="/0/generateImplementation/%.1/%.2/vars"/>
+ </body>
+ <letVariable name="vars" eType="/10/OrderedSet(Property)">
+ <initExpression xsi:type="ocl.ecore:IteratorExp" name="select" eType="/10/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/10/OrderedSet(Property)">
+ <source xsi:type="ocl.ecore:VariableExp" name="owner" referredVariable="/0/generateImplementation/owner">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/attribute"/>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:CollectionLiteralExp" eType="/10/Set(Stereotype)">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL/Annotations">
+ <details key="IMPLICIT_SET_CONVERSION" value="true"/>
+ </eAnnotations>
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <item xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="p" referredVariable="/0/generateImplementation/%.1/%.2/vars/select/p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </source>
+ <argument xsi:type="ocl.ecore:VariableExp" name="ContractPropQN" referredVariable="/0/generateImplementation/@init/@variable.0">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotype"/>
+ </item>
+ </part>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Set(T)_Class/isEmpty"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="p">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </iterator>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	
	INIT
	states = "/>
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getInitCondition">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <argument xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/generateImplementation/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </argument>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="

"/>
+ <body xsi:type="mtl:LetBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	TRANS
"/>
+ <body xsi:type="mtl:ForBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="	(states = "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="tr" referredVariable="/0/generateImplementation/%.1/%.6/%.1/tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition/source"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=" & next(states) = "/>
+ <body xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="tr" referredVariable="/0/generateImplementation/%.1/%.6/%.1/tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition/target"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
	
	) "/>
+ <body xsi:type="mtl:IfBlock">
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="|"/>
+ <ifExpr xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="i" referredVariable="/40">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="transitions" eType="/10/Sequence(Transition)" referredVariable="/0/generateImplementation/%.1/%.6/transitions"/>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)_Class/size"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer_Class/%3C"/>
+ </ifExpr>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <loopVariable name="tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </loopVariable>
+ <iterSet xsi:type="ocl.ecore:VariableExp" name="transitions" eType="/10/Sequence(Transition)" referredVariable="/0/generateImplementation/%.1/%.6/transitions"/>
+ </body>
+ <letVariable name="transitions" eType="/10/Sequence(Transition)">
+ <initExpression xsi:type="ocl.ecore:OperationCallExp" eType="/10/Sequence(Transition)">
+ <source xsi:type="ocl.ecore:IteratorExp" name="select" eType="/10/Bag(Transition)">
+ <source xsi:type="ocl.ecore:IteratorExp" name="collect" eType="/10/Bag(Transition)">
+ <source xsi:type="ocl.ecore:PropertyCallExp" eType="/10/Set(Region)">
+ <source xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/generateImplementation/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine/region"/>
+ </source>
+ <body xsi:type="ocl.ecore:PropertyCallExp" eType="/10/Set(Transition)">
+ <source xsi:type="ocl.ecore:VariableExp" name="temp1" referredVariable="/0/generateImplementation/%.1/%.6/transitions/%/select/collect/temp2">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region/transition"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="temp2">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </iterator>
+ </source>
+ <body xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="tr" referredVariable="/0/generateImplementation/%.1/%.6/transitions/%/select/tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition/source"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/7/Pseudostate">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Pseudostate"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </source>
+ <argument xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="tr" referredVariable="/0/generateImplementation/%.1/%.6/transitions/%/select/tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition/target"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/7/Pseudostate">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Pseudostate"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclIsTypeOf"/>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/not"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Boolean_Class/and"/>
+ </body>
+ <iterator xsi:type="ocl.ecore:Variable" name="tr">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </iterator>
+ </source>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Bag(T)_Class/asSequence"/>
+ </initExpression>
+ </letVariable>
+ </body>
+ <body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="
"/>
+ <fileUrl xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <source xsi:type="ocl.ecore:OperationCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ <source xsi:type="ocl.ecore:PropertyCallExp">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/generateImplementation/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <referredProperty xsi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/owner"/>
+ </source>
+ <argument xsi:type="ocl.ecore:TypeExp" eType="/7/NamedElement">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny_Class/oclAsType"/>
+ </source>
+ <referredProperty xsi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol=".smv">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <referredOperation xsi:type="ecore:EOperation" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String_Class/concat"/>
+ </fileUrl>
+ <charset xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="UTF-8">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </charset>
+ </body>
+ <parameter name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </parameter>
+ <parameter name="owner">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </parameter>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getType" visibility="Public">
+ <parameter name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/43">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getType(org.eclipse.uml2.uml.Type)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/10/Sequence(Type)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="type" referredVariable="/0/getType/type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ <ownedModuleElement xsi:type="mtl:Query" name="getInitCondition" visibility="Public">
+ <parameter name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </parameter>
+ <expression xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/oclstdlib_OclAny_Class/invoke">
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <source xsi:type="ocl.ecore:VariableExp" name="self" referredVariable="/46">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </source>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.polarsys.chess.contracts.transformations.service.Service">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getInitCondition(org.eclipse.uml2.uml.StateMachine)">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </argument>
+ <argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/10/Sequence(StateMachine)" kind="Sequence">
+ <part xsi:type="ocl.ecore:CollectionItem">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ <item xsi:type="ocl.ecore:VariableExp" name="sm" referredVariable="/0/getInitCondition/sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </item>
+ </part>
+ </argument>
+ </expression>
+ <type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ownedModuleElement>
+ </mtl:Module>
+ <ecore:EPackage name="additions">
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_String_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Integer_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Real_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Real"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ecore_EObject_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eAnnotations>
+ <eOperations name="generateImplementation">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/generateImplementation"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eParameters>
+ <eParameters name="owner">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getType">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getType"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="type">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eParameters>
+ </eOperations>
+ <eOperations name="getInitCondition">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <contents xsi:type="ocl.ecore:Constraint"/>
+ </eAnnotations>
+ <eAnnotations source="MTL" references="/0/getInitCondition"/>
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ <eParameters name="sm">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_OclAny_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </eAnnotations>
+ <eOperations name="invoke">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ <eParameters name="class">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="method">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </eParameters>
+ <eParameters name="arguments">
+ <eType xsi:type="ocl.ecore:SequenceType" href="http://www.eclipse.org/acceleo/mtl/3.0/mtlnonstdlib.ecore#//Sequence(OclAny)"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Collection(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Collection(T)"/>
+ </eAnnotations>
+ <eOperations name="filter">
+ <eAnnotations source="MTL non-standard"/>
+ <eType xsi:type="ocl.ecore:CollectionType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Collection(T)"/>
+ <eParameters name="filter">
+ <eType xsi:type="ocl.ecore:TypeType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclType"/>
+ </eParameters>
+ </eOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_Sequence(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Sequence(T)"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="oclstdlib_OrderedSet(T)_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OrderedSet(T)"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_StateMachine_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="uml_Type_Class">
+ <eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
+ <references href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eAnnotations>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ecore:EPackage name="types">
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="NamedElement">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="State">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:TypeType" name="Pseudostate">
+ <referredType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Pseudostate"/>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ecore:EPackage name="collections">
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Region)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Region"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Vertex)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:BagType" name="Bag(Vertex)" instanceClassName="org.eclipse.ocl.util.Bag">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:BagType" name="Bag(State)" instanceClassName="org.eclipse.ocl.util.Bag">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(State)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//State"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:OrderedSetType" name="OrderedSet(Property)" instanceClassName="java.util.LinkedHashSet">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Stereotype)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SetType" name="Set(Transition)" instanceClassName="java.util.Set">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:BagType" name="Bag(Transition)" instanceClassName="org.eclipse.ocl.util.Bag">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Transition)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(Type)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(OclAny)" instanceClassName="java.util.List">
+ <elementType xsi:type="ocl.ecore:AnyType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/OclAny"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ocl.ecore:SequenceType" name="Sequence(StateMachine)" instanceClassName="java.util.List">
+ <elementType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </eClassifiers>
+ </ecore:EPackage>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Vertex"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Transition"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="i">
+ <eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/Integer"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//StateMachine"/>
+ </ocl.ecore:Variable>
+ <ocl.ecore:Variable name="self">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </ocl.ecore:Variable>
+ <ecore:EAnnotation source="positions">
+ <eAnnotations source="positions.0" references="/0/generateImplementation">
+ <details key="start" value="774"/>
+ <details key="end" value="2015"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.1" references="/0/generateImplementation/@init">
+ <details key="start" value="847"/>
+ <details key="end" value="912"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.2" references="/0/generateImplementation/@init/@variable.0">
+ <details key="start" value="850"/>
+ <details key="end" value="909"/>
+ <details key="line" value="23"/>
+ </eAnnotations>
+ <eAnnotations source="positions.3" references="/0/generateImplementation/@init/@variable.0/%">
+ <details key="start" value="876"/>
+ <details key="end" value="909"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.4" references="/0/generateImplementation/%">
+ <details key="start" value="914"/>
+ <details key="end" value="916"/>
+ <details key="line" value="25"/>
+ </eAnnotations>
+ <eAnnotations source="positions.5" references="/0/generateImplementation/%.1">
+ <details key="start" value="916"/>
+ <details key="end" value="2003"/>
+ <details key="line" value="27"/>
+ </eAnnotations>
+ <eAnnotations source="positions.6" references="/0/generateImplementation/%.1/%">
+ <details key="start" value="994"/>
+ <details key="end" value="1008"/>
+ <details key="line" value="28"/>
+ </eAnnotations>
+ <eAnnotations source="positions.7" references="/0/generateImplementation/%.1/%.1">
+ <details key="start" value="1008"/>
+ <details key="end" value="1212"/>
+ <details key="line" value="30"/>
+ </eAnnotations>
+ <eAnnotations source="positions.8" references="/0/generateImplementation/%.1/%.1/%">
+ <details key="start" value="1091"/>
+ <details key="end" value="1109"/>
+ <details key="line" value="30"/>
+ </eAnnotations>
+ <eAnnotations source="positions.9" references="/0/generateImplementation/%.1/%.1/%.1">
+ <details key="start" value="1109"/>
+ <details key="end" value="1198"/>
+ <details key="line" value="33"/>
+ </eAnnotations>
+ <eAnnotations source="positions.10" references="/0/generateImplementation/%.1/%.1/%.1/%">
+ <details key="start" value="1142"/>
+ <details key="end" value="1146"/>
+ <details key="line" value="34"/>
+ </eAnnotations>
+ <eAnnotations source="positions.11" references="/0/generateImplementation/%.1/%.1/%.1/%.1">
+ <details key="start" value="1147"/>
+ <details key="end" value="1158"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.12" references="/0/generateImplementation/%.1/%.1/%.1/%.1/vertex">
+ <details key="start" value="1147"/>
+ <details key="end" value="1153"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.13" references="/0/generateImplementation/%.1/%.1/%.1/%.2">
+ <details key="start" value="1160"/>
+ <details key="end" value="1191"/>
+ <details key="line" value="34"/>
+ </eAnnotations>
+ <eAnnotations source="positions.14" references="/0/generateImplementation/%.1/%.1/%.1/%.2/%">
+ <details key="start" value="1185"/>
+ <details key="end" value="1186"/>
+ <details key="line" value="34"/>
+ </eAnnotations>
+ <eAnnotations source="positions.15" references="/0/generateImplementation/%.1/%.1/%.1/%.2/%.1">
+ <details key="start" value="1164"/>
+ <details key="end" value="1184"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.16" references="/0/generateImplementation/%.1/%.1/%.1/%.2/%.1/i">
+ <details key="start" value="1165"/>
+ <details key="end" value="1166"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.17" references="/0/generateImplementation/%.1/%.1/%.1/%.2/%.1/%">
+ <details key="start" value="1169"/>
+ <details key="end" value="1183"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.18" references="/0/generateImplementation/%.1/%.1/%.1/%.2/%.1/%/states">
+ <details key="start" value="1169"/>
+ <details key="end" value="1175"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.19" references="/0/generateImplementation/%.1/%.1/%.1/%.3">
+ <details key="start" value="1191"/>
+ <details key="end" value="1192"/>
+ <details key="line" value="35"/>
+ </eAnnotations>
+ <eAnnotations source="positions.20" references="/0/generateImplementation/%.1/%.1/%.1/vertex">
+ <details key="start" value="1115"/>
+ <details key="end" value="1130"/>
+ <details key="line" value="33"/>
+ </eAnnotations>
+ <eAnnotations source="positions.21" references="/0/generateImplementation/%.1/%.1/%.1/states">
+ <details key="start" value="1133"/>
+ <details key="end" value="1139"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.22" references="/0/generateImplementation/%.1/%.1/%.2">
+ <details key="start" value="1199"/>
+ <details key="end" value="1206"/>
+ <details key="line" value="36"/>
+ </eAnnotations>
+ <eAnnotations source="positions.23" references="/0/generateImplementation/%.1/%.1/states">
+ <details key="start" value="1013"/>
+ <details key="end" value="1088"/>
+ <details key="line" value="30"/>
+ </eAnnotations>
+ <eAnnotations source="positions.24" references="/0/generateImplementation/%.1/%.1/states/%">
+ <details key="start" value="1041"/>
+ <details key="end" value="1089"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.25" references="/0/generateImplementation/%.1/%.1/states/%/%">
+ <details key="start" value="1041"/>
+ <details key="end" value="1075"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.26" references="/0/generateImplementation/%.1/%.1/states/%/%/collect">
+ <details key="start" value="1041"/>
+ <details key="end" value="1060"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.27" references="/0/generateImplementation/%.1/%.1/states/%/%/collect/%">
+ <details key="start" value="1041"/>
+ <details key="end" value="1050"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.28" references="/0/generateImplementation/%.1/%.1/states/%/%/collect/%/sm">
+ <details key="start" value="1041"/>
+ <details key="end" value="1043"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.29" references="/0/generateImplementation/%.1/%.1/states/%/%/collect/%.1">
+ <details key="start" value="1051"/>
+ <details key="end" value="1060"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.30" references="/0/generateImplementation/%.1/%.1/states/%/%/collect/%.1/temp1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.31" references="/0/generateImplementation/%.1/%.1/states/%/%/collect/temp1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.32" references="/0/generateImplementation/%.1/%.1/states/%/%/%">
+ <details key="start" value="1069"/>
+ <details key="end" value="1074"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.33" references="/0/generateImplementation/%.1/%.2">
+ <details key="start" value="1213"/>
+ <details key="end" value="1592"/>
+ <details key="line" value="38"/>
+ </eAnnotations>
+ <eAnnotations source="positions.34" references="/0/generateImplementation/%.1/%.2/%">
+ <details key="start" value="1340"/>
+ <details key="end" value="1468"/>
+ <details key="line" value="39"/>
+ </eAnnotations>
+ <eAnnotations source="positions.35" references="/0/generateImplementation/%.1/%.2/%/%">
+ <details key="start" value="1372"/>
+ <details key="end" value="1460"/>
+ <details key="line" value="40"/>
+ </eAnnotations>
+ <eAnnotations source="positions.36" references="/0/generateImplementation/%.1/%.2/%/%/%">
+ <details key="start" value="1414"/>
+ <details key="end" value="1416"/>
+ <details key="line" value="41"/>
+ </eAnnotations>
+ <eAnnotations source="positions.37" references="/0/generateImplementation/%.1/%.2/%/%/%.1">
+ <details key="start" value="1417"/>
+ <details key="end" value="1426"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.38" references="/0/generateImplementation/%.1/%.2/%/%/%.1/prop">
+ <details key="start" value="1417"/>
+ <details key="end" value="1421"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.39" references="/0/generateImplementation/%.1/%.2/%/%/%.2">
+ <details key="start" value="1428"/>
+ <details key="end" value="1431"/>
+ <details key="line" value="41"/>
+ </eAnnotations>
+ <eAnnotations source="positions.40" references="/0/generateImplementation/%.1/%.2/%/%/%.3">
+ <details key="start" value="1432"/>
+ <details key="end" value="1450"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.41" references="/0/generateImplementation/%.1/%.2/%/%/%.3/%">
+ <details key="start" value="1440"/>
+ <details key="end" value="1449"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.42" references="/0/generateImplementation/%.1/%.2/%/%/%.3/%/prop">
+ <details key="start" value="1440"/>
+ <details key="end" value="1444"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.43" references="/0/generateImplementation/%.1/%.2/%/%/%.4">
+ <details key="start" value="1452"/>
+ <details key="end" value="1454"/>
+ <details key="line" value="41"/>
+ </eAnnotations>
+ <eAnnotations source="positions.44" references="/0/generateImplementation/%.1/%.2/%/%/%.5">
+ <details key="start" value="1376"/>
+ <details key="end" value="1412"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.45" references="/0/generateImplementation/%.1/%.2/%/%/%.5/%">
+ <details key="start" value="1381"/>
+ <details key="end" value="1411"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.46" references="/0/generateImplementation/%.1/%.2/%/%/%.5/%/%">
+ <details key="start" value="1382"/>
+ <details key="end" value="1400"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.47" references="/0/generateImplementation/%.1/%.2/%/%/%.5/%/%/%">
+ <details key="start" value="1390"/>
+ <details key="end" value="1399"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.48" references="/0/generateImplementation/%.1/%.2/%/%/%.5/%/%/%/prop">
+ <details key="start" value="1390"/>
+ <details key="end" value="1394"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.49" references="/0/generateImplementation/%.1/%.2/%/%/%.5/%/%.1">
+ <details key="start" value="1403"/>
+ <details key="end" value="1410"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.50" references="/0/generateImplementation/%.1/%.2/%/prop">
+ <details key="start" value="1346"/>
+ <details key="end" value="1361"/>
+ <details key="line" value="39"/>
+ </eAnnotations>
+ <eAnnotations source="positions.51" references="/0/generateImplementation/%.1/%.2/%/vars">
+ <details key="start" value="1364"/>
+ <details key="end" value="1368"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.52" references="/0/generateImplementation/%.1/%.2/%.1">
+ <details key="start" value="1469"/>
+ <details key="end" value="1476"/>
+ <details key="line" value="44"/>
+ </eAnnotations>
+ <eAnnotations source="positions.53" references="/0/generateImplementation/%.1/%.2/%.2">
+ <details key="start" value="1477"/>
+ <details key="end" value="1585"/>
+ <details key="line" value="46"/>
+ </eAnnotations>
+ <eAnnotations source="positions.54" references="/0/generateImplementation/%.1/%.2/%.2/%">
+ <details key="start" value="1509"/>
+ <details key="end" value="1577"/>
+ <details key="line" value="47"/>
+ </eAnnotations>
+ <eAnnotations source="positions.55" references="/0/generateImplementation/%.1/%.2/%.2/%/%">
+ <details key="start" value="1545"/>
+ <details key="end" value="1547"/>
+ <details key="line" value="48"/>
+ </eAnnotations>
+ <eAnnotations source="positions.56" references="/0/generateImplementation/%.1/%.2/%.2/%/%.1">
+ <details key="start" value="1548"/>
+ <details key="end" value="1557"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.57" references="/0/generateImplementation/%.1/%.2/%.2/%/%.1/prop">
+ <details key="start" value="1548"/>
+ <details key="end" value="1552"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.58" references="/0/generateImplementation/%.1/%.2/%.2/%/%.2">
+ <details key="start" value="1559"/>
+ <details key="end" value="1571"/>
+ <details key="line" value="48"/>
+ </eAnnotations>
+ <eAnnotations source="positions.59" references="/0/generateImplementation/%.1/%.2/%.2/%/%.3">
+ <details key="start" value="1513"/>
+ <details key="end" value="1543"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.60" references="/0/generateImplementation/%.1/%.2/%.2/%/%.3/%">
+ <details key="start" value="1514"/>
+ <details key="end" value="1532"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.61" references="/0/generateImplementation/%.1/%.2/%.2/%/%.3/%/%">
+ <details key="start" value="1522"/>
+ <details key="end" value="1531"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.62" references="/0/generateImplementation/%.1/%.2/%.2/%/%.3/%/%/prop">
+ <details key="start" value="1522"/>
+ <details key="end" value="1526"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.63" references="/0/generateImplementation/%.1/%.2/%.2/%/%.3/%.1">
+ <details key="start" value="1535"/>
+ <details key="end" value="1542"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.64" references="/0/generateImplementation/%.1/%.2/%.2/prop">
+ <details key="start" value="1483"/>
+ <details key="end" value="1498"/>
+ <details key="line" value="46"/>
+ </eAnnotations>
+ <eAnnotations source="positions.65" references="/0/generateImplementation/%.1/%.2/%.2/vars">
+ <details key="start" value="1501"/>
+ <details key="end" value="1505"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.66" references="/0/generateImplementation/%.1/%.2/vars">
+ <details key="start" value="1218"/>
+ <details key="end" value="1337"/>
+ <details key="line" value="38"/>
+ </eAnnotations>
+ <eAnnotations source="positions.67" references="/0/generateImplementation/%.1/%.2/vars/select">
+ <details key="start" value="1249"/>
+ <details key="end" value="1338"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.68" references="/0/generateImplementation/%.1/%.2/vars/select/%">
+ <details key="start" value="1249"/>
+ <details key="end" value="1264"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.69" references="/0/generateImplementation/%.1/%.2/vars/select/%/owner">
+ <details key="start" value="1249"/>
+ <details key="end" value="1254"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.70" references="/0/generateImplementation/%.1/%.2/vars/select/%.1">
+ <details key="start" value="1288"/>
+ <details key="end" value="1337"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.71" references="/0/generateImplementation/%.1/%.2/vars/select/%.1/%">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.72" references="/0/generateImplementation/%.1/%.2/vars/select/%.1/%/%/%">
+ <details key="start" value="1288"/>
+ <details key="end" value="1326"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.73" references="/0/generateImplementation/%.1/%.2/vars/select/%.1/%/%/%/p">
+ <details key="start" value="1288"/>
+ <details key="end" value="1289"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.74" references="/0/generateImplementation/%.1/%.2/vars/select/%.1/%/%/%/ContractPropQN">
+ <details key="start" value="1311"/>
+ <details key="end" value="1325"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.75" references="/0/generateImplementation/%.1/%.2/vars/select/p">
+ <details key="start" value="1273"/>
+ <details key="end" value="1285"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.76" references="/0/generateImplementation/%.1/%.3">
+ <details key="start" value="1597"/>
+ <details key="end" value="1615"/>
+ <details key="line" value="51"/>
+ </eAnnotations>
+ <eAnnotations source="positions.77" references="/0/generateImplementation/%.1/%.4">
+ <details key="start" value="1616"/>
+ <details key="end" value="1636"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.78" references="/0/generateImplementation/%.1/%.4/sm">
+ <details key="start" value="1633"/>
+ <details key="end" value="1635"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.79" references="/0/generateImplementation/%.1/%.5">
+ <details key="start" value="1638"/>
+ <details key="end" value="1640"/>
+ <details key="line" value="55"/>
+ </eAnnotations>
+ <eAnnotations source="positions.80" references="/0/generateImplementation/%.1/%.6">
+ <details key="start" value="1640"/>
+ <details key="end" value="1994"/>
+ <details key="line" value="56"/>
+ </eAnnotations>
+ <eAnnotations source="positions.81" references="/0/generateImplementation/%.1/%.6/%">
+ <details key="start" value="1830"/>
+ <details key="end" value="1837"/>
+ <details key="line" value="56"/>
+ </eAnnotations>
+ <eAnnotations source="positions.82" references="/0/generateImplementation/%.1/%.6/%.1">
+ <details key="start" value="1837"/>
+ <details key="end" value="1987"/>
+ <details key="line" value="58"/>
+ </eAnnotations>
+ <eAnnotations source="positions.83" references="/0/generateImplementation/%.1/%.6/%.1/%">
+ <details key="start" value="1875"/>
+ <details key="end" value="1886"/>
+ <details key="line" value="59"/>
+ </eAnnotations>
+ <eAnnotations source="positions.84" references="/0/generateImplementation/%.1/%.6/%.1/%.1">
+ <details key="start" value="1887"/>
+ <details key="end" value="1901"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.85" references="/0/generateImplementation/%.1/%.6/%.1/%.1/%">
+ <details key="start" value="1887"/>
+ <details key="end" value="1896"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.86" references="/0/generateImplementation/%.1/%.6/%.1/%.1/%/tr">
+ <details key="start" value="1887"/>
+ <details key="end" value="1889"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.87" references="/0/generateImplementation/%.1/%.6/%.1/%.2">
+ <details key="start" value="1903"/>
+ <details key="end" value="1921"/>
+ <details key="line" value="59"/>
+ </eAnnotations>
+ <eAnnotations source="positions.88" references="/0/generateImplementation/%.1/%.6/%.1/%.3">
+ <details key="start" value="1922"/>
+ <details key="end" value="1936"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.89" references="/0/generateImplementation/%.1/%.6/%.1/%.3/%">
+ <details key="start" value="1922"/>
+ <details key="end" value="1931"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.90" references="/0/generateImplementation/%.1/%.6/%.1/%.3/%/tr">
+ <details key="start" value="1922"/>
+ <details key="end" value="1924"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.91" references="/0/generateImplementation/%.1/%.6/%.1/%.4">
+ <details key="start" value="1938"/>
+ <details key="end" value="1944"/>
+ <details key="line" value="60"/>
+ </eAnnotations>
+ <eAnnotations source="positions.92" references="/0/generateImplementation/%.1/%.6/%.1/%.5">
+ <details key="start" value="1944"/>
+ <details key="end" value="1980"/>
+ <details key="line" value="61"/>
+ </eAnnotations>
+ <eAnnotations source="positions.93" references="/0/generateImplementation/%.1/%.6/%.1/%.5/%">
+ <details key="start" value="1974"/>
+ <details key="end" value="1975"/>
+ <details key="line" value="61"/>
+ </eAnnotations>
+ <eAnnotations source="positions.94" references="/0/generateImplementation/%.1/%.6/%.1/%.5/%.1">
+ <details key="start" value="1948"/>
+ <details key="end" value="1973"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.95" references="/0/generateImplementation/%.1/%.6/%.1/%.5/%.1/i">
+ <details key="start" value="1949"/>
+ <details key="end" value="1950"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.96" references="/0/generateImplementation/%.1/%.6/%.1/%.5/%.1/%">
+ <details key="start" value="1953"/>
+ <details key="end" value="1972"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.97" references="/0/generateImplementation/%.1/%.6/%.1/%.5/%.1/%/transitions">
+ <details key="start" value="1953"/>
+ <details key="end" value="1964"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.98" references="/0/generateImplementation/%.1/%.6/%.1/%.6">
+ <details key="start" value="1980"/>
+ <details key="end" value="1981"/>
+ <details key="line" value="62"/>
+ </eAnnotations>
+ <eAnnotations source="positions.99" references="/0/generateImplementation/%.1/%.6/%.1/tr">
+ <details key="start" value="1843"/>
+ <details key="end" value="1858"/>
+ <details key="line" value="58"/>
+ </eAnnotations>
+ <eAnnotations source="positions.100" references="/0/generateImplementation/%.1/%.6/%.1/transitions">
+ <details key="start" value="1861"/>
+ <details key="end" value="1872"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.101" references="/0/generateImplementation/%.1/%.6/transitions">
+ <details key="start" value="1645"/>
+ <details key="end" value="1827"/>
+ <details key="line" value="56"/>
+ </eAnnotations>
+ <eAnnotations source="positions.102" references="/0/generateImplementation/%.1/%.6/transitions/%">
+ <details key="start" value="1683"/>
+ <details key="end" value="1828"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.103" references="/0/generateImplementation/%.1/%.6/transitions/%/select">
+ <details key="start" value="1683"/>
+ <details key="end" value="1814"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.104" references="/0/generateImplementation/%.1/%.6/transitions/%/select/collect">
+ <details key="start" value="1683"/>
+ <details key="end" value="1703"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.105" references="/0/generateImplementation/%.1/%.6/transitions/%/select/collect/%">
+ <details key="start" value="1683"/>
+ <details key="end" value="1692"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.106" references="/0/generateImplementation/%.1/%.6/transitions/%/select/collect/%/sm">
+ <details key="start" value="1683"/>
+ <details key="end" value="1685"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.107" references="/0/generateImplementation/%.1/%.6/transitions/%/select/collect/%.1">
+ <details key="start" value="1693"/>
+ <details key="end" value="1703"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.108" references="/0/generateImplementation/%.1/%.6/transitions/%/select/collect/%.1/temp1">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.109" references="/0/generateImplementation/%.1/%.6/transitions/%/select/collect/temp2">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.110" references="/0/generateImplementation/%.1/%.6/transitions/%/select/%">
+ <details key="start" value="1730"/>
+ <details key="end" value="1813"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.111" references="/0/generateImplementation/%.1/%.6/transitions/%/select/%/%">
+ <details key="start" value="1730"/>
+ <details key="end" value="1769"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.112" references="/0/generateImplementation/%.1/%.6/transitions/%/select/%/%/%">
+ <details key="start" value="1733"/>
+ <details key="end" value="1769"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.113" references="/0/generateImplementation/%.1/%.6/transitions/%/select/%/%/%/%">
+ <details key="start" value="1734"/>
+ <details key="end" value="1743"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.114" references="/0/generateImplementation/%.1/%.6/transitions/%/select/%/%/%/%/tr">
+ <details key="start" value="1734"/>
+ <details key="end" value="1736"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.115" references="/0/generateImplementation/%.1/%.6/transitions/%/select/%/%/%/%.1">
+ <details key="start" value="1756"/>
+ <details key="end" value="1767"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.116" references="/0/generateImplementation/%.1/%.6/transitions/%/select/%/%.1">
+ <details key="start" value="1774"/>
+ <details key="end" value="1813"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.117" references="/0/generateImplementation/%.1/%.6/transitions/%/select/%/%.1/%">
+ <details key="start" value="1777"/>
+ <details key="end" value="1813"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.118" references="/0/generateImplementation/%.1/%.6/transitions/%/select/%/%.1/%/%">
+ <details key="start" value="1778"/>
+ <details key="end" value="1787"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.119" references="/0/generateImplementation/%.1/%.6/transitions/%/select/%/%.1/%/%/tr">
+ <details key="start" value="1778"/>
+ <details key="end" value="1780"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.120" references="/0/generateImplementation/%.1/%.6/transitions/%/select/%/%.1/%/%.1">
+ <details key="start" value="1800"/>
+ <details key="end" value="1811"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.121" references="/0/generateImplementation/%.1/%.6/transitions/%/select/tr">
+ <details key="start" value="1712"/>
+ <details key="end" value="1727"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.122" references="/0/generateImplementation/%.1/%.7">
+ <details key="start" value="1995"/>
+ <details key="end" value="1996"/>
+ <details key="line" value="64"/>
+ </eAnnotations>
+ <eAnnotations source="positions.123" references="/0/generateImplementation/%.1/%.8">
+ <details key="start" value="923"/>
+ <details key="end" value="975"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.124" references="/0/generateImplementation/%.1/%.8/%">
+ <details key="start" value="923"/>
+ <details key="end" value="960"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.125" references="/0/generateImplementation/%.1/%.8/%/%">
+ <details key="start" value="923"/>
+ <details key="end" value="955"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.126" references="/0/generateImplementation/%.1/%.8/%/%/%">
+ <details key="start" value="923"/>
+ <details key="end" value="931"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.127" references="/0/generateImplementation/%.1/%.8/%/%/%/sm">
+ <details key="start" value="923"/>
+ <details key="end" value="925"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.128" references="/0/generateImplementation/%.1/%.8/%/%/%.1">
+ <details key="start" value="942"/>
+ <details key="end" value="954"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.129" references="/0/generateImplementation/%.1/%.8/%.1">
+ <details key="start" value="968"/>
+ <details key="end" value="974"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.130" references="/0/generateImplementation/%.1/%.9">
+ <details key="start" value="984"/>
+ <details key="end" value="991"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.131" references="/0/generateImplementation/sm">
+ <details key="start" value="814"/>
+ <details key="end" value="831"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.132" references="/0/generateImplementation/owner">
+ <details key="start" value="833"/>
+ <details key="end" value="846"/>
+ <details key="line" value="22"/>
+ </eAnnotations>
+ <eAnnotations source="positions.133" references="/0/getType">
+ <details key="start" value="2017"/>
+ <details key="end" value="2189"/>
+ <details key="line" value="68"/>
+ </eAnnotations>
+ <eAnnotations source="positions.134" references="/0/getType/type">
+ <details key="start" value="2039"/>
+ <details key="end" value="2050"/>
+ <details key="line" value="68"/>
+ </eAnnotations>
+ <eAnnotations source="positions.135" references="/0/getType/%">
+ <details key="start" value="2063"/>
+ <details key="end" value="2187"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.136" references="/0/getType/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.137" references="/0/getType/%/%">
+ <details key="start" value="2070"/>
+ <details key="end" value="2132"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.138" references="/0/getType/%/%.1">
+ <details key="start" value="2134"/>
+ <details key="end" value="2170"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.139" references="/0/getType/%/%.2">
+ <details key="start" value="2172"/>
+ <details key="end" value="2186"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.140" references="/0/getType/%/%.2/%/type">
+ <details key="start" value="2181"/>
+ <details key="end" value="2185"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.141" references="/0/getInitCondition">
+ <details key="start" value="2191"/>
+ <details key="end" value="2394"/>
+ <details key="line" value="71"/>
+ </eAnnotations>
+ <eAnnotations source="positions.142" references="/0/getInitCondition/sm">
+ <details key="start" value="2222"/>
+ <details key="end" value="2239"/>
+ <details key="line" value="71"/>
+ </eAnnotations>
+ <eAnnotations source="positions.143" references="/0/getInitCondition/%">
+ <details key="start" value="2253"/>
+ <details key="end" value="2391"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.144" references="/0/getInitCondition/%/self">
+ <details key="start" value="-1"/>
+ <details key="end" value="-1"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.145" references="/0/getInitCondition/%/%">
+ <details key="start" value="2260"/>
+ <details key="end" value="2322"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.146" references="/0/getInitCondition/%/%.1">
+ <details key="start" value="2323"/>
+ <details key="end" value="2376"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.147" references="/0/getInitCondition/%/%.2">
+ <details key="start" value="2378"/>
+ <details key="end" value="2390"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ <eAnnotations source="positions.148" references="/0/getInitCondition/%/%.2/%/sm">
+ <details key="start" value="2387"/>
+ <details key="end" value="2389"/>
+ <details key="line" value="0"/>
+ </eAnnotations>
+ </ecore:EAnnotation>
+</xmi:XMI>
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/.classpath b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/.classpath
index b862a29..eca7bdb 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/.classpath
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/.classpath
@@ -1,7 +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.8"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
+<?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.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/META-INF/MANIFEST.MF b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/META-INF/MANIFEST.MF
index 8d174ec..d5b94b5 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/META-INF/MANIFEST.MF
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/META-INF/MANIFEST.MF
@@ -39,7 +39,8 @@
eu.fbk.eclipse.standardTools.XSapExecService,
org.polarsys.chess.smvExporter,
org.polarsys.chess.contracts.transformations,
- org.eclipse.acceleo.engine;bundle-version="3.6.6"
+ org.eclipse.acceleo.engine;bundle-version="3.6.6",
+ org.eclipse.equinox.event;bundle-version="1.3.200"
Bundle-ActivationPolicy: lazy
Import-Package: eu.fbk.eclipse.standardtools.logger,
eu.fbk.tools.adapter.ui.preferences,
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/build.properties b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/build.properties
index 6f20375..59b7f4d 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/build.properties
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/build.properties
@@ -1,5 +1,6 @@
source.. = src/
output.. = bin/
bin.includes = META-INF/,\
- .,\
- plugin.xml
+ plugin.xml,\
+ configTest.properties,\
+ log4j.properties
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/pom.xml b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/pom.xml
index 2d5aa47..8217407 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/pom.xml
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/pom.xml
@@ -1,13 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.polarsys.chess</groupId>
- <artifactId>org.polarsys.chess.parent</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- <relativePath>../../../org.polarsys.chess.parent</relativePath>
- </parent>
- <artifactId>org.polarsys.chess.contracts.verificationService.test.runtime</artifactId>
- <packaging>eclipse-plugin</packaging>
+<project
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+ xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.polarsys.chess</groupId>
+ <artifactId>org.polarsys.chess.parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../../../org.polarsys.chess.parent</relativePath>
+ </parent>
+ <artifactId>org.polarsys.chess.contracts.verificationService.test.runtime</artifactId>
+ <packaging>eclipse-test-plugin</packaging>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-surefire-plugin</artifactId>
+ <configuration>
+ <failIfNoTests>false</failIfNoTests>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
</project>
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestApplyCHESSStereotype.java b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestApplyCHESSStereotype.java
index 5dfa00b..a7cf32e 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestApplyCHESSStereotype.java
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestApplyCHESSStereotype.java
@@ -13,6 +13,7 @@
import org.eclipse.uml2.uml.Element;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import org.polarsys.chess.contracts.profile.chesscontract.util.EntityUtil;
import org.polarsys.chess.core.profiles.CHESSProfileManager;
@@ -29,6 +30,7 @@
@Test
+ @Ignore
public void testApplyCHESSStereotype() {
CHESSProfileManager.applyCHESSStereotype(model);
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestApplyRecursively.java b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestApplyRecursively.java
index 23e0951..e93da26 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestApplyRecursively.java
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestApplyRecursively.java
@@ -13,6 +13,7 @@
import org.eclipse.uml2.uml.Model;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import org.polarsys.chess.contracts.profile.chesscontract.util.EntityUtil;
import org.polarsys.chess.core.profiles.CHESSProfileManager;
@@ -28,6 +29,7 @@
}
@Test
+ @Ignore
public void testApplyRecursively() {
CHESSProfileManager.applyRecursively(model);
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestCheckContractRefinementOfCHESSComponent.java b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestCheckContractRefinementOfCHESSComponent.java
index fcc14cd..626a7ec 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestCheckContractRefinementOfCHESSComponent.java
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestCheckContractRefinementOfCHESSComponent.java
@@ -23,6 +23,7 @@
import org.eclipse.xtext.validation.Issue;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import org.polarsys.chess.contracts.profile.chesscontract.util.EntityUtil;
import org.polarsys.chess.contracts.verificationService.test.runtime.util.TestUtil;
@@ -78,6 +79,7 @@
}
@Test
+ @Ignore
public void testCheckContractRefinementOfCHESSComponent() throws Exception {
System.out.println("Workspace: "+workspace);
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestCreateViews.java b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestCreateViews.java
index bf68806..fb34021 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestCreateViews.java
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestCreateViews.java
@@ -15,6 +15,7 @@
import org.eclipse.uml2.uml.Stereotype;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import org.polarsys.chess.chessmlprofile.Core.CHESS;
import org.polarsys.chess.chessmlprofile.Core.CHESSViews.AnalysisView;
@@ -39,6 +40,7 @@
}
@Test
+ @Ignore
public void testcreateViews() {
CHESSProfileManager.createViews(model);
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestModelChecking.java b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestModelChecking.java
index 0fd8d0c..8506e73 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestModelChecking.java
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService.test.runtime/src/org/polarsys/chess/contracts/verificationService/test/runtime/tests/TestModelChecking.java
@@ -19,6 +19,7 @@
import org.eclipse.uml2.uml.Model;
import org.junit.After;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import org.polarsys.chess.contracts.profile.chesscontract.util.EntityUtil;
import org.polarsys.chess.verificationService.ui.services.ExecCommandService;
@@ -65,6 +66,7 @@
}
@Test
+ @Ignore
public void testModelChecking() throws Exception {
Assert.assertEquals(true, execCommandService.execModelChecking(isProgrExecution,isDiscrete, projectPath,projectName, modelName, elementURI, property, algorithm_type, check_type,resultFilePath));
}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/.classpath b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/.classpath
new file mode 100644
index 0000000..026e45b
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/.classpath
@@ -0,0 +1,9 @@
+<?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.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src/"/>
+ <classpathentry kind="src" path="src-gen/"/>
+ <classpathentry kind="src" path="xtend-gen/"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/.gitignore b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/.gitignore
new file mode 100644
index 0000000..e6f918a
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/.gitignore
@@ -0,0 +1,5 @@
+/bin/
+/src-gen/
+/xtend-gen/
+/target/
+/model/
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/.project b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/.project
new file mode 100644
index 0000000..33da0c3
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/.project
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.polarsys.chess.xtext.fladsl.ide</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <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>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/META-INF/MANIFEST.MF b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..7cea064
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/META-INF/MANIFEST.MF
@@ -0,0 +1,17 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: org.polarsys.chess.xtext.fladsl.ide
+Bundle-Vendor: Intecs
+Bundle-Version: 1.0.0.qualifier
+Bundle-SymbolicName: org.polarsys.chess.xtext.fladsl.ide; singleton:=true
+Bundle-ActivationPolicy: lazy
+Require-Bundle: org.polarsys.chess.xtext.fladsl,
+ org.eclipse.xtext.ide,
+ org.eclipse.xtext.xbase.ide,
+ org.antlr.runtime
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Export-Package: org.polarsys.chess.xtext.ide,
+ org.polarsys.chess.xtext.ide.contentassist.antlr,
+ org.polarsys.chess.xtext.ide.contentassist.antlr.internal
+Import-Package: org.polarsys.chess.xtext,
+ org.polarsys.chess.xtext.services
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/build.properties b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/build.properties
new file mode 100644
index 0000000..5c6bbf9
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/build.properties
@@ -0,0 +1,6 @@
+source.. = src/,\
+ src-gen/,\
+ xtend-gen/
+bin.includes = .,\
+ META-INF/
+bin.excludes = **/*.xtend
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/pom.xml b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/pom.xml
new file mode 100644
index 0000000..c0f5c05
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/pom.xml
@@ -0,0 +1,22 @@
+<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/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+<parent>
+ <groupId>org.polarsys.chess</groupId>
+ <artifactId>org.polarsys.chess.parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../../../org.polarsys.chess.parent</relativePath>
+ </parent>
+ <artifactId>org.polarsys.chess.xtext.fladsl.ide</artifactId>
+ <packaging>eclipse-plugin</packaging>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.xtend</groupId>
+ <artifactId>xtend-maven-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/src/org/polarsys/chess/xtext/ide/FlaDslIdeModule.xtend b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/src/org/polarsys/chess/xtext/ide/FlaDslIdeModule.xtend
new file mode 100644
index 0000000..6b8381a
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/src/org/polarsys/chess/xtext/ide/FlaDslIdeModule.xtend
@@ -0,0 +1,11 @@
+/*
+ * generated by Xtext 2.12.0
+ */
+package org.polarsys.chess.xtext.ide
+
+
+/**
+ * Use this class to register ide components.
+ */
+class FlaDslIdeModule extends AbstractFlaDslIdeModule {
+}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/src/org/polarsys/chess/xtext/ide/FlaDslIdeSetup.xtend b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/src/org/polarsys/chess/xtext/ide/FlaDslIdeSetup.xtend
new file mode 100644
index 0000000..7f1e5c7
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ide/src/org/polarsys/chess/xtext/ide/FlaDslIdeSetup.xtend
@@ -0,0 +1,20 @@
+/*
+ * generated by Xtext 2.12.0
+ */
+package org.polarsys.chess.xtext.ide
+
+import com.google.inject.Guice
+import org.eclipse.xtext.util.Modules2
+import org.polarsys.chess.xtext.FlaDslRuntimeModule
+import org.polarsys.chess.xtext.FlaDslStandaloneSetup
+
+/**
+ * Initialization support for running Xtext languages as language servers.
+ */
+class FlaDslIdeSetup extends FlaDslStandaloneSetup {
+
+ override createInjector() {
+ Guice.createInjector(Modules2.mixin(new FlaDslRuntimeModule, new FlaDslIdeModule))
+ }
+
+}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.classpath b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.classpath
index 29ba398..026e45b 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.classpath
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.classpath
@@ -2,8 +2,8 @@
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="xtend-gen"/>
- <classpathentry kind="src" path="src-gen"/>
- <classpathentry kind="output" path="bin"/>
+ <classpathentry kind="src" path="src/"/>
+ <classpathentry kind="src" path="src-gen/"/>
+ <classpathentry kind="src" path="xtend-gen/"/>
+ <classpathentry kind="output" path="target/classes"/>
</classpath>
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.project b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.project
index 13bf8bc..e0bba5d 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.project
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.project
@@ -1,40 +1,40 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.polarsys.chess.xtext.fladsl.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>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.m2e.core.maven2Builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.m2e.core.maven2Nature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.polarsys.chess.xtext.fladsl.ui</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <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>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.settings/org.eclipse.core.resources.prefs b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.settings/org.eclipse.core.resources.prefs
index 4824b80..99f26c0 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.settings/org.eclipse.core.resources.prefs
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.settings/org.eclipse.core.resources.prefs
@@ -1,2 +1,2 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.settings/org.eclipse.jdt.core.prefs
index 295926d..0c68a61 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.settings/org.eclipse.jdt.core.prefs
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,7 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
-org.eclipse.jdt.core.compiler.compliance=1.8
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.8
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/META-INF/MANIFEST.MF b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/META-INF/MANIFEST.MF
index 4a71ac4..9b9b4e0 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/META-INF/MANIFEST.MF
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/META-INF/MANIFEST.MF
@@ -1,30 +1,28 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.polarsys.chess.xtext.fladsl.ui
-Bundle-Vendor: Intecs
-Bundle-Version: 1.0.0.qualifier
-Bundle-SymbolicName: org.polarsys.chess.xtext.fladsl.ui;singleton:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.xtext.ui,
- org.eclipse.ui.editors;bundle-version="3.8.200",
- org.eclipse.ui.ide;bundle-version="3.10.0",
- org.eclipse.xtext.ui.shared,
- org.eclipse.ui,
- org.eclipse.xtext.builder,
- org.eclipse.xtext.common.types.ui,
- org.eclipse.xtext.ui.codetemplates.ui,
- org.eclipse.compare,
- org.eclipse.xtext.xbase.lib,
- org.eclipse.uml2.uml.editor;bundle-version="5.0.1",
- org.polarsys.chess.xtext.fladsl,
- org.antlr.runtime
-Import-Package: org.apache.log4j,
- org.eclipse.xtext.xbase.lib
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Export-Package: org.polarsys.chess.xtext.ui,
- org.polarsys.chess.xtext.ui.contentassist,
- org.polarsys.chess.xtext.ui.quickfix,
- org.polarsys.chess.xtext.ui.internal,
- org.polarsys.chess.xtext.ui.contentassist.antlr,
- org.polarsys.chess.xtext.ui.contentassist.antlr.internal
-Bundle-Activator: org.polarsys.chess.xtext.ui.internal.FlaDslActivator
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: org.polarsys.chess.xtext.fladsl.ui
+Bundle-Vendor: Intecs
+Bundle-Version: 1.0.0.qualifier
+Bundle-SymbolicName: org.polarsys.chess.xtext.fladsl.ui; singleton:=true
+Bundle-ActivationPolicy: lazy
+Require-Bundle: org.polarsys.chess.xtext.fladsl,
+ org.polarsys.chess.xtext.fladsl.ide,
+ org.eclipse.xtext.ui,
+ org.eclipse.xtext.ui.shared,
+ org.eclipse.xtext.ui.codetemplates.ui,
+ org.eclipse.ui.editors;bundle-version="3.5.0",
+ org.eclipse.ui.ide;bundle-version="3.5.0",
+ org.eclipse.ui,
+ org.eclipse.compare,
+ org.eclipse.xtext.builder,
+ org.eclipse.xtend.lib;resolution:=optional,
+ org.eclipse.xtext.xbase.lib
+Import-Package: org.apache.log4j,
+ org.polarsys.chess.xtext,
+ org.polarsys.chess.xtext.parser.antlr.internal
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Export-Package: org.polarsys.chess.xtext.fladsl.ui.internal,
+ org.polarsys.chess.xtext.ui,
+ org.polarsys.chess.xtext.ui.contentassist,
+ org.polarsys.chess.xtext.ui.quickfix
+Bundle-Activator: org.polarsys.chess.xtext.fladsl.ui.internal.FladslActivator
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/build.properties b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/build.properties
index f2ae661..323f56c 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/build.properties
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/build.properties
@@ -1,6 +1,7 @@
-source.. = src/,\
- src-gen/,\
- xtend-gen/
-bin.includes = META-INF/,\
- .,\
- plugin.xml
+source.. = src/,\
+ src-gen/,\
+ xtend-gen/
+bin.includes = .,\
+ META-INF/,\
+ plugin.xml
+bin.excludes = **/*.xtend
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/plugin.xml b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/plugin.xml
index 125b903..fe6177a 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/plugin.xml
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/plugin.xml
@@ -1,425 +1,410 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-
- <extension
- point="org.eclipse.ui.editors">
- <editor
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
- contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
- default="true"
- extensions="fladsl"
- id="org.polarsys.chess.xtext.FlaDsl"
- name="FlaDsl Editor">
- </editor>
- </extension>
- <extension
- point="org.eclipse.ui.handlers">
- <handler
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
- commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
- <activeWhen>
- <reference
- definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- <handler
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
- commandId="org.polarsys.chess.xtext.FlaDsl.validate">
- <activeWhen>
- <reference
- definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- <!-- copy qualified name -->
- <handler
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler"
- commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName">
- <activeWhen>
- <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened" />
- </activeWhen>
- </handler>
- <handler
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler"
- commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName">
- <activeWhen>
- <and>
- <reference definitionId="org.polarsys.chess.xtext.FlaDsl.XtextEditor.opened" />
- <iterate>
- <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
- </iterate>
- </and>
- </activeWhen>
- </handler>
- </extension>
- <extension point="org.eclipse.core.expressions.definitions">
- <definition id="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
- <and>
- <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
- <with variable="activeEditor">
- <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
- value="org.polarsys.chess.xtext.FlaDsl"
- forcePluginActivation="true"/>
- </with>
- </and>
- </definition>
- <definition id="org.polarsys.chess.xtext.FlaDsl.XtextEditor.opened">
- <and>
- <reference definitionId="isXtextEditorActive"/>
- <with variable="activeEditor">
- <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
- value="org.polarsys.chess.xtext.FlaDsl"
- forcePluginActivation="true"/>
- </with>
- </and>
- </definition>
- </extension>
- <extension
- point="org.eclipse.ui.preferencePages">
- <page
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
- id="org.polarsys.chess.xtext.FlaDsl"
- name="FlaDsl">
- <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
- </page>
- <page
- category="org.polarsys.chess.xtext.FlaDsl"
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
- id="org.polarsys.chess.xtext.FlaDsl.coloring"
- name="Syntax Coloring">
- <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
- </page>
- <page
- category="org.polarsys.chess.xtext.FlaDsl"
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
- id="org.polarsys.chess.xtext.FlaDsl.templates"
- name="Templates">
- <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
- </page>
- </extension>
- <extension
- point="org.eclipse.ui.propertyPages">
- <page
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
- id="org.polarsys.chess.xtext.FlaDsl"
- name="FlaDsl">
- <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
- <enabledWhen>
- <adapt type="org.eclipse.core.resources.IProject"/>
- </enabledWhen>
- <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
- </page>
- </extension>
- <extension
- point="org.eclipse.ui.keywords">
- <keyword
- id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"
- label="FlaDsl"/>
- </extension>
- <extension
- point="org.eclipse.ui.commands">
- <command
- description="Trigger expensive validation"
- id="org.polarsys.chess.xtext.FlaDsl.validate"
- name="Validate">
- </command>
- <!-- copy qualified name -->
- <command
- id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
- categoryId="org.eclipse.ui.category.edit"
- description="Copy the qualified name for the selected element"
- name="Copy Qualified Name">
- </command>
- <command
- id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
- categoryId="org.eclipse.ui.category.edit"
- description="Copy the qualified name for the selected element"
- name="Copy Qualified Name">
- </command>
- </extension>
- <extension point="org.eclipse.ui.menus">
- <menuContribution
- locationURI="popup:#TextEditorContext?after=group.edit">
- <command
- commandId="org.polarsys.chess.xtext.FlaDsl.validate"
- style="push"
- tooltip="Trigger expensive validation">
- <visibleWhen checkEnabled="false">
- <reference
- definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
- </reference>
- </visibleWhen>
- </command>
- </menuContribution>
- <!-- copy qualified name -->
- <menuContribution locationURI="popup:#TextEditorContext?after=copy">
- <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
- style="push" tooltip="Copy Qualified Name">
- <visibleWhen checkEnabled="false">
- <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened" />
- </visibleWhen>
- </command>
- </menuContribution>
- <menuContribution locationURI="menu:edit?after=copy">
- <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
- style="push" tooltip="Copy Qualified Name">
- <visibleWhen checkEnabled="false">
- <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened" />
- </visibleWhen>
- </command>
- </menuContribution>
- <menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions">
- <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
- style="push" tooltip="Copy Qualified Name">
- <visibleWhen checkEnabled="false">
- <and>
- <reference definitionId="org.polarsys.chess.xtext.FlaDsl.XtextEditor.opened" />
- <iterate>
- <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
- </iterate>
- </and>
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <extension point="org.eclipse.ui.menus">
- <menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
- <command commandId="org.eclipse.xtext.ui.editor.FindReferences">
- <visibleWhen checkEnabled="false">
- <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
- </reference>
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <extension point="org.eclipse.ui.handlers">
- <handler
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
- commandId="org.eclipse.xtext.ui.editor.FindReferences">
- <activeWhen>
- <reference
- definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- </extension>
-
-<!-- adding resource factories -->
-
- <extension
- point="org.eclipse.emf.ecore.extension_parser">
- <parser
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
- type="fladsl">
- </parser>
- </extension>
- <extension point="org.eclipse.xtext.extension_resourceServiceProvider">
- <resourceServiceProvider
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
- uriExtension="fladsl">
- </resourceServiceProvider>
- </extension>
-
-
- <!-- marker definitions for org.polarsys.chess.xtext.FlaDsl -->
- <extension
- id="fladsl.check.fast"
- name="FlaDsl Problem"
- point="org.eclipse.core.resources.markers">
- <super type="org.eclipse.xtext.ui.check.fast"/>
- <persistent value="true"/>
- </extension>
- <extension
- id="fladsl.check.normal"
- name="FlaDsl Problem"
- point="org.eclipse.core.resources.markers">
- <super type="org.eclipse.xtext.ui.check.normal"/>
- <persistent value="true"/>
- </extension>
- <extension
- id="fladsl.check.expensive"
- name="FlaDsl Problem"
- point="org.eclipse.core.resources.markers">
- <super type="org.eclipse.xtext.ui.check.expensive"/>
- <persistent value="true"/>
- </extension>
-
- <extension
- point="org.eclipse.xtext.builder.participant">
- <participant
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant"
- fileExtensions="fladsl"
- >
- </participant>
- </extension>
- <extension
- point="org.eclipse.ui.preferencePages">
- <page
- category="org.polarsys.chess.xtext.FlaDsl"
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
- id="org.polarsys.chess.xtext.FlaDsl.compiler.preferencePage"
- name="Compiler">
- <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
- </page>
- </extension>
- <extension
- point="org.eclipse.ui.propertyPages">
- <page
- category="org.polarsys.chess.xtext.FlaDsl"
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
- id="org.polarsys.chess.xtext.FlaDsl.compiler.propertyPage"
- name="Compiler">
- <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
- <enabledWhen>
- <adapt type="org.eclipse.core.resources.IProject"/>
- </enabledWhen>
- <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
- </page>
- </extension>
- <extension point="org.eclipse.ui.menus">
- <menuContribution locationURI="popup:#TextEditorContext?after=xtext.ui.openDeclaration">
- <command
- commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand"
- id="org.polarsys.chess.xtext.FlaDsl.OpenGeneratedCode"
- style="push">
- <visibleWhen checkEnabled="false">
- <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened" />
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <extension point="org.eclipse.ui.handlers">
- <handler
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.generator.trace.OpenGeneratedFileHandler"
- commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand">
- <activeWhen>
- <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened" />
- </activeWhen>
- </handler>
- </extension>
-
- <!-- Quick Outline -->
- <extension
- point="org.eclipse.ui.handlers">
- <handler
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
- commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
- <activeWhen>
- <reference
- definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- </extension>
- <extension
- point="org.eclipse.ui.commands">
- <command
- description="Open the quick outline."
- id="org.eclipse.xtext.ui.editor.outline.QuickOutline"
- name="Quick Outline">
- </command>
- </extension>
- <extension point="org.eclipse.ui.menus">
- <menuContribution
- locationURI="popup:#TextEditorContext?after=group.open">
- <command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"
- style="push"
- tooltip="Open Quick Outline">
- <visibleWhen checkEnabled="false">
- <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened"/>
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <!-- quickfix marker resolution generator for org.polarsys.chess.xtext.FlaDsl -->
- <extension
- point="org.eclipse.ui.ide.markerResolution">
- <markerResolutionGenerator
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.polarsys.chess.xtext.ui.fladsl.check.fast">
- <attribute
- name="FIXABLE_KEY"
- value="true">
- </attribute>
- </markerResolutionGenerator>
- <markerResolutionGenerator
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.polarsys.chess.xtext.ui.fladsl.check.normal">
- <attribute
- name="FIXABLE_KEY"
- value="true">
- </attribute>
- </markerResolutionGenerator>
- <markerResolutionGenerator
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
- markerType="org.polarsys.chess.xtext.ui.fladsl.check.expensive">
- <attribute
- name="FIXABLE_KEY"
- value="true">
- </attribute>
- </markerResolutionGenerator>
- </extension>
- <!-- Rename Refactoring -->
- <extension point="org.eclipse.ui.handlers">
- <handler
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler"
- commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
- <activeWhen>
- <reference
- definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
- </reference>
- </activeWhen>
- </handler>
- </extension>
- <extension point="org.eclipse.ui.menus">
- <menuContribution
- locationURI="popup:#TextEditorContext?after=group.edit">
- <command commandId="org.eclipse.xtext.ui.refactoring.RenameElement"
- style="push">
- <visibleWhen checkEnabled="false">
- <reference
- definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
- </reference>
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <extension point="org.eclipse.ui.preferencePages">
- <page
- category="org.polarsys.chess.xtext.FlaDsl"
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
- id="org.polarsys.chess.xtext.FlaDsl.refactoring"
- name="Refactoring">
- <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
- </page>
- </extension>
-
- <extension point="org.eclipse.compare.contentViewers">
- <viewer id="org.polarsys.chess.xtext.FlaDsl.compare.contentViewers"
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
- extensions="fladsl">
- </viewer>
- </extension>
- <extension point="org.eclipse.compare.contentMergeViewers">
- <viewer id="org.polarsys.chess.xtext.FlaDsl.compare.contentMergeViewers"
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
- extensions="fladsl" label="FlaDsl Compare">
- </viewer>
- </extension>
- <extension point="org.eclipse.ui.editors.documentProviders">
- <provider id="org.polarsys.chess.xtext.FlaDsl.editors.documentProviders"
- class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
- extensions="fladsl">
- </provider>
- </extension>
- <extension point="org.eclipse.team.core.fileTypes">
- <fileTypes
- extension="fladsl"
- type="text">
- </fileTypes>
- </extension>
-
-</plugin>
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<plugin>
+ <extension
+ point="org.eclipse.ui.editors">
+ <editor
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
+ contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
+ default="true"
+ extensions="fladsl"
+ id="org.polarsys.chess.xtext.FlaDsl"
+ name="FlaDsl Editor">
+ </editor>
+ </extension>
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
+ commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
+ <activeWhen>
+ <reference
+ definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
+ commandId="org.polarsys.chess.xtext.FlaDsl.validate">
+ <activeWhen>
+ <reference
+ definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ <!-- copy qualified name -->
+ <handler
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler"
+ commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName">
+ <activeWhen>
+ <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened" />
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler"
+ commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName">
+ <activeWhen>
+ <and>
+ <reference definitionId="org.polarsys.chess.xtext.FlaDsl.XtextEditor.opened" />
+ <iterate>
+ <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
+ </iterate>
+ </and>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension point="org.eclipse.core.expressions.definitions">
+ <definition id="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
+ <and>
+ <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
+ <with variable="activeEditor">
+ <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
+ value="org.polarsys.chess.xtext.FlaDsl"
+ forcePluginActivation="true"/>
+ </with>
+ </and>
+ </definition>
+ <definition id="org.polarsys.chess.xtext.FlaDsl.XtextEditor.opened">
+ <and>
+ <reference definitionId="isXtextEditorActive"/>
+ <with variable="activeEditor">
+ <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
+ value="org.polarsys.chess.xtext.FlaDsl"
+ forcePluginActivation="true"/>
+ </with>
+ </and>
+ </definition>
+ </extension>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
+ id="org.polarsys.chess.xtext.FlaDsl"
+ name="FlaDsl">
+ <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
+ </page>
+ <page
+ category="org.polarsys.chess.xtext.FlaDsl"
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
+ id="org.polarsys.chess.xtext.FlaDsl.coloring"
+ name="Syntax Coloring">
+ <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
+ </page>
+ <page
+ category="org.polarsys.chess.xtext.FlaDsl"
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
+ id="org.polarsys.chess.xtext.FlaDsl.templates"
+ name="Templates">
+ <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.propertyPages">
+ <page
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
+ id="org.polarsys.chess.xtext.FlaDsl"
+ name="FlaDsl">
+ <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
+ <enabledWhen>
+ <adapt type="org.eclipse.core.resources.IProject"/>
+ </enabledWhen>
+ <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.keywords">
+ <keyword
+ id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"
+ label="FlaDsl"/>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ description="Trigger expensive validation"
+ id="org.polarsys.chess.xtext.FlaDsl.validate"
+ name="Validate">
+ </command>
+ <!-- copy qualified name -->
+ <command
+ id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
+ categoryId="org.eclipse.ui.category.edit"
+ description="Copy the qualified name for the selected element"
+ name="Copy Qualified Name">
+ </command>
+ <command
+ id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
+ categoryId="org.eclipse.ui.category.edit"
+ description="Copy the qualified name for the selected element"
+ name="Copy Qualified Name">
+ </command>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution
+ locationURI="popup:#TextEditorContext?after=group.edit">
+ <command
+ commandId="org.polarsys.chess.xtext.FlaDsl.validate"
+ style="push"
+ tooltip="Trigger expensive validation">
+ <visibleWhen checkEnabled="false">
+ <reference
+ definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ <!-- copy qualified name -->
+ <menuContribution locationURI="popup:#TextEditorContext?after=copy">
+ <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
+ style="push" tooltip="Copy Qualified Name">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened" />
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ <menuContribution locationURI="menu:edit?after=copy">
+ <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
+ style="push" tooltip="Copy Qualified Name">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened" />
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ <menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions">
+ <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
+ style="push" tooltip="Copy Qualified Name">
+ <visibleWhen checkEnabled="false">
+ <and>
+ <reference definitionId="org.polarsys.chess.xtext.FlaDsl.XtextEditor.opened" />
+ <iterate>
+ <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
+ </iterate>
+ </and>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
+ <command commandId="org.eclipse.xtext.ui.editor.FindReferences">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.handlers">
+ <handler
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
+ commandId="org.eclipse.xtext.ui.editor.FindReferences">
+ <activeWhen>
+ <reference
+ definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+ <!-- adding resource factories -->
+ <extension
+ point="org.eclipse.emf.ecore.extension_parser">
+ <parser
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
+ type="fladsl">
+ </parser>
+ </extension>
+ <extension point="org.eclipse.xtext.extension_resourceServiceProvider">
+ <resourceServiceProvider
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
+ uriExtension="fladsl">
+ </resourceServiceProvider>
+ </extension>
+ <!-- marker definitions for org.polarsys.chess.xtext.FlaDsl -->
+ <extension
+ id="fladsl.check.fast"
+ name="FlaDsl Problem"
+ point="org.eclipse.core.resources.markers">
+ <super type="org.eclipse.xtext.ui.check.fast"/>
+ <persistent value="true"/>
+ </extension>
+ <extension
+ id="fladsl.check.normal"
+ name="FlaDsl Problem"
+ point="org.eclipse.core.resources.markers">
+ <super type="org.eclipse.xtext.ui.check.normal"/>
+ <persistent value="true"/>
+ </extension>
+ <extension
+ id="fladsl.check.expensive"
+ name="FlaDsl Problem"
+ point="org.eclipse.core.resources.markers">
+ <super type="org.eclipse.xtext.ui.check.expensive"/>
+ <persistent value="true"/>
+ </extension>
+ <extension point="org.eclipse.xtext.builder.participant">
+ <participant
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant"
+ fileExtensions="fladsl"/>
+ </extension>
+ <extension point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.polarsys.chess.xtext.FlaDsl"
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
+ id="org.polarsys.chess.xtext.FlaDsl.compiler.preferencePage"
+ name="Compiler">
+ <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
+ </page>
+ </extension>
+ <extension point="org.eclipse.ui.propertyPages">
+ <page
+ category="org.polarsys.chess.xtext.FlaDsl"
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
+ id="org.polarsys.chess.xtext.FlaDsl.compiler.propertyPage"
+ name="Compiler">
+ <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
+ <enabledWhen>
+ <adapt type="org.eclipse.core.resources.IProject"/>
+ </enabledWhen>
+ <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
+ </page>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution locationURI="popup:#TextEditorContext?after=xtext.ui.openDeclaration">
+ <command
+ commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand"
+ id="org.polarsys.chess.xtext.FlaDsl.OpenGeneratedCode"
+ style="push">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened" />
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.handlers">
+ <handler
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.generator.trace.OpenGeneratedFileHandler"
+ commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand">
+ <activeWhen>
+ <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened" />
+ </activeWhen>
+ </handler>
+ </extension>
+ <!-- Quick Outline -->
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
+ commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
+ <activeWhen>
+ <reference
+ definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ description="Open the quick outline."
+ id="org.eclipse.xtext.ui.editor.outline.QuickOutline"
+ name="Quick Outline">
+ </command>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution
+ locationURI="popup:#TextEditorContext?after=group.open">
+ <command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"
+ style="push"
+ tooltip="Open Quick Outline">
+ <visibleWhen checkEnabled="false">
+ <reference definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened"/>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <!-- quickfix marker resolution generator for org.polarsys.chess.xtext.FlaDsl -->
+ <extension
+ point="org.eclipse.ui.ide.markerResolution">
+ <markerResolutionGenerator
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.polarsys.chess.xtext.fladsl.ui.fladsl.check.fast">
+ <attribute
+ name="FIXABLE_KEY"
+ value="true">
+ </attribute>
+ </markerResolutionGenerator>
+ <markerResolutionGenerator
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.polarsys.chess.xtext.fladsl.ui.fladsl.check.normal">
+ <attribute
+ name="FIXABLE_KEY"
+ value="true">
+ </attribute>
+ </markerResolutionGenerator>
+ <markerResolutionGenerator
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+ markerType="org.polarsys.chess.xtext.fladsl.ui.fladsl.check.expensive">
+ <attribute
+ name="FIXABLE_KEY"
+ value="true">
+ </attribute>
+ </markerResolutionGenerator>
+ </extension>
+ <!-- Rename Refactoring -->
+ <extension point="org.eclipse.ui.handlers">
+ <handler
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler"
+ commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
+ <activeWhen>
+ <reference
+ definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
+ </reference>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution
+ locationURI="popup:#TextEditorContext?after=group.edit">
+ <command commandId="org.eclipse.xtext.ui.refactoring.RenameElement"
+ style="push">
+ <visibleWhen checkEnabled="false">
+ <reference
+ definitionId="org.polarsys.chess.xtext.FlaDsl.Editor.opened">
+ </reference>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.polarsys.chess.xtext.FlaDsl"
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
+ id="org.polarsys.chess.xtext.FlaDsl.refactoring"
+ name="Refactoring">
+ <keywordReference id="org.polarsys.chess.xtext.ui.keyword_FlaDsl"/>
+ </page>
+ </extension>
+ <extension point="org.eclipse.compare.contentViewers">
+ <viewer id="org.polarsys.chess.xtext.FlaDsl.compare.contentViewers"
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
+ extensions="fladsl">
+ </viewer>
+ </extension>
+ <extension point="org.eclipse.compare.contentMergeViewers">
+ <viewer id="org.polarsys.chess.xtext.FlaDsl.compare.contentMergeViewers"
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
+ extensions="fladsl" label="FlaDsl Compare">
+ </viewer>
+ </extension>
+ <extension point="org.eclipse.ui.editors.documentProviders">
+ <provider id="org.polarsys.chess.xtext.FlaDsl.editors.documentProviders"
+ class="org.polarsys.chess.xtext.ui.FlaDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
+ extensions="fladsl">
+ </provider>
+ </extension>
+ <extension point="org.eclipse.team.core.fileTypes">
+ <fileTypes
+ extension="fladsl"
+ type="text">
+ </fileTypes>
+ </extension>
+</plugin>
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/pom.xml b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/pom.xml
index 028b70c..7652c13 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/pom.xml
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/pom.xml
@@ -1,17 +1,16 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <modelVersion>4.0.0</modelVersion>
- <parent>
+<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/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+<parent>
<groupId>org.polarsys.chess</groupId>
<artifactId>org.polarsys.chess.parent</artifactId>
<version>1.0.0-SNAPSHOT</version>
<relativePath>../../../org.polarsys.chess.parent</relativePath>
</parent>
- <artifactId>org.polarsys.chess.xtext.fladsl.ui</artifactId>
- <packaging>eclipse-plugin</packaging>
-
- <build>
+ <artifactId>org.polarsys.chess.xtext.fladsl.ui</artifactId>
+ <packaging>eclipse-plugin</packaging>
+
+ <build>
<plugins>
<plugin>
<groupId>org.eclipse.xtend</groupId>
@@ -19,4 +18,5 @@
</plugin>
</plugins>
</build>
+
</project>
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/FlaDslParser.java b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/FlaDslParser.java
deleted file mode 100644
index 9117351..0000000
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/FlaDslParser.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.polarsys.chess.xtext.ui.contentassist.antlr;
-
-import java.util.Collection;
-import java.util.Map;
-import java.util.HashMap;
-
-import org.antlr.runtime.RecognitionException;
-import org.eclipse.xtext.AbstractElement;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.AbstractContentAssistParser;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.FollowElement;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
-
-import com.google.inject.Inject;
-
-import org.polarsys.chess.xtext.services.FlaDslGrammarAccess;
-
-public class FlaDslParser extends AbstractContentAssistParser {
-
- @Inject
- private FlaDslGrammarAccess grammarAccess;
-
- private Map<AbstractElement, String> nameMappings;
-
- @Override
- protected org.polarsys.chess.xtext.ui.contentassist.antlr.internal.InternalFlaDslParser createParser() {
- org.polarsys.chess.xtext.ui.contentassist.antlr.internal.InternalFlaDslParser result = new org.polarsys.chess.xtext.ui.contentassist.antlr.internal.InternalFlaDslParser(null);
- result.setGrammarAccess(grammarAccess);
- return result;
- }
-
- @Override
- protected String getRuleName(AbstractElement element) {
- if (nameMappings == null) {
- nameMappings = new HashMap<AbstractElement, String>() {
- private static final long serialVersionUID = 1L;
- {
- put(grammarAccess.getInputExpressionAccess().getAlternatives_0(), "rule__InputExpression__Alternatives_0");
- put(grammarAccess.getOutputExpressionAccess().getAlternatives_0(), "rule__OutputExpression__Alternatives_0");
- put(grammarAccess.getInFailureExprAccess().getAlternatives(), "rule__InFailureExpr__Alternatives");
- put(grammarAccess.getOutFailureExprAccess().getAlternatives(), "rule__OutFailureExpr__Alternatives");
- put(grammarAccess.getDefinitionsAccess().getAlternatives(), "rule__Definitions__Alternatives");
- put(grammarAccess.getFailureTypeAccess().getAlternatives(), "rule__FailureType__Alternatives");
- put(grammarAccess.getActualFailureTypeAccess().getAlternatives(), "rule__ActualFailureType__Alternatives");
- put(grammarAccess.getAavoidableAccess().getAlternatives(), "rule__Aavoidable__Alternatives");
- put(grammarAccess.getCavoidableAccess().getAlternatives(), "rule__Cavoidable__Alternatives");
- put(grammarAccess.getIavoidableAccess().getAlternatives(), "rule__Iavoidable__Alternatives");
- put(grammarAccess.getDavoidableAccess().getAlternatives(), "rule__Davoidable__Alternatives");
- put(grammarAccess.getAmitigationAccess().getAlternatives(), "rule__Amitigation__Alternatives");
- put(grammarAccess.getCmitigationAccess().getAlternatives(), "rule__Cmitigation__Alternatives");
- put(grammarAccess.getImitigationAccess().getAlternatives(), "rule__Imitigation__Alternatives");
- put(grammarAccess.getDmitigationAccess().getAlternatives(), "rule__Dmitigation__Alternatives");
- put(grammarAccess.getExpressionAccess().getGroup(), "rule__Expression__Group__0");
- put(grammarAccess.getLhsAccess().getGroup(), "rule__Lhs__Group__0");
- put(grammarAccess.getLhsAccess().getGroup_1(), "rule__Lhs__Group_1__0");
- put(grammarAccess.getRhsAccess().getGroup(), "rule__Rhs__Group__0");
- put(grammarAccess.getRhsAccess().getGroup_1(), "rule__Rhs__Group_1__0");
- put(grammarAccess.getInputExpressionAccess().getGroup(), "rule__InputExpression__Group__0");
- put(grammarAccess.getOutputExpressionAccess().getGroup(), "rule__OutputExpression__Group__0");
- put(grammarAccess.getInFailureExprAccess().getGroup_3(), "rule__InFailureExpr__Group_3__0");
- put(grammarAccess.getInFailureExprAccess().getGroup_3_2(), "rule__InFailureExpr__Group_3_2__0");
- put(grammarAccess.getOutFailureExprAccess().getGroup_3(), "rule__OutFailureExpr__Group_3__0");
- put(grammarAccess.getOutFailureExprAccess().getGroup_3_2(), "rule__OutFailureExpr__Group_3_2__0");
- put(grammarAccess.getFailureDefinitionAccess().getGroup(), "rule__FailureDefinition__Group__0");
- put(grammarAccess.getFailureDefinitionAccess().getGroup_2(), "rule__FailureDefinition__Group_2__0");
- put(grammarAccess.getNoFailureDefinitionAccess().getGroup(), "rule__NoFailureDefinition__Group__0");
- put(grammarAccess.getComplexNofailureDefinitionAccess().getGroup(), "rule__ComplexNofailureDefinition__Group__0");
- put(grammarAccess.getWildcardDefinitionAccess().getGroup(), "rule__WildcardDefinition__Group__0");
- put(grammarAccess.getVariableDefinitionAccess().getGroup(), "rule__VariableDefinition__Group__0");
- put(grammarAccess.getACIDavoidableAccess().getGroup(), "rule__ACIDavoidable__Group__0");
- put(grammarAccess.getACIDMitigationAccess().getGroup(), "rule__ACIDMitigation__Group__0");
- put(grammarAccess.getFQNAccess().getGroup(), "rule__FQN__Group__0");
- put(grammarAccess.getFQNAccess().getGroup_1(), "rule__FQN__Group_1__0");
- put(grammarAccess.getBehaviourAccess().getRulesAssignment(), "rule__Behaviour__RulesAssignment");
- put(grammarAccess.getExpressionAccess().getLhsAssignment_1(), "rule__Expression__LhsAssignment_1");
- put(grammarAccess.getExpressionAccess().getRhsAssignment_3(), "rule__Expression__RhsAssignment_3");
- put(grammarAccess.getLhsAccess().getFailuresAssignment_0(), "rule__Lhs__FailuresAssignment_0");
- put(grammarAccess.getLhsAccess().getFailuresAssignment_1_1(), "rule__Lhs__FailuresAssignment_1_1");
- put(grammarAccess.getRhsAccess().getFailuresAssignment_0(), "rule__Rhs__FailuresAssignment_0");
- put(grammarAccess.getRhsAccess().getFailuresAssignment_1_1(), "rule__Rhs__FailuresAssignment_1_1");
- put(grammarAccess.getInputExpressionAccess().getRefAssignment_0_0(), "rule__InputExpression__RefAssignment_0_0");
- put(grammarAccess.getInputExpressionAccess().getFailureExprAssignment_2(), "rule__InputExpression__FailureExprAssignment_2");
- put(grammarAccess.getOutputExpressionAccess().getRefAssignment_0_0(), "rule__OutputExpression__RefAssignment_0_0");
- put(grammarAccess.getOutputExpressionAccess().getFailureExprAssignment_2(), "rule__OutputExpression__FailureExprAssignment_2");
- put(grammarAccess.getInFailureExprAccess().getFailuresAssignment_0(), "rule__InFailureExpr__FailuresAssignment_0");
- put(grammarAccess.getInFailureExprAccess().getFailuresAssignment_1(), "rule__InFailureExpr__FailuresAssignment_1");
- put(grammarAccess.getInFailureExprAccess().getFailuresAssignment_2(), "rule__InFailureExpr__FailuresAssignment_2");
- put(grammarAccess.getInFailureExprAccess().getFailuresAssignment_3_1(), "rule__InFailureExpr__FailuresAssignment_3_1");
- put(grammarAccess.getInFailureExprAccess().getFailuresAssignment_3_2_1(), "rule__InFailureExpr__FailuresAssignment_3_2_1");
- put(grammarAccess.getInFailureExprAccess().getFailuresAssignment_4(), "rule__InFailureExpr__FailuresAssignment_4");
- put(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_0(), "rule__OutFailureExpr__FailuresAssignment_0");
- put(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_1(), "rule__OutFailureExpr__FailuresAssignment_1");
- put(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_2(), "rule__OutFailureExpr__FailuresAssignment_2");
- put(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_3_1(), "rule__OutFailureExpr__FailuresAssignment_3_1");
- put(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_3_2_1(), "rule__OutFailureExpr__FailuresAssignment_3_2_1");
- put(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_4(), "rule__OutFailureExpr__FailuresAssignment_4");
- put(grammarAccess.getFailureDefinitionAccess().getTypeAssignment_1(), "rule__FailureDefinition__TypeAssignment_1");
- put(grammarAccess.getFailureDefinitionAccess().getAcidAvoidableAssignment_2_1(), "rule__FailureDefinition__AcidAvoidableAssignment_2_1");
- put(grammarAccess.getComplexNofailureDefinitionAccess().getAcidMitigationAssignment_3(), "rule__ComplexNofailureDefinition__AcidMitigationAssignment_3");
- put(grammarAccess.getVariableDefinitionAccess().getVariableNameAssignment_1(), "rule__VariableDefinition__VariableNameAssignment_1");
- put(grammarAccess.getACIDavoidableAccess().getAAssignment_0(), "rule__ACIDavoidable__AAssignment_0");
- put(grammarAccess.getACIDavoidableAccess().getCAssignment_2(), "rule__ACIDavoidable__CAssignment_2");
- put(grammarAccess.getACIDavoidableAccess().getIAssignment_4(), "rule__ACIDavoidable__IAssignment_4");
- put(grammarAccess.getACIDavoidableAccess().getDAssignment_6(), "rule__ACIDavoidable__DAssignment_6");
- put(grammarAccess.getACIDMitigationAccess().getAAssignment_0(), "rule__ACIDMitigation__AAssignment_0");
- put(grammarAccess.getACIDMitigationAccess().getCAssignment_2(), "rule__ACIDMitigation__CAssignment_2");
- put(grammarAccess.getACIDMitigationAccess().getIAssignment_4(), "rule__ACIDMitigation__IAssignment_4");
- put(grammarAccess.getACIDMitigationAccess().getDAssignment_6(), "rule__ACIDMitigation__DAssignment_6");
- }
- };
- }
- return nameMappings.get(element);
- }
-
- @Override
- protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
- try {
- org.polarsys.chess.xtext.ui.contentassist.antlr.internal.InternalFlaDslParser typedParser = (org.polarsys.chess.xtext.ui.contentassist.antlr.internal.InternalFlaDslParser) parser;
- typedParser.entryRuleBehaviour();
- return typedParser.getFollowElements();
- } catch(RecognitionException ex) {
- throw new RuntimeException(ex);
- }
- }
-
- @Override
- protected String[] getInitialHiddenTokens() {
- return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" };
- }
-
- public FlaDslGrammarAccess getGrammarAccess() {
- return this.grammarAccess;
- }
-
- public void setGrammarAccess(FlaDslGrammarAccess grammarAccess) {
- this.grammarAccess = grammarAccess;
- }
-}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/PartialFlaDslContentAssistParser.java b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/PartialFlaDslContentAssistParser.java
deleted file mode 100644
index 8d2b405..0000000
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/PartialFlaDslContentAssistParser.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.polarsys.chess.xtext.ui.contentassist.antlr;
-
-import java.util.Collection;
-import java.util.Collections;
-
-import org.eclipse.xtext.AbstractRule;
-import org.eclipse.xtext.ui.codetemplates.ui.partialEditing.IPartialContentAssistParser;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.FollowElement;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
-import org.eclipse.xtext.util.PolymorphicDispatcher;
-
-/*
- * Template CodetemplatesGeneratorFragment.xpt
- */
-public class PartialFlaDslContentAssistParser extends FlaDslParser implements IPartialContentAssistParser {
-
- private AbstractRule rule;
-
- @Override
- public void initializeFor(AbstractRule rule) {
- this.rule = rule;
- }
-
- @Override
- protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
- if (rule == null || rule.eIsProxy())
- return Collections.emptyList();
- String methodName = "entryRule" + rule.getName();
- PolymorphicDispatcher<Collection<FollowElement>> dispatcher =
- new PolymorphicDispatcher<Collection<FollowElement>>(methodName, 0, 0, Collections.singletonList(parser));
- dispatcher.invoke();
- return parser.getFollowElements();
- }
-
-}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/internal/InternalFlaDslLexer.java b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/internal/InternalFlaDslLexer.java
deleted file mode 100644
index 75a8ef9..0000000
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/internal/InternalFlaDslLexer.java
+++ /dev/null
@@ -1,1897 +0,0 @@
-package org.polarsys.chess.xtext.ui.contentassist.antlr.internal;
-
-// Hack: Use our own Lexer superclass by means of import.
-// Currently there is no other way to specify the superclass for the lexer.
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
-
-
-import org.antlr.runtime.*;
-import java.util.Stack;
-import java.util.List;
-import java.util.ArrayList;
-
-@SuppressWarnings("all")
-public class InternalFlaDslLexer extends Lexer {
- public static final int RULE_STRING=6;
- public static final int RULE_SL_COMMENT=8;
- public static final int T__19=19;
- public static final int T__15=15;
- public static final int T__37=37;
- public static final int T__16=16;
- public static final int T__38=38;
- public static final int T__17=17;
- public static final int T__39=39;
- public static final int T__18=18;
- public static final int T__11=11;
- public static final int T__33=33;
- public static final int T__12=12;
- public static final int T__34=34;
- public static final int T__13=13;
- public static final int T__35=35;
- public static final int T__14=14;
- public static final int T__36=36;
- public static final int EOF=-1;
- public static final int T__30=30;
- public static final int T__31=31;
- public static final int T__32=32;
- public static final int RULE_ID=4;
- public static final int RULE_WS=9;
- public static final int RULE_ANY_OTHER=10;
- public static final int T__26=26;
- public static final int T__27=27;
- public static final int T__28=28;
- public static final int RULE_INT=5;
- public static final int T__29=29;
- public static final int T__22=22;
- public static final int RULE_ML_COMMENT=7;
- public static final int T__23=23;
- public static final int T__24=24;
- public static final int T__25=25;
- public static final int T__40=40;
- public static final int T__20=20;
- public static final int T__21=21;
-
- // delegates
- // delegators
-
- public InternalFlaDslLexer() {;}
- public InternalFlaDslLexer(CharStream input) {
- this(input, new RecognizerSharedState());
- }
- public InternalFlaDslLexer(CharStream input, RecognizerSharedState state) {
- super(input,state);
-
- }
- public String getGrammarFileName() { return "InternalFlaDsl.g"; }
-
- // $ANTLR start "T__11"
- public final void mT__11() throws RecognitionException {
- try {
- int _type = T__11;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:11:7: ( 'undefined' )
- // InternalFlaDsl.g:11:9: 'undefined'
- {
- match("undefined");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__11"
-
- // $ANTLR start "T__12"
- public final void mT__12() throws RecognitionException {
- try {
- int _type = T__12;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:12:7: ( 'early' )
- // InternalFlaDsl.g:12:9: 'early'
- {
- match("early");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__12"
-
- // $ANTLR start "T__13"
- public final void mT__13() throws RecognitionException {
- try {
- int _type = T__13;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:13:7: ( 'late' )
- // InternalFlaDsl.g:13:9: 'late'
- {
- match("late");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__13"
-
- // $ANTLR start "T__14"
- public final void mT__14() throws RecognitionException {
- try {
- int _type = T__14;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:14:7: ( 'commission' )
- // InternalFlaDsl.g:14:9: 'commission'
- {
- match("commission");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__14"
-
- // $ANTLR start "T__15"
- public final void mT__15() throws RecognitionException {
- try {
- int _type = T__15;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:15:7: ( 'omission' )
- // InternalFlaDsl.g:15:9: 'omission'
- {
- match("omission");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__15"
-
- // $ANTLR start "T__16"
- public final void mT__16() throws RecognitionException {
- try {
- int _type = T__16;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:16:7: ( 'valueSubtle' )
- // InternalFlaDsl.g:16:9: 'valueSubtle'
- {
- match("valueSubtle");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__16"
-
- // $ANTLR start "T__17"
- public final void mT__17() throws RecognitionException {
- try {
- int _type = T__17;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:17:7: ( 'valueCoarse' )
- // InternalFlaDsl.g:17:9: 'valueCoarse'
- {
- match("valueCoarse");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__17"
-
- // $ANTLR start "T__18"
- public final void mT__18() throws RecognitionException {
- try {
- int _type = T__18;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:18:7: ( 'incompletion' )
- // InternalFlaDsl.g:18:9: 'incompletion'
- {
- match("incompletion");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__18"
-
- // $ANTLR start "T__19"
- public final void mT__19() throws RecognitionException {
- try {
- int _type = T__19;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:19:7: ( 'none' )
- // InternalFlaDsl.g:19:9: 'none'
- {
- match("none");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__19"
-
- // $ANTLR start "T__20"
- public final void mT__20() throws RecognitionException {
- try {
- int _type = T__20;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:20:7: ( 'unspecified' )
- // InternalFlaDsl.g:20:9: 'unspecified'
- {
- match("unspecified");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__20"
-
- // $ANTLR start "T__21"
- public final void mT__21() throws RecognitionException {
- try {
- int _type = T__21;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:21:7: ( 'inconsistency' )
- // InternalFlaDsl.g:21:9: 'inconsistency'
- {
- match("inconsistency");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__21"
-
- // $ANTLR start "T__22"
- public final void mT__22() throws RecognitionException {
- try {
- int _type = T__22;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:22:7: ( 'interference' )
- // InternalFlaDsl.g:22:9: 'interference'
- {
- match("interference");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__22"
-
- // $ANTLR start "T__23"
- public final void mT__23() throws RecognitionException {
- try {
- int _type = T__23;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:23:7: ( 'impermanence' )
- // InternalFlaDsl.g:23:9: 'impermanence'
- {
- match("impermanence");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__23"
-
- // $ANTLR start "T__24"
- public final void mT__24() throws RecognitionException {
- try {
- int _type = T__24;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:24:7: ( 'all_or_nothing' )
- // InternalFlaDsl.g:24:9: 'all_or_nothing'
- {
- match("all_or_nothing");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__24"
-
- // $ANTLR start "T__25"
- public final void mT__25() throws RecognitionException {
- try {
- int _type = T__25;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:25:7: ( 'all_or_compensation' )
- // InternalFlaDsl.g:25:9: 'all_or_compensation'
- {
- match("all_or_compensation");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__25"
-
- // $ANTLR start "T__26"
- public final void mT__26() throws RecognitionException {
- try {
- int _type = T__26;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:26:7: ( 'full_consistency' )
- // InternalFlaDsl.g:26:9: 'full_consistency'
- {
- match("full_consistency");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__26"
-
- // $ANTLR start "T__27"
- public final void mT__27() throws RecognitionException {
- try {
- int _type = T__27;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:27:7: ( 'range_violation_allowed' )
- // InternalFlaDsl.g:27:9: 'range_violation_allowed'
- {
- match("range_violation_allowed");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__27"
-
- // $ANTLR start "T__28"
- public final void mT__28() throws RecognitionException {
- try {
- int _type = T__28;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:28:7: ( 'serializable' )
- // InternalFlaDsl.g:28:9: 'serializable'
- {
- match("serializable");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__28"
-
- // $ANTLR start "T__29"
- public final void mT__29() throws RecognitionException {
- try {
- int _type = T__29;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:29:7: ( 'portable_level' )
- // InternalFlaDsl.g:29:9: 'portable_level'
- {
- match("portable_level");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__29"
-
- // $ANTLR start "T__30"
- public final void mT__30() throws RecognitionException {
- try {
- int _type = T__30;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:30:7: ( 'no_loss' )
- // InternalFlaDsl.g:30:9: 'no_loss'
- {
- match("no_loss");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__30"
-
- // $ANTLR start "T__31"
- public final void mT__31() throws RecognitionException {
- try {
- int _type = T__31;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:31:7: ( 'partial_loss_allowed' )
- // InternalFlaDsl.g:31:9: 'partial_loss_allowed'
- {
- match("partial_loss_allowed");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__31"
-
- // $ANTLR start "T__32"
- public final void mT__32() throws RecognitionException {
- try {
- int _type = T__32;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:32:7: ( 'FLA:' )
- // InternalFlaDsl.g:32:9: 'FLA:'
- {
- match("FLA:");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__32"
-
- // $ANTLR start "T__33"
- public final void mT__33() throws RecognitionException {
- try {
- int _type = T__33;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:33:7: ( '->' )
- // InternalFlaDsl.g:33:9: '->'
- {
- match("->");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__33"
-
- // $ANTLR start "T__34"
- public final void mT__34() throws RecognitionException {
- try {
- int _type = T__34;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:34:7: ( ';' )
- // InternalFlaDsl.g:34:9: ';'
- {
- match(';');
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__34"
-
- // $ANTLR start "T__35"
- public final void mT__35() throws RecognitionException {
- try {
- int _type = T__35;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:35:7: ( ',' )
- // InternalFlaDsl.g:35:9: ','
- {
- match(',');
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__35"
-
- // $ANTLR start "T__36"
- public final void mT__36() throws RecognitionException {
- try {
- int _type = T__36;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:36:7: ( '.' )
- // InternalFlaDsl.g:36:9: '.'
- {
- match('.');
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__36"
-
- // $ANTLR start "T__37"
- public final void mT__37() throws RecognitionException {
- try {
- int _type = T__37;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:37:7: ( '{' )
- // InternalFlaDsl.g:37:9: '{'
- {
- match('{');
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__37"
-
- // $ANTLR start "T__38"
- public final void mT__38() throws RecognitionException {
- try {
- int _type = T__38;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:38:7: ( '}' )
- // InternalFlaDsl.g:38:9: '}'
- {
- match('}');
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__38"
-
- // $ANTLR start "T__39"
- public final void mT__39() throws RecognitionException {
- try {
- int _type = T__39;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:39:7: ( 'noFailure' )
- // InternalFlaDsl.g:39:9: 'noFailure'
- {
- match("noFailure");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__39"
-
- // $ANTLR start "T__40"
- public final void mT__40() throws RecognitionException {
- try {
- int _type = T__40;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:40:7: ( 'wildcard' )
- // InternalFlaDsl.g:40:9: 'wildcard'
- {
- match("wildcard");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "T__40"
-
- // $ANTLR start "RULE_ID"
- public final void mRULE_ID() throws RecognitionException {
- try {
- int _type = RULE_ID;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:3578:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
- // InternalFlaDsl.g:3578:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
- {
- // InternalFlaDsl.g:3578:11: ( '^' )?
- int alt1=2;
- int LA1_0 = input.LA(1);
-
- if ( (LA1_0=='^') ) {
- alt1=1;
- }
- switch (alt1) {
- case 1 :
- // InternalFlaDsl.g:3578:11: '^'
- {
- match('^');
-
- }
- break;
-
- }
-
- if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
- input.consume();
-
- }
- else {
- MismatchedSetException mse = new MismatchedSetException(null,input);
- recover(mse);
- throw mse;}
-
- // InternalFlaDsl.g:3578:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
- loop2:
- do {
- int alt2=2;
- int LA2_0 = input.LA(1);
-
- if ( ((LA2_0>='0' && LA2_0<='9')||(LA2_0>='A' && LA2_0<='Z')||LA2_0=='_'||(LA2_0>='a' && LA2_0<='z')) ) {
- alt2=1;
- }
-
-
- switch (alt2) {
- case 1 :
- // InternalFlaDsl.g:
- {
- if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
- input.consume();
-
- }
- else {
- MismatchedSetException mse = new MismatchedSetException(null,input);
- recover(mse);
- throw mse;}
-
-
- }
- break;
-
- default :
- break loop2;
- }
- } while (true);
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "RULE_ID"
-
- // $ANTLR start "RULE_INT"
- public final void mRULE_INT() throws RecognitionException {
- try {
- int _type = RULE_INT;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:3580:10: ( ( '0' .. '9' )+ )
- // InternalFlaDsl.g:3580:12: ( '0' .. '9' )+
- {
- // InternalFlaDsl.g:3580:12: ( '0' .. '9' )+
- int cnt3=0;
- loop3:
- do {
- int alt3=2;
- int LA3_0 = input.LA(1);
-
- if ( ((LA3_0>='0' && LA3_0<='9')) ) {
- alt3=1;
- }
-
-
- switch (alt3) {
- case 1 :
- // InternalFlaDsl.g:3580:13: '0' .. '9'
- {
- matchRange('0','9');
-
- }
- break;
-
- default :
- if ( cnt3 >= 1 ) break loop3;
- EarlyExitException eee =
- new EarlyExitException(3, input);
- throw eee;
- }
- cnt3++;
- } while (true);
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "RULE_INT"
-
- // $ANTLR start "RULE_STRING"
- public final void mRULE_STRING() throws RecognitionException {
- try {
- int _type = RULE_STRING;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:3582:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
- // InternalFlaDsl.g:3582:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
- {
- // InternalFlaDsl.g:3582:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
- int alt6=2;
- int LA6_0 = input.LA(1);
-
- if ( (LA6_0=='\"') ) {
- alt6=1;
- }
- else if ( (LA6_0=='\'') ) {
- alt6=2;
- }
- else {
- NoViableAltException nvae =
- new NoViableAltException("", 6, 0, input);
-
- throw nvae;
- }
- switch (alt6) {
- case 1 :
- // InternalFlaDsl.g:3582:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
- {
- match('\"');
- // InternalFlaDsl.g:3582:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
- loop4:
- do {
- int alt4=3;
- int LA4_0 = input.LA(1);
-
- if ( (LA4_0=='\\') ) {
- alt4=1;
- }
- else if ( ((LA4_0>='\u0000' && LA4_0<='!')||(LA4_0>='#' && LA4_0<='[')||(LA4_0>=']' && LA4_0<='\uFFFF')) ) {
- alt4=2;
- }
-
-
- switch (alt4) {
- case 1 :
- // InternalFlaDsl.g:3582:21: '\\\\' .
- {
- match('\\');
- matchAny();
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:3582:28: ~ ( ( '\\\\' | '\"' ) )
- {
- if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
- input.consume();
-
- }
- else {
- MismatchedSetException mse = new MismatchedSetException(null,input);
- recover(mse);
- throw mse;}
-
-
- }
- break;
-
- default :
- break loop4;
- }
- } while (true);
-
- match('\"');
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:3582:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
- {
- match('\'');
- // InternalFlaDsl.g:3582:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )*
- loop5:
- do {
- int alt5=3;
- int LA5_0 = input.LA(1);
-
- if ( (LA5_0=='\\') ) {
- alt5=1;
- }
- else if ( ((LA5_0>='\u0000' && LA5_0<='&')||(LA5_0>='(' && LA5_0<='[')||(LA5_0>=']' && LA5_0<='\uFFFF')) ) {
- alt5=2;
- }
-
-
- switch (alt5) {
- case 1 :
- // InternalFlaDsl.g:3582:54: '\\\\' .
- {
- match('\\');
- matchAny();
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:3582:61: ~ ( ( '\\\\' | '\\'' ) )
- {
- if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
- input.consume();
-
- }
- else {
- MismatchedSetException mse = new MismatchedSetException(null,input);
- recover(mse);
- throw mse;}
-
-
- }
- break;
-
- default :
- break loop5;
- }
- } while (true);
-
- match('\'');
-
- }
- break;
-
- }
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "RULE_STRING"
-
- // $ANTLR start "RULE_ML_COMMENT"
- public final void mRULE_ML_COMMENT() throws RecognitionException {
- try {
- int _type = RULE_ML_COMMENT;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:3584:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
- // InternalFlaDsl.g:3584:19: '/*' ( options {greedy=false; } : . )* '*/'
- {
- match("/*");
-
- // InternalFlaDsl.g:3584:24: ( options {greedy=false; } : . )*
- loop7:
- do {
- int alt7=2;
- int LA7_0 = input.LA(1);
-
- if ( (LA7_0=='*') ) {
- int LA7_1 = input.LA(2);
-
- if ( (LA7_1=='/') ) {
- alt7=2;
- }
- else if ( ((LA7_1>='\u0000' && LA7_1<='.')||(LA7_1>='0' && LA7_1<='\uFFFF')) ) {
- alt7=1;
- }
-
-
- }
- else if ( ((LA7_0>='\u0000' && LA7_0<=')')||(LA7_0>='+' && LA7_0<='\uFFFF')) ) {
- alt7=1;
- }
-
-
- switch (alt7) {
- case 1 :
- // InternalFlaDsl.g:3584:52: .
- {
- matchAny();
-
- }
- break;
-
- default :
- break loop7;
- }
- } while (true);
-
- match("*/");
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "RULE_ML_COMMENT"
-
- // $ANTLR start "RULE_SL_COMMENT"
- public final void mRULE_SL_COMMENT() throws RecognitionException {
- try {
- int _type = RULE_SL_COMMENT;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:3586:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
- // InternalFlaDsl.g:3586:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
- {
- match("//");
-
- // InternalFlaDsl.g:3586:24: (~ ( ( '\\n' | '\\r' ) ) )*
- loop8:
- do {
- int alt8=2;
- int LA8_0 = input.LA(1);
-
- if ( ((LA8_0>='\u0000' && LA8_0<='\t')||(LA8_0>='\u000B' && LA8_0<='\f')||(LA8_0>='\u000E' && LA8_0<='\uFFFF')) ) {
- alt8=1;
- }
-
-
- switch (alt8) {
- case 1 :
- // InternalFlaDsl.g:3586:24: ~ ( ( '\\n' | '\\r' ) )
- {
- if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
- input.consume();
-
- }
- else {
- MismatchedSetException mse = new MismatchedSetException(null,input);
- recover(mse);
- throw mse;}
-
-
- }
- break;
-
- default :
- break loop8;
- }
- } while (true);
-
- // InternalFlaDsl.g:3586:40: ( ( '\\r' )? '\\n' )?
- int alt10=2;
- int LA10_0 = input.LA(1);
-
- if ( (LA10_0=='\n'||LA10_0=='\r') ) {
- alt10=1;
- }
- switch (alt10) {
- case 1 :
- // InternalFlaDsl.g:3586:41: ( '\\r' )? '\\n'
- {
- // InternalFlaDsl.g:3586:41: ( '\\r' )?
- int alt9=2;
- int LA9_0 = input.LA(1);
-
- if ( (LA9_0=='\r') ) {
- alt9=1;
- }
- switch (alt9) {
- case 1 :
- // InternalFlaDsl.g:3586:41: '\\r'
- {
- match('\r');
-
- }
- break;
-
- }
-
- match('\n');
-
- }
- break;
-
- }
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "RULE_SL_COMMENT"
-
- // $ANTLR start "RULE_WS"
- public final void mRULE_WS() throws RecognitionException {
- try {
- int _type = RULE_WS;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:3588:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
- // InternalFlaDsl.g:3588:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
- {
- // InternalFlaDsl.g:3588:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
- int cnt11=0;
- loop11:
- do {
- int alt11=2;
- int LA11_0 = input.LA(1);
-
- if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) {
- alt11=1;
- }
-
-
- switch (alt11) {
- case 1 :
- // InternalFlaDsl.g:
- {
- if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) {
- input.consume();
-
- }
- else {
- MismatchedSetException mse = new MismatchedSetException(null,input);
- recover(mse);
- throw mse;}
-
-
- }
- break;
-
- default :
- if ( cnt11 >= 1 ) break loop11;
- EarlyExitException eee =
- new EarlyExitException(11, input);
- throw eee;
- }
- cnt11++;
- } while (true);
-
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "RULE_WS"
-
- // $ANTLR start "RULE_ANY_OTHER"
- public final void mRULE_ANY_OTHER() throws RecognitionException {
- try {
- int _type = RULE_ANY_OTHER;
- int _channel = DEFAULT_TOKEN_CHANNEL;
- // InternalFlaDsl.g:3590:16: ( . )
- // InternalFlaDsl.g:3590:18: .
- {
- matchAny();
-
- }
-
- state.type = _type;
- state.channel = _channel;
- }
- finally {
- }
- }
- // $ANTLR end "RULE_ANY_OTHER"
-
- public void mTokens() throws RecognitionException {
- // InternalFlaDsl.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
- int alt12=37;
- alt12 = dfa12.predict(input);
- switch (alt12) {
- case 1 :
- // InternalFlaDsl.g:1:10: T__11
- {
- mT__11();
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:1:16: T__12
- {
- mT__12();
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:1:22: T__13
- {
- mT__13();
-
- }
- break;
- case 4 :
- // InternalFlaDsl.g:1:28: T__14
- {
- mT__14();
-
- }
- break;
- case 5 :
- // InternalFlaDsl.g:1:34: T__15
- {
- mT__15();
-
- }
- break;
- case 6 :
- // InternalFlaDsl.g:1:40: T__16
- {
- mT__16();
-
- }
- break;
- case 7 :
- // InternalFlaDsl.g:1:46: T__17
- {
- mT__17();
-
- }
- break;
- case 8 :
- // InternalFlaDsl.g:1:52: T__18
- {
- mT__18();
-
- }
- break;
- case 9 :
- // InternalFlaDsl.g:1:58: T__19
- {
- mT__19();
-
- }
- break;
- case 10 :
- // InternalFlaDsl.g:1:64: T__20
- {
- mT__20();
-
- }
- break;
- case 11 :
- // InternalFlaDsl.g:1:70: T__21
- {
- mT__21();
-
- }
- break;
- case 12 :
- // InternalFlaDsl.g:1:76: T__22
- {
- mT__22();
-
- }
- break;
- case 13 :
- // InternalFlaDsl.g:1:82: T__23
- {
- mT__23();
-
- }
- break;
- case 14 :
- // InternalFlaDsl.g:1:88: T__24
- {
- mT__24();
-
- }
- break;
- case 15 :
- // InternalFlaDsl.g:1:94: T__25
- {
- mT__25();
-
- }
- break;
- case 16 :
- // InternalFlaDsl.g:1:100: T__26
- {
- mT__26();
-
- }
- break;
- case 17 :
- // InternalFlaDsl.g:1:106: T__27
- {
- mT__27();
-
- }
- break;
- case 18 :
- // InternalFlaDsl.g:1:112: T__28
- {
- mT__28();
-
- }
- break;
- case 19 :
- // InternalFlaDsl.g:1:118: T__29
- {
- mT__29();
-
- }
- break;
- case 20 :
- // InternalFlaDsl.g:1:124: T__30
- {
- mT__30();
-
- }
- break;
- case 21 :
- // InternalFlaDsl.g:1:130: T__31
- {
- mT__31();
-
- }
- break;
- case 22 :
- // InternalFlaDsl.g:1:136: T__32
- {
- mT__32();
-
- }
- break;
- case 23 :
- // InternalFlaDsl.g:1:142: T__33
- {
- mT__33();
-
- }
- break;
- case 24 :
- // InternalFlaDsl.g:1:148: T__34
- {
- mT__34();
-
- }
- break;
- case 25 :
- // InternalFlaDsl.g:1:154: T__35
- {
- mT__35();
-
- }
- break;
- case 26 :
- // InternalFlaDsl.g:1:160: T__36
- {
- mT__36();
-
- }
- break;
- case 27 :
- // InternalFlaDsl.g:1:166: T__37
- {
- mT__37();
-
- }
- break;
- case 28 :
- // InternalFlaDsl.g:1:172: T__38
- {
- mT__38();
-
- }
- break;
- case 29 :
- // InternalFlaDsl.g:1:178: T__39
- {
- mT__39();
-
- }
- break;
- case 30 :
- // InternalFlaDsl.g:1:184: T__40
- {
- mT__40();
-
- }
- break;
- case 31 :
- // InternalFlaDsl.g:1:190: RULE_ID
- {
- mRULE_ID();
-
- }
- break;
- case 32 :
- // InternalFlaDsl.g:1:198: RULE_INT
- {
- mRULE_INT();
-
- }
- break;
- case 33 :
- // InternalFlaDsl.g:1:207: RULE_STRING
- {
- mRULE_STRING();
-
- }
- break;
- case 34 :
- // InternalFlaDsl.g:1:219: RULE_ML_COMMENT
- {
- mRULE_ML_COMMENT();
-
- }
- break;
- case 35 :
- // InternalFlaDsl.g:1:235: RULE_SL_COMMENT
- {
- mRULE_SL_COMMENT();
-
- }
- break;
- case 36 :
- // InternalFlaDsl.g:1:251: RULE_WS
- {
- mRULE_WS();
-
- }
- break;
- case 37 :
- // InternalFlaDsl.g:1:259: RULE_ANY_OTHER
- {
- mRULE_ANY_OTHER();
-
- }
- break;
-
- }
-
- }
-
-
- protected DFA12 dfa12 = new DFA12(this);
- static final String DFA12_eotS =
- "\1\uffff\16\37\1\35\5\uffff\1\37\1\35\2\uffff\3\35\2\uffff\1\37\1\uffff\17\37\6\uffff\1\37\5\uffff\30\37\1\150\6\37\1\160\10\37\1\uffff\3\37\1\174\1\uffff\7\37\1\uffff\13\37\1\uffff\33\37\1\u00ab\13\37\1\u00b8\6\37\1\uffff\10\37\1\u00c7\1\u00c8\2\37\1\uffff\6\37\1\u00d1\7\37\2\uffff\1\37\1\u00da\6\37\1\uffff\7\37\1\u00e8\1\uffff\1\u00e9\1\u00ea\13\37\3\uffff\1\u00f6\1\37\1\u00f8\1\u00f9\4\37\1\u00fe\2\37\1\uffff\1\u0101\2\uffff\4\37\1\uffff\2\37\1\uffff\1\u0108\3\37\1\u010c\1\37\1\uffff\3\37\1\uffff\2\37\1\u0113\3\37\1\uffff\5\37\1\u011c\2\37\1\uffff\1\37\1\u0120\1\37\1\uffff\1\37\1\u0123\1\uffff";
- static final String DFA12_eofS =
- "\u0124\uffff";
- static final String DFA12_minS =
- "\1\0\1\156\2\141\1\157\1\155\1\141\1\155\1\157\1\154\1\165\1\141\1\145\1\141\1\114\1\76\5\uffff\1\151\1\101\2\uffff\2\0\1\52\2\uffff\1\144\1\uffff\1\162\1\164\1\155\1\151\1\154\1\143\1\160\1\106\2\154\1\156\3\162\1\101\6\uffff\1\154\5\uffff\1\145\1\160\1\154\1\145\1\155\1\163\1\165\1\157\3\145\1\154\1\141\1\137\1\154\1\147\1\151\2\164\1\72\1\144\1\146\1\145\1\171\1\60\1\151\1\163\1\145\1\155\2\162\1\60\1\157\1\151\1\157\1\137\1\145\2\141\1\151\1\uffff\1\143\1\151\1\143\1\60\1\uffff\1\163\1\151\1\103\1\160\1\163\1\146\1\155\1\uffff\1\163\1\154\1\162\1\143\1\137\1\154\1\142\2\141\1\156\1\151\1\uffff\1\163\1\157\1\165\1\157\1\154\1\151\1\145\1\141\1\163\1\165\1\137\1\157\1\166\1\151\2\154\1\162\1\145\1\146\1\151\1\156\1\142\1\141\1\145\1\163\1\162\1\156\1\60\1\162\1\143\1\156\1\151\1\172\1\145\1\137\2\144\1\151\1\157\1\60\1\164\1\162\2\164\2\145\1\uffff\1\145\2\157\1\163\1\157\1\141\1\137\1\154\2\60\1\145\1\156\1\uffff\1\154\1\163\1\151\1\145\2\156\1\60\1\164\1\155\1\151\1\154\1\142\1\154\1\157\2\uffff\1\144\1\60\2\145\1\157\1\156\2\143\1\uffff\1\150\1\160\1\163\1\141\1\154\1\145\1\163\1\60\1\uffff\2\60\1\156\1\143\2\145\1\151\1\145\2\164\1\145\1\166\1\163\3\uffff\1\60\1\171\2\60\2\156\1\145\1\151\1\60\1\145\1\137\1\uffff\1\60\2\uffff\1\147\1\163\1\156\1\157\1\uffff\1\154\1\141\1\uffff\1\60\1\141\1\143\1\156\1\60\1\154\1\uffff\1\164\1\171\1\137\1\uffff\1\154\1\151\1\60\1\141\2\157\1\uffff\1\154\1\167\1\156\1\154\1\145\1\60\1\157\1\144\1\uffff\1\167\1\60\1\145\1\uffff\1\144\1\60\1\uffff";
- static final String DFA12_maxS =
- "\1\uffff\1\156\2\141\1\157\1\155\1\141\1\156\1\157\1\154\1\165\1\141\1\145\1\157\1\114\1\76\5\uffff\1\151\1\172\2\uffff\2\uffff\1\57\2\uffff\1\163\1\uffff\1\162\1\164\1\155\1\151\1\154\1\164\1\160\1\156\2\154\1\156\3\162\1\101\6\uffff\1\154\5\uffff\1\145\1\160\1\154\1\145\1\155\1\163\1\165\1\157\3\145\1\154\1\141\1\137\1\154\1\147\1\151\2\164\1\72\1\144\1\146\1\145\1\171\1\172\1\151\1\163\1\145\1\156\2\162\1\172\1\157\1\151\1\157\1\137\1\145\2\141\1\151\1\uffff\1\143\1\151\1\143\1\172\1\uffff\1\163\1\151\1\123\1\160\1\163\1\146\1\155\1\uffff\1\163\1\154\1\162\1\143\1\137\1\154\1\142\2\141\1\156\1\151\1\uffff\1\163\1\157\1\165\1\157\1\154\1\151\1\145\1\141\1\163\1\165\1\137\1\157\1\166\1\151\2\154\1\162\1\145\1\146\1\151\1\156\1\142\1\141\1\145\1\163\1\162\1\156\1\172\1\162\2\156\1\151\1\172\1\145\1\137\2\144\1\151\1\157\1\172\1\164\1\162\2\164\2\145\1\uffff\1\145\2\157\1\163\1\157\1\141\1\137\1\154\2\172\1\145\1\156\1\uffff\1\154\1\163\1\151\1\145\2\156\1\172\1\164\1\155\1\151\1\154\1\142\1\154\1\157\2\uffff\1\144\1\172\2\145\1\157\1\156\2\143\1\uffff\1\150\1\160\1\163\1\141\1\154\1\145\1\163\1\172\1\uffff\2\172\1\156\1\143\2\145\1\151\1\145\2\164\1\145\1\166\1\163\3\uffff\1\172\1\171\2\172\2\156\1\145\1\151\1\172\1\145\1\137\1\uffff\1\172\2\uffff\1\147\1\163\1\156\1\157\1\uffff\1\154\1\141\1\uffff\1\172\1\141\1\143\1\156\1\172\1\154\1\uffff\1\164\1\171\1\137\1\uffff\1\154\1\151\1\172\1\141\2\157\1\uffff\1\154\1\167\1\156\1\154\1\145\1\172\1\157\1\144\1\uffff\1\167\1\172\1\145\1\uffff\1\144\1\172\1\uffff";
- static final String DFA12_acceptS =
- "\20\uffff\1\30\1\31\1\32\1\33\1\34\2\uffff\1\37\1\40\3\uffff\1\44\1\45\1\uffff\1\37\17\uffff\1\27\1\30\1\31\1\32\1\33\1\34\1\uffff\1\40\1\41\1\42\1\43\1\44\50\uffff\1\26\4\uffff\1\3\7\uffff\1\11\13\uffff\1\2\56\uffff\1\24\14\uffff\1\5\16\uffff\1\36\1\1\10\uffff\1\35\10\uffff\1\4\15\uffff\1\12\1\6\1\7\13\uffff\1\10\1\uffff\1\14\1\15\4\uffff\1\22\2\uffff\1\13\6\uffff\1\16\3\uffff\1\23\6\uffff\1\20\10\uffff\1\17\3\uffff\1\25\2\uffff\1\21";
- static final String DFA12_specialS =
- "\1\2\30\uffff\1\0\1\1\u0109\uffff}>";
- static final String[] DFA12_transitionS = {
- "\11\35\2\34\2\35\1\34\22\35\1\34\1\35\1\31\4\35\1\32\4\35\1\21\1\17\1\22\1\33\12\30\1\35\1\20\5\35\5\27\1\16\24\27\3\35\1\26\1\27\1\35\1\11\1\27\1\4\1\27\1\2\1\12\2\27\1\7\2\27\1\3\1\27\1\10\1\5\1\15\1\27\1\13\1\14\1\27\1\1\1\6\1\25\3\27\1\23\1\35\1\24\uff82\35",
- "\1\36",
- "\1\40",
- "\1\41",
- "\1\42",
- "\1\43",
- "\1\44",
- "\1\46\1\45",
- "\1\47",
- "\1\50",
- "\1\51",
- "\1\52",
- "\1\53",
- "\1\55\15\uffff\1\54",
- "\1\56",
- "\1\57",
- "",
- "",
- "",
- "",
- "",
- "\1\65",
- "\32\37\4\uffff\1\37\1\uffff\32\37",
- "",
- "",
- "\0\67",
- "\0\67",
- "\1\70\4\uffff\1\71",
- "",
- "",
- "\1\73\16\uffff\1\74",
- "",
- "\1\75",
- "\1\76",
- "\1\77",
- "\1\100",
- "\1\101",
- "\1\102\20\uffff\1\103",
- "\1\104",
- "\1\107\30\uffff\1\106\16\uffff\1\105",
- "\1\110",
- "\1\111",
- "\1\112",
- "\1\113",
- "\1\114",
- "\1\115",
- "\1\116",
- "",
- "",
- "",
- "",
- "",
- "",
- "\1\117",
- "",
- "",
- "",
- "",
- "",
- "\1\120",
- "\1\121",
- "\1\122",
- "\1\123",
- "\1\124",
- "\1\125",
- "\1\126",
- "\1\127",
- "\1\130",
- "\1\131",
- "\1\132",
- "\1\133",
- "\1\134",
- "\1\135",
- "\1\136",
- "\1\137",
- "\1\140",
- "\1\141",
- "\1\142",
- "\1\143",
- "\1\144",
- "\1\145",
- "\1\146",
- "\1\147",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\151",
- "\1\152",
- "\1\153",
- "\1\154\1\155",
- "\1\156",
- "\1\157",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\161",
- "\1\162",
- "\1\163",
- "\1\164",
- "\1\165",
- "\1\166",
- "\1\167",
- "\1\170",
- "",
- "\1\171",
- "\1\172",
- "\1\173",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "",
- "\1\175",
- "\1\176",
- "\1\u0080\17\uffff\1\177",
- "\1\u0081",
- "\1\u0082",
- "\1\u0083",
- "\1\u0084",
- "",
- "\1\u0085",
- "\1\u0086",
- "\1\u0087",
- "\1\u0088",
- "\1\u0089",
- "\1\u008a",
- "\1\u008b",
- "\1\u008c",
- "\1\u008d",
- "\1\u008e",
- "\1\u008f",
- "",
- "\1\u0090",
- "\1\u0091",
- "\1\u0092",
- "\1\u0093",
- "\1\u0094",
- "\1\u0095",
- "\1\u0096",
- "\1\u0097",
- "\1\u0098",
- "\1\u0099",
- "\1\u009a",
- "\1\u009b",
- "\1\u009c",
- "\1\u009d",
- "\1\u009e",
- "\1\u009f",
- "\1\u00a0",
- "\1\u00a1",
- "\1\u00a2",
- "\1\u00a3",
- "\1\u00a4",
- "\1\u00a5",
- "\1\u00a6",
- "\1\u00a7",
- "\1\u00a8",
- "\1\u00a9",
- "\1\u00aa",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u00ac",
- "\1\u00ae\12\uffff\1\u00ad",
- "\1\u00af",
- "\1\u00b0",
- "\1\u00b1",
- "\1\u00b2",
- "\1\u00b3",
- "\1\u00b4",
- "\1\u00b5",
- "\1\u00b6",
- "\1\u00b7",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u00b9",
- "\1\u00ba",
- "\1\u00bb",
- "\1\u00bc",
- "\1\u00bd",
- "\1\u00be",
- "",
- "\1\u00bf",
- "\1\u00c0",
- "\1\u00c1",
- "\1\u00c2",
- "\1\u00c3",
- "\1\u00c4",
- "\1\u00c5",
- "\1\u00c6",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u00c9",
- "\1\u00ca",
- "",
- "\1\u00cb",
- "\1\u00cc",
- "\1\u00cd",
- "\1\u00ce",
- "\1\u00cf",
- "\1\u00d0",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u00d2",
- "\1\u00d3",
- "\1\u00d4",
- "\1\u00d5",
- "\1\u00d6",
- "\1\u00d7",
- "\1\u00d8",
- "",
- "",
- "\1\u00d9",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u00db",
- "\1\u00dc",
- "\1\u00dd",
- "\1\u00de",
- "\1\u00df",
- "\1\u00e0",
- "",
- "\1\u00e1",
- "\1\u00e2",
- "\1\u00e3",
- "\1\u00e4",
- "\1\u00e5",
- "\1\u00e6",
- "\1\u00e7",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u00eb",
- "\1\u00ec",
- "\1\u00ed",
- "\1\u00ee",
- "\1\u00ef",
- "\1\u00f0",
- "\1\u00f1",
- "\1\u00f2",
- "\1\u00f3",
- "\1\u00f4",
- "\1\u00f5",
- "",
- "",
- "",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u00f7",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u00fa",
- "\1\u00fb",
- "\1\u00fc",
- "\1\u00fd",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u00ff",
- "\1\u0100",
- "",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "",
- "",
- "\1\u0102",
- "\1\u0103",
- "\1\u0104",
- "\1\u0105",
- "",
- "\1\u0106",
- "\1\u0107",
- "",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u0109",
- "\1\u010a",
- "\1\u010b",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u010d",
- "",
- "\1\u010e",
- "\1\u010f",
- "\1\u0110",
- "",
- "\1\u0111",
- "\1\u0112",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u0114",
- "\1\u0115",
- "\1\u0116",
- "",
- "\1\u0117",
- "\1\u0118",
- "\1\u0119",
- "\1\u011a",
- "\1\u011b",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u011d",
- "\1\u011e",
- "",
- "\1\u011f",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- "\1\u0121",
- "",
- "\1\u0122",
- "\12\37\7\uffff\32\37\4\uffff\1\37\1\uffff\32\37",
- ""
- };
-
- static final short[] DFA12_eot = DFA.unpackEncodedString(DFA12_eotS);
- static final short[] DFA12_eof = DFA.unpackEncodedString(DFA12_eofS);
- static final char[] DFA12_min = DFA.unpackEncodedStringToUnsignedChars(DFA12_minS);
- static final char[] DFA12_max = DFA.unpackEncodedStringToUnsignedChars(DFA12_maxS);
- static final short[] DFA12_accept = DFA.unpackEncodedString(DFA12_acceptS);
- static final short[] DFA12_special = DFA.unpackEncodedString(DFA12_specialS);
- static final short[][] DFA12_transition;
-
- static {
- int numStates = DFA12_transitionS.length;
- DFA12_transition = new short[numStates][];
- for (int i=0; i<numStates; i++) {
- DFA12_transition[i] = DFA.unpackEncodedString(DFA12_transitionS[i]);
- }
- }
-
- class DFA12 extends DFA {
-
- public DFA12(BaseRecognizer recognizer) {
- this.recognizer = recognizer;
- this.decisionNumber = 12;
- this.eot = DFA12_eot;
- this.eof = DFA12_eof;
- this.min = DFA12_min;
- this.max = DFA12_max;
- this.accept = DFA12_accept;
- this.special = DFA12_special;
- this.transition = DFA12_transition;
- }
- public String getDescription() {
- return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
- }
- public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
- IntStream input = _input;
- int _s = s;
- switch ( s ) {
- case 0 :
- int LA12_25 = input.LA(1);
-
- s = -1;
- if ( ((LA12_25>='\u0000' && LA12_25<='\uFFFF')) ) {s = 55;}
-
- else s = 29;
-
- if ( s>=0 ) return s;
- break;
- case 1 :
- int LA12_26 = input.LA(1);
-
- s = -1;
- if ( ((LA12_26>='\u0000' && LA12_26<='\uFFFF')) ) {s = 55;}
-
- else s = 29;
-
- if ( s>=0 ) return s;
- break;
- case 2 :
- int LA12_0 = input.LA(1);
-
- s = -1;
- if ( (LA12_0=='u') ) {s = 1;}
-
- else if ( (LA12_0=='e') ) {s = 2;}
-
- else if ( (LA12_0=='l') ) {s = 3;}
-
- else if ( (LA12_0=='c') ) {s = 4;}
-
- else if ( (LA12_0=='o') ) {s = 5;}
-
- else if ( (LA12_0=='v') ) {s = 6;}
-
- else if ( (LA12_0=='i') ) {s = 7;}
-
- else if ( (LA12_0=='n') ) {s = 8;}
-
- else if ( (LA12_0=='a') ) {s = 9;}
-
- else if ( (LA12_0=='f') ) {s = 10;}
-
- else if ( (LA12_0=='r') ) {s = 11;}
-
- else if ( (LA12_0=='s') ) {s = 12;}
-
- else if ( (LA12_0=='p') ) {s = 13;}
-
- else if ( (LA12_0=='F') ) {s = 14;}
-
- else if ( (LA12_0=='-') ) {s = 15;}
-
- else if ( (LA12_0==';') ) {s = 16;}
-
- else if ( (LA12_0==',') ) {s = 17;}
-
- else if ( (LA12_0=='.') ) {s = 18;}
-
- else if ( (LA12_0=='{') ) {s = 19;}
-
- else if ( (LA12_0=='}') ) {s = 20;}
-
- else if ( (LA12_0=='w') ) {s = 21;}
-
- else if ( (LA12_0=='^') ) {s = 22;}
-
- else if ( ((LA12_0>='A' && LA12_0<='E')||(LA12_0>='G' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||LA12_0=='d'||(LA12_0>='g' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='k')||LA12_0=='m'||LA12_0=='q'||LA12_0=='t'||(LA12_0>='x' && LA12_0<='z')) ) {s = 23;}
-
- else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 24;}
-
- else if ( (LA12_0=='\"') ) {s = 25;}
-
- else if ( (LA12_0=='\'') ) {s = 26;}
-
- else if ( (LA12_0=='/') ) {s = 27;}
-
- else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 28;}
-
- else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='(' && LA12_0<='+')||LA12_0==':'||(LA12_0>='<' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 29;}
-
- if ( s>=0 ) return s;
- break;
- }
- NoViableAltException nvae =
- new NoViableAltException(getDescription(), 12, _s, input);
- error(nvae);
- throw nvae;
- }
- }
-
-
-}
\ No newline at end of file
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/internal/InternalFlaDslParser.java b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/internal/InternalFlaDslParser.java
deleted file mode 100644
index 36dd9db..0000000
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/contentassist/antlr/internal/InternalFlaDslParser.java
+++ /dev/null
@@ -1,9787 +0,0 @@
-package org.polarsys.chess.xtext.ui.contentassist.antlr.internal;
-
-import java.io.InputStream;
-import org.eclipse.xtext.*;
-import org.eclipse.xtext.parser.*;
-import org.eclipse.xtext.parser.impl.*;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.DFA;
-import org.polarsys.chess.xtext.services.FlaDslGrammarAccess;
-
-
-
-import org.antlr.runtime.*;
-import java.util.Stack;
-import java.util.List;
-import java.util.ArrayList;
-
-@SuppressWarnings("all")
-public class InternalFlaDslParser extends AbstractInternalContentAssistParser {
- public static final String[] tokenNames = new String[] {
- "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_INT", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'undefined'", "'early'", "'late'", "'commission'", "'omission'", "'valueSubtle'", "'valueCoarse'", "'incompletion'", "'none'", "'unspecified'", "'inconsistency'", "'interference'", "'impermanence'", "'all_or_nothing'", "'all_or_compensation'", "'full_consistency'", "'range_violation_allowed'", "'serializable'", "'portable_level'", "'no_loss'", "'partial_loss_allowed'", "'FLA:'", "'->'", "';'", "','", "'.'", "'{'", "'}'", "'noFailure'", "'wildcard'"
- };
- public static final int RULE_STRING=6;
- public static final int RULE_SL_COMMENT=8;
- public static final int T__19=19;
- public static final int T__15=15;
- public static final int T__37=37;
- public static final int T__16=16;
- public static final int T__38=38;
- public static final int T__17=17;
- public static final int T__39=39;
- public static final int T__18=18;
- public static final int T__11=11;
- public static final int T__33=33;
- public static final int T__12=12;
- public static final int T__34=34;
- public static final int T__13=13;
- public static final int T__35=35;
- public static final int T__14=14;
- public static final int T__36=36;
- public static final int EOF=-1;
- public static final int T__30=30;
- public static final int T__31=31;
- public static final int T__32=32;
- public static final int RULE_ID=4;
- public static final int RULE_WS=9;
- public static final int RULE_ANY_OTHER=10;
- public static final int T__26=26;
- public static final int T__27=27;
- public static final int T__28=28;
- public static final int RULE_INT=5;
- public static final int T__29=29;
- public static final int T__22=22;
- public static final int RULE_ML_COMMENT=7;
- public static final int T__23=23;
- public static final int T__24=24;
- public static final int T__25=25;
- public static final int T__40=40;
- public static final int T__20=20;
- public static final int T__21=21;
-
- // delegates
- // delegators
-
-
- public InternalFlaDslParser(TokenStream input) {
- this(input, new RecognizerSharedState());
- }
- public InternalFlaDslParser(TokenStream input, RecognizerSharedState state) {
- super(input, state);
-
- }
-
-
- public String[] getTokenNames() { return InternalFlaDslParser.tokenNames; }
- public String getGrammarFileName() { return "InternalFlaDsl.g"; }
-
-
-
- private FlaDslGrammarAccess grammarAccess;
-
- public void setGrammarAccess(FlaDslGrammarAccess grammarAccess) {
- this.grammarAccess = grammarAccess;
- }
-
- @Override
- protected Grammar getGrammar() {
- return grammarAccess.getGrammar();
- }
-
- @Override
- protected String getValueForTokenName(String tokenName) {
- return tokenName;
- }
-
-
-
-
- // $ANTLR start "entryRuleBehaviour"
- // InternalFlaDsl.g:60:1: entryRuleBehaviour : ruleBehaviour EOF ;
- public final void entryRuleBehaviour() throws RecognitionException {
- try {
- // InternalFlaDsl.g:61:1: ( ruleBehaviour EOF )
- // InternalFlaDsl.g:62:1: ruleBehaviour EOF
- {
- before(grammarAccess.getBehaviourRule());
- pushFollow(FOLLOW_1);
- ruleBehaviour();
-
- state._fsp--;
-
- after(grammarAccess.getBehaviourRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleBehaviour"
-
-
- // $ANTLR start "ruleBehaviour"
- // InternalFlaDsl.g:69:1: ruleBehaviour : ( ( ( rule__Behaviour__RulesAssignment ) ) ( ( rule__Behaviour__RulesAssignment )* ) ) ;
- public final void ruleBehaviour() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:73:2: ( ( ( ( rule__Behaviour__RulesAssignment ) ) ( ( rule__Behaviour__RulesAssignment )* ) ) )
- // InternalFlaDsl.g:74:1: ( ( ( rule__Behaviour__RulesAssignment ) ) ( ( rule__Behaviour__RulesAssignment )* ) )
- {
- // InternalFlaDsl.g:74:1: ( ( ( rule__Behaviour__RulesAssignment ) ) ( ( rule__Behaviour__RulesAssignment )* ) )
- // InternalFlaDsl.g:75:1: ( ( rule__Behaviour__RulesAssignment ) ) ( ( rule__Behaviour__RulesAssignment )* )
- {
- // InternalFlaDsl.g:75:1: ( ( rule__Behaviour__RulesAssignment ) )
- // InternalFlaDsl.g:76:1: ( rule__Behaviour__RulesAssignment )
- {
- before(grammarAccess.getBehaviourAccess().getRulesAssignment());
- // InternalFlaDsl.g:77:1: ( rule__Behaviour__RulesAssignment )
- // InternalFlaDsl.g:77:2: rule__Behaviour__RulesAssignment
- {
- pushFollow(FOLLOW_3);
- rule__Behaviour__RulesAssignment();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getBehaviourAccess().getRulesAssignment());
-
- }
-
- // InternalFlaDsl.g:80:1: ( ( rule__Behaviour__RulesAssignment )* )
- // InternalFlaDsl.g:81:1: ( rule__Behaviour__RulesAssignment )*
- {
- before(grammarAccess.getBehaviourAccess().getRulesAssignment());
- // InternalFlaDsl.g:82:1: ( rule__Behaviour__RulesAssignment )*
- loop1:
- do {
- int alt1=2;
- int LA1_0 = input.LA(1);
-
- if ( (LA1_0==32) ) {
- alt1=1;
- }
-
-
- switch (alt1) {
- case 1 :
- // InternalFlaDsl.g:82:2: rule__Behaviour__RulesAssignment
- {
- pushFollow(FOLLOW_3);
- rule__Behaviour__RulesAssignment();
-
- state._fsp--;
-
-
- }
- break;
-
- default :
- break loop1;
- }
- } while (true);
-
- after(grammarAccess.getBehaviourAccess().getRulesAssignment());
-
- }
-
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleBehaviour"
-
-
- // $ANTLR start "entryRuleExpression"
- // InternalFlaDsl.g:95:1: entryRuleExpression : ruleExpression EOF ;
- public final void entryRuleExpression() throws RecognitionException {
- try {
- // InternalFlaDsl.g:96:1: ( ruleExpression EOF )
- // InternalFlaDsl.g:97:1: ruleExpression EOF
- {
- before(grammarAccess.getExpressionRule());
- pushFollow(FOLLOW_1);
- ruleExpression();
-
- state._fsp--;
-
- after(grammarAccess.getExpressionRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleExpression"
-
-
- // $ANTLR start "ruleExpression"
- // InternalFlaDsl.g:104:1: ruleExpression : ( ( rule__Expression__Group__0 ) ) ;
- public final void ruleExpression() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:108:2: ( ( ( rule__Expression__Group__0 ) ) )
- // InternalFlaDsl.g:109:1: ( ( rule__Expression__Group__0 ) )
- {
- // InternalFlaDsl.g:109:1: ( ( rule__Expression__Group__0 ) )
- // InternalFlaDsl.g:110:1: ( rule__Expression__Group__0 )
- {
- before(grammarAccess.getExpressionAccess().getGroup());
- // InternalFlaDsl.g:111:1: ( rule__Expression__Group__0 )
- // InternalFlaDsl.g:111:2: rule__Expression__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__Expression__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getExpressionAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleExpression"
-
-
- // $ANTLR start "entryRuleLhs"
- // InternalFlaDsl.g:123:1: entryRuleLhs : ruleLhs EOF ;
- public final void entryRuleLhs() throws RecognitionException {
- try {
- // InternalFlaDsl.g:124:1: ( ruleLhs EOF )
- // InternalFlaDsl.g:125:1: ruleLhs EOF
- {
- before(grammarAccess.getLhsRule());
- pushFollow(FOLLOW_1);
- ruleLhs();
-
- state._fsp--;
-
- after(grammarAccess.getLhsRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleLhs"
-
-
- // $ANTLR start "ruleLhs"
- // InternalFlaDsl.g:132:1: ruleLhs : ( ( rule__Lhs__Group__0 ) ) ;
- public final void ruleLhs() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:136:2: ( ( ( rule__Lhs__Group__0 ) ) )
- // InternalFlaDsl.g:137:1: ( ( rule__Lhs__Group__0 ) )
- {
- // InternalFlaDsl.g:137:1: ( ( rule__Lhs__Group__0 ) )
- // InternalFlaDsl.g:138:1: ( rule__Lhs__Group__0 )
- {
- before(grammarAccess.getLhsAccess().getGroup());
- // InternalFlaDsl.g:139:1: ( rule__Lhs__Group__0 )
- // InternalFlaDsl.g:139:2: rule__Lhs__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__Lhs__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getLhsAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleLhs"
-
-
- // $ANTLR start "entryRuleRhs"
- // InternalFlaDsl.g:151:1: entryRuleRhs : ruleRhs EOF ;
- public final void entryRuleRhs() throws RecognitionException {
- try {
- // InternalFlaDsl.g:152:1: ( ruleRhs EOF )
- // InternalFlaDsl.g:153:1: ruleRhs EOF
- {
- before(grammarAccess.getRhsRule());
- pushFollow(FOLLOW_1);
- ruleRhs();
-
- state._fsp--;
-
- after(grammarAccess.getRhsRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleRhs"
-
-
- // $ANTLR start "ruleRhs"
- // InternalFlaDsl.g:160:1: ruleRhs : ( ( rule__Rhs__Group__0 ) ) ;
- public final void ruleRhs() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:164:2: ( ( ( rule__Rhs__Group__0 ) ) )
- // InternalFlaDsl.g:165:1: ( ( rule__Rhs__Group__0 ) )
- {
- // InternalFlaDsl.g:165:1: ( ( rule__Rhs__Group__0 ) )
- // InternalFlaDsl.g:166:1: ( rule__Rhs__Group__0 )
- {
- before(grammarAccess.getRhsAccess().getGroup());
- // InternalFlaDsl.g:167:1: ( rule__Rhs__Group__0 )
- // InternalFlaDsl.g:167:2: rule__Rhs__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__Rhs__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getRhsAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleRhs"
-
-
- // $ANTLR start "entryRuleInputExpression"
- // InternalFlaDsl.g:179:1: entryRuleInputExpression : ruleInputExpression EOF ;
- public final void entryRuleInputExpression() throws RecognitionException {
- try {
- // InternalFlaDsl.g:180:1: ( ruleInputExpression EOF )
- // InternalFlaDsl.g:181:1: ruleInputExpression EOF
- {
- before(grammarAccess.getInputExpressionRule());
- pushFollow(FOLLOW_1);
- ruleInputExpression();
-
- state._fsp--;
-
- after(grammarAccess.getInputExpressionRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleInputExpression"
-
-
- // $ANTLR start "ruleInputExpression"
- // InternalFlaDsl.g:188:1: ruleInputExpression : ( ( rule__InputExpression__Group__0 ) ) ;
- public final void ruleInputExpression() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:192:2: ( ( ( rule__InputExpression__Group__0 ) ) )
- // InternalFlaDsl.g:193:1: ( ( rule__InputExpression__Group__0 ) )
- {
- // InternalFlaDsl.g:193:1: ( ( rule__InputExpression__Group__0 ) )
- // InternalFlaDsl.g:194:1: ( rule__InputExpression__Group__0 )
- {
- before(grammarAccess.getInputExpressionAccess().getGroup());
- // InternalFlaDsl.g:195:1: ( rule__InputExpression__Group__0 )
- // InternalFlaDsl.g:195:2: rule__InputExpression__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__InputExpression__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInputExpressionAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleInputExpression"
-
-
- // $ANTLR start "entryRuleOutputExpression"
- // InternalFlaDsl.g:207:1: entryRuleOutputExpression : ruleOutputExpression EOF ;
- public final void entryRuleOutputExpression() throws RecognitionException {
- try {
- // InternalFlaDsl.g:208:1: ( ruleOutputExpression EOF )
- // InternalFlaDsl.g:209:1: ruleOutputExpression EOF
- {
- before(grammarAccess.getOutputExpressionRule());
- pushFollow(FOLLOW_1);
- ruleOutputExpression();
-
- state._fsp--;
-
- after(grammarAccess.getOutputExpressionRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleOutputExpression"
-
-
- // $ANTLR start "ruleOutputExpression"
- // InternalFlaDsl.g:216:1: ruleOutputExpression : ( ( rule__OutputExpression__Group__0 ) ) ;
- public final void ruleOutputExpression() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:220:2: ( ( ( rule__OutputExpression__Group__0 ) ) )
- // InternalFlaDsl.g:221:1: ( ( rule__OutputExpression__Group__0 ) )
- {
- // InternalFlaDsl.g:221:1: ( ( rule__OutputExpression__Group__0 ) )
- // InternalFlaDsl.g:222:1: ( rule__OutputExpression__Group__0 )
- {
- before(grammarAccess.getOutputExpressionAccess().getGroup());
- // InternalFlaDsl.g:223:1: ( rule__OutputExpression__Group__0 )
- // InternalFlaDsl.g:223:2: rule__OutputExpression__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__OutputExpression__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutputExpressionAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleOutputExpression"
-
-
- // $ANTLR start "entryRuleInFailureExpr"
- // InternalFlaDsl.g:235:1: entryRuleInFailureExpr : ruleInFailureExpr EOF ;
- public final void entryRuleInFailureExpr() throws RecognitionException {
- try {
- // InternalFlaDsl.g:236:1: ( ruleInFailureExpr EOF )
- // InternalFlaDsl.g:237:1: ruleInFailureExpr EOF
- {
- before(grammarAccess.getInFailureExprRule());
- pushFollow(FOLLOW_1);
- ruleInFailureExpr();
-
- state._fsp--;
-
- after(grammarAccess.getInFailureExprRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleInFailureExpr"
-
-
- // $ANTLR start "ruleInFailureExpr"
- // InternalFlaDsl.g:244:1: ruleInFailureExpr : ( ( rule__InFailureExpr__Alternatives ) ) ;
- public final void ruleInFailureExpr() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:248:2: ( ( ( rule__InFailureExpr__Alternatives ) ) )
- // InternalFlaDsl.g:249:1: ( ( rule__InFailureExpr__Alternatives ) )
- {
- // InternalFlaDsl.g:249:1: ( ( rule__InFailureExpr__Alternatives ) )
- // InternalFlaDsl.g:250:1: ( rule__InFailureExpr__Alternatives )
- {
- before(grammarAccess.getInFailureExprAccess().getAlternatives());
- // InternalFlaDsl.g:251:1: ( rule__InFailureExpr__Alternatives )
- // InternalFlaDsl.g:251:2: rule__InFailureExpr__Alternatives
- {
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__Alternatives();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInFailureExprAccess().getAlternatives());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleInFailureExpr"
-
-
- // $ANTLR start "entryRuleOutFailureExpr"
- // InternalFlaDsl.g:263:1: entryRuleOutFailureExpr : ruleOutFailureExpr EOF ;
- public final void entryRuleOutFailureExpr() throws RecognitionException {
- try {
- // InternalFlaDsl.g:264:1: ( ruleOutFailureExpr EOF )
- // InternalFlaDsl.g:265:1: ruleOutFailureExpr EOF
- {
- before(grammarAccess.getOutFailureExprRule());
- pushFollow(FOLLOW_1);
- ruleOutFailureExpr();
-
- state._fsp--;
-
- after(grammarAccess.getOutFailureExprRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleOutFailureExpr"
-
-
- // $ANTLR start "ruleOutFailureExpr"
- // InternalFlaDsl.g:272:1: ruleOutFailureExpr : ( ( rule__OutFailureExpr__Alternatives ) ) ;
- public final void ruleOutFailureExpr() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:276:2: ( ( ( rule__OutFailureExpr__Alternatives ) ) )
- // InternalFlaDsl.g:277:1: ( ( rule__OutFailureExpr__Alternatives ) )
- {
- // InternalFlaDsl.g:277:1: ( ( rule__OutFailureExpr__Alternatives ) )
- // InternalFlaDsl.g:278:1: ( rule__OutFailureExpr__Alternatives )
- {
- before(grammarAccess.getOutFailureExprAccess().getAlternatives());
- // InternalFlaDsl.g:279:1: ( rule__OutFailureExpr__Alternatives )
- // InternalFlaDsl.g:279:2: rule__OutFailureExpr__Alternatives
- {
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__Alternatives();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutFailureExprAccess().getAlternatives());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleOutFailureExpr"
-
-
- // $ANTLR start "entryRuleFailureDefinition"
- // InternalFlaDsl.g:293:1: entryRuleFailureDefinition : ruleFailureDefinition EOF ;
- public final void entryRuleFailureDefinition() throws RecognitionException {
- try {
- // InternalFlaDsl.g:294:1: ( ruleFailureDefinition EOF )
- // InternalFlaDsl.g:295:1: ruleFailureDefinition EOF
- {
- before(grammarAccess.getFailureDefinitionRule());
- pushFollow(FOLLOW_1);
- ruleFailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getFailureDefinitionRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleFailureDefinition"
-
-
- // $ANTLR start "ruleFailureDefinition"
- // InternalFlaDsl.g:302:1: ruleFailureDefinition : ( ( rule__FailureDefinition__Group__0 ) ) ;
- public final void ruleFailureDefinition() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:306:2: ( ( ( rule__FailureDefinition__Group__0 ) ) )
- // InternalFlaDsl.g:307:1: ( ( rule__FailureDefinition__Group__0 ) )
- {
- // InternalFlaDsl.g:307:1: ( ( rule__FailureDefinition__Group__0 ) )
- // InternalFlaDsl.g:308:1: ( rule__FailureDefinition__Group__0 )
- {
- before(grammarAccess.getFailureDefinitionAccess().getGroup());
- // InternalFlaDsl.g:309:1: ( rule__FailureDefinition__Group__0 )
- // InternalFlaDsl.g:309:2: rule__FailureDefinition__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__FailureDefinition__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getFailureDefinitionAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleFailureDefinition"
-
-
- // $ANTLR start "entryRuleNoFailureDefinition"
- // InternalFlaDsl.g:321:1: entryRuleNoFailureDefinition : ruleNoFailureDefinition EOF ;
- public final void entryRuleNoFailureDefinition() throws RecognitionException {
- try {
- // InternalFlaDsl.g:322:1: ( ruleNoFailureDefinition EOF )
- // InternalFlaDsl.g:323:1: ruleNoFailureDefinition EOF
- {
- before(grammarAccess.getNoFailureDefinitionRule());
- pushFollow(FOLLOW_1);
- ruleNoFailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getNoFailureDefinitionRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleNoFailureDefinition"
-
-
- // $ANTLR start "ruleNoFailureDefinition"
- // InternalFlaDsl.g:330:1: ruleNoFailureDefinition : ( ( rule__NoFailureDefinition__Group__0 ) ) ;
- public final void ruleNoFailureDefinition() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:334:2: ( ( ( rule__NoFailureDefinition__Group__0 ) ) )
- // InternalFlaDsl.g:335:1: ( ( rule__NoFailureDefinition__Group__0 ) )
- {
- // InternalFlaDsl.g:335:1: ( ( rule__NoFailureDefinition__Group__0 ) )
- // InternalFlaDsl.g:336:1: ( rule__NoFailureDefinition__Group__0 )
- {
- before(grammarAccess.getNoFailureDefinitionAccess().getGroup());
- // InternalFlaDsl.g:337:1: ( rule__NoFailureDefinition__Group__0 )
- // InternalFlaDsl.g:337:2: rule__NoFailureDefinition__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__NoFailureDefinition__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getNoFailureDefinitionAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleNoFailureDefinition"
-
-
- // $ANTLR start "entryRuleComplexNofailureDefinition"
- // InternalFlaDsl.g:349:1: entryRuleComplexNofailureDefinition : ruleComplexNofailureDefinition EOF ;
- public final void entryRuleComplexNofailureDefinition() throws RecognitionException {
- try {
- // InternalFlaDsl.g:350:1: ( ruleComplexNofailureDefinition EOF )
- // InternalFlaDsl.g:351:1: ruleComplexNofailureDefinition EOF
- {
- before(grammarAccess.getComplexNofailureDefinitionRule());
- pushFollow(FOLLOW_1);
- ruleComplexNofailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getComplexNofailureDefinitionRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleComplexNofailureDefinition"
-
-
- // $ANTLR start "ruleComplexNofailureDefinition"
- // InternalFlaDsl.g:358:1: ruleComplexNofailureDefinition : ( ( rule__ComplexNofailureDefinition__Group__0 ) ) ;
- public final void ruleComplexNofailureDefinition() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:362:2: ( ( ( rule__ComplexNofailureDefinition__Group__0 ) ) )
- // InternalFlaDsl.g:363:1: ( ( rule__ComplexNofailureDefinition__Group__0 ) )
- {
- // InternalFlaDsl.g:363:1: ( ( rule__ComplexNofailureDefinition__Group__0 ) )
- // InternalFlaDsl.g:364:1: ( rule__ComplexNofailureDefinition__Group__0 )
- {
- before(grammarAccess.getComplexNofailureDefinitionAccess().getGroup());
- // InternalFlaDsl.g:365:1: ( rule__ComplexNofailureDefinition__Group__0 )
- // InternalFlaDsl.g:365:2: rule__ComplexNofailureDefinition__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__ComplexNofailureDefinition__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getComplexNofailureDefinitionAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleComplexNofailureDefinition"
-
-
- // $ANTLR start "entryRuleWildcardDefinition"
- // InternalFlaDsl.g:377:1: entryRuleWildcardDefinition : ruleWildcardDefinition EOF ;
- public final void entryRuleWildcardDefinition() throws RecognitionException {
- try {
- // InternalFlaDsl.g:378:1: ( ruleWildcardDefinition EOF )
- // InternalFlaDsl.g:379:1: ruleWildcardDefinition EOF
- {
- before(grammarAccess.getWildcardDefinitionRule());
- pushFollow(FOLLOW_1);
- ruleWildcardDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getWildcardDefinitionRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleWildcardDefinition"
-
-
- // $ANTLR start "ruleWildcardDefinition"
- // InternalFlaDsl.g:386:1: ruleWildcardDefinition : ( ( rule__WildcardDefinition__Group__0 ) ) ;
- public final void ruleWildcardDefinition() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:390:2: ( ( ( rule__WildcardDefinition__Group__0 ) ) )
- // InternalFlaDsl.g:391:1: ( ( rule__WildcardDefinition__Group__0 ) )
- {
- // InternalFlaDsl.g:391:1: ( ( rule__WildcardDefinition__Group__0 ) )
- // InternalFlaDsl.g:392:1: ( rule__WildcardDefinition__Group__0 )
- {
- before(grammarAccess.getWildcardDefinitionAccess().getGroup());
- // InternalFlaDsl.g:393:1: ( rule__WildcardDefinition__Group__0 )
- // InternalFlaDsl.g:393:2: rule__WildcardDefinition__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__WildcardDefinition__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getWildcardDefinitionAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleWildcardDefinition"
-
-
- // $ANTLR start "entryRuleVariableDefinition"
- // InternalFlaDsl.g:405:1: entryRuleVariableDefinition : ruleVariableDefinition EOF ;
- public final void entryRuleVariableDefinition() throws RecognitionException {
- try {
- // InternalFlaDsl.g:406:1: ( ruleVariableDefinition EOF )
- // InternalFlaDsl.g:407:1: ruleVariableDefinition EOF
- {
- before(grammarAccess.getVariableDefinitionRule());
- pushFollow(FOLLOW_1);
- ruleVariableDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getVariableDefinitionRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleVariableDefinition"
-
-
- // $ANTLR start "ruleVariableDefinition"
- // InternalFlaDsl.g:414:1: ruleVariableDefinition : ( ( rule__VariableDefinition__Group__0 ) ) ;
- public final void ruleVariableDefinition() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:418:2: ( ( ( rule__VariableDefinition__Group__0 ) ) )
- // InternalFlaDsl.g:419:1: ( ( rule__VariableDefinition__Group__0 ) )
- {
- // InternalFlaDsl.g:419:1: ( ( rule__VariableDefinition__Group__0 ) )
- // InternalFlaDsl.g:420:1: ( rule__VariableDefinition__Group__0 )
- {
- before(grammarAccess.getVariableDefinitionAccess().getGroup());
- // InternalFlaDsl.g:421:1: ( rule__VariableDefinition__Group__0 )
- // InternalFlaDsl.g:421:2: rule__VariableDefinition__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__VariableDefinition__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getVariableDefinitionAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleVariableDefinition"
-
-
- // $ANTLR start "entryRuleACIDavoidable"
- // InternalFlaDsl.g:433:1: entryRuleACIDavoidable : ruleACIDavoidable EOF ;
- public final void entryRuleACIDavoidable() throws RecognitionException {
- try {
- // InternalFlaDsl.g:434:1: ( ruleACIDavoidable EOF )
- // InternalFlaDsl.g:435:1: ruleACIDavoidable EOF
- {
- before(grammarAccess.getACIDavoidableRule());
- pushFollow(FOLLOW_1);
- ruleACIDavoidable();
-
- state._fsp--;
-
- after(grammarAccess.getACIDavoidableRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleACIDavoidable"
-
-
- // $ANTLR start "ruleACIDavoidable"
- // InternalFlaDsl.g:442:1: ruleACIDavoidable : ( ( rule__ACIDavoidable__Group__0 ) ) ;
- public final void ruleACIDavoidable() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:446:2: ( ( ( rule__ACIDavoidable__Group__0 ) ) )
- // InternalFlaDsl.g:447:1: ( ( rule__ACIDavoidable__Group__0 ) )
- {
- // InternalFlaDsl.g:447:1: ( ( rule__ACIDavoidable__Group__0 ) )
- // InternalFlaDsl.g:448:1: ( rule__ACIDavoidable__Group__0 )
- {
- before(grammarAccess.getACIDavoidableAccess().getGroup());
- // InternalFlaDsl.g:449:1: ( rule__ACIDavoidable__Group__0 )
- // InternalFlaDsl.g:449:2: rule__ACIDavoidable__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getACIDavoidableAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleACIDavoidable"
-
-
- // $ANTLR start "entryRuleACIDMitigation"
- // InternalFlaDsl.g:461:1: entryRuleACIDMitigation : ruleACIDMitigation EOF ;
- public final void entryRuleACIDMitigation() throws RecognitionException {
- try {
- // InternalFlaDsl.g:462:1: ( ruleACIDMitigation EOF )
- // InternalFlaDsl.g:463:1: ruleACIDMitigation EOF
- {
- before(grammarAccess.getACIDMitigationRule());
- pushFollow(FOLLOW_1);
- ruleACIDMitigation();
-
- state._fsp--;
-
- after(grammarAccess.getACIDMitigationRule());
- match(input,EOF,FOLLOW_2);
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
- }
- return ;
- }
- // $ANTLR end "entryRuleACIDMitigation"
-
-
- // $ANTLR start "ruleACIDMitigation"
- // InternalFlaDsl.g:470:1: ruleACIDMitigation : ( ( rule__ACIDMitigation__Group__0 ) ) ;
- public final void ruleACIDMitigation() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:474:2: ( ( ( rule__ACIDMitigation__Group__0 ) ) )
- // InternalFlaDsl.g:475:1: ( ( rule__ACIDMitigation__Group__0 ) )
- {
- // InternalFlaDsl.g:475:1: ( ( rule__ACIDMitigation__Group__0 ) )
- // InternalFlaDsl.g:476:1: ( rule__ACIDMitigation__Group__0 )
- {
- before(grammarAccess.getACIDMitigationAccess().getGroup());
- // InternalFlaDsl.g:477:1: ( rule__ACIDMitigation__Group__0 )
- // InternalFlaDsl.g:477:2: rule__ACIDMitigation__Group__0
- {
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__Group__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getACIDMitigationAccess().getGroup());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleACIDMitigation"
-
-
- // $ANTLR start "ruleActualFailureType"
- // InternalFlaDsl.g:494:1: ruleActualFailureType : ( ( rule__ActualFailureType__Alternatives ) ) ;
- public final void ruleActualFailureType() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:498:1: ( ( ( rule__ActualFailureType__Alternatives ) ) )
- // InternalFlaDsl.g:499:1: ( ( rule__ActualFailureType__Alternatives ) )
- {
- // InternalFlaDsl.g:499:1: ( ( rule__ActualFailureType__Alternatives ) )
- // InternalFlaDsl.g:500:1: ( rule__ActualFailureType__Alternatives )
- {
- before(grammarAccess.getActualFailureTypeAccess().getAlternatives());
- // InternalFlaDsl.g:501:1: ( rule__ActualFailureType__Alternatives )
- // InternalFlaDsl.g:501:2: rule__ActualFailureType__Alternatives
- {
- pushFollow(FOLLOW_2);
- rule__ActualFailureType__Alternatives();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getActualFailureTypeAccess().getAlternatives());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleActualFailureType"
-
-
- // $ANTLR start "ruleAavoidable"
- // InternalFlaDsl.g:517:1: ruleAavoidable : ( ( rule__Aavoidable__Alternatives ) ) ;
- public final void ruleAavoidable() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:521:1: ( ( ( rule__Aavoidable__Alternatives ) ) )
- // InternalFlaDsl.g:522:1: ( ( rule__Aavoidable__Alternatives ) )
- {
- // InternalFlaDsl.g:522:1: ( ( rule__Aavoidable__Alternatives ) )
- // InternalFlaDsl.g:523:1: ( rule__Aavoidable__Alternatives )
- {
- before(grammarAccess.getAavoidableAccess().getAlternatives());
- // InternalFlaDsl.g:524:1: ( rule__Aavoidable__Alternatives )
- // InternalFlaDsl.g:524:2: rule__Aavoidable__Alternatives
- {
- pushFollow(FOLLOW_2);
- rule__Aavoidable__Alternatives();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getAavoidableAccess().getAlternatives());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleAavoidable"
-
-
- // $ANTLR start "ruleCavoidable"
- // InternalFlaDsl.g:536:1: ruleCavoidable : ( ( rule__Cavoidable__Alternatives ) ) ;
- public final void ruleCavoidable() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:540:1: ( ( ( rule__Cavoidable__Alternatives ) ) )
- // InternalFlaDsl.g:541:1: ( ( rule__Cavoidable__Alternatives ) )
- {
- // InternalFlaDsl.g:541:1: ( ( rule__Cavoidable__Alternatives ) )
- // InternalFlaDsl.g:542:1: ( rule__Cavoidable__Alternatives )
- {
- before(grammarAccess.getCavoidableAccess().getAlternatives());
- // InternalFlaDsl.g:543:1: ( rule__Cavoidable__Alternatives )
- // InternalFlaDsl.g:543:2: rule__Cavoidable__Alternatives
- {
- pushFollow(FOLLOW_2);
- rule__Cavoidable__Alternatives();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getCavoidableAccess().getAlternatives());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleCavoidable"
-
-
- // $ANTLR start "ruleIavoidable"
- // InternalFlaDsl.g:555:1: ruleIavoidable : ( ( rule__Iavoidable__Alternatives ) ) ;
- public final void ruleIavoidable() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:559:1: ( ( ( rule__Iavoidable__Alternatives ) ) )
- // InternalFlaDsl.g:560:1: ( ( rule__Iavoidable__Alternatives ) )
- {
- // InternalFlaDsl.g:560:1: ( ( rule__Iavoidable__Alternatives ) )
- // InternalFlaDsl.g:561:1: ( rule__Iavoidable__Alternatives )
- {
- before(grammarAccess.getIavoidableAccess().getAlternatives());
- // InternalFlaDsl.g:562:1: ( rule__Iavoidable__Alternatives )
- // InternalFlaDsl.g:562:2: rule__Iavoidable__Alternatives
- {
- pushFollow(FOLLOW_2);
- rule__Iavoidable__Alternatives();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getIavoidableAccess().getAlternatives());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleIavoidable"
-
-
- // $ANTLR start "ruleDavoidable"
- // InternalFlaDsl.g:574:1: ruleDavoidable : ( ( rule__Davoidable__Alternatives ) ) ;
- public final void ruleDavoidable() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:578:1: ( ( ( rule__Davoidable__Alternatives ) ) )
- // InternalFlaDsl.g:579:1: ( ( rule__Davoidable__Alternatives ) )
- {
- // InternalFlaDsl.g:579:1: ( ( rule__Davoidable__Alternatives ) )
- // InternalFlaDsl.g:580:1: ( rule__Davoidable__Alternatives )
- {
- before(grammarAccess.getDavoidableAccess().getAlternatives());
- // InternalFlaDsl.g:581:1: ( rule__Davoidable__Alternatives )
- // InternalFlaDsl.g:581:2: rule__Davoidable__Alternatives
- {
- pushFollow(FOLLOW_2);
- rule__Davoidable__Alternatives();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getDavoidableAccess().getAlternatives());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleDavoidable"
-
-
- // $ANTLR start "ruleAmitigation"
- // InternalFlaDsl.g:593:1: ruleAmitigation : ( ( rule__Amitigation__Alternatives ) ) ;
- public final void ruleAmitigation() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:597:1: ( ( ( rule__Amitigation__Alternatives ) ) )
- // InternalFlaDsl.g:598:1: ( ( rule__Amitigation__Alternatives ) )
- {
- // InternalFlaDsl.g:598:1: ( ( rule__Amitigation__Alternatives ) )
- // InternalFlaDsl.g:599:1: ( rule__Amitigation__Alternatives )
- {
- before(grammarAccess.getAmitigationAccess().getAlternatives());
- // InternalFlaDsl.g:600:1: ( rule__Amitigation__Alternatives )
- // InternalFlaDsl.g:600:2: rule__Amitigation__Alternatives
- {
- pushFollow(FOLLOW_2);
- rule__Amitigation__Alternatives();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getAmitigationAccess().getAlternatives());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleAmitigation"
-
-
- // $ANTLR start "ruleCmitigation"
- // InternalFlaDsl.g:612:1: ruleCmitigation : ( ( rule__Cmitigation__Alternatives ) ) ;
- public final void ruleCmitigation() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:616:1: ( ( ( rule__Cmitigation__Alternatives ) ) )
- // InternalFlaDsl.g:617:1: ( ( rule__Cmitigation__Alternatives ) )
- {
- // InternalFlaDsl.g:617:1: ( ( rule__Cmitigation__Alternatives ) )
- // InternalFlaDsl.g:618:1: ( rule__Cmitigation__Alternatives )
- {
- before(grammarAccess.getCmitigationAccess().getAlternatives());
- // InternalFlaDsl.g:619:1: ( rule__Cmitigation__Alternatives )
- // InternalFlaDsl.g:619:2: rule__Cmitigation__Alternatives
- {
- pushFollow(FOLLOW_2);
- rule__Cmitigation__Alternatives();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getCmitigationAccess().getAlternatives());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleCmitigation"
-
-
- // $ANTLR start "ruleImitigation"
- // InternalFlaDsl.g:631:1: ruleImitigation : ( ( rule__Imitigation__Alternatives ) ) ;
- public final void ruleImitigation() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:635:1: ( ( ( rule__Imitigation__Alternatives ) ) )
- // InternalFlaDsl.g:636:1: ( ( rule__Imitigation__Alternatives ) )
- {
- // InternalFlaDsl.g:636:1: ( ( rule__Imitigation__Alternatives ) )
- // InternalFlaDsl.g:637:1: ( rule__Imitigation__Alternatives )
- {
- before(grammarAccess.getImitigationAccess().getAlternatives());
- // InternalFlaDsl.g:638:1: ( rule__Imitigation__Alternatives )
- // InternalFlaDsl.g:638:2: rule__Imitigation__Alternatives
- {
- pushFollow(FOLLOW_2);
- rule__Imitigation__Alternatives();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getImitigationAccess().getAlternatives());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleImitigation"
-
-
- // $ANTLR start "ruleDmitigation"
- // InternalFlaDsl.g:650:1: ruleDmitigation : ( ( rule__Dmitigation__Alternatives ) ) ;
- public final void ruleDmitigation() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:654:1: ( ( ( rule__Dmitigation__Alternatives ) ) )
- // InternalFlaDsl.g:655:1: ( ( rule__Dmitigation__Alternatives ) )
- {
- // InternalFlaDsl.g:655:1: ( ( rule__Dmitigation__Alternatives ) )
- // InternalFlaDsl.g:656:1: ( rule__Dmitigation__Alternatives )
- {
- before(grammarAccess.getDmitigationAccess().getAlternatives());
- // InternalFlaDsl.g:657:1: ( rule__Dmitigation__Alternatives )
- // InternalFlaDsl.g:657:2: rule__Dmitigation__Alternatives
- {
- pushFollow(FOLLOW_2);
- rule__Dmitigation__Alternatives();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getDmitigationAccess().getAlternatives());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "ruleDmitigation"
-
-
- // $ANTLR start "rule__InputExpression__Alternatives_0"
- // InternalFlaDsl.g:668:1: rule__InputExpression__Alternatives_0 : ( ( ( rule__InputExpression__RefAssignment_0_0 ) ) | ( 'undefined' ) );
- public final void rule__InputExpression__Alternatives_0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:672:1: ( ( ( rule__InputExpression__RefAssignment_0_0 ) ) | ( 'undefined' ) )
- int alt2=2;
- int LA2_0 = input.LA(1);
-
- if ( (LA2_0==RULE_ID) ) {
- alt2=1;
- }
- else if ( (LA2_0==11) ) {
- alt2=2;
- }
- else {
- NoViableAltException nvae =
- new NoViableAltException("", 2, 0, input);
-
- throw nvae;
- }
- switch (alt2) {
- case 1 :
- // InternalFlaDsl.g:673:1: ( ( rule__InputExpression__RefAssignment_0_0 ) )
- {
- // InternalFlaDsl.g:673:1: ( ( rule__InputExpression__RefAssignment_0_0 ) )
- // InternalFlaDsl.g:674:1: ( rule__InputExpression__RefAssignment_0_0 )
- {
- before(grammarAccess.getInputExpressionAccess().getRefAssignment_0_0());
- // InternalFlaDsl.g:675:1: ( rule__InputExpression__RefAssignment_0_0 )
- // InternalFlaDsl.g:675:2: rule__InputExpression__RefAssignment_0_0
- {
- pushFollow(FOLLOW_2);
- rule__InputExpression__RefAssignment_0_0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInputExpressionAccess().getRefAssignment_0_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:679:6: ( 'undefined' )
- {
- // InternalFlaDsl.g:679:6: ( 'undefined' )
- // InternalFlaDsl.g:680:1: 'undefined'
- {
- before(grammarAccess.getInputExpressionAccess().getUndefinedKeyword_0_1());
- match(input,11,FOLLOW_2);
- after(grammarAccess.getInputExpressionAccess().getUndefinedKeyword_0_1());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InputExpression__Alternatives_0"
-
-
- // $ANTLR start "rule__OutputExpression__Alternatives_0"
- // InternalFlaDsl.g:692:1: rule__OutputExpression__Alternatives_0 : ( ( ( rule__OutputExpression__RefAssignment_0_0 ) ) | ( 'undefined' ) );
- public final void rule__OutputExpression__Alternatives_0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:696:1: ( ( ( rule__OutputExpression__RefAssignment_0_0 ) ) | ( 'undefined' ) )
- int alt3=2;
- int LA3_0 = input.LA(1);
-
- if ( (LA3_0==RULE_ID) ) {
- alt3=1;
- }
- else if ( (LA3_0==11) ) {
- alt3=2;
- }
- else {
- NoViableAltException nvae =
- new NoViableAltException("", 3, 0, input);
-
- throw nvae;
- }
- switch (alt3) {
- case 1 :
- // InternalFlaDsl.g:697:1: ( ( rule__OutputExpression__RefAssignment_0_0 ) )
- {
- // InternalFlaDsl.g:697:1: ( ( rule__OutputExpression__RefAssignment_0_0 ) )
- // InternalFlaDsl.g:698:1: ( rule__OutputExpression__RefAssignment_0_0 )
- {
- before(grammarAccess.getOutputExpressionAccess().getRefAssignment_0_0());
- // InternalFlaDsl.g:699:1: ( rule__OutputExpression__RefAssignment_0_0 )
- // InternalFlaDsl.g:699:2: rule__OutputExpression__RefAssignment_0_0
- {
- pushFollow(FOLLOW_2);
- rule__OutputExpression__RefAssignment_0_0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutputExpressionAccess().getRefAssignment_0_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:703:6: ( 'undefined' )
- {
- // InternalFlaDsl.g:703:6: ( 'undefined' )
- // InternalFlaDsl.g:704:1: 'undefined'
- {
- before(grammarAccess.getOutputExpressionAccess().getUndefinedKeyword_0_1());
- match(input,11,FOLLOW_2);
- after(grammarAccess.getOutputExpressionAccess().getUndefinedKeyword_0_1());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutputExpression__Alternatives_0"
-
-
- // $ANTLR start "rule__InFailureExpr__Alternatives"
- // InternalFlaDsl.g:716:1: rule__InFailureExpr__Alternatives : ( ( ( rule__InFailureExpr__FailuresAssignment_0 ) ) | ( ( rule__InFailureExpr__FailuresAssignment_1 ) ) | ( ( rule__InFailureExpr__FailuresAssignment_2 ) ) | ( ( rule__InFailureExpr__Group_3__0 ) ) | ( ( rule__InFailureExpr__FailuresAssignment_4 ) ) );
- public final void rule__InFailureExpr__Alternatives() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:720:1: ( ( ( rule__InFailureExpr__FailuresAssignment_0 ) ) | ( ( rule__InFailureExpr__FailuresAssignment_1 ) ) | ( ( rule__InFailureExpr__FailuresAssignment_2 ) ) | ( ( rule__InFailureExpr__Group_3__0 ) ) | ( ( rule__InFailureExpr__FailuresAssignment_4 ) ) )
- int alt4=5;
- switch ( input.LA(1) ) {
- case 40:
- {
- alt4=1;
- }
- break;
- case 39:
- {
- alt4=2;
- }
- break;
- case 12:
- case 13:
- case 14:
- case 15:
- case 16:
- case 17:
- {
- alt4=3;
- }
- break;
- case 37:
- {
- alt4=4;
- }
- break;
- case RULE_ID:
- {
- alt4=5;
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 4, 0, input);
-
- throw nvae;
- }
-
- switch (alt4) {
- case 1 :
- // InternalFlaDsl.g:721:1: ( ( rule__InFailureExpr__FailuresAssignment_0 ) )
- {
- // InternalFlaDsl.g:721:1: ( ( rule__InFailureExpr__FailuresAssignment_0 ) )
- // InternalFlaDsl.g:722:1: ( rule__InFailureExpr__FailuresAssignment_0 )
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresAssignment_0());
- // InternalFlaDsl.g:723:1: ( rule__InFailureExpr__FailuresAssignment_0 )
- // InternalFlaDsl.g:723:2: rule__InFailureExpr__FailuresAssignment_0
- {
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__FailuresAssignment_0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInFailureExprAccess().getFailuresAssignment_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:727:6: ( ( rule__InFailureExpr__FailuresAssignment_1 ) )
- {
- // InternalFlaDsl.g:727:6: ( ( rule__InFailureExpr__FailuresAssignment_1 ) )
- // InternalFlaDsl.g:728:1: ( rule__InFailureExpr__FailuresAssignment_1 )
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresAssignment_1());
- // InternalFlaDsl.g:729:1: ( rule__InFailureExpr__FailuresAssignment_1 )
- // InternalFlaDsl.g:729:2: rule__InFailureExpr__FailuresAssignment_1
- {
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__FailuresAssignment_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInFailureExprAccess().getFailuresAssignment_1());
-
- }
-
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:733:6: ( ( rule__InFailureExpr__FailuresAssignment_2 ) )
- {
- // InternalFlaDsl.g:733:6: ( ( rule__InFailureExpr__FailuresAssignment_2 ) )
- // InternalFlaDsl.g:734:1: ( rule__InFailureExpr__FailuresAssignment_2 )
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresAssignment_2());
- // InternalFlaDsl.g:735:1: ( rule__InFailureExpr__FailuresAssignment_2 )
- // InternalFlaDsl.g:735:2: rule__InFailureExpr__FailuresAssignment_2
- {
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__FailuresAssignment_2();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInFailureExprAccess().getFailuresAssignment_2());
-
- }
-
-
- }
- break;
- case 4 :
- // InternalFlaDsl.g:739:6: ( ( rule__InFailureExpr__Group_3__0 ) )
- {
- // InternalFlaDsl.g:739:6: ( ( rule__InFailureExpr__Group_3__0 ) )
- // InternalFlaDsl.g:740:1: ( rule__InFailureExpr__Group_3__0 )
- {
- before(grammarAccess.getInFailureExprAccess().getGroup_3());
- // InternalFlaDsl.g:741:1: ( rule__InFailureExpr__Group_3__0 )
- // InternalFlaDsl.g:741:2: rule__InFailureExpr__Group_3__0
- {
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__Group_3__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInFailureExprAccess().getGroup_3());
-
- }
-
-
- }
- break;
- case 5 :
- // InternalFlaDsl.g:745:6: ( ( rule__InFailureExpr__FailuresAssignment_4 ) )
- {
- // InternalFlaDsl.g:745:6: ( ( rule__InFailureExpr__FailuresAssignment_4 ) )
- // InternalFlaDsl.g:746:1: ( rule__InFailureExpr__FailuresAssignment_4 )
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresAssignment_4());
- // InternalFlaDsl.g:747:1: ( rule__InFailureExpr__FailuresAssignment_4 )
- // InternalFlaDsl.g:747:2: rule__InFailureExpr__FailuresAssignment_4
- {
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__FailuresAssignment_4();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInFailureExprAccess().getFailuresAssignment_4());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Alternatives"
-
-
- // $ANTLR start "rule__OutFailureExpr__Alternatives"
- // InternalFlaDsl.g:756:1: rule__OutFailureExpr__Alternatives : ( ( ( rule__OutFailureExpr__FailuresAssignment_0 ) ) | ( ( rule__OutFailureExpr__FailuresAssignment_1 ) ) | ( ( rule__OutFailureExpr__FailuresAssignment_2 ) ) | ( ( rule__OutFailureExpr__Group_3__0 ) ) | ( ( rule__OutFailureExpr__FailuresAssignment_4 ) ) );
- public final void rule__OutFailureExpr__Alternatives() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:760:1: ( ( ( rule__OutFailureExpr__FailuresAssignment_0 ) ) | ( ( rule__OutFailureExpr__FailuresAssignment_1 ) ) | ( ( rule__OutFailureExpr__FailuresAssignment_2 ) ) | ( ( rule__OutFailureExpr__Group_3__0 ) ) | ( ( rule__OutFailureExpr__FailuresAssignment_4 ) ) )
- int alt5=5;
- switch ( input.LA(1) ) {
- case 39:
- {
- int LA5_1 = input.LA(2);
-
- if ( (LA5_1==EOF||(LA5_1>=34 && LA5_1<=35)) ) {
- alt5=1;
- }
- else if ( (LA5_1==36) ) {
- alt5=2;
- }
- else {
- NoViableAltException nvae =
- new NoViableAltException("", 5, 1, input);
-
- throw nvae;
- }
- }
- break;
- case 12:
- case 13:
- case 14:
- case 15:
- case 16:
- case 17:
- {
- alt5=3;
- }
- break;
- case 37:
- {
- alt5=4;
- }
- break;
- case RULE_ID:
- {
- alt5=5;
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 5, 0, input);
-
- throw nvae;
- }
-
- switch (alt5) {
- case 1 :
- // InternalFlaDsl.g:761:1: ( ( rule__OutFailureExpr__FailuresAssignment_0 ) )
- {
- // InternalFlaDsl.g:761:1: ( ( rule__OutFailureExpr__FailuresAssignment_0 ) )
- // InternalFlaDsl.g:762:1: ( rule__OutFailureExpr__FailuresAssignment_0 )
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_0());
- // InternalFlaDsl.g:763:1: ( rule__OutFailureExpr__FailuresAssignment_0 )
- // InternalFlaDsl.g:763:2: rule__OutFailureExpr__FailuresAssignment_0
- {
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__FailuresAssignment_0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:767:6: ( ( rule__OutFailureExpr__FailuresAssignment_1 ) )
- {
- // InternalFlaDsl.g:767:6: ( ( rule__OutFailureExpr__FailuresAssignment_1 ) )
- // InternalFlaDsl.g:768:1: ( rule__OutFailureExpr__FailuresAssignment_1 )
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_1());
- // InternalFlaDsl.g:769:1: ( rule__OutFailureExpr__FailuresAssignment_1 )
- // InternalFlaDsl.g:769:2: rule__OutFailureExpr__FailuresAssignment_1
- {
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__FailuresAssignment_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_1());
-
- }
-
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:773:6: ( ( rule__OutFailureExpr__FailuresAssignment_2 ) )
- {
- // InternalFlaDsl.g:773:6: ( ( rule__OutFailureExpr__FailuresAssignment_2 ) )
- // InternalFlaDsl.g:774:1: ( rule__OutFailureExpr__FailuresAssignment_2 )
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_2());
- // InternalFlaDsl.g:775:1: ( rule__OutFailureExpr__FailuresAssignment_2 )
- // InternalFlaDsl.g:775:2: rule__OutFailureExpr__FailuresAssignment_2
- {
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__FailuresAssignment_2();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_2());
-
- }
-
-
- }
- break;
- case 4 :
- // InternalFlaDsl.g:779:6: ( ( rule__OutFailureExpr__Group_3__0 ) )
- {
- // InternalFlaDsl.g:779:6: ( ( rule__OutFailureExpr__Group_3__0 ) )
- // InternalFlaDsl.g:780:1: ( rule__OutFailureExpr__Group_3__0 )
- {
- before(grammarAccess.getOutFailureExprAccess().getGroup_3());
- // InternalFlaDsl.g:781:1: ( rule__OutFailureExpr__Group_3__0 )
- // InternalFlaDsl.g:781:2: rule__OutFailureExpr__Group_3__0
- {
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__Group_3__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutFailureExprAccess().getGroup_3());
-
- }
-
-
- }
- break;
- case 5 :
- // InternalFlaDsl.g:785:6: ( ( rule__OutFailureExpr__FailuresAssignment_4 ) )
- {
- // InternalFlaDsl.g:785:6: ( ( rule__OutFailureExpr__FailuresAssignment_4 ) )
- // InternalFlaDsl.g:786:1: ( rule__OutFailureExpr__FailuresAssignment_4 )
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_4());
- // InternalFlaDsl.g:787:1: ( rule__OutFailureExpr__FailuresAssignment_4 )
- // InternalFlaDsl.g:787:2: rule__OutFailureExpr__FailuresAssignment_4
- {
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__FailuresAssignment_4();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_4());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Alternatives"
-
-
- // $ANTLR start "rule__ActualFailureType__Alternatives"
- // InternalFlaDsl.g:798:1: rule__ActualFailureType__Alternatives : ( ( ( 'early' ) ) | ( ( 'late' ) ) | ( ( 'commission' ) ) | ( ( 'omission' ) ) | ( ( 'valueSubtle' ) ) | ( ( 'valueCoarse' ) ) );
- public final void rule__ActualFailureType__Alternatives() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:802:1: ( ( ( 'early' ) ) | ( ( 'late' ) ) | ( ( 'commission' ) ) | ( ( 'omission' ) ) | ( ( 'valueSubtle' ) ) | ( ( 'valueCoarse' ) ) )
- int alt6=6;
- switch ( input.LA(1) ) {
- case 12:
- {
- alt6=1;
- }
- break;
- case 13:
- {
- alt6=2;
- }
- break;
- case 14:
- {
- alt6=3;
- }
- break;
- case 15:
- {
- alt6=4;
- }
- break;
- case 16:
- {
- alt6=5;
- }
- break;
- case 17:
- {
- alt6=6;
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 6, 0, input);
-
- throw nvae;
- }
-
- switch (alt6) {
- case 1 :
- // InternalFlaDsl.g:803:1: ( ( 'early' ) )
- {
- // InternalFlaDsl.g:803:1: ( ( 'early' ) )
- // InternalFlaDsl.g:804:1: ( 'early' )
- {
- before(grammarAccess.getActualFailureTypeAccess().getEARLYEnumLiteralDeclaration_0());
- // InternalFlaDsl.g:805:1: ( 'early' )
- // InternalFlaDsl.g:805:3: 'early'
- {
- match(input,12,FOLLOW_2);
-
- }
-
- after(grammarAccess.getActualFailureTypeAccess().getEARLYEnumLiteralDeclaration_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:810:6: ( ( 'late' ) )
- {
- // InternalFlaDsl.g:810:6: ( ( 'late' ) )
- // InternalFlaDsl.g:811:1: ( 'late' )
- {
- before(grammarAccess.getActualFailureTypeAccess().getLATEEnumLiteralDeclaration_1());
- // InternalFlaDsl.g:812:1: ( 'late' )
- // InternalFlaDsl.g:812:3: 'late'
- {
- match(input,13,FOLLOW_2);
-
- }
-
- after(grammarAccess.getActualFailureTypeAccess().getLATEEnumLiteralDeclaration_1());
-
- }
-
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:817:6: ( ( 'commission' ) )
- {
- // InternalFlaDsl.g:817:6: ( ( 'commission' ) )
- // InternalFlaDsl.g:818:1: ( 'commission' )
- {
- before(grammarAccess.getActualFailureTypeAccess().getCOMMISSIONEnumLiteralDeclaration_2());
- // InternalFlaDsl.g:819:1: ( 'commission' )
- // InternalFlaDsl.g:819:3: 'commission'
- {
- match(input,14,FOLLOW_2);
-
- }
-
- after(grammarAccess.getActualFailureTypeAccess().getCOMMISSIONEnumLiteralDeclaration_2());
-
- }
-
-
- }
- break;
- case 4 :
- // InternalFlaDsl.g:824:6: ( ( 'omission' ) )
- {
- // InternalFlaDsl.g:824:6: ( ( 'omission' ) )
- // InternalFlaDsl.g:825:1: ( 'omission' )
- {
- before(grammarAccess.getActualFailureTypeAccess().getOMISSIONEnumLiteralDeclaration_3());
- // InternalFlaDsl.g:826:1: ( 'omission' )
- // InternalFlaDsl.g:826:3: 'omission'
- {
- match(input,15,FOLLOW_2);
-
- }
-
- after(grammarAccess.getActualFailureTypeAccess().getOMISSIONEnumLiteralDeclaration_3());
-
- }
-
-
- }
- break;
- case 5 :
- // InternalFlaDsl.g:831:6: ( ( 'valueSubtle' ) )
- {
- // InternalFlaDsl.g:831:6: ( ( 'valueSubtle' ) )
- // InternalFlaDsl.g:832:1: ( 'valueSubtle' )
- {
- before(grammarAccess.getActualFailureTypeAccess().getVALUE_SUBTLEEnumLiteralDeclaration_4());
- // InternalFlaDsl.g:833:1: ( 'valueSubtle' )
- // InternalFlaDsl.g:833:3: 'valueSubtle'
- {
- match(input,16,FOLLOW_2);
-
- }
-
- after(grammarAccess.getActualFailureTypeAccess().getVALUE_SUBTLEEnumLiteralDeclaration_4());
-
- }
-
-
- }
- break;
- case 6 :
- // InternalFlaDsl.g:838:6: ( ( 'valueCoarse' ) )
- {
- // InternalFlaDsl.g:838:6: ( ( 'valueCoarse' ) )
- // InternalFlaDsl.g:839:1: ( 'valueCoarse' )
- {
- before(grammarAccess.getActualFailureTypeAccess().getVALUE_COARSEEnumLiteralDeclaration_5());
- // InternalFlaDsl.g:840:1: ( 'valueCoarse' )
- // InternalFlaDsl.g:840:3: 'valueCoarse'
- {
- match(input,17,FOLLOW_2);
-
- }
-
- after(grammarAccess.getActualFailureTypeAccess().getVALUE_COARSEEnumLiteralDeclaration_5());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ActualFailureType__Alternatives"
-
-
- // $ANTLR start "rule__Aavoidable__Alternatives"
- // InternalFlaDsl.g:850:1: rule__Aavoidable__Alternatives : ( ( ( 'incompletion' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) );
- public final void rule__Aavoidable__Alternatives() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:854:1: ( ( ( 'incompletion' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) )
- int alt7=3;
- switch ( input.LA(1) ) {
- case 18:
- {
- alt7=1;
- }
- break;
- case 19:
- {
- alt7=2;
- }
- break;
- case 20:
- {
- alt7=3;
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 7, 0, input);
-
- throw nvae;
- }
-
- switch (alt7) {
- case 1 :
- // InternalFlaDsl.g:855:1: ( ( 'incompletion' ) )
- {
- // InternalFlaDsl.g:855:1: ( ( 'incompletion' ) )
- // InternalFlaDsl.g:856:1: ( 'incompletion' )
- {
- before(grammarAccess.getAavoidableAccess().getINCOMPLETIONEnumLiteralDeclaration_0());
- // InternalFlaDsl.g:857:1: ( 'incompletion' )
- // InternalFlaDsl.g:857:3: 'incompletion'
- {
- match(input,18,FOLLOW_2);
-
- }
-
- after(grammarAccess.getAavoidableAccess().getINCOMPLETIONEnumLiteralDeclaration_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:862:6: ( ( 'none' ) )
- {
- // InternalFlaDsl.g:862:6: ( ( 'none' ) )
- // InternalFlaDsl.g:863:1: ( 'none' )
- {
- before(grammarAccess.getAavoidableAccess().getNONEEnumLiteralDeclaration_1());
- // InternalFlaDsl.g:864:1: ( 'none' )
- // InternalFlaDsl.g:864:3: 'none'
- {
- match(input,19,FOLLOW_2);
-
- }
-
- after(grammarAccess.getAavoidableAccess().getNONEEnumLiteralDeclaration_1());
-
- }
-
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:869:6: ( ( 'unspecified' ) )
- {
- // InternalFlaDsl.g:869:6: ( ( 'unspecified' ) )
- // InternalFlaDsl.g:870:1: ( 'unspecified' )
- {
- before(grammarAccess.getAavoidableAccess().getUNSPECIFIEDEnumLiteralDeclaration_2());
- // InternalFlaDsl.g:871:1: ( 'unspecified' )
- // InternalFlaDsl.g:871:3: 'unspecified'
- {
- match(input,20,FOLLOW_2);
-
- }
-
- after(grammarAccess.getAavoidableAccess().getUNSPECIFIEDEnumLiteralDeclaration_2());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Aavoidable__Alternatives"
-
-
- // $ANTLR start "rule__Cavoidable__Alternatives"
- // InternalFlaDsl.g:881:1: rule__Cavoidable__Alternatives : ( ( ( 'inconsistency' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) );
- public final void rule__Cavoidable__Alternatives() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:885:1: ( ( ( 'inconsistency' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) )
- int alt8=3;
- switch ( input.LA(1) ) {
- case 21:
- {
- alt8=1;
- }
- break;
- case 19:
- {
- alt8=2;
- }
- break;
- case 20:
- {
- alt8=3;
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 8, 0, input);
-
- throw nvae;
- }
-
- switch (alt8) {
- case 1 :
- // InternalFlaDsl.g:886:1: ( ( 'inconsistency' ) )
- {
- // InternalFlaDsl.g:886:1: ( ( 'inconsistency' ) )
- // InternalFlaDsl.g:887:1: ( 'inconsistency' )
- {
- before(grammarAccess.getCavoidableAccess().getINCONSISTENCYEnumLiteralDeclaration_0());
- // InternalFlaDsl.g:888:1: ( 'inconsistency' )
- // InternalFlaDsl.g:888:3: 'inconsistency'
- {
- match(input,21,FOLLOW_2);
-
- }
-
- after(grammarAccess.getCavoidableAccess().getINCONSISTENCYEnumLiteralDeclaration_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:893:6: ( ( 'none' ) )
- {
- // InternalFlaDsl.g:893:6: ( ( 'none' ) )
- // InternalFlaDsl.g:894:1: ( 'none' )
- {
- before(grammarAccess.getCavoidableAccess().getNONEEnumLiteralDeclaration_1());
- // InternalFlaDsl.g:895:1: ( 'none' )
- // InternalFlaDsl.g:895:3: 'none'
- {
- match(input,19,FOLLOW_2);
-
- }
-
- after(grammarAccess.getCavoidableAccess().getNONEEnumLiteralDeclaration_1());
-
- }
-
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:900:6: ( ( 'unspecified' ) )
- {
- // InternalFlaDsl.g:900:6: ( ( 'unspecified' ) )
- // InternalFlaDsl.g:901:1: ( 'unspecified' )
- {
- before(grammarAccess.getCavoidableAccess().getUNSPECIFIEDEnumLiteralDeclaration_2());
- // InternalFlaDsl.g:902:1: ( 'unspecified' )
- // InternalFlaDsl.g:902:3: 'unspecified'
- {
- match(input,20,FOLLOW_2);
-
- }
-
- after(grammarAccess.getCavoidableAccess().getUNSPECIFIEDEnumLiteralDeclaration_2());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Cavoidable__Alternatives"
-
-
- // $ANTLR start "rule__Iavoidable__Alternatives"
- // InternalFlaDsl.g:912:1: rule__Iavoidable__Alternatives : ( ( ( 'interference' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) );
- public final void rule__Iavoidable__Alternatives() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:916:1: ( ( ( 'interference' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) )
- int alt9=3;
- switch ( input.LA(1) ) {
- case 22:
- {
- alt9=1;
- }
- break;
- case 19:
- {
- alt9=2;
- }
- break;
- case 20:
- {
- alt9=3;
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 9, 0, input);
-
- throw nvae;
- }
-
- switch (alt9) {
- case 1 :
- // InternalFlaDsl.g:917:1: ( ( 'interference' ) )
- {
- // InternalFlaDsl.g:917:1: ( ( 'interference' ) )
- // InternalFlaDsl.g:918:1: ( 'interference' )
- {
- before(grammarAccess.getIavoidableAccess().getINTERFERENCEEnumLiteralDeclaration_0());
- // InternalFlaDsl.g:919:1: ( 'interference' )
- // InternalFlaDsl.g:919:3: 'interference'
- {
- match(input,22,FOLLOW_2);
-
- }
-
- after(grammarAccess.getIavoidableAccess().getINTERFERENCEEnumLiteralDeclaration_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:924:6: ( ( 'none' ) )
- {
- // InternalFlaDsl.g:924:6: ( ( 'none' ) )
- // InternalFlaDsl.g:925:1: ( 'none' )
- {
- before(grammarAccess.getIavoidableAccess().getNONEEnumLiteralDeclaration_1());
- // InternalFlaDsl.g:926:1: ( 'none' )
- // InternalFlaDsl.g:926:3: 'none'
- {
- match(input,19,FOLLOW_2);
-
- }
-
- after(grammarAccess.getIavoidableAccess().getNONEEnumLiteralDeclaration_1());
-
- }
-
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:931:6: ( ( 'unspecified' ) )
- {
- // InternalFlaDsl.g:931:6: ( ( 'unspecified' ) )
- // InternalFlaDsl.g:932:1: ( 'unspecified' )
- {
- before(grammarAccess.getIavoidableAccess().getUNSPECIFIEDEnumLiteralDeclaration_2());
- // InternalFlaDsl.g:933:1: ( 'unspecified' )
- // InternalFlaDsl.g:933:3: 'unspecified'
- {
- match(input,20,FOLLOW_2);
-
- }
-
- after(grammarAccess.getIavoidableAccess().getUNSPECIFIEDEnumLiteralDeclaration_2());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Iavoidable__Alternatives"
-
-
- // $ANTLR start "rule__Davoidable__Alternatives"
- // InternalFlaDsl.g:943:1: rule__Davoidable__Alternatives : ( ( ( 'impermanence' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) );
- public final void rule__Davoidable__Alternatives() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:947:1: ( ( ( 'impermanence' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) )
- int alt10=3;
- switch ( input.LA(1) ) {
- case 23:
- {
- alt10=1;
- }
- break;
- case 19:
- {
- alt10=2;
- }
- break;
- case 20:
- {
- alt10=3;
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 10, 0, input);
-
- throw nvae;
- }
-
- switch (alt10) {
- case 1 :
- // InternalFlaDsl.g:948:1: ( ( 'impermanence' ) )
- {
- // InternalFlaDsl.g:948:1: ( ( 'impermanence' ) )
- // InternalFlaDsl.g:949:1: ( 'impermanence' )
- {
- before(grammarAccess.getDavoidableAccess().getIMPERMANENCEEnumLiteralDeclaration_0());
- // InternalFlaDsl.g:950:1: ( 'impermanence' )
- // InternalFlaDsl.g:950:3: 'impermanence'
- {
- match(input,23,FOLLOW_2);
-
- }
-
- after(grammarAccess.getDavoidableAccess().getIMPERMANENCEEnumLiteralDeclaration_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:955:6: ( ( 'none' ) )
- {
- // InternalFlaDsl.g:955:6: ( ( 'none' ) )
- // InternalFlaDsl.g:956:1: ( 'none' )
- {
- before(grammarAccess.getDavoidableAccess().getNONEEnumLiteralDeclaration_1());
- // InternalFlaDsl.g:957:1: ( 'none' )
- // InternalFlaDsl.g:957:3: 'none'
- {
- match(input,19,FOLLOW_2);
-
- }
-
- after(grammarAccess.getDavoidableAccess().getNONEEnumLiteralDeclaration_1());
-
- }
-
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:962:6: ( ( 'unspecified' ) )
- {
- // InternalFlaDsl.g:962:6: ( ( 'unspecified' ) )
- // InternalFlaDsl.g:963:1: ( 'unspecified' )
- {
- before(grammarAccess.getDavoidableAccess().getUNSPECIFIEDEnumLiteralDeclaration_2());
- // InternalFlaDsl.g:964:1: ( 'unspecified' )
- // InternalFlaDsl.g:964:3: 'unspecified'
- {
- match(input,20,FOLLOW_2);
-
- }
-
- after(grammarAccess.getDavoidableAccess().getUNSPECIFIEDEnumLiteralDeclaration_2());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Davoidable__Alternatives"
-
-
- // $ANTLR start "rule__Amitigation__Alternatives"
- // InternalFlaDsl.g:974:1: rule__Amitigation__Alternatives : ( ( ( 'all_or_nothing' ) ) | ( ( 'all_or_compensation' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) );
- public final void rule__Amitigation__Alternatives() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:978:1: ( ( ( 'all_or_nothing' ) ) | ( ( 'all_or_compensation' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) )
- int alt11=4;
- switch ( input.LA(1) ) {
- case 24:
- {
- alt11=1;
- }
- break;
- case 25:
- {
- alt11=2;
- }
- break;
- case 19:
- {
- alt11=3;
- }
- break;
- case 20:
- {
- alt11=4;
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 11, 0, input);
-
- throw nvae;
- }
-
- switch (alt11) {
- case 1 :
- // InternalFlaDsl.g:979:1: ( ( 'all_or_nothing' ) )
- {
- // InternalFlaDsl.g:979:1: ( ( 'all_or_nothing' ) )
- // InternalFlaDsl.g:980:1: ( 'all_or_nothing' )
- {
- before(grammarAccess.getAmitigationAccess().getALL_OR_NOTHINGEnumLiteralDeclaration_0());
- // InternalFlaDsl.g:981:1: ( 'all_or_nothing' )
- // InternalFlaDsl.g:981:3: 'all_or_nothing'
- {
- match(input,24,FOLLOW_2);
-
- }
-
- after(grammarAccess.getAmitigationAccess().getALL_OR_NOTHINGEnumLiteralDeclaration_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:986:6: ( ( 'all_or_compensation' ) )
- {
- // InternalFlaDsl.g:986:6: ( ( 'all_or_compensation' ) )
- // InternalFlaDsl.g:987:1: ( 'all_or_compensation' )
- {
- before(grammarAccess.getAmitigationAccess().getALL_OR_COMPENSATIONEnumLiteralDeclaration_1());
- // InternalFlaDsl.g:988:1: ( 'all_or_compensation' )
- // InternalFlaDsl.g:988:3: 'all_or_compensation'
- {
- match(input,25,FOLLOW_2);
-
- }
-
- after(grammarAccess.getAmitigationAccess().getALL_OR_COMPENSATIONEnumLiteralDeclaration_1());
-
- }
-
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:993:6: ( ( 'none' ) )
- {
- // InternalFlaDsl.g:993:6: ( ( 'none' ) )
- // InternalFlaDsl.g:994:1: ( 'none' )
- {
- before(grammarAccess.getAmitigationAccess().getNONEEnumLiteralDeclaration_2());
- // InternalFlaDsl.g:995:1: ( 'none' )
- // InternalFlaDsl.g:995:3: 'none'
- {
- match(input,19,FOLLOW_2);
-
- }
-
- after(grammarAccess.getAmitigationAccess().getNONEEnumLiteralDeclaration_2());
-
- }
-
-
- }
- break;
- case 4 :
- // InternalFlaDsl.g:1000:6: ( ( 'unspecified' ) )
- {
- // InternalFlaDsl.g:1000:6: ( ( 'unspecified' ) )
- // InternalFlaDsl.g:1001:1: ( 'unspecified' )
- {
- before(grammarAccess.getAmitigationAccess().getUNSPECIFIEDEnumLiteralDeclaration_3());
- // InternalFlaDsl.g:1002:1: ( 'unspecified' )
- // InternalFlaDsl.g:1002:3: 'unspecified'
- {
- match(input,20,FOLLOW_2);
-
- }
-
- after(grammarAccess.getAmitigationAccess().getUNSPECIFIEDEnumLiteralDeclaration_3());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Amitigation__Alternatives"
-
-
- // $ANTLR start "rule__Cmitigation__Alternatives"
- // InternalFlaDsl.g:1012:1: rule__Cmitigation__Alternatives : ( ( ( 'full_consistency' ) ) | ( ( 'range_violation_allowed' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) );
- public final void rule__Cmitigation__Alternatives() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1016:1: ( ( ( 'full_consistency' ) ) | ( ( 'range_violation_allowed' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) )
- int alt12=4;
- switch ( input.LA(1) ) {
- case 26:
- {
- alt12=1;
- }
- break;
- case 27:
- {
- alt12=2;
- }
- break;
- case 19:
- {
- alt12=3;
- }
- break;
- case 20:
- {
- alt12=4;
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 12, 0, input);
-
- throw nvae;
- }
-
- switch (alt12) {
- case 1 :
- // InternalFlaDsl.g:1017:1: ( ( 'full_consistency' ) )
- {
- // InternalFlaDsl.g:1017:1: ( ( 'full_consistency' ) )
- // InternalFlaDsl.g:1018:1: ( 'full_consistency' )
- {
- before(grammarAccess.getCmitigationAccess().getFULL_CONSISTENCYEnumLiteralDeclaration_0());
- // InternalFlaDsl.g:1019:1: ( 'full_consistency' )
- // InternalFlaDsl.g:1019:3: 'full_consistency'
- {
- match(input,26,FOLLOW_2);
-
- }
-
- after(grammarAccess.getCmitigationAccess().getFULL_CONSISTENCYEnumLiteralDeclaration_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:1024:6: ( ( 'range_violation_allowed' ) )
- {
- // InternalFlaDsl.g:1024:6: ( ( 'range_violation_allowed' ) )
- // InternalFlaDsl.g:1025:1: ( 'range_violation_allowed' )
- {
- before(grammarAccess.getCmitigationAccess().getRANGE_VIOLATION_ALLOWEDEnumLiteralDeclaration_1());
- // InternalFlaDsl.g:1026:1: ( 'range_violation_allowed' )
- // InternalFlaDsl.g:1026:3: 'range_violation_allowed'
- {
- match(input,27,FOLLOW_2);
-
- }
-
- after(grammarAccess.getCmitigationAccess().getRANGE_VIOLATION_ALLOWEDEnumLiteralDeclaration_1());
-
- }
-
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:1031:6: ( ( 'none' ) )
- {
- // InternalFlaDsl.g:1031:6: ( ( 'none' ) )
- // InternalFlaDsl.g:1032:1: ( 'none' )
- {
- before(grammarAccess.getCmitigationAccess().getNONEEnumLiteralDeclaration_2());
- // InternalFlaDsl.g:1033:1: ( 'none' )
- // InternalFlaDsl.g:1033:3: 'none'
- {
- match(input,19,FOLLOW_2);
-
- }
-
- after(grammarAccess.getCmitigationAccess().getNONEEnumLiteralDeclaration_2());
-
- }
-
-
- }
- break;
- case 4 :
- // InternalFlaDsl.g:1038:6: ( ( 'unspecified' ) )
- {
- // InternalFlaDsl.g:1038:6: ( ( 'unspecified' ) )
- // InternalFlaDsl.g:1039:1: ( 'unspecified' )
- {
- before(grammarAccess.getCmitigationAccess().getUNSPECIFIEDEnumLiteralDeclaration_3());
- // InternalFlaDsl.g:1040:1: ( 'unspecified' )
- // InternalFlaDsl.g:1040:3: 'unspecified'
- {
- match(input,20,FOLLOW_2);
-
- }
-
- after(grammarAccess.getCmitigationAccess().getUNSPECIFIEDEnumLiteralDeclaration_3());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Cmitigation__Alternatives"
-
-
- // $ANTLR start "rule__Imitigation__Alternatives"
- // InternalFlaDsl.g:1050:1: rule__Imitigation__Alternatives : ( ( ( 'serializable' ) ) | ( ( 'portable_level' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) );
- public final void rule__Imitigation__Alternatives() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1054:1: ( ( ( 'serializable' ) ) | ( ( 'portable_level' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) )
- int alt13=4;
- switch ( input.LA(1) ) {
- case 28:
- {
- alt13=1;
- }
- break;
- case 29:
- {
- alt13=2;
- }
- break;
- case 19:
- {
- alt13=3;
- }
- break;
- case 20:
- {
- alt13=4;
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 13, 0, input);
-
- throw nvae;
- }
-
- switch (alt13) {
- case 1 :
- // InternalFlaDsl.g:1055:1: ( ( 'serializable' ) )
- {
- // InternalFlaDsl.g:1055:1: ( ( 'serializable' ) )
- // InternalFlaDsl.g:1056:1: ( 'serializable' )
- {
- before(grammarAccess.getImitigationAccess().getSERIALIZABLEEnumLiteralDeclaration_0());
- // InternalFlaDsl.g:1057:1: ( 'serializable' )
- // InternalFlaDsl.g:1057:3: 'serializable'
- {
- match(input,28,FOLLOW_2);
-
- }
-
- after(grammarAccess.getImitigationAccess().getSERIALIZABLEEnumLiteralDeclaration_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:1062:6: ( ( 'portable_level' ) )
- {
- // InternalFlaDsl.g:1062:6: ( ( 'portable_level' ) )
- // InternalFlaDsl.g:1063:1: ( 'portable_level' )
- {
- before(grammarAccess.getImitigationAccess().getPORTABLE_LEVELEnumLiteralDeclaration_1());
- // InternalFlaDsl.g:1064:1: ( 'portable_level' )
- // InternalFlaDsl.g:1064:3: 'portable_level'
- {
- match(input,29,FOLLOW_2);
-
- }
-
- after(grammarAccess.getImitigationAccess().getPORTABLE_LEVELEnumLiteralDeclaration_1());
-
- }
-
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:1069:6: ( ( 'none' ) )
- {
- // InternalFlaDsl.g:1069:6: ( ( 'none' ) )
- // InternalFlaDsl.g:1070:1: ( 'none' )
- {
- before(grammarAccess.getImitigationAccess().getNONEEnumLiteralDeclaration_2());
- // InternalFlaDsl.g:1071:1: ( 'none' )
- // InternalFlaDsl.g:1071:3: 'none'
- {
- match(input,19,FOLLOW_2);
-
- }
-
- after(grammarAccess.getImitigationAccess().getNONEEnumLiteralDeclaration_2());
-
- }
-
-
- }
- break;
- case 4 :
- // InternalFlaDsl.g:1076:6: ( ( 'unspecified' ) )
- {
- // InternalFlaDsl.g:1076:6: ( ( 'unspecified' ) )
- // InternalFlaDsl.g:1077:1: ( 'unspecified' )
- {
- before(grammarAccess.getImitigationAccess().getUNSPECIFIEDEnumLiteralDeclaration_3());
- // InternalFlaDsl.g:1078:1: ( 'unspecified' )
- // InternalFlaDsl.g:1078:3: 'unspecified'
- {
- match(input,20,FOLLOW_2);
-
- }
-
- after(grammarAccess.getImitigationAccess().getUNSPECIFIEDEnumLiteralDeclaration_3());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Imitigation__Alternatives"
-
-
- // $ANTLR start "rule__Dmitigation__Alternatives"
- // InternalFlaDsl.g:1088:1: rule__Dmitigation__Alternatives : ( ( ( 'no_loss' ) ) | ( ( 'partial_loss_allowed' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) );
- public final void rule__Dmitigation__Alternatives() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1092:1: ( ( ( 'no_loss' ) ) | ( ( 'partial_loss_allowed' ) ) | ( ( 'none' ) ) | ( ( 'unspecified' ) ) )
- int alt14=4;
- switch ( input.LA(1) ) {
- case 30:
- {
- alt14=1;
- }
- break;
- case 31:
- {
- alt14=2;
- }
- break;
- case 19:
- {
- alt14=3;
- }
- break;
- case 20:
- {
- alt14=4;
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 14, 0, input);
-
- throw nvae;
- }
-
- switch (alt14) {
- case 1 :
- // InternalFlaDsl.g:1093:1: ( ( 'no_loss' ) )
- {
- // InternalFlaDsl.g:1093:1: ( ( 'no_loss' ) )
- // InternalFlaDsl.g:1094:1: ( 'no_loss' )
- {
- before(grammarAccess.getDmitigationAccess().getNO_LOSSEnumLiteralDeclaration_0());
- // InternalFlaDsl.g:1095:1: ( 'no_loss' )
- // InternalFlaDsl.g:1095:3: 'no_loss'
- {
- match(input,30,FOLLOW_2);
-
- }
-
- after(grammarAccess.getDmitigationAccess().getNO_LOSSEnumLiteralDeclaration_0());
-
- }
-
-
- }
- break;
- case 2 :
- // InternalFlaDsl.g:1100:6: ( ( 'partial_loss_allowed' ) )
- {
- // InternalFlaDsl.g:1100:6: ( ( 'partial_loss_allowed' ) )
- // InternalFlaDsl.g:1101:1: ( 'partial_loss_allowed' )
- {
- before(grammarAccess.getDmitigationAccess().getPARTIAL_LOSS_ALLOWEDEnumLiteralDeclaration_1());
- // InternalFlaDsl.g:1102:1: ( 'partial_loss_allowed' )
- // InternalFlaDsl.g:1102:3: 'partial_loss_allowed'
- {
- match(input,31,FOLLOW_2);
-
- }
-
- after(grammarAccess.getDmitigationAccess().getPARTIAL_LOSS_ALLOWEDEnumLiteralDeclaration_1());
-
- }
-
-
- }
- break;
- case 3 :
- // InternalFlaDsl.g:1107:6: ( ( 'none' ) )
- {
- // InternalFlaDsl.g:1107:6: ( ( 'none' ) )
- // InternalFlaDsl.g:1108:1: ( 'none' )
- {
- before(grammarAccess.getDmitigationAccess().getNONEEnumLiteralDeclaration_2());
- // InternalFlaDsl.g:1109:1: ( 'none' )
- // InternalFlaDsl.g:1109:3: 'none'
- {
- match(input,19,FOLLOW_2);
-
- }
-
- after(grammarAccess.getDmitigationAccess().getNONEEnumLiteralDeclaration_2());
-
- }
-
-
- }
- break;
- case 4 :
- // InternalFlaDsl.g:1114:6: ( ( 'unspecified' ) )
- {
- // InternalFlaDsl.g:1114:6: ( ( 'unspecified' ) )
- // InternalFlaDsl.g:1115:1: ( 'unspecified' )
- {
- before(grammarAccess.getDmitigationAccess().getUNSPECIFIEDEnumLiteralDeclaration_3());
- // InternalFlaDsl.g:1116:1: ( 'unspecified' )
- // InternalFlaDsl.g:1116:3: 'unspecified'
- {
- match(input,20,FOLLOW_2);
-
- }
-
- after(grammarAccess.getDmitigationAccess().getUNSPECIFIEDEnumLiteralDeclaration_3());
-
- }
-
-
- }
- break;
-
- }
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Dmitigation__Alternatives"
-
-
- // $ANTLR start "rule__Expression__Group__0"
- // InternalFlaDsl.g:1128:1: rule__Expression__Group__0 : rule__Expression__Group__0__Impl rule__Expression__Group__1 ;
- public final void rule__Expression__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1132:1: ( rule__Expression__Group__0__Impl rule__Expression__Group__1 )
- // InternalFlaDsl.g:1133:2: rule__Expression__Group__0__Impl rule__Expression__Group__1
- {
- pushFollow(FOLLOW_4);
- rule__Expression__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__Expression__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__Group__0"
-
-
- // $ANTLR start "rule__Expression__Group__0__Impl"
- // InternalFlaDsl.g:1140:1: rule__Expression__Group__0__Impl : ( 'FLA:' ) ;
- public final void rule__Expression__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1144:1: ( ( 'FLA:' ) )
- // InternalFlaDsl.g:1145:1: ( 'FLA:' )
- {
- // InternalFlaDsl.g:1145:1: ( 'FLA:' )
- // InternalFlaDsl.g:1146:1: 'FLA:'
- {
- before(grammarAccess.getExpressionAccess().getFLAKeyword_0());
- match(input,32,FOLLOW_2);
- after(grammarAccess.getExpressionAccess().getFLAKeyword_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__Group__0__Impl"
-
-
- // $ANTLR start "rule__Expression__Group__1"
- // InternalFlaDsl.g:1159:1: rule__Expression__Group__1 : rule__Expression__Group__1__Impl rule__Expression__Group__2 ;
- public final void rule__Expression__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1163:1: ( rule__Expression__Group__1__Impl rule__Expression__Group__2 )
- // InternalFlaDsl.g:1164:2: rule__Expression__Group__1__Impl rule__Expression__Group__2
- {
- pushFollow(FOLLOW_5);
- rule__Expression__Group__1__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__Expression__Group__2();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__Group__1"
-
-
- // $ANTLR start "rule__Expression__Group__1__Impl"
- // InternalFlaDsl.g:1171:1: rule__Expression__Group__1__Impl : ( ( rule__Expression__LhsAssignment_1 ) ) ;
- public final void rule__Expression__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1175:1: ( ( ( rule__Expression__LhsAssignment_1 ) ) )
- // InternalFlaDsl.g:1176:1: ( ( rule__Expression__LhsAssignment_1 ) )
- {
- // InternalFlaDsl.g:1176:1: ( ( rule__Expression__LhsAssignment_1 ) )
- // InternalFlaDsl.g:1177:1: ( rule__Expression__LhsAssignment_1 )
- {
- before(grammarAccess.getExpressionAccess().getLhsAssignment_1());
- // InternalFlaDsl.g:1178:1: ( rule__Expression__LhsAssignment_1 )
- // InternalFlaDsl.g:1178:2: rule__Expression__LhsAssignment_1
- {
- pushFollow(FOLLOW_2);
- rule__Expression__LhsAssignment_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getExpressionAccess().getLhsAssignment_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__Group__1__Impl"
-
-
- // $ANTLR start "rule__Expression__Group__2"
- // InternalFlaDsl.g:1188:1: rule__Expression__Group__2 : rule__Expression__Group__2__Impl rule__Expression__Group__3 ;
- public final void rule__Expression__Group__2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1192:1: ( rule__Expression__Group__2__Impl rule__Expression__Group__3 )
- // InternalFlaDsl.g:1193:2: rule__Expression__Group__2__Impl rule__Expression__Group__3
- {
- pushFollow(FOLLOW_4);
- rule__Expression__Group__2__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__Expression__Group__3();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__Group__2"
-
-
- // $ANTLR start "rule__Expression__Group__2__Impl"
- // InternalFlaDsl.g:1200:1: rule__Expression__Group__2__Impl : ( '->' ) ;
- public final void rule__Expression__Group__2__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1204:1: ( ( '->' ) )
- // InternalFlaDsl.g:1205:1: ( '->' )
- {
- // InternalFlaDsl.g:1205:1: ( '->' )
- // InternalFlaDsl.g:1206:1: '->'
- {
- before(grammarAccess.getExpressionAccess().getHyphenMinusGreaterThanSignKeyword_2());
- match(input,33,FOLLOW_2);
- after(grammarAccess.getExpressionAccess().getHyphenMinusGreaterThanSignKeyword_2());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__Group__2__Impl"
-
-
- // $ANTLR start "rule__Expression__Group__3"
- // InternalFlaDsl.g:1219:1: rule__Expression__Group__3 : rule__Expression__Group__3__Impl rule__Expression__Group__4 ;
- public final void rule__Expression__Group__3() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1223:1: ( rule__Expression__Group__3__Impl rule__Expression__Group__4 )
- // InternalFlaDsl.g:1224:2: rule__Expression__Group__3__Impl rule__Expression__Group__4
- {
- pushFollow(FOLLOW_6);
- rule__Expression__Group__3__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__Expression__Group__4();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__Group__3"
-
-
- // $ANTLR start "rule__Expression__Group__3__Impl"
- // InternalFlaDsl.g:1231:1: rule__Expression__Group__3__Impl : ( ( rule__Expression__RhsAssignment_3 ) ) ;
- public final void rule__Expression__Group__3__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1235:1: ( ( ( rule__Expression__RhsAssignment_3 ) ) )
- // InternalFlaDsl.g:1236:1: ( ( rule__Expression__RhsAssignment_3 ) )
- {
- // InternalFlaDsl.g:1236:1: ( ( rule__Expression__RhsAssignment_3 ) )
- // InternalFlaDsl.g:1237:1: ( rule__Expression__RhsAssignment_3 )
- {
- before(grammarAccess.getExpressionAccess().getRhsAssignment_3());
- // InternalFlaDsl.g:1238:1: ( rule__Expression__RhsAssignment_3 )
- // InternalFlaDsl.g:1238:2: rule__Expression__RhsAssignment_3
- {
- pushFollow(FOLLOW_2);
- rule__Expression__RhsAssignment_3();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getExpressionAccess().getRhsAssignment_3());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__Group__3__Impl"
-
-
- // $ANTLR start "rule__Expression__Group__4"
- // InternalFlaDsl.g:1248:1: rule__Expression__Group__4 : rule__Expression__Group__4__Impl ;
- public final void rule__Expression__Group__4() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1252:1: ( rule__Expression__Group__4__Impl )
- // InternalFlaDsl.g:1253:2: rule__Expression__Group__4__Impl
- {
- pushFollow(FOLLOW_2);
- rule__Expression__Group__4__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__Group__4"
-
-
- // $ANTLR start "rule__Expression__Group__4__Impl"
- // InternalFlaDsl.g:1259:1: rule__Expression__Group__4__Impl : ( ';' ) ;
- public final void rule__Expression__Group__4__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1263:1: ( ( ';' ) )
- // InternalFlaDsl.g:1264:1: ( ';' )
- {
- // InternalFlaDsl.g:1264:1: ( ';' )
- // InternalFlaDsl.g:1265:1: ';'
- {
- before(grammarAccess.getExpressionAccess().getSemicolonKeyword_4());
- match(input,34,FOLLOW_2);
- after(grammarAccess.getExpressionAccess().getSemicolonKeyword_4());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__Group__4__Impl"
-
-
- // $ANTLR start "rule__Lhs__Group__0"
- // InternalFlaDsl.g:1288:1: rule__Lhs__Group__0 : rule__Lhs__Group__0__Impl rule__Lhs__Group__1 ;
- public final void rule__Lhs__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1292:1: ( rule__Lhs__Group__0__Impl rule__Lhs__Group__1 )
- // InternalFlaDsl.g:1293:2: rule__Lhs__Group__0__Impl rule__Lhs__Group__1
- {
- pushFollow(FOLLOW_7);
- rule__Lhs__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__Lhs__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Lhs__Group__0"
-
-
- // $ANTLR start "rule__Lhs__Group__0__Impl"
- // InternalFlaDsl.g:1300:1: rule__Lhs__Group__0__Impl : ( ( rule__Lhs__FailuresAssignment_0 ) ) ;
- public final void rule__Lhs__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1304:1: ( ( ( rule__Lhs__FailuresAssignment_0 ) ) )
- // InternalFlaDsl.g:1305:1: ( ( rule__Lhs__FailuresAssignment_0 ) )
- {
- // InternalFlaDsl.g:1305:1: ( ( rule__Lhs__FailuresAssignment_0 ) )
- // InternalFlaDsl.g:1306:1: ( rule__Lhs__FailuresAssignment_0 )
- {
- before(grammarAccess.getLhsAccess().getFailuresAssignment_0());
- // InternalFlaDsl.g:1307:1: ( rule__Lhs__FailuresAssignment_0 )
- // InternalFlaDsl.g:1307:2: rule__Lhs__FailuresAssignment_0
- {
- pushFollow(FOLLOW_2);
- rule__Lhs__FailuresAssignment_0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getLhsAccess().getFailuresAssignment_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Lhs__Group__0__Impl"
-
-
- // $ANTLR start "rule__Lhs__Group__1"
- // InternalFlaDsl.g:1317:1: rule__Lhs__Group__1 : rule__Lhs__Group__1__Impl ;
- public final void rule__Lhs__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1321:1: ( rule__Lhs__Group__1__Impl )
- // InternalFlaDsl.g:1322:2: rule__Lhs__Group__1__Impl
- {
- pushFollow(FOLLOW_2);
- rule__Lhs__Group__1__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Lhs__Group__1"
-
-
- // $ANTLR start "rule__Lhs__Group__1__Impl"
- // InternalFlaDsl.g:1328:1: rule__Lhs__Group__1__Impl : ( ( rule__Lhs__Group_1__0 )* ) ;
- public final void rule__Lhs__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1332:1: ( ( ( rule__Lhs__Group_1__0 )* ) )
- // InternalFlaDsl.g:1333:1: ( ( rule__Lhs__Group_1__0 )* )
- {
- // InternalFlaDsl.g:1333:1: ( ( rule__Lhs__Group_1__0 )* )
- // InternalFlaDsl.g:1334:1: ( rule__Lhs__Group_1__0 )*
- {
- before(grammarAccess.getLhsAccess().getGroup_1());
- // InternalFlaDsl.g:1335:1: ( rule__Lhs__Group_1__0 )*
- loop15:
- do {
- int alt15=2;
- int LA15_0 = input.LA(1);
-
- if ( (LA15_0==35) ) {
- alt15=1;
- }
-
-
- switch (alt15) {
- case 1 :
- // InternalFlaDsl.g:1335:2: rule__Lhs__Group_1__0
- {
- pushFollow(FOLLOW_8);
- rule__Lhs__Group_1__0();
-
- state._fsp--;
-
-
- }
- break;
-
- default :
- break loop15;
- }
- } while (true);
-
- after(grammarAccess.getLhsAccess().getGroup_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Lhs__Group__1__Impl"
-
-
- // $ANTLR start "rule__Lhs__Group_1__0"
- // InternalFlaDsl.g:1349:1: rule__Lhs__Group_1__0 : rule__Lhs__Group_1__0__Impl rule__Lhs__Group_1__1 ;
- public final void rule__Lhs__Group_1__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1353:1: ( rule__Lhs__Group_1__0__Impl rule__Lhs__Group_1__1 )
- // InternalFlaDsl.g:1354:2: rule__Lhs__Group_1__0__Impl rule__Lhs__Group_1__1
- {
- pushFollow(FOLLOW_4);
- rule__Lhs__Group_1__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__Lhs__Group_1__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Lhs__Group_1__0"
-
-
- // $ANTLR start "rule__Lhs__Group_1__0__Impl"
- // InternalFlaDsl.g:1361:1: rule__Lhs__Group_1__0__Impl : ( ',' ) ;
- public final void rule__Lhs__Group_1__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1365:1: ( ( ',' ) )
- // InternalFlaDsl.g:1366:1: ( ',' )
- {
- // InternalFlaDsl.g:1366:1: ( ',' )
- // InternalFlaDsl.g:1367:1: ','
- {
- before(grammarAccess.getLhsAccess().getCommaKeyword_1_0());
- match(input,35,FOLLOW_2);
- after(grammarAccess.getLhsAccess().getCommaKeyword_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Lhs__Group_1__0__Impl"
-
-
- // $ANTLR start "rule__Lhs__Group_1__1"
- // InternalFlaDsl.g:1380:1: rule__Lhs__Group_1__1 : rule__Lhs__Group_1__1__Impl ;
- public final void rule__Lhs__Group_1__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1384:1: ( rule__Lhs__Group_1__1__Impl )
- // InternalFlaDsl.g:1385:2: rule__Lhs__Group_1__1__Impl
- {
- pushFollow(FOLLOW_2);
- rule__Lhs__Group_1__1__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Lhs__Group_1__1"
-
-
- // $ANTLR start "rule__Lhs__Group_1__1__Impl"
- // InternalFlaDsl.g:1391:1: rule__Lhs__Group_1__1__Impl : ( ( rule__Lhs__FailuresAssignment_1_1 ) ) ;
- public final void rule__Lhs__Group_1__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1395:1: ( ( ( rule__Lhs__FailuresAssignment_1_1 ) ) )
- // InternalFlaDsl.g:1396:1: ( ( rule__Lhs__FailuresAssignment_1_1 ) )
- {
- // InternalFlaDsl.g:1396:1: ( ( rule__Lhs__FailuresAssignment_1_1 ) )
- // InternalFlaDsl.g:1397:1: ( rule__Lhs__FailuresAssignment_1_1 )
- {
- before(grammarAccess.getLhsAccess().getFailuresAssignment_1_1());
- // InternalFlaDsl.g:1398:1: ( rule__Lhs__FailuresAssignment_1_1 )
- // InternalFlaDsl.g:1398:2: rule__Lhs__FailuresAssignment_1_1
- {
- pushFollow(FOLLOW_2);
- rule__Lhs__FailuresAssignment_1_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getLhsAccess().getFailuresAssignment_1_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Lhs__Group_1__1__Impl"
-
-
- // $ANTLR start "rule__Rhs__Group__0"
- // InternalFlaDsl.g:1412:1: rule__Rhs__Group__0 : rule__Rhs__Group__0__Impl rule__Rhs__Group__1 ;
- public final void rule__Rhs__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1416:1: ( rule__Rhs__Group__0__Impl rule__Rhs__Group__1 )
- // InternalFlaDsl.g:1417:2: rule__Rhs__Group__0__Impl rule__Rhs__Group__1
- {
- pushFollow(FOLLOW_7);
- rule__Rhs__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__Rhs__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Rhs__Group__0"
-
-
- // $ANTLR start "rule__Rhs__Group__0__Impl"
- // InternalFlaDsl.g:1424:1: rule__Rhs__Group__0__Impl : ( ( rule__Rhs__FailuresAssignment_0 ) ) ;
- public final void rule__Rhs__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1428:1: ( ( ( rule__Rhs__FailuresAssignment_0 ) ) )
- // InternalFlaDsl.g:1429:1: ( ( rule__Rhs__FailuresAssignment_0 ) )
- {
- // InternalFlaDsl.g:1429:1: ( ( rule__Rhs__FailuresAssignment_0 ) )
- // InternalFlaDsl.g:1430:1: ( rule__Rhs__FailuresAssignment_0 )
- {
- before(grammarAccess.getRhsAccess().getFailuresAssignment_0());
- // InternalFlaDsl.g:1431:1: ( rule__Rhs__FailuresAssignment_0 )
- // InternalFlaDsl.g:1431:2: rule__Rhs__FailuresAssignment_0
- {
- pushFollow(FOLLOW_2);
- rule__Rhs__FailuresAssignment_0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getRhsAccess().getFailuresAssignment_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Rhs__Group__0__Impl"
-
-
- // $ANTLR start "rule__Rhs__Group__1"
- // InternalFlaDsl.g:1441:1: rule__Rhs__Group__1 : rule__Rhs__Group__1__Impl ;
- public final void rule__Rhs__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1445:1: ( rule__Rhs__Group__1__Impl )
- // InternalFlaDsl.g:1446:2: rule__Rhs__Group__1__Impl
- {
- pushFollow(FOLLOW_2);
- rule__Rhs__Group__1__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Rhs__Group__1"
-
-
- // $ANTLR start "rule__Rhs__Group__1__Impl"
- // InternalFlaDsl.g:1452:1: rule__Rhs__Group__1__Impl : ( ( rule__Rhs__Group_1__0 )* ) ;
- public final void rule__Rhs__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1456:1: ( ( ( rule__Rhs__Group_1__0 )* ) )
- // InternalFlaDsl.g:1457:1: ( ( rule__Rhs__Group_1__0 )* )
- {
- // InternalFlaDsl.g:1457:1: ( ( rule__Rhs__Group_1__0 )* )
- // InternalFlaDsl.g:1458:1: ( rule__Rhs__Group_1__0 )*
- {
- before(grammarAccess.getRhsAccess().getGroup_1());
- // InternalFlaDsl.g:1459:1: ( rule__Rhs__Group_1__0 )*
- loop16:
- do {
- int alt16=2;
- int LA16_0 = input.LA(1);
-
- if ( (LA16_0==35) ) {
- alt16=1;
- }
-
-
- switch (alt16) {
- case 1 :
- // InternalFlaDsl.g:1459:2: rule__Rhs__Group_1__0
- {
- pushFollow(FOLLOW_8);
- rule__Rhs__Group_1__0();
-
- state._fsp--;
-
-
- }
- break;
-
- default :
- break loop16;
- }
- } while (true);
-
- after(grammarAccess.getRhsAccess().getGroup_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Rhs__Group__1__Impl"
-
-
- // $ANTLR start "rule__Rhs__Group_1__0"
- // InternalFlaDsl.g:1473:1: rule__Rhs__Group_1__0 : rule__Rhs__Group_1__0__Impl rule__Rhs__Group_1__1 ;
- public final void rule__Rhs__Group_1__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1477:1: ( rule__Rhs__Group_1__0__Impl rule__Rhs__Group_1__1 )
- // InternalFlaDsl.g:1478:2: rule__Rhs__Group_1__0__Impl rule__Rhs__Group_1__1
- {
- pushFollow(FOLLOW_4);
- rule__Rhs__Group_1__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__Rhs__Group_1__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Rhs__Group_1__0"
-
-
- // $ANTLR start "rule__Rhs__Group_1__0__Impl"
- // InternalFlaDsl.g:1485:1: rule__Rhs__Group_1__0__Impl : ( ',' ) ;
- public final void rule__Rhs__Group_1__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1489:1: ( ( ',' ) )
- // InternalFlaDsl.g:1490:1: ( ',' )
- {
- // InternalFlaDsl.g:1490:1: ( ',' )
- // InternalFlaDsl.g:1491:1: ','
- {
- before(grammarAccess.getRhsAccess().getCommaKeyword_1_0());
- match(input,35,FOLLOW_2);
- after(grammarAccess.getRhsAccess().getCommaKeyword_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Rhs__Group_1__0__Impl"
-
-
- // $ANTLR start "rule__Rhs__Group_1__1"
- // InternalFlaDsl.g:1504:1: rule__Rhs__Group_1__1 : rule__Rhs__Group_1__1__Impl ;
- public final void rule__Rhs__Group_1__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1508:1: ( rule__Rhs__Group_1__1__Impl )
- // InternalFlaDsl.g:1509:2: rule__Rhs__Group_1__1__Impl
- {
- pushFollow(FOLLOW_2);
- rule__Rhs__Group_1__1__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Rhs__Group_1__1"
-
-
- // $ANTLR start "rule__Rhs__Group_1__1__Impl"
- // InternalFlaDsl.g:1515:1: rule__Rhs__Group_1__1__Impl : ( ( rule__Rhs__FailuresAssignment_1_1 ) ) ;
- public final void rule__Rhs__Group_1__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1519:1: ( ( ( rule__Rhs__FailuresAssignment_1_1 ) ) )
- // InternalFlaDsl.g:1520:1: ( ( rule__Rhs__FailuresAssignment_1_1 ) )
- {
- // InternalFlaDsl.g:1520:1: ( ( rule__Rhs__FailuresAssignment_1_1 ) )
- // InternalFlaDsl.g:1521:1: ( rule__Rhs__FailuresAssignment_1_1 )
- {
- before(grammarAccess.getRhsAccess().getFailuresAssignment_1_1());
- // InternalFlaDsl.g:1522:1: ( rule__Rhs__FailuresAssignment_1_1 )
- // InternalFlaDsl.g:1522:2: rule__Rhs__FailuresAssignment_1_1
- {
- pushFollow(FOLLOW_2);
- rule__Rhs__FailuresAssignment_1_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getRhsAccess().getFailuresAssignment_1_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Rhs__Group_1__1__Impl"
-
-
- // $ANTLR start "rule__InputExpression__Group__0"
- // InternalFlaDsl.g:1536:1: rule__InputExpression__Group__0 : rule__InputExpression__Group__0__Impl rule__InputExpression__Group__1 ;
- public final void rule__InputExpression__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1540:1: ( rule__InputExpression__Group__0__Impl rule__InputExpression__Group__1 )
- // InternalFlaDsl.g:1541:2: rule__InputExpression__Group__0__Impl rule__InputExpression__Group__1
- {
- pushFollow(FOLLOW_9);
- rule__InputExpression__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__InputExpression__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InputExpression__Group__0"
-
-
- // $ANTLR start "rule__InputExpression__Group__0__Impl"
- // InternalFlaDsl.g:1548:1: rule__InputExpression__Group__0__Impl : ( ( rule__InputExpression__Alternatives_0 ) ) ;
- public final void rule__InputExpression__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1552:1: ( ( ( rule__InputExpression__Alternatives_0 ) ) )
- // InternalFlaDsl.g:1553:1: ( ( rule__InputExpression__Alternatives_0 ) )
- {
- // InternalFlaDsl.g:1553:1: ( ( rule__InputExpression__Alternatives_0 ) )
- // InternalFlaDsl.g:1554:1: ( rule__InputExpression__Alternatives_0 )
- {
- before(grammarAccess.getInputExpressionAccess().getAlternatives_0());
- // InternalFlaDsl.g:1555:1: ( rule__InputExpression__Alternatives_0 )
- // InternalFlaDsl.g:1555:2: rule__InputExpression__Alternatives_0
- {
- pushFollow(FOLLOW_2);
- rule__InputExpression__Alternatives_0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInputExpressionAccess().getAlternatives_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InputExpression__Group__0__Impl"
-
-
- // $ANTLR start "rule__InputExpression__Group__1"
- // InternalFlaDsl.g:1565:1: rule__InputExpression__Group__1 : rule__InputExpression__Group__1__Impl rule__InputExpression__Group__2 ;
- public final void rule__InputExpression__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1569:1: ( rule__InputExpression__Group__1__Impl rule__InputExpression__Group__2 )
- // InternalFlaDsl.g:1570:2: rule__InputExpression__Group__1__Impl rule__InputExpression__Group__2
- {
- pushFollow(FOLLOW_10);
- rule__InputExpression__Group__1__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__InputExpression__Group__2();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InputExpression__Group__1"
-
-
- // $ANTLR start "rule__InputExpression__Group__1__Impl"
- // InternalFlaDsl.g:1577:1: rule__InputExpression__Group__1__Impl : ( '.' ) ;
- public final void rule__InputExpression__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1581:1: ( ( '.' ) )
- // InternalFlaDsl.g:1582:1: ( '.' )
- {
- // InternalFlaDsl.g:1582:1: ( '.' )
- // InternalFlaDsl.g:1583:1: '.'
- {
- before(grammarAccess.getInputExpressionAccess().getFullStopKeyword_1());
- match(input,36,FOLLOW_2);
- after(grammarAccess.getInputExpressionAccess().getFullStopKeyword_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InputExpression__Group__1__Impl"
-
-
- // $ANTLR start "rule__InputExpression__Group__2"
- // InternalFlaDsl.g:1596:1: rule__InputExpression__Group__2 : rule__InputExpression__Group__2__Impl ;
- public final void rule__InputExpression__Group__2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1600:1: ( rule__InputExpression__Group__2__Impl )
- // InternalFlaDsl.g:1601:2: rule__InputExpression__Group__2__Impl
- {
- pushFollow(FOLLOW_2);
- rule__InputExpression__Group__2__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InputExpression__Group__2"
-
-
- // $ANTLR start "rule__InputExpression__Group__2__Impl"
- // InternalFlaDsl.g:1607:1: rule__InputExpression__Group__2__Impl : ( ( rule__InputExpression__FailureExprAssignment_2 ) ) ;
- public final void rule__InputExpression__Group__2__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1611:1: ( ( ( rule__InputExpression__FailureExprAssignment_2 ) ) )
- // InternalFlaDsl.g:1612:1: ( ( rule__InputExpression__FailureExprAssignment_2 ) )
- {
- // InternalFlaDsl.g:1612:1: ( ( rule__InputExpression__FailureExprAssignment_2 ) )
- // InternalFlaDsl.g:1613:1: ( rule__InputExpression__FailureExprAssignment_2 )
- {
- before(grammarAccess.getInputExpressionAccess().getFailureExprAssignment_2());
- // InternalFlaDsl.g:1614:1: ( rule__InputExpression__FailureExprAssignment_2 )
- // InternalFlaDsl.g:1614:2: rule__InputExpression__FailureExprAssignment_2
- {
- pushFollow(FOLLOW_2);
- rule__InputExpression__FailureExprAssignment_2();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInputExpressionAccess().getFailureExprAssignment_2());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InputExpression__Group__2__Impl"
-
-
- // $ANTLR start "rule__OutputExpression__Group__0"
- // InternalFlaDsl.g:1630:1: rule__OutputExpression__Group__0 : rule__OutputExpression__Group__0__Impl rule__OutputExpression__Group__1 ;
- public final void rule__OutputExpression__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1634:1: ( rule__OutputExpression__Group__0__Impl rule__OutputExpression__Group__1 )
- // InternalFlaDsl.g:1635:2: rule__OutputExpression__Group__0__Impl rule__OutputExpression__Group__1
- {
- pushFollow(FOLLOW_9);
- rule__OutputExpression__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__OutputExpression__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutputExpression__Group__0"
-
-
- // $ANTLR start "rule__OutputExpression__Group__0__Impl"
- // InternalFlaDsl.g:1642:1: rule__OutputExpression__Group__0__Impl : ( ( rule__OutputExpression__Alternatives_0 ) ) ;
- public final void rule__OutputExpression__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1646:1: ( ( ( rule__OutputExpression__Alternatives_0 ) ) )
- // InternalFlaDsl.g:1647:1: ( ( rule__OutputExpression__Alternatives_0 ) )
- {
- // InternalFlaDsl.g:1647:1: ( ( rule__OutputExpression__Alternatives_0 ) )
- // InternalFlaDsl.g:1648:1: ( rule__OutputExpression__Alternatives_0 )
- {
- before(grammarAccess.getOutputExpressionAccess().getAlternatives_0());
- // InternalFlaDsl.g:1649:1: ( rule__OutputExpression__Alternatives_0 )
- // InternalFlaDsl.g:1649:2: rule__OutputExpression__Alternatives_0
- {
- pushFollow(FOLLOW_2);
- rule__OutputExpression__Alternatives_0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutputExpressionAccess().getAlternatives_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutputExpression__Group__0__Impl"
-
-
- // $ANTLR start "rule__OutputExpression__Group__1"
- // InternalFlaDsl.g:1659:1: rule__OutputExpression__Group__1 : rule__OutputExpression__Group__1__Impl rule__OutputExpression__Group__2 ;
- public final void rule__OutputExpression__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1663:1: ( rule__OutputExpression__Group__1__Impl rule__OutputExpression__Group__2 )
- // InternalFlaDsl.g:1664:2: rule__OutputExpression__Group__1__Impl rule__OutputExpression__Group__2
- {
- pushFollow(FOLLOW_10);
- rule__OutputExpression__Group__1__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__OutputExpression__Group__2();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutputExpression__Group__1"
-
-
- // $ANTLR start "rule__OutputExpression__Group__1__Impl"
- // InternalFlaDsl.g:1671:1: rule__OutputExpression__Group__1__Impl : ( '.' ) ;
- public final void rule__OutputExpression__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1675:1: ( ( '.' ) )
- // InternalFlaDsl.g:1676:1: ( '.' )
- {
- // InternalFlaDsl.g:1676:1: ( '.' )
- // InternalFlaDsl.g:1677:1: '.'
- {
- before(grammarAccess.getOutputExpressionAccess().getFullStopKeyword_1());
- match(input,36,FOLLOW_2);
- after(grammarAccess.getOutputExpressionAccess().getFullStopKeyword_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutputExpression__Group__1__Impl"
-
-
- // $ANTLR start "rule__OutputExpression__Group__2"
- // InternalFlaDsl.g:1690:1: rule__OutputExpression__Group__2 : rule__OutputExpression__Group__2__Impl ;
- public final void rule__OutputExpression__Group__2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1694:1: ( rule__OutputExpression__Group__2__Impl )
- // InternalFlaDsl.g:1695:2: rule__OutputExpression__Group__2__Impl
- {
- pushFollow(FOLLOW_2);
- rule__OutputExpression__Group__2__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutputExpression__Group__2"
-
-
- // $ANTLR start "rule__OutputExpression__Group__2__Impl"
- // InternalFlaDsl.g:1701:1: rule__OutputExpression__Group__2__Impl : ( ( rule__OutputExpression__FailureExprAssignment_2 ) ) ;
- public final void rule__OutputExpression__Group__2__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1705:1: ( ( ( rule__OutputExpression__FailureExprAssignment_2 ) ) )
- // InternalFlaDsl.g:1706:1: ( ( rule__OutputExpression__FailureExprAssignment_2 ) )
- {
- // InternalFlaDsl.g:1706:1: ( ( rule__OutputExpression__FailureExprAssignment_2 ) )
- // InternalFlaDsl.g:1707:1: ( rule__OutputExpression__FailureExprAssignment_2 )
- {
- before(grammarAccess.getOutputExpressionAccess().getFailureExprAssignment_2());
- // InternalFlaDsl.g:1708:1: ( rule__OutputExpression__FailureExprAssignment_2 )
- // InternalFlaDsl.g:1708:2: rule__OutputExpression__FailureExprAssignment_2
- {
- pushFollow(FOLLOW_2);
- rule__OutputExpression__FailureExprAssignment_2();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutputExpressionAccess().getFailureExprAssignment_2());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutputExpression__Group__2__Impl"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3__0"
- // InternalFlaDsl.g:1724:1: rule__InFailureExpr__Group_3__0 : rule__InFailureExpr__Group_3__0__Impl rule__InFailureExpr__Group_3__1 ;
- public final void rule__InFailureExpr__Group_3__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1728:1: ( rule__InFailureExpr__Group_3__0__Impl rule__InFailureExpr__Group_3__1 )
- // InternalFlaDsl.g:1729:2: rule__InFailureExpr__Group_3__0__Impl rule__InFailureExpr__Group_3__1
- {
- pushFollow(FOLLOW_11);
- rule__InFailureExpr__Group_3__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__Group_3__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3__0"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3__0__Impl"
- // InternalFlaDsl.g:1736:1: rule__InFailureExpr__Group_3__0__Impl : ( '{' ) ;
- public final void rule__InFailureExpr__Group_3__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1740:1: ( ( '{' ) )
- // InternalFlaDsl.g:1741:1: ( '{' )
- {
- // InternalFlaDsl.g:1741:1: ( '{' )
- // InternalFlaDsl.g:1742:1: '{'
- {
- before(grammarAccess.getInFailureExprAccess().getLeftCurlyBracketKeyword_3_0());
- match(input,37,FOLLOW_2);
- after(grammarAccess.getInFailureExprAccess().getLeftCurlyBracketKeyword_3_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3__0__Impl"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3__1"
- // InternalFlaDsl.g:1755:1: rule__InFailureExpr__Group_3__1 : rule__InFailureExpr__Group_3__1__Impl rule__InFailureExpr__Group_3__2 ;
- public final void rule__InFailureExpr__Group_3__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1759:1: ( rule__InFailureExpr__Group_3__1__Impl rule__InFailureExpr__Group_3__2 )
- // InternalFlaDsl.g:1760:2: rule__InFailureExpr__Group_3__1__Impl rule__InFailureExpr__Group_3__2
- {
- pushFollow(FOLLOW_7);
- rule__InFailureExpr__Group_3__1__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__Group_3__2();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3__1"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3__1__Impl"
- // InternalFlaDsl.g:1767:1: rule__InFailureExpr__Group_3__1__Impl : ( ( rule__InFailureExpr__FailuresAssignment_3_1 ) ) ;
- public final void rule__InFailureExpr__Group_3__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1771:1: ( ( ( rule__InFailureExpr__FailuresAssignment_3_1 ) ) )
- // InternalFlaDsl.g:1772:1: ( ( rule__InFailureExpr__FailuresAssignment_3_1 ) )
- {
- // InternalFlaDsl.g:1772:1: ( ( rule__InFailureExpr__FailuresAssignment_3_1 ) )
- // InternalFlaDsl.g:1773:1: ( rule__InFailureExpr__FailuresAssignment_3_1 )
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresAssignment_3_1());
- // InternalFlaDsl.g:1774:1: ( rule__InFailureExpr__FailuresAssignment_3_1 )
- // InternalFlaDsl.g:1774:2: rule__InFailureExpr__FailuresAssignment_3_1
- {
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__FailuresAssignment_3_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInFailureExprAccess().getFailuresAssignment_3_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3__1__Impl"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3__2"
- // InternalFlaDsl.g:1784:1: rule__InFailureExpr__Group_3__2 : rule__InFailureExpr__Group_3__2__Impl rule__InFailureExpr__Group_3__3 ;
- public final void rule__InFailureExpr__Group_3__2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1788:1: ( rule__InFailureExpr__Group_3__2__Impl rule__InFailureExpr__Group_3__3 )
- // InternalFlaDsl.g:1789:2: rule__InFailureExpr__Group_3__2__Impl rule__InFailureExpr__Group_3__3
- {
- pushFollow(FOLLOW_12);
- rule__InFailureExpr__Group_3__2__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__Group_3__3();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3__2"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3__2__Impl"
- // InternalFlaDsl.g:1796:1: rule__InFailureExpr__Group_3__2__Impl : ( ( ( rule__InFailureExpr__Group_3_2__0 ) ) ( ( rule__InFailureExpr__Group_3_2__0 )* ) ) ;
- public final void rule__InFailureExpr__Group_3__2__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1800:1: ( ( ( ( rule__InFailureExpr__Group_3_2__0 ) ) ( ( rule__InFailureExpr__Group_3_2__0 )* ) ) )
- // InternalFlaDsl.g:1801:1: ( ( ( rule__InFailureExpr__Group_3_2__0 ) ) ( ( rule__InFailureExpr__Group_3_2__0 )* ) )
- {
- // InternalFlaDsl.g:1801:1: ( ( ( rule__InFailureExpr__Group_3_2__0 ) ) ( ( rule__InFailureExpr__Group_3_2__0 )* ) )
- // InternalFlaDsl.g:1802:1: ( ( rule__InFailureExpr__Group_3_2__0 ) ) ( ( rule__InFailureExpr__Group_3_2__0 )* )
- {
- // InternalFlaDsl.g:1802:1: ( ( rule__InFailureExpr__Group_3_2__0 ) )
- // InternalFlaDsl.g:1803:1: ( rule__InFailureExpr__Group_3_2__0 )
- {
- before(grammarAccess.getInFailureExprAccess().getGroup_3_2());
- // InternalFlaDsl.g:1804:1: ( rule__InFailureExpr__Group_3_2__0 )
- // InternalFlaDsl.g:1804:2: rule__InFailureExpr__Group_3_2__0
- {
- pushFollow(FOLLOW_8);
- rule__InFailureExpr__Group_3_2__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInFailureExprAccess().getGroup_3_2());
-
- }
-
- // InternalFlaDsl.g:1807:1: ( ( rule__InFailureExpr__Group_3_2__0 )* )
- // InternalFlaDsl.g:1808:1: ( rule__InFailureExpr__Group_3_2__0 )*
- {
- before(grammarAccess.getInFailureExprAccess().getGroup_3_2());
- // InternalFlaDsl.g:1809:1: ( rule__InFailureExpr__Group_3_2__0 )*
- loop17:
- do {
- int alt17=2;
- int LA17_0 = input.LA(1);
-
- if ( (LA17_0==35) ) {
- alt17=1;
- }
-
-
- switch (alt17) {
- case 1 :
- // InternalFlaDsl.g:1809:2: rule__InFailureExpr__Group_3_2__0
- {
- pushFollow(FOLLOW_8);
- rule__InFailureExpr__Group_3_2__0();
-
- state._fsp--;
-
-
- }
- break;
-
- default :
- break loop17;
- }
- } while (true);
-
- after(grammarAccess.getInFailureExprAccess().getGroup_3_2());
-
- }
-
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3__2__Impl"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3__3"
- // InternalFlaDsl.g:1820:1: rule__InFailureExpr__Group_3__3 : rule__InFailureExpr__Group_3__3__Impl ;
- public final void rule__InFailureExpr__Group_3__3() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1824:1: ( rule__InFailureExpr__Group_3__3__Impl )
- // InternalFlaDsl.g:1825:2: rule__InFailureExpr__Group_3__3__Impl
- {
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__Group_3__3__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3__3"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3__3__Impl"
- // InternalFlaDsl.g:1831:1: rule__InFailureExpr__Group_3__3__Impl : ( '}' ) ;
- public final void rule__InFailureExpr__Group_3__3__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1835:1: ( ( '}' ) )
- // InternalFlaDsl.g:1836:1: ( '}' )
- {
- // InternalFlaDsl.g:1836:1: ( '}' )
- // InternalFlaDsl.g:1837:1: '}'
- {
- before(grammarAccess.getInFailureExprAccess().getRightCurlyBracketKeyword_3_3());
- match(input,38,FOLLOW_2);
- after(grammarAccess.getInFailureExprAccess().getRightCurlyBracketKeyword_3_3());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3__3__Impl"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3_2__0"
- // InternalFlaDsl.g:1858:1: rule__InFailureExpr__Group_3_2__0 : rule__InFailureExpr__Group_3_2__0__Impl rule__InFailureExpr__Group_3_2__1 ;
- public final void rule__InFailureExpr__Group_3_2__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1862:1: ( rule__InFailureExpr__Group_3_2__0__Impl rule__InFailureExpr__Group_3_2__1 )
- // InternalFlaDsl.g:1863:2: rule__InFailureExpr__Group_3_2__0__Impl rule__InFailureExpr__Group_3_2__1
- {
- pushFollow(FOLLOW_11);
- rule__InFailureExpr__Group_3_2__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__Group_3_2__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3_2__0"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3_2__0__Impl"
- // InternalFlaDsl.g:1870:1: rule__InFailureExpr__Group_3_2__0__Impl : ( ',' ) ;
- public final void rule__InFailureExpr__Group_3_2__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1874:1: ( ( ',' ) )
- // InternalFlaDsl.g:1875:1: ( ',' )
- {
- // InternalFlaDsl.g:1875:1: ( ',' )
- // InternalFlaDsl.g:1876:1: ','
- {
- before(grammarAccess.getInFailureExprAccess().getCommaKeyword_3_2_0());
- match(input,35,FOLLOW_2);
- after(grammarAccess.getInFailureExprAccess().getCommaKeyword_3_2_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3_2__0__Impl"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3_2__1"
- // InternalFlaDsl.g:1889:1: rule__InFailureExpr__Group_3_2__1 : rule__InFailureExpr__Group_3_2__1__Impl ;
- public final void rule__InFailureExpr__Group_3_2__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1893:1: ( rule__InFailureExpr__Group_3_2__1__Impl )
- // InternalFlaDsl.g:1894:2: rule__InFailureExpr__Group_3_2__1__Impl
- {
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__Group_3_2__1__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3_2__1"
-
-
- // $ANTLR start "rule__InFailureExpr__Group_3_2__1__Impl"
- // InternalFlaDsl.g:1900:1: rule__InFailureExpr__Group_3_2__1__Impl : ( ( rule__InFailureExpr__FailuresAssignment_3_2_1 ) ) ;
- public final void rule__InFailureExpr__Group_3_2__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1904:1: ( ( ( rule__InFailureExpr__FailuresAssignment_3_2_1 ) ) )
- // InternalFlaDsl.g:1905:1: ( ( rule__InFailureExpr__FailuresAssignment_3_2_1 ) )
- {
- // InternalFlaDsl.g:1905:1: ( ( rule__InFailureExpr__FailuresAssignment_3_2_1 ) )
- // InternalFlaDsl.g:1906:1: ( rule__InFailureExpr__FailuresAssignment_3_2_1 )
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresAssignment_3_2_1());
- // InternalFlaDsl.g:1907:1: ( rule__InFailureExpr__FailuresAssignment_3_2_1 )
- // InternalFlaDsl.g:1907:2: rule__InFailureExpr__FailuresAssignment_3_2_1
- {
- pushFollow(FOLLOW_2);
- rule__InFailureExpr__FailuresAssignment_3_2_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getInFailureExprAccess().getFailuresAssignment_3_2_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__Group_3_2__1__Impl"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3__0"
- // InternalFlaDsl.g:1921:1: rule__OutFailureExpr__Group_3__0 : rule__OutFailureExpr__Group_3__0__Impl rule__OutFailureExpr__Group_3__1 ;
- public final void rule__OutFailureExpr__Group_3__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1925:1: ( rule__OutFailureExpr__Group_3__0__Impl rule__OutFailureExpr__Group_3__1 )
- // InternalFlaDsl.g:1926:2: rule__OutFailureExpr__Group_3__0__Impl rule__OutFailureExpr__Group_3__1
- {
- pushFollow(FOLLOW_11);
- rule__OutFailureExpr__Group_3__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__Group_3__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3__0"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3__0__Impl"
- // InternalFlaDsl.g:1933:1: rule__OutFailureExpr__Group_3__0__Impl : ( '{' ) ;
- public final void rule__OutFailureExpr__Group_3__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1937:1: ( ( '{' ) )
- // InternalFlaDsl.g:1938:1: ( '{' )
- {
- // InternalFlaDsl.g:1938:1: ( '{' )
- // InternalFlaDsl.g:1939:1: '{'
- {
- before(grammarAccess.getOutFailureExprAccess().getLeftCurlyBracketKeyword_3_0());
- match(input,37,FOLLOW_2);
- after(grammarAccess.getOutFailureExprAccess().getLeftCurlyBracketKeyword_3_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3__0__Impl"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3__1"
- // InternalFlaDsl.g:1952:1: rule__OutFailureExpr__Group_3__1 : rule__OutFailureExpr__Group_3__1__Impl rule__OutFailureExpr__Group_3__2 ;
- public final void rule__OutFailureExpr__Group_3__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1956:1: ( rule__OutFailureExpr__Group_3__1__Impl rule__OutFailureExpr__Group_3__2 )
- // InternalFlaDsl.g:1957:2: rule__OutFailureExpr__Group_3__1__Impl rule__OutFailureExpr__Group_3__2
- {
- pushFollow(FOLLOW_7);
- rule__OutFailureExpr__Group_3__1__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__Group_3__2();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3__1"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3__1__Impl"
- // InternalFlaDsl.g:1964:1: rule__OutFailureExpr__Group_3__1__Impl : ( ( rule__OutFailureExpr__FailuresAssignment_3_1 ) ) ;
- public final void rule__OutFailureExpr__Group_3__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1968:1: ( ( ( rule__OutFailureExpr__FailuresAssignment_3_1 ) ) )
- // InternalFlaDsl.g:1969:1: ( ( rule__OutFailureExpr__FailuresAssignment_3_1 ) )
- {
- // InternalFlaDsl.g:1969:1: ( ( rule__OutFailureExpr__FailuresAssignment_3_1 ) )
- // InternalFlaDsl.g:1970:1: ( rule__OutFailureExpr__FailuresAssignment_3_1 )
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_3_1());
- // InternalFlaDsl.g:1971:1: ( rule__OutFailureExpr__FailuresAssignment_3_1 )
- // InternalFlaDsl.g:1971:2: rule__OutFailureExpr__FailuresAssignment_3_1
- {
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__FailuresAssignment_3_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_3_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3__1__Impl"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3__2"
- // InternalFlaDsl.g:1981:1: rule__OutFailureExpr__Group_3__2 : rule__OutFailureExpr__Group_3__2__Impl rule__OutFailureExpr__Group_3__3 ;
- public final void rule__OutFailureExpr__Group_3__2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1985:1: ( rule__OutFailureExpr__Group_3__2__Impl rule__OutFailureExpr__Group_3__3 )
- // InternalFlaDsl.g:1986:2: rule__OutFailureExpr__Group_3__2__Impl rule__OutFailureExpr__Group_3__3
- {
- pushFollow(FOLLOW_12);
- rule__OutFailureExpr__Group_3__2__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__Group_3__3();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3__2"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3__2__Impl"
- // InternalFlaDsl.g:1993:1: rule__OutFailureExpr__Group_3__2__Impl : ( ( ( rule__OutFailureExpr__Group_3_2__0 ) ) ( ( rule__OutFailureExpr__Group_3_2__0 )* ) ) ;
- public final void rule__OutFailureExpr__Group_3__2__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:1997:1: ( ( ( ( rule__OutFailureExpr__Group_3_2__0 ) ) ( ( rule__OutFailureExpr__Group_3_2__0 )* ) ) )
- // InternalFlaDsl.g:1998:1: ( ( ( rule__OutFailureExpr__Group_3_2__0 ) ) ( ( rule__OutFailureExpr__Group_3_2__0 )* ) )
- {
- // InternalFlaDsl.g:1998:1: ( ( ( rule__OutFailureExpr__Group_3_2__0 ) ) ( ( rule__OutFailureExpr__Group_3_2__0 )* ) )
- // InternalFlaDsl.g:1999:1: ( ( rule__OutFailureExpr__Group_3_2__0 ) ) ( ( rule__OutFailureExpr__Group_3_2__0 )* )
- {
- // InternalFlaDsl.g:1999:1: ( ( rule__OutFailureExpr__Group_3_2__0 ) )
- // InternalFlaDsl.g:2000:1: ( rule__OutFailureExpr__Group_3_2__0 )
- {
- before(grammarAccess.getOutFailureExprAccess().getGroup_3_2());
- // InternalFlaDsl.g:2001:1: ( rule__OutFailureExpr__Group_3_2__0 )
- // InternalFlaDsl.g:2001:2: rule__OutFailureExpr__Group_3_2__0
- {
- pushFollow(FOLLOW_8);
- rule__OutFailureExpr__Group_3_2__0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutFailureExprAccess().getGroup_3_2());
-
- }
-
- // InternalFlaDsl.g:2004:1: ( ( rule__OutFailureExpr__Group_3_2__0 )* )
- // InternalFlaDsl.g:2005:1: ( rule__OutFailureExpr__Group_3_2__0 )*
- {
- before(grammarAccess.getOutFailureExprAccess().getGroup_3_2());
- // InternalFlaDsl.g:2006:1: ( rule__OutFailureExpr__Group_3_2__0 )*
- loop18:
- do {
- int alt18=2;
- int LA18_0 = input.LA(1);
-
- if ( (LA18_0==35) ) {
- alt18=1;
- }
-
-
- switch (alt18) {
- case 1 :
- // InternalFlaDsl.g:2006:2: rule__OutFailureExpr__Group_3_2__0
- {
- pushFollow(FOLLOW_8);
- rule__OutFailureExpr__Group_3_2__0();
-
- state._fsp--;
-
-
- }
- break;
-
- default :
- break loop18;
- }
- } while (true);
-
- after(grammarAccess.getOutFailureExprAccess().getGroup_3_2());
-
- }
-
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3__2__Impl"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3__3"
- // InternalFlaDsl.g:2017:1: rule__OutFailureExpr__Group_3__3 : rule__OutFailureExpr__Group_3__3__Impl ;
- public final void rule__OutFailureExpr__Group_3__3() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2021:1: ( rule__OutFailureExpr__Group_3__3__Impl )
- // InternalFlaDsl.g:2022:2: rule__OutFailureExpr__Group_3__3__Impl
- {
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__Group_3__3__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3__3"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3__3__Impl"
- // InternalFlaDsl.g:2028:1: rule__OutFailureExpr__Group_3__3__Impl : ( '}' ) ;
- public final void rule__OutFailureExpr__Group_3__3__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2032:1: ( ( '}' ) )
- // InternalFlaDsl.g:2033:1: ( '}' )
- {
- // InternalFlaDsl.g:2033:1: ( '}' )
- // InternalFlaDsl.g:2034:1: '}'
- {
- before(grammarAccess.getOutFailureExprAccess().getRightCurlyBracketKeyword_3_3());
- match(input,38,FOLLOW_2);
- after(grammarAccess.getOutFailureExprAccess().getRightCurlyBracketKeyword_3_3());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3__3__Impl"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3_2__0"
- // InternalFlaDsl.g:2055:1: rule__OutFailureExpr__Group_3_2__0 : rule__OutFailureExpr__Group_3_2__0__Impl rule__OutFailureExpr__Group_3_2__1 ;
- public final void rule__OutFailureExpr__Group_3_2__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2059:1: ( rule__OutFailureExpr__Group_3_2__0__Impl rule__OutFailureExpr__Group_3_2__1 )
- // InternalFlaDsl.g:2060:2: rule__OutFailureExpr__Group_3_2__0__Impl rule__OutFailureExpr__Group_3_2__1
- {
- pushFollow(FOLLOW_11);
- rule__OutFailureExpr__Group_3_2__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__Group_3_2__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3_2__0"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3_2__0__Impl"
- // InternalFlaDsl.g:2067:1: rule__OutFailureExpr__Group_3_2__0__Impl : ( ',' ) ;
- public final void rule__OutFailureExpr__Group_3_2__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2071:1: ( ( ',' ) )
- // InternalFlaDsl.g:2072:1: ( ',' )
- {
- // InternalFlaDsl.g:2072:1: ( ',' )
- // InternalFlaDsl.g:2073:1: ','
- {
- before(grammarAccess.getOutFailureExprAccess().getCommaKeyword_3_2_0());
- match(input,35,FOLLOW_2);
- after(grammarAccess.getOutFailureExprAccess().getCommaKeyword_3_2_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3_2__0__Impl"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3_2__1"
- // InternalFlaDsl.g:2086:1: rule__OutFailureExpr__Group_3_2__1 : rule__OutFailureExpr__Group_3_2__1__Impl ;
- public final void rule__OutFailureExpr__Group_3_2__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2090:1: ( rule__OutFailureExpr__Group_3_2__1__Impl )
- // InternalFlaDsl.g:2091:2: rule__OutFailureExpr__Group_3_2__1__Impl
- {
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__Group_3_2__1__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3_2__1"
-
-
- // $ANTLR start "rule__OutFailureExpr__Group_3_2__1__Impl"
- // InternalFlaDsl.g:2097:1: rule__OutFailureExpr__Group_3_2__1__Impl : ( ( rule__OutFailureExpr__FailuresAssignment_3_2_1 ) ) ;
- public final void rule__OutFailureExpr__Group_3_2__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2101:1: ( ( ( rule__OutFailureExpr__FailuresAssignment_3_2_1 ) ) )
- // InternalFlaDsl.g:2102:1: ( ( rule__OutFailureExpr__FailuresAssignment_3_2_1 ) )
- {
- // InternalFlaDsl.g:2102:1: ( ( rule__OutFailureExpr__FailuresAssignment_3_2_1 ) )
- // InternalFlaDsl.g:2103:1: ( rule__OutFailureExpr__FailuresAssignment_3_2_1 )
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_3_2_1());
- // InternalFlaDsl.g:2104:1: ( rule__OutFailureExpr__FailuresAssignment_3_2_1 )
- // InternalFlaDsl.g:2104:2: rule__OutFailureExpr__FailuresAssignment_3_2_1
- {
- pushFollow(FOLLOW_2);
- rule__OutFailureExpr__FailuresAssignment_3_2_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresAssignment_3_2_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__Group_3_2__1__Impl"
-
-
- // $ANTLR start "rule__FailureDefinition__Group__0"
- // InternalFlaDsl.g:2118:1: rule__FailureDefinition__Group__0 : rule__FailureDefinition__Group__0__Impl rule__FailureDefinition__Group__1 ;
- public final void rule__FailureDefinition__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2122:1: ( rule__FailureDefinition__Group__0__Impl rule__FailureDefinition__Group__1 )
- // InternalFlaDsl.g:2123:2: rule__FailureDefinition__Group__0__Impl rule__FailureDefinition__Group__1
- {
- pushFollow(FOLLOW_11);
- rule__FailureDefinition__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__FailureDefinition__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__Group__0"
-
-
- // $ANTLR start "rule__FailureDefinition__Group__0__Impl"
- // InternalFlaDsl.g:2130:1: rule__FailureDefinition__Group__0__Impl : ( () ) ;
- public final void rule__FailureDefinition__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2134:1: ( ( () ) )
- // InternalFlaDsl.g:2135:1: ( () )
- {
- // InternalFlaDsl.g:2135:1: ( () )
- // InternalFlaDsl.g:2136:1: ()
- {
- before(grammarAccess.getFailureDefinitionAccess().getFailureDefinitionAction_0());
- // InternalFlaDsl.g:2137:1: ()
- // InternalFlaDsl.g:2139:1:
- {
- }
-
- after(grammarAccess.getFailureDefinitionAccess().getFailureDefinitionAction_0());
-
- }
-
-
- }
-
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__Group__0__Impl"
-
-
- // $ANTLR start "rule__FailureDefinition__Group__1"
- // InternalFlaDsl.g:2149:1: rule__FailureDefinition__Group__1 : rule__FailureDefinition__Group__1__Impl rule__FailureDefinition__Group__2 ;
- public final void rule__FailureDefinition__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2153:1: ( rule__FailureDefinition__Group__1__Impl rule__FailureDefinition__Group__2 )
- // InternalFlaDsl.g:2154:2: rule__FailureDefinition__Group__1__Impl rule__FailureDefinition__Group__2
- {
- pushFollow(FOLLOW_9);
- rule__FailureDefinition__Group__1__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__FailureDefinition__Group__2();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__Group__1"
-
-
- // $ANTLR start "rule__FailureDefinition__Group__1__Impl"
- // InternalFlaDsl.g:2161:1: rule__FailureDefinition__Group__1__Impl : ( ( rule__FailureDefinition__TypeAssignment_1 ) ) ;
- public final void rule__FailureDefinition__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2165:1: ( ( ( rule__FailureDefinition__TypeAssignment_1 ) ) )
- // InternalFlaDsl.g:2166:1: ( ( rule__FailureDefinition__TypeAssignment_1 ) )
- {
- // InternalFlaDsl.g:2166:1: ( ( rule__FailureDefinition__TypeAssignment_1 ) )
- // InternalFlaDsl.g:2167:1: ( rule__FailureDefinition__TypeAssignment_1 )
- {
- before(grammarAccess.getFailureDefinitionAccess().getTypeAssignment_1());
- // InternalFlaDsl.g:2168:1: ( rule__FailureDefinition__TypeAssignment_1 )
- // InternalFlaDsl.g:2168:2: rule__FailureDefinition__TypeAssignment_1
- {
- pushFollow(FOLLOW_2);
- rule__FailureDefinition__TypeAssignment_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getFailureDefinitionAccess().getTypeAssignment_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__Group__1__Impl"
-
-
- // $ANTLR start "rule__FailureDefinition__Group__2"
- // InternalFlaDsl.g:2178:1: rule__FailureDefinition__Group__2 : rule__FailureDefinition__Group__2__Impl ;
- public final void rule__FailureDefinition__Group__2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2182:1: ( rule__FailureDefinition__Group__2__Impl )
- // InternalFlaDsl.g:2183:2: rule__FailureDefinition__Group__2__Impl
- {
- pushFollow(FOLLOW_2);
- rule__FailureDefinition__Group__2__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__Group__2"
-
-
- // $ANTLR start "rule__FailureDefinition__Group__2__Impl"
- // InternalFlaDsl.g:2189:1: rule__FailureDefinition__Group__2__Impl : ( ( rule__FailureDefinition__Group_2__0 )? ) ;
- public final void rule__FailureDefinition__Group__2__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2193:1: ( ( ( rule__FailureDefinition__Group_2__0 )? ) )
- // InternalFlaDsl.g:2194:1: ( ( rule__FailureDefinition__Group_2__0 )? )
- {
- // InternalFlaDsl.g:2194:1: ( ( rule__FailureDefinition__Group_2__0 )? )
- // InternalFlaDsl.g:2195:1: ( rule__FailureDefinition__Group_2__0 )?
- {
- before(grammarAccess.getFailureDefinitionAccess().getGroup_2());
- // InternalFlaDsl.g:2196:1: ( rule__FailureDefinition__Group_2__0 )?
- int alt19=2;
- int LA19_0 = input.LA(1);
-
- if ( (LA19_0==36) ) {
- alt19=1;
- }
- switch (alt19) {
- case 1 :
- // InternalFlaDsl.g:2196:2: rule__FailureDefinition__Group_2__0
- {
- pushFollow(FOLLOW_2);
- rule__FailureDefinition__Group_2__0();
-
- state._fsp--;
-
-
- }
- break;
-
- }
-
- after(grammarAccess.getFailureDefinitionAccess().getGroup_2());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__Group__2__Impl"
-
-
- // $ANTLR start "rule__FailureDefinition__Group_2__0"
- // InternalFlaDsl.g:2212:1: rule__FailureDefinition__Group_2__0 : rule__FailureDefinition__Group_2__0__Impl rule__FailureDefinition__Group_2__1 ;
- public final void rule__FailureDefinition__Group_2__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2216:1: ( rule__FailureDefinition__Group_2__0__Impl rule__FailureDefinition__Group_2__1 )
- // InternalFlaDsl.g:2217:2: rule__FailureDefinition__Group_2__0__Impl rule__FailureDefinition__Group_2__1
- {
- pushFollow(FOLLOW_13);
- rule__FailureDefinition__Group_2__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__FailureDefinition__Group_2__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__Group_2__0"
-
-
- // $ANTLR start "rule__FailureDefinition__Group_2__0__Impl"
- // InternalFlaDsl.g:2224:1: rule__FailureDefinition__Group_2__0__Impl : ( '.' ) ;
- public final void rule__FailureDefinition__Group_2__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2228:1: ( ( '.' ) )
- // InternalFlaDsl.g:2229:1: ( '.' )
- {
- // InternalFlaDsl.g:2229:1: ( '.' )
- // InternalFlaDsl.g:2230:1: '.'
- {
- before(grammarAccess.getFailureDefinitionAccess().getFullStopKeyword_2_0());
- match(input,36,FOLLOW_2);
- after(grammarAccess.getFailureDefinitionAccess().getFullStopKeyword_2_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__Group_2__0__Impl"
-
-
- // $ANTLR start "rule__FailureDefinition__Group_2__1"
- // InternalFlaDsl.g:2243:1: rule__FailureDefinition__Group_2__1 : rule__FailureDefinition__Group_2__1__Impl ;
- public final void rule__FailureDefinition__Group_2__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2247:1: ( rule__FailureDefinition__Group_2__1__Impl )
- // InternalFlaDsl.g:2248:2: rule__FailureDefinition__Group_2__1__Impl
- {
- pushFollow(FOLLOW_2);
- rule__FailureDefinition__Group_2__1__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__Group_2__1"
-
-
- // $ANTLR start "rule__FailureDefinition__Group_2__1__Impl"
- // InternalFlaDsl.g:2254:1: rule__FailureDefinition__Group_2__1__Impl : ( ( rule__FailureDefinition__AcidAvoidableAssignment_2_1 ) ) ;
- public final void rule__FailureDefinition__Group_2__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2258:1: ( ( ( rule__FailureDefinition__AcidAvoidableAssignment_2_1 ) ) )
- // InternalFlaDsl.g:2259:1: ( ( rule__FailureDefinition__AcidAvoidableAssignment_2_1 ) )
- {
- // InternalFlaDsl.g:2259:1: ( ( rule__FailureDefinition__AcidAvoidableAssignment_2_1 ) )
- // InternalFlaDsl.g:2260:1: ( rule__FailureDefinition__AcidAvoidableAssignment_2_1 )
- {
- before(grammarAccess.getFailureDefinitionAccess().getAcidAvoidableAssignment_2_1());
- // InternalFlaDsl.g:2261:1: ( rule__FailureDefinition__AcidAvoidableAssignment_2_1 )
- // InternalFlaDsl.g:2261:2: rule__FailureDefinition__AcidAvoidableAssignment_2_1
- {
- pushFollow(FOLLOW_2);
- rule__FailureDefinition__AcidAvoidableAssignment_2_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getFailureDefinitionAccess().getAcidAvoidableAssignment_2_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__Group_2__1__Impl"
-
-
- // $ANTLR start "rule__NoFailureDefinition__Group__0"
- // InternalFlaDsl.g:2275:1: rule__NoFailureDefinition__Group__0 : rule__NoFailureDefinition__Group__0__Impl rule__NoFailureDefinition__Group__1 ;
- public final void rule__NoFailureDefinition__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2279:1: ( rule__NoFailureDefinition__Group__0__Impl rule__NoFailureDefinition__Group__1 )
- // InternalFlaDsl.g:2280:2: rule__NoFailureDefinition__Group__0__Impl rule__NoFailureDefinition__Group__1
- {
- pushFollow(FOLLOW_14);
- rule__NoFailureDefinition__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__NoFailureDefinition__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__NoFailureDefinition__Group__0"
-
-
- // $ANTLR start "rule__NoFailureDefinition__Group__0__Impl"
- // InternalFlaDsl.g:2287:1: rule__NoFailureDefinition__Group__0__Impl : ( () ) ;
- public final void rule__NoFailureDefinition__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2291:1: ( ( () ) )
- // InternalFlaDsl.g:2292:1: ( () )
- {
- // InternalFlaDsl.g:2292:1: ( () )
- // InternalFlaDsl.g:2293:1: ()
- {
- before(grammarAccess.getNoFailureDefinitionAccess().getNoFailureDefinitionAction_0());
- // InternalFlaDsl.g:2294:1: ()
- // InternalFlaDsl.g:2296:1:
- {
- }
-
- after(grammarAccess.getNoFailureDefinitionAccess().getNoFailureDefinitionAction_0());
-
- }
-
-
- }
-
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__NoFailureDefinition__Group__0__Impl"
-
-
- // $ANTLR start "rule__NoFailureDefinition__Group__1"
- // InternalFlaDsl.g:2306:1: rule__NoFailureDefinition__Group__1 : rule__NoFailureDefinition__Group__1__Impl ;
- public final void rule__NoFailureDefinition__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2310:1: ( rule__NoFailureDefinition__Group__1__Impl )
- // InternalFlaDsl.g:2311:2: rule__NoFailureDefinition__Group__1__Impl
- {
- pushFollow(FOLLOW_2);
- rule__NoFailureDefinition__Group__1__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__NoFailureDefinition__Group__1"
-
-
- // $ANTLR start "rule__NoFailureDefinition__Group__1__Impl"
- // InternalFlaDsl.g:2317:1: rule__NoFailureDefinition__Group__1__Impl : ( 'noFailure' ) ;
- public final void rule__NoFailureDefinition__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2321:1: ( ( 'noFailure' ) )
- // InternalFlaDsl.g:2322:1: ( 'noFailure' )
- {
- // InternalFlaDsl.g:2322:1: ( 'noFailure' )
- // InternalFlaDsl.g:2323:1: 'noFailure'
- {
- before(grammarAccess.getNoFailureDefinitionAccess().getNoFailureKeyword_1());
- match(input,39,FOLLOW_2);
- after(grammarAccess.getNoFailureDefinitionAccess().getNoFailureKeyword_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__NoFailureDefinition__Group__1__Impl"
-
-
- // $ANTLR start "rule__ComplexNofailureDefinition__Group__0"
- // InternalFlaDsl.g:2340:1: rule__ComplexNofailureDefinition__Group__0 : rule__ComplexNofailureDefinition__Group__0__Impl rule__ComplexNofailureDefinition__Group__1 ;
- public final void rule__ComplexNofailureDefinition__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2344:1: ( rule__ComplexNofailureDefinition__Group__0__Impl rule__ComplexNofailureDefinition__Group__1 )
- // InternalFlaDsl.g:2345:2: rule__ComplexNofailureDefinition__Group__0__Impl rule__ComplexNofailureDefinition__Group__1
- {
- pushFollow(FOLLOW_14);
- rule__ComplexNofailureDefinition__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ComplexNofailureDefinition__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ComplexNofailureDefinition__Group__0"
-
-
- // $ANTLR start "rule__ComplexNofailureDefinition__Group__0__Impl"
- // InternalFlaDsl.g:2352:1: rule__ComplexNofailureDefinition__Group__0__Impl : ( () ) ;
- public final void rule__ComplexNofailureDefinition__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2356:1: ( ( () ) )
- // InternalFlaDsl.g:2357:1: ( () )
- {
- // InternalFlaDsl.g:2357:1: ( () )
- // InternalFlaDsl.g:2358:1: ()
- {
- before(grammarAccess.getComplexNofailureDefinitionAccess().getNoFailureDefinitionAction_0());
- // InternalFlaDsl.g:2359:1: ()
- // InternalFlaDsl.g:2361:1:
- {
- }
-
- after(grammarAccess.getComplexNofailureDefinitionAccess().getNoFailureDefinitionAction_0());
-
- }
-
-
- }
-
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ComplexNofailureDefinition__Group__0__Impl"
-
-
- // $ANTLR start "rule__ComplexNofailureDefinition__Group__1"
- // InternalFlaDsl.g:2371:1: rule__ComplexNofailureDefinition__Group__1 : rule__ComplexNofailureDefinition__Group__1__Impl rule__ComplexNofailureDefinition__Group__2 ;
- public final void rule__ComplexNofailureDefinition__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2375:1: ( rule__ComplexNofailureDefinition__Group__1__Impl rule__ComplexNofailureDefinition__Group__2 )
- // InternalFlaDsl.g:2376:2: rule__ComplexNofailureDefinition__Group__1__Impl rule__ComplexNofailureDefinition__Group__2
- {
- pushFollow(FOLLOW_9);
- rule__ComplexNofailureDefinition__Group__1__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ComplexNofailureDefinition__Group__2();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ComplexNofailureDefinition__Group__1"
-
-
- // $ANTLR start "rule__ComplexNofailureDefinition__Group__1__Impl"
- // InternalFlaDsl.g:2383:1: rule__ComplexNofailureDefinition__Group__1__Impl : ( 'noFailure' ) ;
- public final void rule__ComplexNofailureDefinition__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2387:1: ( ( 'noFailure' ) )
- // InternalFlaDsl.g:2388:1: ( 'noFailure' )
- {
- // InternalFlaDsl.g:2388:1: ( 'noFailure' )
- // InternalFlaDsl.g:2389:1: 'noFailure'
- {
- before(grammarAccess.getComplexNofailureDefinitionAccess().getNoFailureKeyword_1());
- match(input,39,FOLLOW_2);
- after(grammarAccess.getComplexNofailureDefinitionAccess().getNoFailureKeyword_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ComplexNofailureDefinition__Group__1__Impl"
-
-
- // $ANTLR start "rule__ComplexNofailureDefinition__Group__2"
- // InternalFlaDsl.g:2402:1: rule__ComplexNofailureDefinition__Group__2 : rule__ComplexNofailureDefinition__Group__2__Impl rule__ComplexNofailureDefinition__Group__3 ;
- public final void rule__ComplexNofailureDefinition__Group__2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2406:1: ( rule__ComplexNofailureDefinition__Group__2__Impl rule__ComplexNofailureDefinition__Group__3 )
- // InternalFlaDsl.g:2407:2: rule__ComplexNofailureDefinition__Group__2__Impl rule__ComplexNofailureDefinition__Group__3
- {
- pushFollow(FOLLOW_15);
- rule__ComplexNofailureDefinition__Group__2__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ComplexNofailureDefinition__Group__3();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ComplexNofailureDefinition__Group__2"
-
-
- // $ANTLR start "rule__ComplexNofailureDefinition__Group__2__Impl"
- // InternalFlaDsl.g:2414:1: rule__ComplexNofailureDefinition__Group__2__Impl : ( '.' ) ;
- public final void rule__ComplexNofailureDefinition__Group__2__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2418:1: ( ( '.' ) )
- // InternalFlaDsl.g:2419:1: ( '.' )
- {
- // InternalFlaDsl.g:2419:1: ( '.' )
- // InternalFlaDsl.g:2420:1: '.'
- {
- before(grammarAccess.getComplexNofailureDefinitionAccess().getFullStopKeyword_2());
- match(input,36,FOLLOW_2);
- after(grammarAccess.getComplexNofailureDefinitionAccess().getFullStopKeyword_2());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ComplexNofailureDefinition__Group__2__Impl"
-
-
- // $ANTLR start "rule__ComplexNofailureDefinition__Group__3"
- // InternalFlaDsl.g:2433:1: rule__ComplexNofailureDefinition__Group__3 : rule__ComplexNofailureDefinition__Group__3__Impl ;
- public final void rule__ComplexNofailureDefinition__Group__3() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2437:1: ( rule__ComplexNofailureDefinition__Group__3__Impl )
- // InternalFlaDsl.g:2438:2: rule__ComplexNofailureDefinition__Group__3__Impl
- {
- pushFollow(FOLLOW_2);
- rule__ComplexNofailureDefinition__Group__3__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ComplexNofailureDefinition__Group__3"
-
-
- // $ANTLR start "rule__ComplexNofailureDefinition__Group__3__Impl"
- // InternalFlaDsl.g:2444:1: rule__ComplexNofailureDefinition__Group__3__Impl : ( ( rule__ComplexNofailureDefinition__AcidMitigationAssignment_3 ) ) ;
- public final void rule__ComplexNofailureDefinition__Group__3__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2448:1: ( ( ( rule__ComplexNofailureDefinition__AcidMitigationAssignment_3 ) ) )
- // InternalFlaDsl.g:2449:1: ( ( rule__ComplexNofailureDefinition__AcidMitigationAssignment_3 ) )
- {
- // InternalFlaDsl.g:2449:1: ( ( rule__ComplexNofailureDefinition__AcidMitigationAssignment_3 ) )
- // InternalFlaDsl.g:2450:1: ( rule__ComplexNofailureDefinition__AcidMitigationAssignment_3 )
- {
- before(grammarAccess.getComplexNofailureDefinitionAccess().getAcidMitigationAssignment_3());
- // InternalFlaDsl.g:2451:1: ( rule__ComplexNofailureDefinition__AcidMitigationAssignment_3 )
- // InternalFlaDsl.g:2451:2: rule__ComplexNofailureDefinition__AcidMitigationAssignment_3
- {
- pushFollow(FOLLOW_2);
- rule__ComplexNofailureDefinition__AcidMitigationAssignment_3();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getComplexNofailureDefinitionAccess().getAcidMitigationAssignment_3());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ComplexNofailureDefinition__Group__3__Impl"
-
-
- // $ANTLR start "rule__WildcardDefinition__Group__0"
- // InternalFlaDsl.g:2469:1: rule__WildcardDefinition__Group__0 : rule__WildcardDefinition__Group__0__Impl rule__WildcardDefinition__Group__1 ;
- public final void rule__WildcardDefinition__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2473:1: ( rule__WildcardDefinition__Group__0__Impl rule__WildcardDefinition__Group__1 )
- // InternalFlaDsl.g:2474:2: rule__WildcardDefinition__Group__0__Impl rule__WildcardDefinition__Group__1
- {
- pushFollow(FOLLOW_16);
- rule__WildcardDefinition__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__WildcardDefinition__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__WildcardDefinition__Group__0"
-
-
- // $ANTLR start "rule__WildcardDefinition__Group__0__Impl"
- // InternalFlaDsl.g:2481:1: rule__WildcardDefinition__Group__0__Impl : ( () ) ;
- public final void rule__WildcardDefinition__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2485:1: ( ( () ) )
- // InternalFlaDsl.g:2486:1: ( () )
- {
- // InternalFlaDsl.g:2486:1: ( () )
- // InternalFlaDsl.g:2487:1: ()
- {
- before(grammarAccess.getWildcardDefinitionAccess().getWildcardDefinitionAction_0());
- // InternalFlaDsl.g:2488:1: ()
- // InternalFlaDsl.g:2490:1:
- {
- }
-
- after(grammarAccess.getWildcardDefinitionAccess().getWildcardDefinitionAction_0());
-
- }
-
-
- }
-
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__WildcardDefinition__Group__0__Impl"
-
-
- // $ANTLR start "rule__WildcardDefinition__Group__1"
- // InternalFlaDsl.g:2500:1: rule__WildcardDefinition__Group__1 : rule__WildcardDefinition__Group__1__Impl ;
- public final void rule__WildcardDefinition__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2504:1: ( rule__WildcardDefinition__Group__1__Impl )
- // InternalFlaDsl.g:2505:2: rule__WildcardDefinition__Group__1__Impl
- {
- pushFollow(FOLLOW_2);
- rule__WildcardDefinition__Group__1__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__WildcardDefinition__Group__1"
-
-
- // $ANTLR start "rule__WildcardDefinition__Group__1__Impl"
- // InternalFlaDsl.g:2511:1: rule__WildcardDefinition__Group__1__Impl : ( 'wildcard' ) ;
- public final void rule__WildcardDefinition__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2515:1: ( ( 'wildcard' ) )
- // InternalFlaDsl.g:2516:1: ( 'wildcard' )
- {
- // InternalFlaDsl.g:2516:1: ( 'wildcard' )
- // InternalFlaDsl.g:2517:1: 'wildcard'
- {
- before(grammarAccess.getWildcardDefinitionAccess().getWildcardKeyword_1());
- match(input,40,FOLLOW_2);
- after(grammarAccess.getWildcardDefinitionAccess().getWildcardKeyword_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__WildcardDefinition__Group__1__Impl"
-
-
- // $ANTLR start "rule__VariableDefinition__Group__0"
- // InternalFlaDsl.g:2534:1: rule__VariableDefinition__Group__0 : rule__VariableDefinition__Group__0__Impl rule__VariableDefinition__Group__1 ;
- public final void rule__VariableDefinition__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2538:1: ( rule__VariableDefinition__Group__0__Impl rule__VariableDefinition__Group__1 )
- // InternalFlaDsl.g:2539:2: rule__VariableDefinition__Group__0__Impl rule__VariableDefinition__Group__1
- {
- pushFollow(FOLLOW_10);
- rule__VariableDefinition__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__VariableDefinition__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__VariableDefinition__Group__0"
-
-
- // $ANTLR start "rule__VariableDefinition__Group__0__Impl"
- // InternalFlaDsl.g:2546:1: rule__VariableDefinition__Group__0__Impl : ( () ) ;
- public final void rule__VariableDefinition__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2550:1: ( ( () ) )
- // InternalFlaDsl.g:2551:1: ( () )
- {
- // InternalFlaDsl.g:2551:1: ( () )
- // InternalFlaDsl.g:2552:1: ()
- {
- before(grammarAccess.getVariableDefinitionAccess().getVariableDefinitionAction_0());
- // InternalFlaDsl.g:2553:1: ()
- // InternalFlaDsl.g:2555:1:
- {
- }
-
- after(grammarAccess.getVariableDefinitionAccess().getVariableDefinitionAction_0());
-
- }
-
-
- }
-
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__VariableDefinition__Group__0__Impl"
-
-
- // $ANTLR start "rule__VariableDefinition__Group__1"
- // InternalFlaDsl.g:2565:1: rule__VariableDefinition__Group__1 : rule__VariableDefinition__Group__1__Impl ;
- public final void rule__VariableDefinition__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2569:1: ( rule__VariableDefinition__Group__1__Impl )
- // InternalFlaDsl.g:2570:2: rule__VariableDefinition__Group__1__Impl
- {
- pushFollow(FOLLOW_2);
- rule__VariableDefinition__Group__1__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__VariableDefinition__Group__1"
-
-
- // $ANTLR start "rule__VariableDefinition__Group__1__Impl"
- // InternalFlaDsl.g:2576:1: rule__VariableDefinition__Group__1__Impl : ( ( rule__VariableDefinition__VariableNameAssignment_1 ) ) ;
- public final void rule__VariableDefinition__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2580:1: ( ( ( rule__VariableDefinition__VariableNameAssignment_1 ) ) )
- // InternalFlaDsl.g:2581:1: ( ( rule__VariableDefinition__VariableNameAssignment_1 ) )
- {
- // InternalFlaDsl.g:2581:1: ( ( rule__VariableDefinition__VariableNameAssignment_1 ) )
- // InternalFlaDsl.g:2582:1: ( rule__VariableDefinition__VariableNameAssignment_1 )
- {
- before(grammarAccess.getVariableDefinitionAccess().getVariableNameAssignment_1());
- // InternalFlaDsl.g:2583:1: ( rule__VariableDefinition__VariableNameAssignment_1 )
- // InternalFlaDsl.g:2583:2: rule__VariableDefinition__VariableNameAssignment_1
- {
- pushFollow(FOLLOW_2);
- rule__VariableDefinition__VariableNameAssignment_1();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getVariableDefinitionAccess().getVariableNameAssignment_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__VariableDefinition__Group__1__Impl"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__0"
- // InternalFlaDsl.g:2597:1: rule__ACIDavoidable__Group__0 : rule__ACIDavoidable__Group__0__Impl rule__ACIDavoidable__Group__1 ;
- public final void rule__ACIDavoidable__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2601:1: ( rule__ACIDavoidable__Group__0__Impl rule__ACIDavoidable__Group__1 )
- // InternalFlaDsl.g:2602:2: rule__ACIDavoidable__Group__0__Impl rule__ACIDavoidable__Group__1
- {
- pushFollow(FOLLOW_9);
- rule__ACIDavoidable__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__0"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__0__Impl"
- // InternalFlaDsl.g:2609:1: rule__ACIDavoidable__Group__0__Impl : ( ( rule__ACIDavoidable__AAssignment_0 ) ) ;
- public final void rule__ACIDavoidable__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2613:1: ( ( ( rule__ACIDavoidable__AAssignment_0 ) ) )
- // InternalFlaDsl.g:2614:1: ( ( rule__ACIDavoidable__AAssignment_0 ) )
- {
- // InternalFlaDsl.g:2614:1: ( ( rule__ACIDavoidable__AAssignment_0 ) )
- // InternalFlaDsl.g:2615:1: ( rule__ACIDavoidable__AAssignment_0 )
- {
- before(grammarAccess.getACIDavoidableAccess().getAAssignment_0());
- // InternalFlaDsl.g:2616:1: ( rule__ACIDavoidable__AAssignment_0 )
- // InternalFlaDsl.g:2616:2: rule__ACIDavoidable__AAssignment_0
- {
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__AAssignment_0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getACIDavoidableAccess().getAAssignment_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__0__Impl"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__1"
- // InternalFlaDsl.g:2626:1: rule__ACIDavoidable__Group__1 : rule__ACIDavoidable__Group__1__Impl rule__ACIDavoidable__Group__2 ;
- public final void rule__ACIDavoidable__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2630:1: ( rule__ACIDavoidable__Group__1__Impl rule__ACIDavoidable__Group__2 )
- // InternalFlaDsl.g:2631:2: rule__ACIDavoidable__Group__1__Impl rule__ACIDavoidable__Group__2
- {
- pushFollow(FOLLOW_17);
- rule__ACIDavoidable__Group__1__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__Group__2();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__1"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__1__Impl"
- // InternalFlaDsl.g:2638:1: rule__ACIDavoidable__Group__1__Impl : ( '.' ) ;
- public final void rule__ACIDavoidable__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2642:1: ( ( '.' ) )
- // InternalFlaDsl.g:2643:1: ( '.' )
- {
- // InternalFlaDsl.g:2643:1: ( '.' )
- // InternalFlaDsl.g:2644:1: '.'
- {
- before(grammarAccess.getACIDavoidableAccess().getFullStopKeyword_1());
- match(input,36,FOLLOW_2);
- after(grammarAccess.getACIDavoidableAccess().getFullStopKeyword_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__1__Impl"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__2"
- // InternalFlaDsl.g:2657:1: rule__ACIDavoidable__Group__2 : rule__ACIDavoidable__Group__2__Impl rule__ACIDavoidable__Group__3 ;
- public final void rule__ACIDavoidable__Group__2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2661:1: ( rule__ACIDavoidable__Group__2__Impl rule__ACIDavoidable__Group__3 )
- // InternalFlaDsl.g:2662:2: rule__ACIDavoidable__Group__2__Impl rule__ACIDavoidable__Group__3
- {
- pushFollow(FOLLOW_9);
- rule__ACIDavoidable__Group__2__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__Group__3();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__2"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__2__Impl"
- // InternalFlaDsl.g:2669:1: rule__ACIDavoidable__Group__2__Impl : ( ( rule__ACIDavoidable__CAssignment_2 ) ) ;
- public final void rule__ACIDavoidable__Group__2__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2673:1: ( ( ( rule__ACIDavoidable__CAssignment_2 ) ) )
- // InternalFlaDsl.g:2674:1: ( ( rule__ACIDavoidable__CAssignment_2 ) )
- {
- // InternalFlaDsl.g:2674:1: ( ( rule__ACIDavoidable__CAssignment_2 ) )
- // InternalFlaDsl.g:2675:1: ( rule__ACIDavoidable__CAssignment_2 )
- {
- before(grammarAccess.getACIDavoidableAccess().getCAssignment_2());
- // InternalFlaDsl.g:2676:1: ( rule__ACIDavoidable__CAssignment_2 )
- // InternalFlaDsl.g:2676:2: rule__ACIDavoidable__CAssignment_2
- {
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__CAssignment_2();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getACIDavoidableAccess().getCAssignment_2());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__2__Impl"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__3"
- // InternalFlaDsl.g:2686:1: rule__ACIDavoidable__Group__3 : rule__ACIDavoidable__Group__3__Impl rule__ACIDavoidable__Group__4 ;
- public final void rule__ACIDavoidable__Group__3() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2690:1: ( rule__ACIDavoidable__Group__3__Impl rule__ACIDavoidable__Group__4 )
- // InternalFlaDsl.g:2691:2: rule__ACIDavoidable__Group__3__Impl rule__ACIDavoidable__Group__4
- {
- pushFollow(FOLLOW_18);
- rule__ACIDavoidable__Group__3__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__Group__4();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__3"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__3__Impl"
- // InternalFlaDsl.g:2698:1: rule__ACIDavoidable__Group__3__Impl : ( '.' ) ;
- public final void rule__ACIDavoidable__Group__3__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2702:1: ( ( '.' ) )
- // InternalFlaDsl.g:2703:1: ( '.' )
- {
- // InternalFlaDsl.g:2703:1: ( '.' )
- // InternalFlaDsl.g:2704:1: '.'
- {
- before(grammarAccess.getACIDavoidableAccess().getFullStopKeyword_3());
- match(input,36,FOLLOW_2);
- after(grammarAccess.getACIDavoidableAccess().getFullStopKeyword_3());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__3__Impl"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__4"
- // InternalFlaDsl.g:2717:1: rule__ACIDavoidable__Group__4 : rule__ACIDavoidable__Group__4__Impl rule__ACIDavoidable__Group__5 ;
- public final void rule__ACIDavoidable__Group__4() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2721:1: ( rule__ACIDavoidable__Group__4__Impl rule__ACIDavoidable__Group__5 )
- // InternalFlaDsl.g:2722:2: rule__ACIDavoidable__Group__4__Impl rule__ACIDavoidable__Group__5
- {
- pushFollow(FOLLOW_9);
- rule__ACIDavoidable__Group__4__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__Group__5();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__4"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__4__Impl"
- // InternalFlaDsl.g:2729:1: rule__ACIDavoidable__Group__4__Impl : ( ( rule__ACIDavoidable__IAssignment_4 ) ) ;
- public final void rule__ACIDavoidable__Group__4__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2733:1: ( ( ( rule__ACIDavoidable__IAssignment_4 ) ) )
- // InternalFlaDsl.g:2734:1: ( ( rule__ACIDavoidable__IAssignment_4 ) )
- {
- // InternalFlaDsl.g:2734:1: ( ( rule__ACIDavoidable__IAssignment_4 ) )
- // InternalFlaDsl.g:2735:1: ( rule__ACIDavoidable__IAssignment_4 )
- {
- before(grammarAccess.getACIDavoidableAccess().getIAssignment_4());
- // InternalFlaDsl.g:2736:1: ( rule__ACIDavoidable__IAssignment_4 )
- // InternalFlaDsl.g:2736:2: rule__ACIDavoidable__IAssignment_4
- {
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__IAssignment_4();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getACIDavoidableAccess().getIAssignment_4());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__4__Impl"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__5"
- // InternalFlaDsl.g:2746:1: rule__ACIDavoidable__Group__5 : rule__ACIDavoidable__Group__5__Impl rule__ACIDavoidable__Group__6 ;
- public final void rule__ACIDavoidable__Group__5() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2750:1: ( rule__ACIDavoidable__Group__5__Impl rule__ACIDavoidable__Group__6 )
- // InternalFlaDsl.g:2751:2: rule__ACIDavoidable__Group__5__Impl rule__ACIDavoidable__Group__6
- {
- pushFollow(FOLLOW_19);
- rule__ACIDavoidable__Group__5__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__Group__6();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__5"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__5__Impl"
- // InternalFlaDsl.g:2758:1: rule__ACIDavoidable__Group__5__Impl : ( '.' ) ;
- public final void rule__ACIDavoidable__Group__5__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2762:1: ( ( '.' ) )
- // InternalFlaDsl.g:2763:1: ( '.' )
- {
- // InternalFlaDsl.g:2763:1: ( '.' )
- // InternalFlaDsl.g:2764:1: '.'
- {
- before(grammarAccess.getACIDavoidableAccess().getFullStopKeyword_5());
- match(input,36,FOLLOW_2);
- after(grammarAccess.getACIDavoidableAccess().getFullStopKeyword_5());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__5__Impl"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__6"
- // InternalFlaDsl.g:2777:1: rule__ACIDavoidable__Group__6 : rule__ACIDavoidable__Group__6__Impl ;
- public final void rule__ACIDavoidable__Group__6() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2781:1: ( rule__ACIDavoidable__Group__6__Impl )
- // InternalFlaDsl.g:2782:2: rule__ACIDavoidable__Group__6__Impl
- {
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__Group__6__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__6"
-
-
- // $ANTLR start "rule__ACIDavoidable__Group__6__Impl"
- // InternalFlaDsl.g:2788:1: rule__ACIDavoidable__Group__6__Impl : ( ( rule__ACIDavoidable__DAssignment_6 ) ) ;
- public final void rule__ACIDavoidable__Group__6__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2792:1: ( ( ( rule__ACIDavoidable__DAssignment_6 ) ) )
- // InternalFlaDsl.g:2793:1: ( ( rule__ACIDavoidable__DAssignment_6 ) )
- {
- // InternalFlaDsl.g:2793:1: ( ( rule__ACIDavoidable__DAssignment_6 ) )
- // InternalFlaDsl.g:2794:1: ( rule__ACIDavoidable__DAssignment_6 )
- {
- before(grammarAccess.getACIDavoidableAccess().getDAssignment_6());
- // InternalFlaDsl.g:2795:1: ( rule__ACIDavoidable__DAssignment_6 )
- // InternalFlaDsl.g:2795:2: rule__ACIDavoidable__DAssignment_6
- {
- pushFollow(FOLLOW_2);
- rule__ACIDavoidable__DAssignment_6();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getACIDavoidableAccess().getDAssignment_6());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__Group__6__Impl"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__0"
- // InternalFlaDsl.g:2819:1: rule__ACIDMitigation__Group__0 : rule__ACIDMitigation__Group__0__Impl rule__ACIDMitigation__Group__1 ;
- public final void rule__ACIDMitigation__Group__0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2823:1: ( rule__ACIDMitigation__Group__0__Impl rule__ACIDMitigation__Group__1 )
- // InternalFlaDsl.g:2824:2: rule__ACIDMitigation__Group__0__Impl rule__ACIDMitigation__Group__1
- {
- pushFollow(FOLLOW_9);
- rule__ACIDMitigation__Group__0__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__Group__1();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__0"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__0__Impl"
- // InternalFlaDsl.g:2831:1: rule__ACIDMitigation__Group__0__Impl : ( ( rule__ACIDMitigation__AAssignment_0 ) ) ;
- public final void rule__ACIDMitigation__Group__0__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2835:1: ( ( ( rule__ACIDMitigation__AAssignment_0 ) ) )
- // InternalFlaDsl.g:2836:1: ( ( rule__ACIDMitigation__AAssignment_0 ) )
- {
- // InternalFlaDsl.g:2836:1: ( ( rule__ACIDMitigation__AAssignment_0 ) )
- // InternalFlaDsl.g:2837:1: ( rule__ACIDMitigation__AAssignment_0 )
- {
- before(grammarAccess.getACIDMitigationAccess().getAAssignment_0());
- // InternalFlaDsl.g:2838:1: ( rule__ACIDMitigation__AAssignment_0 )
- // InternalFlaDsl.g:2838:2: rule__ACIDMitigation__AAssignment_0
- {
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__AAssignment_0();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getACIDMitigationAccess().getAAssignment_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__0__Impl"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__1"
- // InternalFlaDsl.g:2848:1: rule__ACIDMitigation__Group__1 : rule__ACIDMitigation__Group__1__Impl rule__ACIDMitigation__Group__2 ;
- public final void rule__ACIDMitigation__Group__1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2852:1: ( rule__ACIDMitigation__Group__1__Impl rule__ACIDMitigation__Group__2 )
- // InternalFlaDsl.g:2853:2: rule__ACIDMitigation__Group__1__Impl rule__ACIDMitigation__Group__2
- {
- pushFollow(FOLLOW_20);
- rule__ACIDMitigation__Group__1__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__Group__2();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__1"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__1__Impl"
- // InternalFlaDsl.g:2860:1: rule__ACIDMitigation__Group__1__Impl : ( '.' ) ;
- public final void rule__ACIDMitigation__Group__1__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2864:1: ( ( '.' ) )
- // InternalFlaDsl.g:2865:1: ( '.' )
- {
- // InternalFlaDsl.g:2865:1: ( '.' )
- // InternalFlaDsl.g:2866:1: '.'
- {
- before(grammarAccess.getACIDMitigationAccess().getFullStopKeyword_1());
- match(input,36,FOLLOW_2);
- after(grammarAccess.getACIDMitigationAccess().getFullStopKeyword_1());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__1__Impl"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__2"
- // InternalFlaDsl.g:2879:1: rule__ACIDMitigation__Group__2 : rule__ACIDMitigation__Group__2__Impl rule__ACIDMitigation__Group__3 ;
- public final void rule__ACIDMitigation__Group__2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2883:1: ( rule__ACIDMitigation__Group__2__Impl rule__ACIDMitigation__Group__3 )
- // InternalFlaDsl.g:2884:2: rule__ACIDMitigation__Group__2__Impl rule__ACIDMitigation__Group__3
- {
- pushFollow(FOLLOW_9);
- rule__ACIDMitigation__Group__2__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__Group__3();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__2"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__2__Impl"
- // InternalFlaDsl.g:2891:1: rule__ACIDMitigation__Group__2__Impl : ( ( rule__ACIDMitigation__CAssignment_2 ) ) ;
- public final void rule__ACIDMitigation__Group__2__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2895:1: ( ( ( rule__ACIDMitigation__CAssignment_2 ) ) )
- // InternalFlaDsl.g:2896:1: ( ( rule__ACIDMitigation__CAssignment_2 ) )
- {
- // InternalFlaDsl.g:2896:1: ( ( rule__ACIDMitigation__CAssignment_2 ) )
- // InternalFlaDsl.g:2897:1: ( rule__ACIDMitigation__CAssignment_2 )
- {
- before(grammarAccess.getACIDMitigationAccess().getCAssignment_2());
- // InternalFlaDsl.g:2898:1: ( rule__ACIDMitigation__CAssignment_2 )
- // InternalFlaDsl.g:2898:2: rule__ACIDMitigation__CAssignment_2
- {
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__CAssignment_2();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getACIDMitigationAccess().getCAssignment_2());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__2__Impl"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__3"
- // InternalFlaDsl.g:2908:1: rule__ACIDMitigation__Group__3 : rule__ACIDMitigation__Group__3__Impl rule__ACIDMitigation__Group__4 ;
- public final void rule__ACIDMitigation__Group__3() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2912:1: ( rule__ACIDMitigation__Group__3__Impl rule__ACIDMitigation__Group__4 )
- // InternalFlaDsl.g:2913:2: rule__ACIDMitigation__Group__3__Impl rule__ACIDMitigation__Group__4
- {
- pushFollow(FOLLOW_21);
- rule__ACIDMitigation__Group__3__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__Group__4();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__3"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__3__Impl"
- // InternalFlaDsl.g:2920:1: rule__ACIDMitigation__Group__3__Impl : ( '.' ) ;
- public final void rule__ACIDMitigation__Group__3__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2924:1: ( ( '.' ) )
- // InternalFlaDsl.g:2925:1: ( '.' )
- {
- // InternalFlaDsl.g:2925:1: ( '.' )
- // InternalFlaDsl.g:2926:1: '.'
- {
- before(grammarAccess.getACIDMitigationAccess().getFullStopKeyword_3());
- match(input,36,FOLLOW_2);
- after(grammarAccess.getACIDMitigationAccess().getFullStopKeyword_3());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__3__Impl"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__4"
- // InternalFlaDsl.g:2939:1: rule__ACIDMitigation__Group__4 : rule__ACIDMitigation__Group__4__Impl rule__ACIDMitigation__Group__5 ;
- public final void rule__ACIDMitigation__Group__4() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2943:1: ( rule__ACIDMitigation__Group__4__Impl rule__ACIDMitigation__Group__5 )
- // InternalFlaDsl.g:2944:2: rule__ACIDMitigation__Group__4__Impl rule__ACIDMitigation__Group__5
- {
- pushFollow(FOLLOW_9);
- rule__ACIDMitigation__Group__4__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__Group__5();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__4"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__4__Impl"
- // InternalFlaDsl.g:2951:1: rule__ACIDMitigation__Group__4__Impl : ( ( rule__ACIDMitigation__IAssignment_4 ) ) ;
- public final void rule__ACIDMitigation__Group__4__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2955:1: ( ( ( rule__ACIDMitigation__IAssignment_4 ) ) )
- // InternalFlaDsl.g:2956:1: ( ( rule__ACIDMitigation__IAssignment_4 ) )
- {
- // InternalFlaDsl.g:2956:1: ( ( rule__ACIDMitigation__IAssignment_4 ) )
- // InternalFlaDsl.g:2957:1: ( rule__ACIDMitigation__IAssignment_4 )
- {
- before(grammarAccess.getACIDMitigationAccess().getIAssignment_4());
- // InternalFlaDsl.g:2958:1: ( rule__ACIDMitigation__IAssignment_4 )
- // InternalFlaDsl.g:2958:2: rule__ACIDMitigation__IAssignment_4
- {
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__IAssignment_4();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getACIDMitigationAccess().getIAssignment_4());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__4__Impl"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__5"
- // InternalFlaDsl.g:2968:1: rule__ACIDMitigation__Group__5 : rule__ACIDMitigation__Group__5__Impl rule__ACIDMitigation__Group__6 ;
- public final void rule__ACIDMitigation__Group__5() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2972:1: ( rule__ACIDMitigation__Group__5__Impl rule__ACIDMitigation__Group__6 )
- // InternalFlaDsl.g:2973:2: rule__ACIDMitigation__Group__5__Impl rule__ACIDMitigation__Group__6
- {
- pushFollow(FOLLOW_22);
- rule__ACIDMitigation__Group__5__Impl();
-
- state._fsp--;
-
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__Group__6();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__5"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__5__Impl"
- // InternalFlaDsl.g:2980:1: rule__ACIDMitigation__Group__5__Impl : ( '.' ) ;
- public final void rule__ACIDMitigation__Group__5__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:2984:1: ( ( '.' ) )
- // InternalFlaDsl.g:2985:1: ( '.' )
- {
- // InternalFlaDsl.g:2985:1: ( '.' )
- // InternalFlaDsl.g:2986:1: '.'
- {
- before(grammarAccess.getACIDMitigationAccess().getFullStopKeyword_5());
- match(input,36,FOLLOW_2);
- after(grammarAccess.getACIDMitigationAccess().getFullStopKeyword_5());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__5__Impl"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__6"
- // InternalFlaDsl.g:2999:1: rule__ACIDMitigation__Group__6 : rule__ACIDMitigation__Group__6__Impl ;
- public final void rule__ACIDMitigation__Group__6() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3003:1: ( rule__ACIDMitigation__Group__6__Impl )
- // InternalFlaDsl.g:3004:2: rule__ACIDMitigation__Group__6__Impl
- {
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__Group__6__Impl();
-
- state._fsp--;
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__6"
-
-
- // $ANTLR start "rule__ACIDMitigation__Group__6__Impl"
- // InternalFlaDsl.g:3010:1: rule__ACIDMitigation__Group__6__Impl : ( ( rule__ACIDMitigation__DAssignment_6 ) ) ;
- public final void rule__ACIDMitigation__Group__6__Impl() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3014:1: ( ( ( rule__ACIDMitigation__DAssignment_6 ) ) )
- // InternalFlaDsl.g:3015:1: ( ( rule__ACIDMitigation__DAssignment_6 ) )
- {
- // InternalFlaDsl.g:3015:1: ( ( rule__ACIDMitigation__DAssignment_6 ) )
- // InternalFlaDsl.g:3016:1: ( rule__ACIDMitigation__DAssignment_6 )
- {
- before(grammarAccess.getACIDMitigationAccess().getDAssignment_6());
- // InternalFlaDsl.g:3017:1: ( rule__ACIDMitigation__DAssignment_6 )
- // InternalFlaDsl.g:3017:2: rule__ACIDMitigation__DAssignment_6
- {
- pushFollow(FOLLOW_2);
- rule__ACIDMitigation__DAssignment_6();
-
- state._fsp--;
-
-
- }
-
- after(grammarAccess.getACIDMitigationAccess().getDAssignment_6());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__Group__6__Impl"
-
-
- // $ANTLR start "rule__Behaviour__RulesAssignment"
- // InternalFlaDsl.g:3044:1: rule__Behaviour__RulesAssignment : ( ruleExpression ) ;
- public final void rule__Behaviour__RulesAssignment() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3048:1: ( ( ruleExpression ) )
- // InternalFlaDsl.g:3049:1: ( ruleExpression )
- {
- // InternalFlaDsl.g:3049:1: ( ruleExpression )
- // InternalFlaDsl.g:3050:1: ruleExpression
- {
- before(grammarAccess.getBehaviourAccess().getRulesExpressionParserRuleCall_0());
- pushFollow(FOLLOW_2);
- ruleExpression();
-
- state._fsp--;
-
- after(grammarAccess.getBehaviourAccess().getRulesExpressionParserRuleCall_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Behaviour__RulesAssignment"
-
-
- // $ANTLR start "rule__Expression__LhsAssignment_1"
- // InternalFlaDsl.g:3059:1: rule__Expression__LhsAssignment_1 : ( ruleLhs ) ;
- public final void rule__Expression__LhsAssignment_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3063:1: ( ( ruleLhs ) )
- // InternalFlaDsl.g:3064:1: ( ruleLhs )
- {
- // InternalFlaDsl.g:3064:1: ( ruleLhs )
- // InternalFlaDsl.g:3065:1: ruleLhs
- {
- before(grammarAccess.getExpressionAccess().getLhsLhsParserRuleCall_1_0());
- pushFollow(FOLLOW_2);
- ruleLhs();
-
- state._fsp--;
-
- after(grammarAccess.getExpressionAccess().getLhsLhsParserRuleCall_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__LhsAssignment_1"
-
-
- // $ANTLR start "rule__Expression__RhsAssignment_3"
- // InternalFlaDsl.g:3074:1: rule__Expression__RhsAssignment_3 : ( ruleRhs ) ;
- public final void rule__Expression__RhsAssignment_3() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3078:1: ( ( ruleRhs ) )
- // InternalFlaDsl.g:3079:1: ( ruleRhs )
- {
- // InternalFlaDsl.g:3079:1: ( ruleRhs )
- // InternalFlaDsl.g:3080:1: ruleRhs
- {
- before(grammarAccess.getExpressionAccess().getRhsRhsParserRuleCall_3_0());
- pushFollow(FOLLOW_2);
- ruleRhs();
-
- state._fsp--;
-
- after(grammarAccess.getExpressionAccess().getRhsRhsParserRuleCall_3_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Expression__RhsAssignment_3"
-
-
- // $ANTLR start "rule__Lhs__FailuresAssignment_0"
- // InternalFlaDsl.g:3089:1: rule__Lhs__FailuresAssignment_0 : ( ruleInputExpression ) ;
- public final void rule__Lhs__FailuresAssignment_0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3093:1: ( ( ruleInputExpression ) )
- // InternalFlaDsl.g:3094:1: ( ruleInputExpression )
- {
- // InternalFlaDsl.g:3094:1: ( ruleInputExpression )
- // InternalFlaDsl.g:3095:1: ruleInputExpression
- {
- before(grammarAccess.getLhsAccess().getFailuresInputExpressionParserRuleCall_0_0());
- pushFollow(FOLLOW_2);
- ruleInputExpression();
-
- state._fsp--;
-
- after(grammarAccess.getLhsAccess().getFailuresInputExpressionParserRuleCall_0_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Lhs__FailuresAssignment_0"
-
-
- // $ANTLR start "rule__Lhs__FailuresAssignment_1_1"
- // InternalFlaDsl.g:3104:1: rule__Lhs__FailuresAssignment_1_1 : ( ruleInputExpression ) ;
- public final void rule__Lhs__FailuresAssignment_1_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3108:1: ( ( ruleInputExpression ) )
- // InternalFlaDsl.g:3109:1: ( ruleInputExpression )
- {
- // InternalFlaDsl.g:3109:1: ( ruleInputExpression )
- // InternalFlaDsl.g:3110:1: ruleInputExpression
- {
- before(grammarAccess.getLhsAccess().getFailuresInputExpressionParserRuleCall_1_1_0());
- pushFollow(FOLLOW_2);
- ruleInputExpression();
-
- state._fsp--;
-
- after(grammarAccess.getLhsAccess().getFailuresInputExpressionParserRuleCall_1_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Lhs__FailuresAssignment_1_1"
-
-
- // $ANTLR start "rule__Rhs__FailuresAssignment_0"
- // InternalFlaDsl.g:3119:1: rule__Rhs__FailuresAssignment_0 : ( ruleOutputExpression ) ;
- public final void rule__Rhs__FailuresAssignment_0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3123:1: ( ( ruleOutputExpression ) )
- // InternalFlaDsl.g:3124:1: ( ruleOutputExpression )
- {
- // InternalFlaDsl.g:3124:1: ( ruleOutputExpression )
- // InternalFlaDsl.g:3125:1: ruleOutputExpression
- {
- before(grammarAccess.getRhsAccess().getFailuresOutputExpressionParserRuleCall_0_0());
- pushFollow(FOLLOW_2);
- ruleOutputExpression();
-
- state._fsp--;
-
- after(grammarAccess.getRhsAccess().getFailuresOutputExpressionParserRuleCall_0_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Rhs__FailuresAssignment_0"
-
-
- // $ANTLR start "rule__Rhs__FailuresAssignment_1_1"
- // InternalFlaDsl.g:3134:1: rule__Rhs__FailuresAssignment_1_1 : ( ruleOutputExpression ) ;
- public final void rule__Rhs__FailuresAssignment_1_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3138:1: ( ( ruleOutputExpression ) )
- // InternalFlaDsl.g:3139:1: ( ruleOutputExpression )
- {
- // InternalFlaDsl.g:3139:1: ( ruleOutputExpression )
- // InternalFlaDsl.g:3140:1: ruleOutputExpression
- {
- before(grammarAccess.getRhsAccess().getFailuresOutputExpressionParserRuleCall_1_1_0());
- pushFollow(FOLLOW_2);
- ruleOutputExpression();
-
- state._fsp--;
-
- after(grammarAccess.getRhsAccess().getFailuresOutputExpressionParserRuleCall_1_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__Rhs__FailuresAssignment_1_1"
-
-
- // $ANTLR start "rule__InputExpression__RefAssignment_0_0"
- // InternalFlaDsl.g:3149:1: rule__InputExpression__RefAssignment_0_0 : ( ( RULE_ID ) ) ;
- public final void rule__InputExpression__RefAssignment_0_0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3153:1: ( ( ( RULE_ID ) ) )
- // InternalFlaDsl.g:3154:1: ( ( RULE_ID ) )
- {
- // InternalFlaDsl.g:3154:1: ( ( RULE_ID ) )
- // InternalFlaDsl.g:3155:1: ( RULE_ID )
- {
- before(grammarAccess.getInputExpressionAccess().getRefPortCrossReference_0_0_0());
- // InternalFlaDsl.g:3156:1: ( RULE_ID )
- // InternalFlaDsl.g:3157:1: RULE_ID
- {
- before(grammarAccess.getInputExpressionAccess().getRefPortIDTerminalRuleCall_0_0_0_1());
- match(input,RULE_ID,FOLLOW_2);
- after(grammarAccess.getInputExpressionAccess().getRefPortIDTerminalRuleCall_0_0_0_1());
-
- }
-
- after(grammarAccess.getInputExpressionAccess().getRefPortCrossReference_0_0_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InputExpression__RefAssignment_0_0"
-
-
- // $ANTLR start "rule__InputExpression__FailureExprAssignment_2"
- // InternalFlaDsl.g:3168:1: rule__InputExpression__FailureExprAssignment_2 : ( ruleInFailureExpr ) ;
- public final void rule__InputExpression__FailureExprAssignment_2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3172:1: ( ( ruleInFailureExpr ) )
- // InternalFlaDsl.g:3173:1: ( ruleInFailureExpr )
- {
- // InternalFlaDsl.g:3173:1: ( ruleInFailureExpr )
- // InternalFlaDsl.g:3174:1: ruleInFailureExpr
- {
- before(grammarAccess.getInputExpressionAccess().getFailureExprInFailureExprParserRuleCall_2_0());
- pushFollow(FOLLOW_2);
- ruleInFailureExpr();
-
- state._fsp--;
-
- after(grammarAccess.getInputExpressionAccess().getFailureExprInFailureExprParserRuleCall_2_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InputExpression__FailureExprAssignment_2"
-
-
- // $ANTLR start "rule__OutputExpression__RefAssignment_0_0"
- // InternalFlaDsl.g:3183:1: rule__OutputExpression__RefAssignment_0_0 : ( ( RULE_ID ) ) ;
- public final void rule__OutputExpression__RefAssignment_0_0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3187:1: ( ( ( RULE_ID ) ) )
- // InternalFlaDsl.g:3188:1: ( ( RULE_ID ) )
- {
- // InternalFlaDsl.g:3188:1: ( ( RULE_ID ) )
- // InternalFlaDsl.g:3189:1: ( RULE_ID )
- {
- before(grammarAccess.getOutputExpressionAccess().getRefPortCrossReference_0_0_0());
- // InternalFlaDsl.g:3190:1: ( RULE_ID )
- // InternalFlaDsl.g:3191:1: RULE_ID
- {
- before(grammarAccess.getOutputExpressionAccess().getRefPortIDTerminalRuleCall_0_0_0_1());
- match(input,RULE_ID,FOLLOW_2);
- after(grammarAccess.getOutputExpressionAccess().getRefPortIDTerminalRuleCall_0_0_0_1());
-
- }
-
- after(grammarAccess.getOutputExpressionAccess().getRefPortCrossReference_0_0_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutputExpression__RefAssignment_0_0"
-
-
- // $ANTLR start "rule__OutputExpression__FailureExprAssignment_2"
- // InternalFlaDsl.g:3202:1: rule__OutputExpression__FailureExprAssignment_2 : ( ruleOutFailureExpr ) ;
- public final void rule__OutputExpression__FailureExprAssignment_2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3206:1: ( ( ruleOutFailureExpr ) )
- // InternalFlaDsl.g:3207:1: ( ruleOutFailureExpr )
- {
- // InternalFlaDsl.g:3207:1: ( ruleOutFailureExpr )
- // InternalFlaDsl.g:3208:1: ruleOutFailureExpr
- {
- before(grammarAccess.getOutputExpressionAccess().getFailureExprOutFailureExprParserRuleCall_2_0());
- pushFollow(FOLLOW_2);
- ruleOutFailureExpr();
-
- state._fsp--;
-
- after(grammarAccess.getOutputExpressionAccess().getFailureExprOutFailureExprParserRuleCall_2_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutputExpression__FailureExprAssignment_2"
-
-
- // $ANTLR start "rule__InFailureExpr__FailuresAssignment_0"
- // InternalFlaDsl.g:3217:1: rule__InFailureExpr__FailuresAssignment_0 : ( ruleWildcardDefinition ) ;
- public final void rule__InFailureExpr__FailuresAssignment_0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3221:1: ( ( ruleWildcardDefinition ) )
- // InternalFlaDsl.g:3222:1: ( ruleWildcardDefinition )
- {
- // InternalFlaDsl.g:3222:1: ( ruleWildcardDefinition )
- // InternalFlaDsl.g:3223:1: ruleWildcardDefinition
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresWildcardDefinitionParserRuleCall_0_0());
- pushFollow(FOLLOW_2);
- ruleWildcardDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getInFailureExprAccess().getFailuresWildcardDefinitionParserRuleCall_0_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__FailuresAssignment_0"
-
-
- // $ANTLR start "rule__InFailureExpr__FailuresAssignment_1"
- // InternalFlaDsl.g:3232:1: rule__InFailureExpr__FailuresAssignment_1 : ( ruleNoFailureDefinition ) ;
- public final void rule__InFailureExpr__FailuresAssignment_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3236:1: ( ( ruleNoFailureDefinition ) )
- // InternalFlaDsl.g:3237:1: ( ruleNoFailureDefinition )
- {
- // InternalFlaDsl.g:3237:1: ( ruleNoFailureDefinition )
- // InternalFlaDsl.g:3238:1: ruleNoFailureDefinition
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresNoFailureDefinitionParserRuleCall_1_0());
- pushFollow(FOLLOW_2);
- ruleNoFailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getInFailureExprAccess().getFailuresNoFailureDefinitionParserRuleCall_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__FailuresAssignment_1"
-
-
- // $ANTLR start "rule__InFailureExpr__FailuresAssignment_2"
- // InternalFlaDsl.g:3247:1: rule__InFailureExpr__FailuresAssignment_2 : ( ruleFailureDefinition ) ;
- public final void rule__InFailureExpr__FailuresAssignment_2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3251:1: ( ( ruleFailureDefinition ) )
- // InternalFlaDsl.g:3252:1: ( ruleFailureDefinition )
- {
- // InternalFlaDsl.g:3252:1: ( ruleFailureDefinition )
- // InternalFlaDsl.g:3253:1: ruleFailureDefinition
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_2_0());
- pushFollow(FOLLOW_2);
- ruleFailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getInFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_2_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__FailuresAssignment_2"
-
-
- // $ANTLR start "rule__InFailureExpr__FailuresAssignment_3_1"
- // InternalFlaDsl.g:3262:1: rule__InFailureExpr__FailuresAssignment_3_1 : ( ruleFailureDefinition ) ;
- public final void rule__InFailureExpr__FailuresAssignment_3_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3266:1: ( ( ruleFailureDefinition ) )
- // InternalFlaDsl.g:3267:1: ( ruleFailureDefinition )
- {
- // InternalFlaDsl.g:3267:1: ( ruleFailureDefinition )
- // InternalFlaDsl.g:3268:1: ruleFailureDefinition
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_3_1_0());
- pushFollow(FOLLOW_2);
- ruleFailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getInFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_3_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__FailuresAssignment_3_1"
-
-
- // $ANTLR start "rule__InFailureExpr__FailuresAssignment_3_2_1"
- // InternalFlaDsl.g:3277:1: rule__InFailureExpr__FailuresAssignment_3_2_1 : ( ruleFailureDefinition ) ;
- public final void rule__InFailureExpr__FailuresAssignment_3_2_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3281:1: ( ( ruleFailureDefinition ) )
- // InternalFlaDsl.g:3282:1: ( ruleFailureDefinition )
- {
- // InternalFlaDsl.g:3282:1: ( ruleFailureDefinition )
- // InternalFlaDsl.g:3283:1: ruleFailureDefinition
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_3_2_1_0());
- pushFollow(FOLLOW_2);
- ruleFailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getInFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_3_2_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__FailuresAssignment_3_2_1"
-
-
- // $ANTLR start "rule__InFailureExpr__FailuresAssignment_4"
- // InternalFlaDsl.g:3292:1: rule__InFailureExpr__FailuresAssignment_4 : ( ruleVariableDefinition ) ;
- public final void rule__InFailureExpr__FailuresAssignment_4() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3296:1: ( ( ruleVariableDefinition ) )
- // InternalFlaDsl.g:3297:1: ( ruleVariableDefinition )
- {
- // InternalFlaDsl.g:3297:1: ( ruleVariableDefinition )
- // InternalFlaDsl.g:3298:1: ruleVariableDefinition
- {
- before(grammarAccess.getInFailureExprAccess().getFailuresVariableDefinitionParserRuleCall_4_0());
- pushFollow(FOLLOW_2);
- ruleVariableDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getInFailureExprAccess().getFailuresVariableDefinitionParserRuleCall_4_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__InFailureExpr__FailuresAssignment_4"
-
-
- // $ANTLR start "rule__OutFailureExpr__FailuresAssignment_0"
- // InternalFlaDsl.g:3307:1: rule__OutFailureExpr__FailuresAssignment_0 : ( ruleNoFailureDefinition ) ;
- public final void rule__OutFailureExpr__FailuresAssignment_0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3311:1: ( ( ruleNoFailureDefinition ) )
- // InternalFlaDsl.g:3312:1: ( ruleNoFailureDefinition )
- {
- // InternalFlaDsl.g:3312:1: ( ruleNoFailureDefinition )
- // InternalFlaDsl.g:3313:1: ruleNoFailureDefinition
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresNoFailureDefinitionParserRuleCall_0_0());
- pushFollow(FOLLOW_2);
- ruleNoFailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresNoFailureDefinitionParserRuleCall_0_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__FailuresAssignment_0"
-
-
- // $ANTLR start "rule__OutFailureExpr__FailuresAssignment_1"
- // InternalFlaDsl.g:3322:1: rule__OutFailureExpr__FailuresAssignment_1 : ( ruleComplexNofailureDefinition ) ;
- public final void rule__OutFailureExpr__FailuresAssignment_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3326:1: ( ( ruleComplexNofailureDefinition ) )
- // InternalFlaDsl.g:3327:1: ( ruleComplexNofailureDefinition )
- {
- // InternalFlaDsl.g:3327:1: ( ruleComplexNofailureDefinition )
- // InternalFlaDsl.g:3328:1: ruleComplexNofailureDefinition
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresComplexNofailureDefinitionParserRuleCall_1_0());
- pushFollow(FOLLOW_2);
- ruleComplexNofailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresComplexNofailureDefinitionParserRuleCall_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__FailuresAssignment_1"
-
-
- // $ANTLR start "rule__OutFailureExpr__FailuresAssignment_2"
- // InternalFlaDsl.g:3337:1: rule__OutFailureExpr__FailuresAssignment_2 : ( ruleFailureDefinition ) ;
- public final void rule__OutFailureExpr__FailuresAssignment_2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3341:1: ( ( ruleFailureDefinition ) )
- // InternalFlaDsl.g:3342:1: ( ruleFailureDefinition )
- {
- // InternalFlaDsl.g:3342:1: ( ruleFailureDefinition )
- // InternalFlaDsl.g:3343:1: ruleFailureDefinition
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_2_0());
- pushFollow(FOLLOW_2);
- ruleFailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_2_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__FailuresAssignment_2"
-
-
- // $ANTLR start "rule__OutFailureExpr__FailuresAssignment_3_1"
- // InternalFlaDsl.g:3352:1: rule__OutFailureExpr__FailuresAssignment_3_1 : ( ruleFailureDefinition ) ;
- public final void rule__OutFailureExpr__FailuresAssignment_3_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3356:1: ( ( ruleFailureDefinition ) )
- // InternalFlaDsl.g:3357:1: ( ruleFailureDefinition )
- {
- // InternalFlaDsl.g:3357:1: ( ruleFailureDefinition )
- // InternalFlaDsl.g:3358:1: ruleFailureDefinition
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_3_1_0());
- pushFollow(FOLLOW_2);
- ruleFailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_3_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__FailuresAssignment_3_1"
-
-
- // $ANTLR start "rule__OutFailureExpr__FailuresAssignment_3_2_1"
- // InternalFlaDsl.g:3367:1: rule__OutFailureExpr__FailuresAssignment_3_2_1 : ( ruleFailureDefinition ) ;
- public final void rule__OutFailureExpr__FailuresAssignment_3_2_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3371:1: ( ( ruleFailureDefinition ) )
- // InternalFlaDsl.g:3372:1: ( ruleFailureDefinition )
- {
- // InternalFlaDsl.g:3372:1: ( ruleFailureDefinition )
- // InternalFlaDsl.g:3373:1: ruleFailureDefinition
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_3_2_1_0());
- pushFollow(FOLLOW_2);
- ruleFailureDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresFailureDefinitionParserRuleCall_3_2_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__FailuresAssignment_3_2_1"
-
-
- // $ANTLR start "rule__OutFailureExpr__FailuresAssignment_4"
- // InternalFlaDsl.g:3382:1: rule__OutFailureExpr__FailuresAssignment_4 : ( ruleVariableDefinition ) ;
- public final void rule__OutFailureExpr__FailuresAssignment_4() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3386:1: ( ( ruleVariableDefinition ) )
- // InternalFlaDsl.g:3387:1: ( ruleVariableDefinition )
- {
- // InternalFlaDsl.g:3387:1: ( ruleVariableDefinition )
- // InternalFlaDsl.g:3388:1: ruleVariableDefinition
- {
- before(grammarAccess.getOutFailureExprAccess().getFailuresVariableDefinitionParserRuleCall_4_0());
- pushFollow(FOLLOW_2);
- ruleVariableDefinition();
-
- state._fsp--;
-
- after(grammarAccess.getOutFailureExprAccess().getFailuresVariableDefinitionParserRuleCall_4_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__OutFailureExpr__FailuresAssignment_4"
-
-
- // $ANTLR start "rule__FailureDefinition__TypeAssignment_1"
- // InternalFlaDsl.g:3397:1: rule__FailureDefinition__TypeAssignment_1 : ( ruleActualFailureType ) ;
- public final void rule__FailureDefinition__TypeAssignment_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3401:1: ( ( ruleActualFailureType ) )
- // InternalFlaDsl.g:3402:1: ( ruleActualFailureType )
- {
- // InternalFlaDsl.g:3402:1: ( ruleActualFailureType )
- // InternalFlaDsl.g:3403:1: ruleActualFailureType
- {
- before(grammarAccess.getFailureDefinitionAccess().getTypeActualFailureTypeEnumRuleCall_1_0());
- pushFollow(FOLLOW_2);
- ruleActualFailureType();
-
- state._fsp--;
-
- after(grammarAccess.getFailureDefinitionAccess().getTypeActualFailureTypeEnumRuleCall_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__TypeAssignment_1"
-
-
- // $ANTLR start "rule__FailureDefinition__AcidAvoidableAssignment_2_1"
- // InternalFlaDsl.g:3412:1: rule__FailureDefinition__AcidAvoidableAssignment_2_1 : ( ruleACIDavoidable ) ;
- public final void rule__FailureDefinition__AcidAvoidableAssignment_2_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3416:1: ( ( ruleACIDavoidable ) )
- // InternalFlaDsl.g:3417:1: ( ruleACIDavoidable )
- {
- // InternalFlaDsl.g:3417:1: ( ruleACIDavoidable )
- // InternalFlaDsl.g:3418:1: ruleACIDavoidable
- {
- before(grammarAccess.getFailureDefinitionAccess().getAcidAvoidableACIDavoidableParserRuleCall_2_1_0());
- pushFollow(FOLLOW_2);
- ruleACIDavoidable();
-
- state._fsp--;
-
- after(grammarAccess.getFailureDefinitionAccess().getAcidAvoidableACIDavoidableParserRuleCall_2_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__FailureDefinition__AcidAvoidableAssignment_2_1"
-
-
- // $ANTLR start "rule__ComplexNofailureDefinition__AcidMitigationAssignment_3"
- // InternalFlaDsl.g:3427:1: rule__ComplexNofailureDefinition__AcidMitigationAssignment_3 : ( ruleACIDMitigation ) ;
- public final void rule__ComplexNofailureDefinition__AcidMitigationAssignment_3() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3431:1: ( ( ruleACIDMitigation ) )
- // InternalFlaDsl.g:3432:1: ( ruleACIDMitigation )
- {
- // InternalFlaDsl.g:3432:1: ( ruleACIDMitigation )
- // InternalFlaDsl.g:3433:1: ruleACIDMitigation
- {
- before(grammarAccess.getComplexNofailureDefinitionAccess().getAcidMitigationACIDMitigationParserRuleCall_3_0());
- pushFollow(FOLLOW_2);
- ruleACIDMitigation();
-
- state._fsp--;
-
- after(grammarAccess.getComplexNofailureDefinitionAccess().getAcidMitigationACIDMitigationParserRuleCall_3_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ComplexNofailureDefinition__AcidMitigationAssignment_3"
-
-
- // $ANTLR start "rule__VariableDefinition__VariableNameAssignment_1"
- // InternalFlaDsl.g:3442:1: rule__VariableDefinition__VariableNameAssignment_1 : ( RULE_ID ) ;
- public final void rule__VariableDefinition__VariableNameAssignment_1() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3446:1: ( ( RULE_ID ) )
- // InternalFlaDsl.g:3447:1: ( RULE_ID )
- {
- // InternalFlaDsl.g:3447:1: ( RULE_ID )
- // InternalFlaDsl.g:3448:1: RULE_ID
- {
- before(grammarAccess.getVariableDefinitionAccess().getVariableNameIDTerminalRuleCall_1_0());
- match(input,RULE_ID,FOLLOW_2);
- after(grammarAccess.getVariableDefinitionAccess().getVariableNameIDTerminalRuleCall_1_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__VariableDefinition__VariableNameAssignment_1"
-
-
- // $ANTLR start "rule__ACIDavoidable__AAssignment_0"
- // InternalFlaDsl.g:3457:1: rule__ACIDavoidable__AAssignment_0 : ( ruleAavoidable ) ;
- public final void rule__ACIDavoidable__AAssignment_0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3461:1: ( ( ruleAavoidable ) )
- // InternalFlaDsl.g:3462:1: ( ruleAavoidable )
- {
- // InternalFlaDsl.g:3462:1: ( ruleAavoidable )
- // InternalFlaDsl.g:3463:1: ruleAavoidable
- {
- before(grammarAccess.getACIDavoidableAccess().getAAavoidableEnumRuleCall_0_0());
- pushFollow(FOLLOW_2);
- ruleAavoidable();
-
- state._fsp--;
-
- after(grammarAccess.getACIDavoidableAccess().getAAavoidableEnumRuleCall_0_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__AAssignment_0"
-
-
- // $ANTLR start "rule__ACIDavoidable__CAssignment_2"
- // InternalFlaDsl.g:3472:1: rule__ACIDavoidable__CAssignment_2 : ( ruleCavoidable ) ;
- public final void rule__ACIDavoidable__CAssignment_2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3476:1: ( ( ruleCavoidable ) )
- // InternalFlaDsl.g:3477:1: ( ruleCavoidable )
- {
- // InternalFlaDsl.g:3477:1: ( ruleCavoidable )
- // InternalFlaDsl.g:3478:1: ruleCavoidable
- {
- before(grammarAccess.getACIDavoidableAccess().getCCavoidableEnumRuleCall_2_0());
- pushFollow(FOLLOW_2);
- ruleCavoidable();
-
- state._fsp--;
-
- after(grammarAccess.getACIDavoidableAccess().getCCavoidableEnumRuleCall_2_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__CAssignment_2"
-
-
- // $ANTLR start "rule__ACIDavoidable__IAssignment_4"
- // InternalFlaDsl.g:3487:1: rule__ACIDavoidable__IAssignment_4 : ( ruleIavoidable ) ;
- public final void rule__ACIDavoidable__IAssignment_4() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3491:1: ( ( ruleIavoidable ) )
- // InternalFlaDsl.g:3492:1: ( ruleIavoidable )
- {
- // InternalFlaDsl.g:3492:1: ( ruleIavoidable )
- // InternalFlaDsl.g:3493:1: ruleIavoidable
- {
- before(grammarAccess.getACIDavoidableAccess().getIIavoidableEnumRuleCall_4_0());
- pushFollow(FOLLOW_2);
- ruleIavoidable();
-
- state._fsp--;
-
- after(grammarAccess.getACIDavoidableAccess().getIIavoidableEnumRuleCall_4_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__IAssignment_4"
-
-
- // $ANTLR start "rule__ACIDavoidable__DAssignment_6"
- // InternalFlaDsl.g:3502:1: rule__ACIDavoidable__DAssignment_6 : ( ruleDavoidable ) ;
- public final void rule__ACIDavoidable__DAssignment_6() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3506:1: ( ( ruleDavoidable ) )
- // InternalFlaDsl.g:3507:1: ( ruleDavoidable )
- {
- // InternalFlaDsl.g:3507:1: ( ruleDavoidable )
- // InternalFlaDsl.g:3508:1: ruleDavoidable
- {
- before(grammarAccess.getACIDavoidableAccess().getDDavoidableEnumRuleCall_6_0());
- pushFollow(FOLLOW_2);
- ruleDavoidable();
-
- state._fsp--;
-
- after(grammarAccess.getACIDavoidableAccess().getDDavoidableEnumRuleCall_6_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDavoidable__DAssignment_6"
-
-
- // $ANTLR start "rule__ACIDMitigation__AAssignment_0"
- // InternalFlaDsl.g:3517:1: rule__ACIDMitigation__AAssignment_0 : ( ruleAmitigation ) ;
- public final void rule__ACIDMitigation__AAssignment_0() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3521:1: ( ( ruleAmitigation ) )
- // InternalFlaDsl.g:3522:1: ( ruleAmitigation )
- {
- // InternalFlaDsl.g:3522:1: ( ruleAmitigation )
- // InternalFlaDsl.g:3523:1: ruleAmitigation
- {
- before(grammarAccess.getACIDMitigationAccess().getAAmitigationEnumRuleCall_0_0());
- pushFollow(FOLLOW_2);
- ruleAmitigation();
-
- state._fsp--;
-
- after(grammarAccess.getACIDMitigationAccess().getAAmitigationEnumRuleCall_0_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__AAssignment_0"
-
-
- // $ANTLR start "rule__ACIDMitigation__CAssignment_2"
- // InternalFlaDsl.g:3532:1: rule__ACIDMitigation__CAssignment_2 : ( ruleCmitigation ) ;
- public final void rule__ACIDMitigation__CAssignment_2() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3536:1: ( ( ruleCmitigation ) )
- // InternalFlaDsl.g:3537:1: ( ruleCmitigation )
- {
- // InternalFlaDsl.g:3537:1: ( ruleCmitigation )
- // InternalFlaDsl.g:3538:1: ruleCmitigation
- {
- before(grammarAccess.getACIDMitigationAccess().getCCmitigationEnumRuleCall_2_0());
- pushFollow(FOLLOW_2);
- ruleCmitigation();
-
- state._fsp--;
-
- after(grammarAccess.getACIDMitigationAccess().getCCmitigationEnumRuleCall_2_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__CAssignment_2"
-
-
- // $ANTLR start "rule__ACIDMitigation__IAssignment_4"
- // InternalFlaDsl.g:3547:1: rule__ACIDMitigation__IAssignment_4 : ( ruleImitigation ) ;
- public final void rule__ACIDMitigation__IAssignment_4() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3551:1: ( ( ruleImitigation ) )
- // InternalFlaDsl.g:3552:1: ( ruleImitigation )
- {
- // InternalFlaDsl.g:3552:1: ( ruleImitigation )
- // InternalFlaDsl.g:3553:1: ruleImitigation
- {
- before(grammarAccess.getACIDMitigationAccess().getIImitigationEnumRuleCall_4_0());
- pushFollow(FOLLOW_2);
- ruleImitigation();
-
- state._fsp--;
-
- after(grammarAccess.getACIDMitigationAccess().getIImitigationEnumRuleCall_4_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__IAssignment_4"
-
-
- // $ANTLR start "rule__ACIDMitigation__DAssignment_6"
- // InternalFlaDsl.g:3562:1: rule__ACIDMitigation__DAssignment_6 : ( ruleDmitigation ) ;
- public final void rule__ACIDMitigation__DAssignment_6() throws RecognitionException {
-
- int stackSize = keepStackSize();
-
- try {
- // InternalFlaDsl.g:3566:1: ( ( ruleDmitigation ) )
- // InternalFlaDsl.g:3567:1: ( ruleDmitigation )
- {
- // InternalFlaDsl.g:3567:1: ( ruleDmitigation )
- // InternalFlaDsl.g:3568:1: ruleDmitigation
- {
- before(grammarAccess.getACIDMitigationAccess().getDDmitigationEnumRuleCall_6_0());
- pushFollow(FOLLOW_2);
- ruleDmitigation();
-
- state._fsp--;
-
- after(grammarAccess.getACIDMitigationAccess().getDDmitigationEnumRuleCall_6_0());
-
- }
-
-
- }
-
- }
- catch (RecognitionException re) {
- reportError(re);
- recover(input,re);
- }
- finally {
-
- restoreStackSize(stackSize);
-
- }
- return ;
- }
- // $ANTLR end "rule__ACIDMitigation__DAssignment_6"
-
- // Delegated rules
-
-
-
-
- public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
- public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x0000000100000002L});
- public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000810L});
- public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000200000000L});
- public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000400000000L});
- public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000800000000L});
- public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000800000002L});
- public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000001000000000L});
- public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x000001A00003F010L});
- public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x000000000003F000L});
- public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000004000000000L});
- public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x00000000001C0000L});
- public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000008000000000L});
- public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000003180000L});
- public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000010000000000L});
- public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000380000L});
- public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000580000L});
- public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000000980000L});
- public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x000000000C180000L});
- public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000030180000L});
- public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x00000000C0180000L});
-
-}
\ No newline at end of file
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/internal/FlaDslActivator.java b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/internal/FlaDslActivator.java
deleted file mode 100644
index 7d03be7..0000000
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src-gen/org/polarsys/chess/xtext/ui/internal/FlaDslActivator.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.polarsys.chess.xtext.ui.internal;
-
-import java.util.Collections;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.xtext.ui.shared.SharedStateModule;
-import org.eclipse.xtext.util.Modules2;
-import org.osgi.framework.BundleContext;
-
-import com.google.common.collect.Maps;
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-import com.google.inject.Module;
-
-/**
- * This class was generated. Customizations should only happen in a newly
- * introduced subclass.
- */
-public class FlaDslActivator extends AbstractUIPlugin {
-
- public static final String ORG_POLARSYS_CHESS_XTEXT_FLADSL = "org.polarsys.chess.xtext.FlaDsl";
-
- private static final Logger logger = Logger.getLogger(FlaDslActivator.class);
-
- private static FlaDslActivator INSTANCE;
-
- private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
-
- @Override
- public void start(BundleContext context) throws Exception {
- super.start(context);
- INSTANCE = this;
- }
-
- @Override
- public void stop(BundleContext context) throws Exception {
- injectors.clear();
- INSTANCE = null;
- super.stop(context);
- }
-
- public static FlaDslActivator getInstance() {
- return INSTANCE;
- }
-
- public Injector getInjector(String language) {
- synchronized (injectors) {
- Injector injector = injectors.get(language);
- if (injector == null) {
- injectors.put(language, injector = createInjector(language));
- }
- return injector;
- }
- }
-
- protected Injector createInjector(String language) {
- try {
- Module runtimeModule = getRuntimeModule(language);
- Module sharedStateModule = getSharedStateModule();
- Module uiModule = getUiModule(language);
- Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule);
- return Guice.createInjector(mergedModule);
- } catch (Exception e) {
- logger.error("Failed to create injector for " + language);
- logger.error(e.getMessage(), e);
- throw new RuntimeException("Failed to create injector for " + language, e);
- }
- }
-
- protected Module getRuntimeModule(String grammar) {
- if (ORG_POLARSYS_CHESS_XTEXT_FLADSL.equals(grammar)) {
- return new org.polarsys.chess.xtext.FlaDslRuntimeModule();
- }
-
- throw new IllegalArgumentException(grammar);
- }
-
- protected Module getUiModule(String grammar) {
- if (ORG_POLARSYS_CHESS_XTEXT_FLADSL.equals(grammar)) {
- return new org.polarsys.chess.xtext.ui.FlaDslUiModule(this);
- }
-
- throw new IllegalArgumentException(grammar);
- }
-
- protected Module getSharedStateModule() {
- return new SharedStateModule();
- }
-
-}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src/org/polarsys/chess/xtext/ui/FlaDslUiModule.java b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src/org/polarsys/chess/xtext/ui/FlaDslUiModule.java
deleted file mode 100644
index cc1fd9b..0000000
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src/org/polarsys/chess/xtext/ui/FlaDslUiModule.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.polarsys.chess.xtext.ui;
-
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * Use this class to register components to be used within the IDE.
- */
-public class FlaDslUiModule extends org.polarsys.chess.xtext.ui.AbstractFlaDslUiModule {
- public FlaDslUiModule(AbstractUIPlugin plugin) {
- super(plugin);
- }
-}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src/org/polarsys/chess/xtext/ui/FlaDslUiModule.xtend b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src/org/polarsys/chess/xtext/ui/FlaDslUiModule.xtend
new file mode 100644
index 0000000..9950f8f
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src/org/polarsys/chess/xtext/ui/FlaDslUiModule.xtend
@@ -0,0 +1,13 @@
+/*
+ * generated by Xtext 2.12.0
+ */
+package org.polarsys.chess.xtext.ui
+
+import org.eclipse.xtend.lib.annotations.FinalFieldsConstructor
+
+/**
+ * Use this class to register components to be used within the Eclipse IDE.
+ */
+@FinalFieldsConstructor
+class FlaDslUiModule extends AbstractFlaDslUiModule {
+}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src/org/polarsys/chess/xtext/ui/contentassist/FlaDslProposalProvider.xtend b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src/org/polarsys/chess/xtext/ui/contentassist/FlaDslProposalProvider.xtend
index a930674..a09389c 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src/org/polarsys/chess/xtext/ui/contentassist/FlaDslProposalProvider.xtend
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/src/org/polarsys/chess/xtext/ui/contentassist/FlaDslProposalProvider.xtend
@@ -1,13 +1,13 @@
-/*
- * generated by Xtext
- */
-package org.polarsys.chess.xtext.ui.contentassist
-
-import org.polarsys.chess.xtext.ui.contentassist.AbstractFlaDslProposalProvider
-
-/**
- * See https://www.eclipse.org/Xtext/documentation/304_ide_concepts.html#content-assist
- * on how to customize the content assistant.
- */
-class FlaDslProposalProvider extends AbstractFlaDslProposalProvider {
-}
+/*
+ * generated by Xtext 2.12.0
+ */
+package org.polarsys.chess.xtext.ui.contentassist
+
+
+/**
+ * See https://www.eclipse.org/Xtext/documentation/304_ide_concepts.html#content-assist
+ * on how to customize the content assistant.
+ */
+class FlaDslProposalProvider extends AbstractFlaDslProposalProvider {
+}
+
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/.classpath b/plugins/fla/org.polarsys.chess.xtext.fladsl/.classpath
index 29ba398..026e45b 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl/.classpath
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/.classpath
@@ -2,8 +2,8 @@
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="xtend-gen"/>
- <classpathentry kind="src" path="src-gen"/>
- <classpathentry kind="output" path="bin"/>
+ <classpathentry kind="src" path="src/"/>
+ <classpathentry kind="src" path="src-gen/"/>
+ <classpathentry kind="src" path="xtend-gen/"/>
+ <classpathentry kind="output" path="target/classes"/>
</classpath>
diff --git "a/plugins/fla/org.polarsys.chess.xtext.fladsl/.launch/Generate Language Infrastructure \050org.intecs.chess.xtext.fladsl\051.launch" "b/plugins/fla/org.polarsys.chess.xtext.fladsl/.launch/Generate Language Infrastructure \050org.intecs.chess.xtext.fladsl\051.launch"
deleted file mode 100644
index 2f295b6..0000000
--- "a/plugins/fla/org.polarsys.chess.xtext.fladsl/.launch/Generate Language Infrastructure \050org.intecs.chess.xtext.fladsl\051.launch"
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.emf.mwe2.launch.Mwe2LaunchConfigurationType">
-<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${working_set:<?xml version="1.0" encoding="UTF-8"?> <launchConfigurationWorkingSet factoryID="org.eclipse.ui.internal.WorkingSetFactory" id="1299248699643_13" label="working set" name="working set"> <item factoryID="org.eclipse.ui.internal.model.ResourceFactory" path="/org.polarsys.chess.xtext.fladsl" type="4"/> <item factoryID="org.eclipse.ui.internal.model.ResourceFactory" path="/org.polarsys.chess.xtext.fladsl.generator" type="4"/> <item factoryID="org.eclipse.ui.internal.model.ResourceFactory" path="/org.polarsys.chess.xtext.fladsl.tests" type="4"/> <item factoryID="org.eclipse.ui.internal.model.ResourceFactory" path="/org.polarsys.chess.xtext.fladsl.ui" type="4"/> </launchConfigurationWorkingSet>}"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/org.polarsys.chess.xtext.fladsl"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
-<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
-<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
-</listAttribute>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="src/org/polarsys/chess/xtext/GenerateFlaDsl.mwe2"/>
-<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.polarsys.chess.xtext.fladsl"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx512m"/>
-</launchConfiguration>
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/.project b/plugins/fla/org.polarsys.chess.xtext.fladsl/.project
index 86f5c3b..6e299c9 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl/.project
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/.project
@@ -1,40 +1,40 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.polarsys.chess.xtext.fladsl</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>org.eclipse.xtext.ui.shared.xtextBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.m2e.core.maven2Builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.m2e.core.maven2Nature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
- </natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.polarsys.chess.xtext.fladsl</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <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>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/.settings/org.eclipse.core.resources.prefs b/plugins/fla/org.polarsys.chess.xtext.fladsl/.settings/org.eclipse.core.resources.prefs
index 4824b80..99f26c0 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl/.settings/org.eclipse.core.resources.prefs
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/.settings/org.eclipse.core.resources.prefs
@@ -1,2 +1,2 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/.settings/org.eclipse.jdt.core.prefs b/plugins/fla/org.polarsys.chess.xtext.fladsl/.settings/org.eclipse.jdt.core.prefs
index 295926d..0c68a61 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl/.settings/org.eclipse.jdt.core.prefs
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,7 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
-org.eclipse.jdt.core.compiler.compliance=1.8
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.8
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/.settings/org.eclipse.m2e.core.prefs b/plugins/fla/org.polarsys.chess.xtext.fladsl/.settings/org.eclipse.m2e.core.prefs
deleted file mode 100644
index f897a7f..0000000
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl/.settings/org.eclipse.m2e.core.prefs
+++ /dev/null
@@ -1,4 +0,0 @@
-activeProfiles=
-eclipse.preferences.version=1
-resolveWorkspaceProjects=true
-version=1
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/META-INF/MANIFEST.MF b/plugins/fla/org.polarsys.chess.xtext.fladsl/META-INF/MANIFEST.MF
index 73e2b6a..66217bd 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl/META-INF/MANIFEST.MF
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/META-INF/MANIFEST.MF
@@ -1,41 +1,54 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.polarsys.chess.xtext.fladsl
-Bundle-Vendor: Intecs
-Bundle-Version: 1.0.0.qualifier
-Bundle-SymbolicName: org.polarsys.chess.xtext.fladsl; singleton:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.xtext;visibility:=reexport,
- org.eclipse.xtext.xbase;resolution:=optional;visibility:=reexport,
- org.eclipse.xtext.generator;resolution:=optional,
- org.apache.commons.logging;bundle-version="1.1.1";resolution:=optional,
- org.eclipse.emf.codegen.ecore;resolution:=optional,
- org.eclipse.emf.mwe.utils;resolution:=optional,
- org.eclipse.emf.mwe2.launch;resolution:=optional,
- org.eclipse.uml2.uml;bundle-version="5.0.0",
- org.eclipse.uml2.codegen.ecore;bundle-version="2.0.1",
- org.eclipse.xtext.util,
- org.eclipse.emf.ecore,
- org.eclipse.emf.common,
- org.antlr.runtime,
- org.eclipse.xtext.common.types,
- org.objectweb.asm;bundle-version="5.0.1";resolution:=optional,
- org.eclipse.equinox.common;bundle-version="3.6.200",
- org.eclipse.xtext.xbase.lib,
- org.polarsys.chess.xtext.global;bundle-version="1.0.0",
- org.polarsys.chess.chessmlprofile;bundle-version="0.9.0"
-Import-Package: org.apache.log4j,
- org.eclipse.xtext.xbase.lib
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Export-Package: org.polarsys.chess.xtext,
- org.polarsys.chess.xtext.formatting,
- org.polarsys.chess.xtext.generator,
- org.polarsys.chess.xtext.scoping,
- org.polarsys.chess.xtext.validation,
- org.polarsys.chess.xtext.services,
- org.polarsys.chess.xtext.flaDsl,
- org.polarsys.chess.xtext.flaDsl.impl,
- org.polarsys.chess.xtext.flaDsl.util,
- org.polarsys.chess.xtext.serializer,
- org.polarsys.chess.xtext.parser.antlr,
- org.polarsys.chess.xtext.parser.antlr.internal
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: org.polarsys.chess.xtext.fladsl
+Bundle-Vendor: Intecs
+Bundle-Version: 1.0.0.qualifier
+Bundle-SymbolicName: org.polarsys.chess.xtext.fladsl; singleton:=true
+Bundle-ActivationPolicy: lazy
+Require-Bundle: org.eclipse.xtext,
+ org.eclipse.xtext.xbase,
+ org.eclipse.emf.codegen.ecore;resolution:=optional,
+ org.eclipse.emf.mwe.utils;resolution:=optional,
+ org.eclipse.emf.mwe2.launch;resolution:=optional,
+ org.eclipse.uml2.uml;bundle-version="5.0.0",
+ org.eclipse.uml2.codegen.ecore;bundle-version="2.0.1",
+ org.eclipse.emf.ecore,
+ org.eclipse.emf.common,
+ org.antlr.runtime,
+ org.eclipse.xtext.common.types,
+ org.eclipse.xtext.xbase.lib,
+ org.polarsys.chess.xtext.global;bundle-version="1.0.0",
+ org.polarsys.chess.chessmlprofile;bundle-version="0.9.0",
+ org.eclipse.equinox.common;bundle-version="3.5.0",
+ org.eclipse.xtext.util,
+ org.eclipse.xtend.lib
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Export-Package: org.polarsys.chess.xtext,
+ org.polarsys.chess.xtext.flaDsl;uses:="org.eclipse.emf.ecore,org.eclipse.emf.common.util,org.eclipse.uml2.uml",
+ org.polarsys.chess.xtext.flaDsl.impl;
+ uses:="org.eclipse.emf.ecore,
+ org.eclipse.emf.ecore.impl,
+ org.eclipse.emf.common.util,
+ org.eclipse.uml2.uml,
+ org.polarsys.chess.xtext.flaDsl,
+ org.eclipse.emf.common.notify",
+ org.polarsys.chess.xtext.flaDsl.util;
+ uses:="org.eclipse.emf.ecore,
+ org.polarsys.chess.xtext.flaDsl,
+ org.eclipse.emf.common.notify,
+ org.eclipse.emf.common.notify.impl,
+ org.eclipse.emf.ecore.util",
+ org.polarsys.chess.xtext.formatting2;uses:="org.polarsys.chess.xtext.flaDsl,org.eclipse.xtext.formatting2",
+ org.polarsys.chess.xtext.generator;uses:="org.eclipse.xtext.generator,org.eclipse.emf.ecore.resource",
+ org.polarsys.chess.xtext.parser.antlr;uses:="org.eclipse.xtext.parser.antlr,org.polarsys.chess.xtext.parser.antlr.internal,org.polarsys.chess.xtext.services",
+ org.polarsys.chess.xtext.parser.antlr.internal;
+ uses:="org.eclipse.emf.ecore,
+ org.eclipse.emf.common.util,
+ org.eclipse.xtext.parser.antlr,
+ org.antlr.runtime,
+ org.polarsys.chess.xtext.services",
+ org.polarsys.chess.xtext.scoping,
+ org.polarsys.chess.xtext.serializer,
+ org.polarsys.chess.xtext.services;uses:="org.eclipse.xtext.common.services,org.eclipse.xtext.service,org.eclipse.xtext",
+ org.polarsys.chess.xtext.validation
+Import-Package: org.apache.log4j
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/build.properties b/plugins/fla/org.polarsys.chess.xtext.fladsl/build.properties
index 7da718d..18d540b 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl/build.properties
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/build.properties
@@ -1,8 +1,20 @@
-source.. = src/,\
- src-gen/,\
- xtend-gen/
-bin.includes = model/,\
- META-INF/,\
- .,\
- plugin.xml
-
+source.. = src/,\
+ src-gen/,\
+ xtend-gen/
+bin.includes = model/generated/,\
+ .,\
+ META-INF/,\
+ plugin.xml
+bin.excludes = **/*.mwe2,\
+ **/*.xtend
+additional.bundles = org.eclipse.xtext.xbase,\
+ org.eclipse.xtext.common.types,\
+ org.eclipse.xtext.xtext.generator,\
+ org.eclipse.emf.codegen.ecore,\
+ org.eclipse.emf.mwe.utils,\
+ org.eclipse.emf.mwe2.launch,\
+ org.eclipse.emf.mwe2.lib,\
+ org.objectweb.asm,\
+ org.apache.commons.logging,\
+ org.apache.log4j,\
+ com.ibm.icu
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/plugin.xml b/plugins/fla/org.polarsys.chess.xtext.fladsl/plugin.xml
index ca15dd9..626e354 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl/plugin.xml
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/plugin.xml
@@ -1,16 +1,10 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-
- <extension point="org.eclipse.emf.ecore.generated_package">
- <package
- uri = "http://www.intecs.org/chess/xtext/FlaDsl"
- class = "org.polarsys.chess.xtext.flaDsl.FlaDslPackage"
- genModel = "model/generated/FlaDsl.genmodel" />
-
- </extension>
-
-
-
-</plugin>
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<plugin>
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri = "http://www.intecs.org/chess/xtext/FlaDsl"
+ class = "org.polarsys.chess.xtext.flaDsl.FlaDslPackage"
+ genModel = "model/generated/FlaDsl.genmodel" />
+ </extension>
+</plugin>
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDsl.xtext b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDsl.xtext
index 40f25d2..8c42783 100644
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDsl.xtext
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDsl.xtext
@@ -1,77 +1,77 @@
-/*
- * TODO: License and author (Petter Isberg - MDH)
- */
-
-grammar org.polarsys.chess.xtext.FlaDsl with org.eclipse.xtext.common.Terminals
-
-import "http://www.eclipse.org/uml2/5.0.0/UML" as uml
-import "http://www.eclipse.org/emf/2002/Ecore" as ecore
-
-generate flaDsl "http://www.intecs.org/chess/xtext/FlaDsl"
-
-/*
- * FLA Grammar
- */
-
-Behaviour:
- rules+=Expression+;
-
-Expression:
- 'FLA:' lhs=Lhs '->' rhs=Rhs ';';
-
-Lhs: failures+=InputExpression (',' failures+=InputExpression)*;
-Rhs: failures+=OutputExpression (',' failures+=OutputExpression)*;
-
-InputExpression: (ref=[uml::Port]| "undefined") '.' failureExpr=InFailureExpr;
-OutputExpression: (ref=[uml::Port]| "undefined") '.' failureExpr=OutFailureExpr;
-
-InFailureExpr:
- failures+=WildcardDefinition |
- failures+=NoFailureDefinition |
- failures+=FailureDefinition |
- '{' failures+=FailureDefinition (',' failures+=FailureDefinition)+ '}' |
- failures+=VariableDefinition
-;
-
-OutFailureExpr:
- failures+=NoFailureDefinition |
- failures+=ComplexNofailureDefinition |
- failures+=FailureDefinition |
- '{' failures+=FailureDefinition (',' failures+=FailureDefinition)+ '}' |
- failures+=VariableDefinition
-;
-
-Definitions: FailureDefinition | NoFailureDefinition | ComplexNofailureDefinition | WildcardDefinition | VariableDefinition;
-
-FailureDefinition: {FailureDefinition} type = ActualFailureType ('.' acidAvoidable = ACIDavoidable)?;
-NoFailureDefinition: {NoFailureDefinition} 'noFailure';
-ComplexNofailureDefinition: {NoFailureDefinition} 'noFailure' '.' acidMitigation = ACIDMitigation;
-WildcardDefinition: {WildcardDefinition} 'wildcard';
-VariableDefinition: {VariableDefinition} variableName=ID;
-
-enum FailureType: NO_FAILURE='noFailure' | EARLY='early'| LATE='late' | COMMISSION='commission' | OMISSION='omission' | VALUE_SUBTLE='valueSubtle' | VALUE_COARSE='valueCoarse' | WILDCARD="wildcard" | VARIABLE='variable';
-enum ActualFailureType returns FailureType: EARLY | LATE | COMMISSION | OMISSION | VALUE_SUBTLE | VALUE_COARSE;
-enum NoFailureType returns FailureType: NO_FAILURE;
-enum Wildcard returns FailureType: WILDCARD;
-
-ACIDavoidable: a = Aavoidable '.' c = Cavoidable '.' i = Iavoidable '.' d = Davoidable;
-
-enum Aavoidable: INCOMPLETION='incompletion' | NONE='none' | UNSPECIFIED='unspecified';
-enum Cavoidable: INCONSISTENCY='inconsistency' | NONE='none' | UNSPECIFIED='unspecified';
-enum Iavoidable: INTERFERENCE='interference' | NONE='none' | UNSPECIFIED='unspecified';
-enum Davoidable: IMPERMANENCE='impermanence' | NONE='none' | UNSPECIFIED='unspecified';
-
-ACIDMitigation: a = Amitigation '.' c = Cmitigation '.' i = Imitigation '.' d = Dmitigation;
-
-enum Amitigation: ALL_OR_NOTHING='all_or_nothing' | ALL_OR_COMPENSATION='all_or_compensation' | NONE='none' | UNSPECIFIED='unspecified';
-enum Cmitigation: FULL_CONSISTENCY='full_consistency' | RANGE_VIOLATION_ALLOWED='range_violation_allowed' | NONE='none' | UNSPECIFIED='unspecified';
-enum Imitigation: SERIALIZABLE='serializable' | PORTABLE_LEVEL='portable_level' | NONE='none' | UNSPECIFIED='unspecified';
-enum Dmitigation: NO_LOSS='no_loss' | PARTIAL_LOSS_ALLOWED='partial_loss_allowed' | NONE='none' | UNSPECIFIED='unspecified';
-
-/*
- * Additional rule to refer UML elements in a Model
- */
-
-FQN returns ecore::EString :
- ID('::'ID)*
-;
+/*
+ * TODO: License and author (Petter Isberg - MDH)
+ */
+
+grammar org.polarsys.chess.xtext.FlaDsl with org.eclipse.xtext.common.Terminals
+
+import "http://www.eclipse.org/uml2/5.0.0/UML" as uml
+import "http://www.eclipse.org/emf/2002/Ecore" as ecore
+
+generate flaDsl "http://www.intecs.org/chess/xtext/FlaDsl"
+
+/*
+ * FLA Grammar
+ */
+
+Behaviour:
+ rules+=Expression+;
+
+Expression:
+ 'FLA:' lhs=Lhs '->' rhs=Rhs ';';
+
+Lhs: failures+=InputExpression (',' failures+=InputExpression)*;
+Rhs: failures+=OutputExpression (',' failures+=OutputExpression)*;
+
+InputExpression: (ref=[uml::Port]| "undefined") '.' failureExpr=InFailureExpr;
+OutputExpression: (ref=[uml::Port]| "undefined") '.' failureExpr=OutFailureExpr;
+
+InFailureExpr:
+ failures+=WildcardDefinition |
+ failures+=NoFailureDefinition |
+ failures+=FailureDefinition |
+ '{' failures+=FailureDefinition (',' failures+=FailureDefinition)+ '}' |
+ failures+=VariableDefinition
+;
+
+OutFailureExpr:
+ failures+=NoFailureDefinition |
+ failures+=ComplexNofailureDefinition |
+ failures+=FailureDefinition |
+ '{' failures+=FailureDefinition (',' failures+=FailureDefinition)+ '}' |
+ failures+=VariableDefinition
+;
+
+Definitions: FailureDefinition | NoFailureDefinition | ComplexNofailureDefinition | WildcardDefinition | VariableDefinition;
+
+FailureDefinition: {FailureDefinition} type = ActualFailureType ('.' acidAvoidable = ACIDavoidable)?;
+NoFailureDefinition: {NoFailureDefinition} 'noFailure';
+ComplexNofailureDefinition: {NoFailureDefinition} 'noFailure' '.' acidMitigation = ACIDMitigation;
+WildcardDefinition: {WildcardDefinition} 'wildcard';
+VariableDefinition: {VariableDefinition} variableName=ID;
+
+enum FailureType: NO_FAILURE='noFailure' | EARLY='early'| LATE='late' | COMMISSION='commission' | OMISSION='omission' | VALUE_SUBTLE='valueSubtle' | VALUE_COARSE='valueCoarse' | WILDCARD="wildcard" | VARIABLE='variable';
+enum ActualFailureType returns FailureType: EARLY | LATE | COMMISSION | OMISSION | VALUE_SUBTLE | VALUE_COARSE;
+enum NoFailureType returns FailureType: NO_FAILURE;
+enum Wildcard returns FailureType: WILDCARD;
+
+ACIDavoidable: a = Aavoidable '.' c = Cavoidable '.' i = Iavoidable '.' d = Davoidable;
+
+enum Aavoidable: INCOMPLETION='incompletion' | NONE='none' | UNSPECIFIED='unspecified';
+enum Cavoidable: INCONSISTENCY='inconsistency' | NONE='none' | UNSPECIFIED='unspecified';
+enum Iavoidable: INTERFERENCE='interference' | NONE='none' | UNSPECIFIED='unspecified';
+enum Davoidable: IMPERMANENCE='impermanence' | NONE='none' | UNSPECIFIED='unspecified';
+
+ACIDMitigation: a = Amitigation '.' c = Cmitigation '.' i = Imitigation '.' d = Dmitigation;
+
+enum Amitigation: ALL_OR_NOTHING='all_or_nothing' | ALL_OR_COMPENSATION='all_or_compensation' | NONE='none' | UNSPECIFIED='unspecified';
+enum Cmitigation: FULL_CONSISTENCY='full_consistency' | RANGE_VIOLATION_ALLOWED='range_violation_allowed' | NONE='none' | UNSPECIFIED='unspecified';
+enum Imitigation: SERIALIZABLE='serializable' | PORTABLE_LEVEL='portable_level' | NONE='none' | UNSPECIFIED='unspecified';
+enum Dmitigation: NO_LOSS='no_loss' | PARTIAL_LOSS_ALLOWED='partial_loss_allowed' | NONE='none' | UNSPECIFIED='unspecified';
+
+/*
+ * Additional rule to refer UML elements in a Model
+ */
+
+FQN returns ecore::EString :
+ ID('::'ID)*
+;
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslRuntimeModule.java b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslRuntimeModule.java
deleted file mode 100644
index 6af7490..0000000
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslRuntimeModule.java
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.polarsys.chess.xtext;
-
-/**
- * Use this class to register components to be used at runtime / without the Equinox extension registry.
- */
-public class FlaDslRuntimeModule extends org.polarsys.chess.xtext.AbstractFlaDslRuntimeModule {
-
-}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslRuntimeModule.xtend b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslRuntimeModule.xtend
new file mode 100644
index 0000000..364f3b6
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslRuntimeModule.xtend
@@ -0,0 +1,11 @@
+/*
+ * generated by Xtext 2.12.0
+ */
+package org.polarsys.chess.xtext
+
+
+/**
+ * Use this class to register components to be used at runtime / without the Equinox extension registry.
+ */
+class FlaDslRuntimeModule extends AbstractFlaDslRuntimeModule {
+}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslStandaloneSetup.java b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslStandaloneSetup.java
deleted file mode 100644
index 632413a..0000000
--- a/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslStandaloneSetup.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.polarsys.chess.xtext;
-
-/**
- * Initialization support for running Xtext languages
- * without equinox extension registry
- */
-public class FlaDslStandaloneSetup extends FlaDslStandaloneSetupGenerated{
-
- public static void doSetup() {
- new FlaDslStandaloneSetup().createInjectorAndDoEMFRegistration();
- }
-}
-
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslStandaloneSetup.xtend b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslStandaloneSetup.xtend
new file mode 100644
index 0000000..dd2e7d7
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/FlaDslStandaloneSetup.xtend
@@ -0,0 +1,15 @@
+/*
+ * generated by Xtext 2.12.0
+ */
+package org.polarsys.chess.xtext
+
+
+/**
+ * Initialization support for running Xtext languages without Equinox extension registry.
+ */
+class FlaDslStandaloneSetup extends FlaDslStandaloneSetupGenerated {
+
+ def static void doSetup() {
+ new FlaDslStandaloneSetup().createInjectorAndDoEMFRegistration()
+ }
+}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/formatting2/FlaDslFormatter.xtend b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/formatting2/FlaDslFormatter.xtend
new file mode 100644
index 0000000..01e9934
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/formatting2/FlaDslFormatter.xtend
@@ -0,0 +1,31 @@
+/*
+ * generated by Xtext 2.12.0
+ */
+package org.polarsys.chess.xtext.formatting2
+
+import com.google.inject.Inject
+import org.eclipse.xtext.formatting2.AbstractFormatter2
+import org.eclipse.xtext.formatting2.IFormattableDocument
+import org.polarsys.chess.xtext.flaDsl.Behaviour
+import org.polarsys.chess.xtext.flaDsl.Expression
+import org.polarsys.chess.xtext.services.FlaDslGrammarAccess
+
+class FlaDslFormatter extends AbstractFormatter2 {
+
+ @Inject extension FlaDslGrammarAccess
+
+ def dispatch void format(Behaviour behaviour, extension IFormattableDocument document) {
+ // TODO: format HiddenRegions around keywords, attributes, cross references, etc.
+ for (Expression expression : behaviour.getRules()) {
+ expression.format;
+ }
+ }
+
+ def dispatch void format(Expression expression, extension IFormattableDocument document) {
+ // TODO: format HiddenRegions around keywords, attributes, cross references, etc.
+ expression.getLhs.format;
+ expression.getRhs.format;
+ }
+
+ // TODO: implement for Lhs, Rhs, InputExpression, OutputExpression, InFailureExpr, OutFailureExpr, FailureDefinition, NoFailureDefinition
+}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/serializer/FlaDslSemanticSequencer.xtend b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/serializer/FlaDslSemanticSequencer.xtend
new file mode 100644
index 0000000..36213de
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/serializer/FlaDslSemanticSequencer.xtend
@@ -0,0 +1,8 @@
+/*
+ * generated by Xtext 2.12.0
+ */
+package org.polarsys.chess.xtext.serializer
+
+
+class FlaDslSemanticSequencer extends AbstractFlaDslSemanticSequencer {
+}
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/serializer/FlaDslSyntacticSequencer.xtend b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/serializer/FlaDslSyntacticSequencer.xtend
new file mode 100644
index 0000000..9b2d269
--- /dev/null
+++ b/plugins/fla/org.polarsys.chess.xtext.fladsl/src/org/polarsys/chess/xtext/serializer/FlaDslSyntacticSequencer.xtend
@@ -0,0 +1,8 @@
+/*
+ * generated by Xtext 2.12.0
+ */
+package org.polarsys.chess.xtext.serializer
+
+
+class FlaDslSyntacticSequencer extends AbstractFlaDslSyntacticSequencer {
+}
diff --git a/plugins/org.polarsys.chess.checkers/.classpath b/plugins/org.polarsys.chess.checkers/.classpath
new file mode 100644
index 0000000..eca7bdb
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/.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.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/org.polarsys.chess.checkers/.gitignore b/plugins/org.polarsys.chess.checkers/.gitignore
new file mode 100644
index 0000000..09e3bc9
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/.gitignore
@@ -0,0 +1,2 @@
+/bin/
+/target/
diff --git a/plugins/org.polarsys.chess.checkers/.project b/plugins/org.polarsys.chess.checkers/.project
new file mode 100644
index 0000000..2ec8ad1
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/.project
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.polarsys.chess.checkers</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <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>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/org.polarsys.chess.checkers/.settings/org.eclipse.core.resources.prefs b/plugins/org.polarsys.chess.checkers/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/org.polarsys.chess.checkers/.settings/org.eclipse.jdt.core.prefs b/plugins/org.polarsys.chess.checkers/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..0c68a61
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.settings/org.eclipse.m2e.core.prefs b/plugins/org.polarsys.chess.checkers/.settings/org.eclipse.m2e.core.prefs
similarity index 100%
rename from plugins/fla/org.polarsys.chess.xtext.fladsl.ui/.settings/org.eclipse.m2e.core.prefs
rename to plugins/org.polarsys.chess.checkers/.settings/org.eclipse.m2e.core.prefs
diff --git a/plugins/org.polarsys.chess.checkers/.settings/org.eclipse.xtend.core.Xtend.prefs b/plugins/org.polarsys.chess.checkers/.settings/org.eclipse.xtend.core.Xtend.prefs
new file mode 100644
index 0000000..fdf3191
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/.settings/org.eclipse.xtend.core.Xtend.prefs
@@ -0,0 +1,7 @@
+//outlet.DEFAULT_OUTPUT.sourceFolder.src/main/java.directory=xtend-gen
+//outlet.DEFAULT_OUTPUT.sourceFolder.src/test/java.directory=xtend-gen
+BuilderConfiguration.is_project_specific=true
+eclipse.preferences.version=1
+outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true
+outlet.DEFAULT_OUTPUT.installDslAsPrimarySource=false
+outlet.DEFAULT_OUTPUT.userOutputPerSourceFolder=true
diff --git a/plugins/org.polarsys.chess.checkers/META-INF/MANIFEST.MF b/plugins/org.polarsys.chess.checkers/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..21e1d24
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/META-INF/MANIFEST.MF
@@ -0,0 +1,33 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: org.polarsys.chess.checkers
+Bundle-SymbolicName: org.polarsys.chess.checkers;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Require-Bundle: com.google.guava;bundle-version="15.0.0",
+ org.eclipse.uml2.uml,
+ org.eclipse.papyrus.sysml,
+ org.eclipse.ui.workbench,
+ org.eclipse.osgi,
+ org.eclipse.core.runtime;bundle-version="3.12.0",
+ org.polarsys.chess.service,
+ org.eclipse.papyrus.uml.tools,
+ org.eclipse.core.resources,
+ org.eclipse.papyrus.uml.tools.utils,
+ org.apache.log4j;bundle-version="1.2.15",
+ eu.fbk.eclipse.standardtools.utils,
+ org.eclipse.core.jobs,
+ org.eclipse.ui.workbench.texteditor,
+ org.eclipse.emf.common.ui,
+ org.eclipse.uml2.uml.resources,
+ org.eclipse.gmf.runtime.common.ui.services,
+ org.eclipse.papyrus.views.modelexplorer,
+ org.polarsys.chess.contracts.profile,
+ org.eclipse.emf.common,
+ org.eclipse.xtext
+Export-Package: org.polarsys.chess.checkers,
+ org.polarsys.chess.checkers.core.checkerManager,
+ org.polarsys.chess.checkers.core.impl
+Bundle-Activator: org.polarsys.chess.checkers.Activator
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: Fondazione Bruno Kessler
diff --git a/plugins/org.polarsys.chess.checkers/about.html b/plugins/org.polarsys.chess.checkers/about.html
new file mode 100644
index 0000000..164f781
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/about.html
@@ -0,0 +1,36 @@
+<!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>About</title>
+</head>
+<body lang="EN-US">
+ <h2>About This Content</h2>
+
+ <p>November 30, 2017</p>
+ <h3>License</h3>
+
+ <p>
+ The Eclipse Foundation makes available all content in this plug-in
+ ("Content"). Unless otherwise indicated below, the Content
+ is provided to you under the terms and conditions of the Eclipse
+ Public License Version 2.0 ("EPL"). A copy of the EPL is
+ available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
+ For purposes of the EPL, "Program" will mean the Content.
+ </p>
+
+ <p>
+ If you did not receive this Content directly from the Eclipse
+ Foundation, the Content is being redistributed by another party
+ ("Redistributor") and different terms and conditions may
+ apply to your use of any object code in the Content. Check the
+ Redistributor's license that was provided with the Content. If no such
+ license exists, contact the Redistributor. Unless otherwise indicated
+ below, the terms and conditions of the EPL still apply to any source
+ code in the Content and such source code may be obtained at <a
+ href="http://www.eclipse.org/">http://www.eclipse.org</a>.
+ </p>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/plugins/org.polarsys.chess.checkers/build.properties b/plugins/org.polarsys.chess.checkers/build.properties
new file mode 100644
index 0000000..6c480f3
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/build.properties
@@ -0,0 +1,6 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ icons/
diff --git a/plugins/org.polarsys.chess.checkers/icons/checker.png b/plugins/org.polarsys.chess.checkers/icons/checker.png
new file mode 100644
index 0000000..9a05c9d
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/icons/checker.png
Binary files differ
diff --git a/plugins/org.polarsys.chess.checkers/icons/checker_old.png b/plugins/org.polarsys.chess.checkers/icons/checker_old.png
new file mode 100644
index 0000000..9775146
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/icons/checker_old.png
Binary files differ
diff --git a/plugins/org.polarsys.chess.checkers/plugin.xml b/plugins/org.polarsys.chess.checkers/plugin.xml
new file mode 100644
index 0000000..0d8baa9
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/plugin.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension
+ point="org.eclipse.ui.menus">
+ <menuContribution
+ allPopups="false"
+ locationURI="toolbar:org.eclipse.ui.main.toolbar?after=additions">
+ <toolbar
+ id="RunCheckers"
+ label="Run Checkers">
+ <command
+ commandId="org.polarsys.chess.checkers.ui.commands.runCheckers"
+ icon="icons/checker.png"
+ label="Run Checkers"
+ style="push">
+ </command>
+ </toolbar>
+ </menuContribution>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ defaultHandler="org.polarsys.chess.checkers.ui.commands.RunCheckers"
+ id="org.polarsys.chess.checkers.ui.commands.runCheckers"
+ name="Run Checkers">
+ </command>
+ </extension>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ class="org.polarsys.chess.checkers.ui.preferences.ModelCheckingPreferencePage"
+ id="org.polarsys.chess.checkers.ui.preferences.ModelCheckingPreferencePage"
+ name="Checkers">
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.core.runtime.preferences">
+ <initializer
+ class="org.polarsys.chess.checkers.ui.preferences.ModelCheckingPreferenceInitializer">
+ </initializer>
+ </extension>
+
+</plugin>
diff --git a/plugins/org.polarsys.chess.checkers/pom.xml b/plugins/org.polarsys.chess.checkers/pom.xml
new file mode 100644
index 0000000..df207fe
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/pom.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.polarsys.chess</groupId>
+ <artifactId>org.polarsys.chess.parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../../org.polarsys.chess.parent</relativePath>
+ </parent>
+ <artifactId>org.polarsys.chess.checkers</artifactId>
+ <packaging>eclipse-plugin</packaging>
+</project>
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/Activator.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/Activator.java
new file mode 100644
index 0000000..6cdb5b5
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/Activator.java
@@ -0,0 +1,142 @@
+/*******************************************************************************
+ * Copyright (C) 2019 Fondazione Bruno Kessler.
+ * All rights reserved.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *******************************************************************************/
+package org.polarsys.chess.checkers;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.apache.log4j.Level;
+import org.apache.log4j.LogManager;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+import org.polarsys.chess.checkers.core.checkerManager.CheckerManager;
+import org.polarsys.chess.checkers.core.checkerManager.CheckersContainer;
+import org.polarsys.chess.checkers.core.impl.IdentifiersChecker;
+import org.polarsys.chess.checkers.core.impl.NameDistance;
+import org.polarsys.chess.checkers.core.impl.StateStatus;
+import org.polarsys.chess.checkers.core.impl.TestChecker1;
+import org.polarsys.chess.checkers.core.impl.TestChecker2;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends AbstractUIPlugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.polarsys.chess.checkers";
+
+ // The system property that contains the log level to use
+ public static final String LOG4J_LOG_LEVEL = "Log4jLogLevel";
+
+ // The shared instance
+ private static Activator plugin;
+
+ private static CheckerManager checkerManager;
+
+ boolean started;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.
+ * BundleContext)
+ */
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ System.out.println("Activator: " + this);
+ checkerManager = getCheckerManager();
+/*
+ Set<String> tags1 = new HashSet<String>();
+ tags1.add("fast");
+ tags1.add("errors");
+ tags1.add("sysml");
+ new TestChecker2("SysMLChecker1", tags1);
+
+ Set<String> tags2 = new HashSet<String>();
+ tags2.add("slow");
+ tags2.add("warnings");
+ tags2.add("state machine");
+ tags2.add("sysml");
+ new TestChecker1("StateMachineChecker2", tags2, 4);
+
+ new TestChecker1("StateMachineChecker2", tags2, 1);
+
+ new TestChecker1("StateMachineChecker2", tags2, 10);
+
+ new TestChecker1("StateMachineChecker2", tags2, 2);*/
+
+ new NameDistance(1, 1);
+ new StateStatus();
+ new IdentifiersChecker();
+
+ started = true;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.
+ * BundleContext)
+ */
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ started = false;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+ /**
+ * Returns an image descriptor for the image file at the given plug-in
+ * relative path
+ *
+ * @param path
+ * the path
+ * @return the image descriptor
+ */
+ public static ImageDescriptor getImageDescriptor(String path) {
+ return imageDescriptorFromPlugin(PLUGIN_ID, path);
+ }
+
+ public static CheckerManager getCheckerManager() {
+ if (checkerManager == null) {
+ checkerManager = new CheckerManager();
+ }
+ return checkerManager;
+ }
+
+ public Set<String> getTags() {
+ Set<String> selectedTags = new HashSet<String>();
+
+ for (String tag : checkerManager.getTags()) {
+ if (getPreferenceStore().getBoolean(tag)) {
+ selectedTags.add(tag);
+ }
+ }
+ return selectedTags;
+ }
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/Checker.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/Checker.java
new file mode 100644
index 0000000..6e80da9
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/Checker.java
@@ -0,0 +1,143 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.checkerManager;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.log4j.Logger;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.emf.workspace.util.WorkspaceSynchronizer;
+import org.polarsys.chess.contracts.profile.chesscontract.util.EntityUtil;
+
+public abstract class Checker {
+
+ private static final Logger logger = Logger.getLogger(Checker.class);
+
+// private static String pluginID = "org.polarsys.chess.checkers";
+
+ public final String unifiedName;
+ protected final Set<String> checkerTags;
+ protected final int registerPriority;
+ private ArrayList<Exception> errors = new ArrayList<Exception>();
+
+ protected Checker(String unifiedName, Set<String> checkerTags) {
+ this(unifiedName, checkerTags, 0);
+ }
+
+ public Checker(String unifiedName, Set<String> checkerTags, int registerPriority) {
+
+ this.unifiedName = unifiedName;
+ this.checkerTags = checkerTags;
+ this.registerPriority = registerPriority;
+
+ CheckerManager checkerManager = org.polarsys.chess.checkers.Activator.getCheckerManager();
+ logger.debug("register " + unifiedName);
+ checkerManager.getCheckersContainter().register(this);
+ }
+
+ public abstract List<CheckerMessage> check(IProgressMonitor monitor) throws Exception;
+
+ public abstract void init() throws Exception;
+
+ public void asyncCheck(boolean isFirstChecker) throws Exception {
+
+ CheckerManager checkerManager = org.polarsys.chess.checkers.Activator.getCheckerManager();
+
+ org.eclipse.uml2.uml.Package pack = EntityUtil.getInstance().getCurrentSystemView();
+ if(pack==null){
+ IFile file = EntityUtil.getInstance().getCurrentIFile();
+ System.out.println("file: "+file);
+ EntityUtil.getInstance().openCurrentModelIntoEditor(file);
+ }
+
+ IFile iFile = WorkspaceSynchronizer.getFile(EntityUtil.getInstance().getCurrentSystemView().eResource());
+ init();
+
+ logger.debug("running checker: "+unifiedName);
+ Job job = new Job("Checker Manager: " + unifiedName) {
+ @Override
+ protected IStatus run(IProgressMonitor monitor) {
+ try {
+ errors = new ArrayList<Exception>();
+ List<CheckerMessage> messages = check(monitor);
+ if (messages != null) {
+// checkerManager.deleteMarkers(iFile, unifiedName);
+ checkerManager.deleteProjectMarkers(iFile.getProject(), unifiedName);
+ checkerManager.addMessages(unifiedName, messages);
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ logger.error("Checker '"+unifiedName+"' exception: "+e.getMessage());
+ return Status.CANCEL_STATUS;
+ }
+ if (monitor.isCanceled()) {
+ logger.warn("checker '" + unifiedName + "' isCanceled");
+ return Status.CANCEL_STATUS;
+ }
+ // use this to open a Shell in the UI thread
+ return Status.OK_STATUS;
+ }
+ };
+
+ job.setUser(isFirstChecker);
+ job.schedule();
+ }
+
+// /**
+// * Recursively returns all the files in the given container
+// * @param container the IContainer
+// * @return
+// */
+// private List<IFile> getProjectFiles(IContainer container) {
+// final List<IFile> files = new ArrayList<IFile>();
+// try {
+// for (IResource member : container.members()) {
+// if (member instanceof IContainer) {
+// files.addAll(getProjectFiles((IContainer) member));
+// } else if (member instanceof IFile) {
+// files.add((IFile) member);
+// }
+// }
+// } catch (Exception e) {
+// e.printStackTrace();
+// }
+// return files;
+// }
+
+ /*
+ * private void syncWithUI(Shell shell) { Display.getDefault().asyncExec(new
+ * Runnable() { public void run() { MessageDialog.openInformation(shell,
+ * "message", "completed!"); } }); }
+ */
+
+ public boolean belongsTo(Set<String> checkersTags) {
+ for (String tag : checkersTags) {
+ if (checkerTags.contains(tag))
+ return true;
+ }
+ return false;
+ }
+
+ public String getUnifiedName() {
+ return unifiedName;
+ }
+
+ public Set<String> getCheckerTags() {
+ return checkerTags;
+ }
+
+ public void addError(Exception e){
+ errors.add(e);
+ }
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckerManager.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckerManager.java
new file mode 100644
index 0000000..d5411c1
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckerManager.java
@@ -0,0 +1,229 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.checkerManager;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.log4j.Logger;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EValidator;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.views.modelexplorer.ModelExplorerPage;
+import org.eclipse.papyrus.views.modelexplorer.ModelExplorerPageBookView;
+import org.eclipse.papyrus.views.modelexplorer.ModelExplorerView;
+import org.eclipse.ui.IViewPart;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.part.IPage;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.xtext.nodemodel.INode;
+import org.polarsys.chess.service.gui.utils.ReportProblemsUtil;
+
+public class CheckerManager {
+
+ private static final Logger logger = Logger.getLogger(CheckerManager.class);
+
+ private static final String CHECKER_NAME = "checkerName";
+ List<CheckersContainer> checkersContainers;
+ List<CheckerMessage> messages;
+ HashMap<String, Boolean> checkerStatus;
+
+ // ModelExplorerPageBookView modelExplorerPageBookView;
+ // ModelExplorerView modelExplorerView ;
+ // test test;
+ public CheckerManager() {
+ logger.debug("Instantiate CheckerManager");
+ this.checkersContainers = new ArrayList<CheckersContainer>();
+ new CheckersContainer(this);
+ // checkersContainers.add(checkersContainer);
+ }
+
+ public void run(Set<String> selectedCheckersTags) throws Exception {
+ logger.debug("run");
+ checkerStatus = new HashMap<String, Boolean>();
+ messages = new ArrayList<CheckerMessage>();
+ // modelExplorerPageBookView = getModelExplorerPageBookView();
+ // modelExplorerView = getModelExplorerView();
+ // test = new test(modelExplorerView);
+ for (CheckersContainer checkersContainer : checkersContainers) {
+ logger.debug("run checkersContainer");
+ checkersContainer.run(selectedCheckersTags);
+ }
+ }
+
+ public void register(CheckersContainer checkersContainer) {
+ logger.debug("register CheckersContainer");
+ this.checkersContainers.add(checkersContainer);
+ }
+
+ public Set<String> getTags() {
+ Set<String> tags = new HashSet<String>();
+
+ for (CheckersContainer containter : checkersContainers) {
+ tags.addAll(containter.getTags());
+ }
+
+ return tags;
+ }
+
+ public CheckersContainer getCheckersContainter() {
+ return checkersContainers.get(0);
+ }
+
+ public void addMessages(String unifiedName, List<CheckerMessage> newMessages) throws Exception {
+ // this.messages.addAll(newMessages);
+ checkerStatus.put(unifiedName, true);
+
+ // logger.debug("addMessages '" + unifiedName + "' : " +
+ // newMessages.size());
+
+ /*
+ * for (Boolean value : checkerStatus.values()) { if
+ * (value.booleanValue() == false) return; }
+ */
+
+ // IViewPart modelexplorer =
+ // PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()
+ // .showView(ModelExplorerPageBookView.VIEW_ID);
+ // modelExplorerView = getModelExplorerPageBookView();
+ // System.out.println("modelexplorer: "+modelExplorerView);
+
+ // Set<IFile> iFiles = extractIFiles(newMessages);
+
+ // for (IFile iFile : iFiles) {
+ // deleteMarkers(iFile, unifiedName);
+ // }
+
+ for (CheckerMessage msn : newMessages) {
+ if (msn.object != null && msn.object instanceof EObject) {
+ IMarker marker = msn.file.createMarker(EValidator.MARKER);
+ marker.setAttribute(CHECKER_NAME, msn.checkerName);
+ marker.setAttribute(IMarker.MESSAGE, msn.message);
+ String location = EcoreUtil.getURI((EObject) msn.object).toString();
+ if (msn.object instanceof NamedElement) {
+ location = ((NamedElement) msn.object).getQualifiedName();
+ }
+ marker.setAttribute(IMarker.LOCATION, location);
+ marker.setAttribute(IMarker.SEVERITY, msn.severity);
+ marker.setAttribute(EValidator.URI_ATTRIBUTE, EcoreUtil.getURI((EObject) msn.object).toString());
+ } else if (msn.object != null && msn.object instanceof INode) {
+ try {
+ final INode node = (INode) msn.object;
+ if (msn.severity == IMarker.SEVERITY_INFO) {
+ ReportProblemsUtil.reportInfo(msn.file, CHECKER_NAME, msn.checkerName, msn.message, node.getStartLine(),
+ node.getOffset(), node.getEndOffset());
+ } else if (msn.severity == IMarker.SEVERITY_WARNING) {
+ ReportProblemsUtil.reportWarning(msn.file, CHECKER_NAME, msn.checkerName, msn.message, node.getStartLine(),
+ node.getOffset(), node.getEndOffset());
+ } else if (msn.severity == IMarker.SEVERITY_ERROR) {
+ ReportProblemsUtil.reportError(msn.file, CHECKER_NAME, msn.checkerName, msn.message, node.getStartLine(),
+ node.getOffset(), node.getEndOffset());
+ }
+ } catch (NullPointerException | CoreException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ private Set<IFile> extractIFiles(List<CheckerMessage> checkerMessages) {
+
+ Set<IFile> iFiles = new HashSet<IFile>();
+ if (checkerMessages != null) {
+ for (CheckerMessage checkerMessage : checkerMessages) {
+ if (checkerMessage.file != null) {
+ iFiles.add(checkerMessage.file);
+ }
+ }
+ }
+ return iFiles;
+ }
+
+ void deleteMarkers(IFile file, String checkerName) throws CoreException {
+ IMarker[] markers = file.findMarkers(EValidator.MARKER, false, IResource.DEPTH_ONE);
+ for (IMarker marker : markers) {
+ if (marker != null && marker.exists() && marker.getAttribute(CHECKER_NAME, "").equals(checkerName)) {
+ marker.delete();
+ }
+ }
+ }
+
+ /**
+ * Deletes all the matching markers inside the given project.
+ * @param project the active project
+ * @param checkerName the name of the creating checker
+ * @throws CoreException
+ */
+ void deleteProjectMarkers(IProject project, String checkerName) throws CoreException {
+ IMarker[] markers = project.findMarkers(null, false, IResource.DEPTH_INFINITE);
+ for (IMarker marker : markers) {
+ if (marker != null && marker.exists() && marker.getAttribute(CHECKER_NAME, "").equals(checkerName)) {
+ marker.delete();
+ }
+ }
+ }
+
+ private ModelExplorerPageBookView getModelExplorerPageBookView() {
+
+ IWorkbench workbench = PlatformUI.getWorkbench();
+
+ System.out.println("workbench: " + workbench);
+ IWorkbenchWindow window = workbench.getActiveWorkbenchWindow();
+
+ System.out.println("window: " + window);
+
+ IWorkbenchPage workbenchPage = window.getActivePage();
+
+ System.out.println("workbenchPage: " + workbenchPage);
+
+ IViewPart modelExplorerViewPart = null;
+
+ for (IViewPart view : workbenchPage.getViews()) {
+ System.out.println("view: " + view.getTitle());
+ }
+
+ try {
+ modelExplorerViewPart = window.getActivePage().showView(ModelExplorerPageBookView.VIEW_ID);
+ } catch (PartInitException ex) {
+ ex.printStackTrace(System.out);
+ }
+
+ ModelExplorerPageBookView view = (ModelExplorerPageBookView) modelExplorerViewPart;
+ return view;
+
+ }
+
+ private ModelExplorerView getModelExplorerView() {
+
+ ModelExplorerPageBookView view = getModelExplorerPageBookView();
+ IPage currentPage = view.getCurrentPage();
+ ModelExplorerPage page = (ModelExplorerPage) currentPage;
+ IViewPart viewer = page.getViewer();
+ ModelExplorerView modelExplorerView = (ModelExplorerView) viewer;
+
+ return modelExplorerView;
+
+ }
+
+ public void updateCheckerStatus(String unifiedName, boolean b) {
+ checkerStatus.put(unifiedName, b);
+ }
+
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckerMessage.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckerMessage.java
new file mode 100644
index 0000000..bce10f3
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckerMessage.java
@@ -0,0 +1,40 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.checkerManager;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.workspace.util.WorkspaceSynchronizer;
+
+public class CheckerMessage {
+
+ protected IFile file;
+ protected int severity;
+ protected String message;
+ protected Object object;
+ protected String checkerName;
+
+ public CheckerMessage(String message, int severity ,Object object, String checkerName ) {
+ this((object instanceof EObject) ? WorkspaceSynchronizer.getFile(((EObject) object).eResource()) : null,
+ severity, message, object, checkerName);
+ }
+
+ public CheckerMessage(IFile file, int severity, String message, Object object, String checkerName) {
+ super();
+ this.file = file;
+ this.severity = severity;
+ this.message = message;
+ this.object = object;
+ this.checkerName = checkerName;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckerTriggerManager.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckerTriggerManager.java
new file mode 100644
index 0000000..296256a
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckerTriggerManager.java
@@ -0,0 +1,45 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.checkerManager;
+
+import java.util.List;
+
+import com.google.common.collect.HashBasedTable;
+import com.google.common.collect.Table;
+
+public class CheckerTriggerManager {
+ Table<String, String, Integer> targetIdHashMap = HashBasedTable.create();
+
+ public void loadCheckersRegistry() {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void saveCheckersRegistry() {
+ // TODO Auto-generated method stub
+
+ }
+
+ public boolean isTriggered(String checkerUnifiedName, String targetId, int targetCurrentHashCode) {
+ Integer lastTargetHashCode = targetIdHashMap.get(checkerUnifiedName, targetId);
+ if ((lastTargetHashCode != null) && (!lastTargetHashCode.equals(targetCurrentHashCode))) {
+ return true;
+ }
+ return false;
+ }
+
+ public void updateCheckersRegistryEntry(String checkerUnifiedName, String targetId, int targetCurrentHashCode) {
+ targetIdHashMap.put(checkerUnifiedName, targetId, targetCurrentHashCode);
+
+ }
+
+ public void updateCheckersRegistry(List<?> targets) {
+ // TODO Auto-generated method stub
+
+ }
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckersContainer.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckersContainer.java
new file mode 100644
index 0000000..ae4adb1
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/CheckersContainer.java
@@ -0,0 +1,79 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.checkerManager;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Optional;
+import java.util.Set;
+
+import org.apache.log4j.Logger;
+
+public class CheckersContainer {
+
+ private static final Logger logger = Logger.getLogger(CheckersContainer.class);
+
+ List<Checker> checkers;
+ CheckerManager checkerManager;
+
+ public CheckersContainer(CheckerManager checkerManager) {
+ this.checkers = new ArrayList<Checker>();
+ this.checkerManager = checkerManager;
+ checkerManager.register(this);
+ }
+
+ public void run(Set<String> checkersTags) throws Exception {
+
+ boolean isFirstChecker = true;
+
+ for (Checker checker : checkers) {
+
+ checkerManager.updateCheckerStatus(checker.unifiedName, false);
+
+ if (checker.belongsTo(checkersTags)) {
+ logger.debug("run " + checker.getUnifiedName());
+ checker.asyncCheck(isFirstChecker);
+ isFirstChecker=false;
+ }
+ }
+
+ }
+
+ public void register(Checker checker) {
+ Optional<Checker> alreadyRegisteredChecker = find(this.checkers,checker.unifiedName);
+ if(!alreadyRegisteredChecker.isPresent()){
+ logger.debug("register checker not present: "+checker.registerPriority);
+ this.checkers.add(checker);
+ }else if((alreadyRegisteredChecker.get().registerPriority < checker.registerPriority)){
+ logger.debug("register checker already registered with priority: "+alreadyRegisteredChecker.get().registerPriority);
+ logger.debug("checker to register with priority: "+checker.registerPriority);
+
+ this.checkers.remove(alreadyRegisteredChecker.get());
+ this.checkers.add(checker);
+ //return;
+ }
+ //this.checkers.add(checker);
+ }
+
+ public Optional<Checker> find(final List<Checker> list, final String name){
+ return list.stream().filter(o -> o.unifiedName.equals(name)).findFirst();
+ }
+
+ public Collection<? extends String> getTags() {
+ Set<String> tags = new HashSet<String>();
+ for (Checker checker : checkers) {
+ tags.addAll(checker.getCheckerTags());
+ }
+ return tags;
+ }
+
+
+
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/test.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/test.java
new file mode 100644
index 0000000..0644726
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/checkerManager/test.java
@@ -0,0 +1,60 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.checkerManager;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EValidator;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.views.modelexplorer.ModelExplorerView;
+import org.eclipse.ui.IViewPart;
+import org.eclipse.ui.ide.IDE;
+import org.eclipse.ui.ide.IGotoMarker;
+import org.eclipse.ui.navigator.CommonViewer;
+
+import com.google.common.collect.Lists;
+
+public class test implements IGotoMarker {
+
+ ModelExplorerView modelExplorerView;
+
+
+ public test(ModelExplorerView modelExplorerView) {
+ super();
+ this.modelExplorerView = modelExplorerView;
+ }
+
+
+ @Override
+ public void gotoMarker(IMarker marker) {
+
+ String uriAttribute = marker.getAttribute(EValidator.URI_ATTRIBUTE, null);
+ if (uriAttribute != null) {
+ URI uri = URI.createURI(uriAttribute);
+
+ EditingDomain domain = modelExplorerView.getEditingDomain();
+ EObject eObject = domain.getResourceSet().getEObject(uri, false);
+ if (eObject != null) {
+
+ modelExplorerView.revealSemanticElement(Lists.newArrayList(eObject));
+ //CommonViewer treeViewer = modelExplorerView.getCommonViewer();
+ // The common viewer is in fact a tree viewer
+ // bug enhancement: use function in ModelExplorerView instead of findElementForEObject
+ //ModelExplorerView.reveal(Lists.newArrayList(eObject), treeViewer);
+ }
+ }
+
+ }
+
+
+
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/IdentifiersChecker.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/IdentifiersChecker.java
new file mode 100644
index 0000000..9dcd2f5
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/IdentifiersChecker.java
@@ -0,0 +1,161 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.impl;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.log4j.Logger;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.emf.common.util.BasicEList;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.Operation;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.Port;
+import org.eclipse.uml2.uml.Property;
+import org.polarsys.chess.checkers.core.checkerManager.Checker;
+import org.polarsys.chess.checkers.core.checkerManager.CheckerMessage;
+import org.polarsys.chess.contracts.profile.chesscontract.util.EntityUtil;
+
+public class IdentifiersChecker extends Checker {
+ protected Package systemViewPackage;
+ private static final Logger logger = Logger.getLogger(IdentifiersChecker.class);
+ private static final String checkerName = "IdentifierChecker";
+
+ /**
+ * Default constructor
+ */
+ public IdentifiersChecker() {
+ super(checkerName, getTags());
+ }
+
+ /**
+ * Creates the checker with the given priority.
+ * @param priority the priority
+ */
+ public IdentifiersChecker(int priority) {
+ super(checkerName, getTags(), priority);
+ }
+
+ /**
+ * Constructor with explicit tags.
+ * @param tags the tags identifying this checker
+ */
+ public IdentifiersChecker(Set<String> tags) {
+ super(checkerName, tags);
+ }
+
+ /**
+ * Constructor with explicit tags and priority.
+ * @param tags the tags identifying this checker
+ * @param priority the priority
+ */
+ public IdentifiersChecker(Set<String> tags, int priority) {
+ super(checkerName, tags, priority);
+ }
+
+ @Override
+ public List<CheckerMessage> check(IProgressMonitor monitor) throws Exception {
+ List<CheckerMessage> messages = new ArrayList<CheckerMessage>();
+ Collection<Class> blocks = null;
+ try {
+ blocks = (Collection<Class>) EntityUtil.getInstance().getAllClasses(systemViewPackage);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ monitor.beginTask(checkerName, blocks.size());
+ for (Class block : blocks) {
+ messages.addAll(processBlock(block));
+ if (monitor.isCanceled())
+ throw new Exception("Checker interrupted");
+ monitor.worked(1);
+ }
+ return messages;
+ }
+
+ /**
+ * Processes the given block.
+ *
+ * @param block
+ * the block to process
+ * @return a list of messages
+ */
+ protected List<CheckerMessage> processBlock(Class block) {
+ final EList<NamedElement> elements = filterElements(block);
+ return processElements(elements);
+ }
+
+ /**
+ * Processes the given list of elements.
+ *
+ * @param block
+ * the list to process
+ * @return a list of warnings
+ */
+ protected List<CheckerMessage> processElements(EList<NamedElement> elements) {
+ List<CheckerMessage> messages = new ArrayList<CheckerMessage>();
+
+ for (NamedElement element : elements) {
+ final String name = element.getName();
+ logger.debug("Processing " + name);
+ if (!isValidId(name)) {
+ logger.debug("The element name is not a valid identifier: " + name);
+ final String msg = "The element name is not a valid identifier: " + name;
+ messages.add(new CheckerMessage(msg, IMarker.SEVERITY_WARNING, element, checkerName));
+ }
+ }
+ return messages;
+ }
+
+ protected boolean isValidId(String id) {
+ return javax.lang.model.SourceVersion.isIdentifier(id) && (!javax.lang.model.SourceVersion.isKeyword(id));
+ }
+
+ /**
+ * Creates the list of elements to be analized (incuding the block itself). Can be overridden if necessary.
+ * @param elements
+ * @return the filtered elements
+ */
+ protected EList<NamedElement> filterElements(Class block) {
+ final EList<Property> attributes = block.getOwnedAttributes();
+ final EList<Operation> operations = block.getOwnedOperations();
+ final EList<Behavior> behaviors = block.getOwnedBehaviors();
+ final EList<Port> ports = block.getOwnedPorts();
+
+ final EList<NamedElement> elements = new BasicEList<NamedElement>(attributes.size() +
+ operations.size() + behaviors.size() + ports.size() + 1);
+ elements.addAll(attributes);
+ elements.addAll(operations);
+ elements.addAll(behaviors);
+ elements.addAll(ports);
+ elements.add(block);
+ return elements;
+ }
+
+ private static Set<String> getTags() {
+ Set<String> tags = new HashSet<String>();
+ tags.add("fast");
+ tags.add("warnings");
+ tags.add("sysml");
+ return tags;
+ }
+
+ @Override
+ public void init() throws Exception {
+ systemViewPackage = EntityUtil.getInstance().getCurrentSystemView();
+ }
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/NameDistance.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/NameDistance.java
new file mode 100644
index 0000000..8d56967
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/NameDistance.java
@@ -0,0 +1,298 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.impl;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import org.apache.log4j.Logger;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.emf.common.util.BasicEList;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.polarsys.chess.checkers.core.checkerManager.Checker;
+import org.polarsys.chess.checkers.core.checkerManager.CheckerMessage;
+import org.polarsys.chess.contracts.profile.chesscontract.util.EntityUtil;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.Port;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.Operation;
+
+/**
+ * Computes the minimum distance among properties inside SysML Blocks.
+ *
+ * @author cristofo
+ *
+ */
+public class NameDistance extends Checker {
+
+ /** Minimum distance between two elements; below it, marks as suspect. */
+ private int threshold = 2;
+ private Package systemViewPackage;
+ private static final Logger logger = Logger.getLogger(NameDistance.class);
+ private static final String checkerName = "NameDistance";
+
+ /**
+ * Creates a name distance checker with default threshold.
+ */
+ public NameDistance() {
+ super(checkerName, getTags());
+ }
+
+ /**
+ * Creates a name distance checker with the given priority.
+ * @param priority the priority
+ */
+ public NameDistance(int priority) {
+ super(checkerName, getTags(), priority);
+ }
+
+ /**
+ * Creates a name distance checker with the given priority and threshold.
+ * @param priority the priority
+ * @param threshold the threshold to use
+ */
+ public NameDistance(int priority, int threshold) {
+ super(checkerName, getTags(), priority);
+ setThreshold(threshold);
+ }
+
+ /**
+ * Constructor with explicit tags.
+ * @param tags the tags identifying this checker
+ */
+ public NameDistance(Set<String> tags) {
+ super(checkerName, tags);
+ }
+
+ /**
+ * Constructor with explicit tags and priority.
+ * @param tags the tags identifying this checker
+ * @param priority the priority
+ */
+ public NameDistance(Set<String> tags, int priority) {
+ super(checkerName, tags, priority);
+ }
+
+ /**
+ * Constructor with explicit tags, priority and threshold.
+ * @param tags the tags identifying this checker
+ * @param priority the priority
+ * @param threshold the threshold to use
+ */
+ public NameDistance(Set<String> tags, int priority, int threshold) {
+ super(checkerName, tags, priority);
+ setThreshold(threshold);
+ }
+
+ private static Set<String> getTags() {
+ Set<String> tags = new HashSet<String>();
+ tags.add("fast");
+ tags.add("warnings");
+ tags.add("errors");
+ tags.add("sysml");
+ return tags;
+ }
+
+ public int getThreshold() {
+ return threshold;
+ }
+
+ public void setThreshold(int threshold) {
+ this.threshold = threshold;
+ }
+
+ @Override
+ public List<CheckerMessage> check(IProgressMonitor monitor) throws Exception {
+ List<CheckerMessage> messages = new ArrayList<CheckerMessage>();
+ Collection<Class> blocks = null;
+ try {
+ blocks = (Collection<Class>) EntityUtil.getInstance().getAllClasses(systemViewPackage);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ monitor.beginTask(unifiedName, blocks.size());
+ for (Class block : blocks) {
+ messages.addAll(processBlock(block));
+ if (monitor.isCanceled())
+ throw new Exception("Checker interrupted");
+ monitor.worked(1);
+ }
+ return messages;
+ }
+
+ /**
+ * Processes the given block.
+ *
+ * @param block
+ * the block to process
+ * @return a list of warnings
+ */
+ private List<CheckerMessage> processBlock(Class block) {
+ final EList<NamedElement> elements = filterElements(block);
+ return processElements(elements);
+ }
+
+ /**
+ * Creates the list of elements to be analized. Can be overridden if necessary.
+ * @param elements
+ * @return the filtered elements
+ */
+ protected EList<NamedElement> filterElements(Class block) {
+ final EList<Property> attributes = block.getOwnedAttributes();
+ final EList<Operation> operations = block.getOwnedOperations();
+ final EList<Behavior> behaviors = block.getOwnedBehaviors();
+ final EList<Port> ports = block.getOwnedPorts();
+
+ final EList<NamedElement> elements = new BasicEList<NamedElement>(attributes.size() +
+ operations.size() + behaviors.size() + ports.size());
+ elements.addAll(attributes);
+ elements.addAll(operations);
+ elements.addAll(behaviors);
+ elements.addAll(ports);
+ return elements;
+ }
+
+ /**
+ * Processes the given list of elements.
+ *
+ * @param block
+ * the list to process
+ * @return a list of warnings
+ */
+ private List<CheckerMessage> processElements(EList<NamedElement> elements) {
+ List<CheckerMessage> messages = new ArrayList<CheckerMessage>();
+
+ for (int i = 0; i < elements.size(); i++) {
+ final NamedElement first = elements.get(i);
+ final String firstName = normalizeName(first.getName());
+ ArrayList<String> similarNames = new ArrayList<String>(2);
+ for (int j = 0; j < elements.size(); j++) {
+ if (j == i)
+ continue;
+ final NamedElement second = elements.get(j);
+
+ final String secondName = normalizeName(second.getName());
+ final int distance = levenshteinDistance(firstName, secondName);
+ logger.debug(firstName + " and " + secondName + " distance = " + distance);
+
+ if (distance == 0) {
+ final String msg = equalsMsg(first, second);
+ messages.add(createMessage(msg, IMarker.SEVERITY_ERROR, first, unifiedName));
+ }
+ if (distance <= threshold) {
+ similarNames.add(second.getName());
+ }
+ }
+
+ // If some similarities are found, store the entry in the warnings
+ if (similarNames.size() > 0) {
+ final String msg = similarMsg(first, similarNames);
+ messages.add(createMessage(msg, IMarker.SEVERITY_WARNING, first, unifiedName));
+ }
+ }
+ return messages;
+ }
+
+ protected String equalsMsg(NamedElement first, NamedElement second) {
+ return "The term '" + first.getName() + "' is equal to '" + second.getName() +
+ "' in block '" + ((Class) first.getOwner()).getName() + "'";
+ }
+
+ protected String similarMsg(NamedElement first, ArrayList<String> similarNames) {
+ return "The term '" + first.getName() + "' is very similar to '"
+ + String.join("' and '", similarNames) + "' in block '" + ((Class) first.getOwner()).getName() + "'";
+ }
+
+ /**
+ * Removes macro and event prefixes from the name, and put it in lowercase.
+ *
+ * @param name
+ * @return
+ */
+ private String normalizeName(String name) {
+ // if (name.startsWith(RfiAccEntityUtil.MACRO_PREFIX) &&
+ // Character.isUpperCase(name.charAt(RfiAccEntityUtil.MACRO_PREFIX.length())))
+ // {
+ // name = name.substring(RfiAccEntityUtil.MACRO_PREFIX.length());
+ // } else if (name.startsWith(RfiAccEntityUtil.EVENT_PREFIX) &&
+ // Character.isUpperCase(name.charAt(RfiAccEntityUtil.EVENT_PREFIX.length())))
+ // {
+ // name = name.substring(RfiAccEntityUtil.EVENT_PREFIX.length());
+ // }
+
+ return name.toLowerCase();
+ }
+
+ /**
+ * Computes the Levenshtein distance. Code taken from
+ * https://en.wikibooks.org/wiki/Algorithm_Implementation/Strings/Levenshtein_distance#Java
+ *
+ * @param lhs
+ * @param rhs
+ * @return the distance
+ */
+ private static int levenshteinDistance(CharSequence lhs, CharSequence rhs) {
+ int len0 = lhs.length() + 1;
+ int len1 = rhs.length() + 1;
+
+ // the array of distances
+ int[] cost = new int[len0];
+ int[] newcost = new int[len0];
+
+ // initial cost of skipping prefix in String s0
+ for (int i = 0; i < len0; i++)
+ cost[i] = i;
+
+ // dynamically computing the array of distances
+
+ // transformation cost for each letter in s1
+ for (int j = 1; j < len1; j++) {
+ // initial cost of skipping prefix in String s1
+ newcost[0] = j;
+
+ // transformation cost for each letter in s0
+ for (int i = 1; i < len0; i++) {
+ // matching current letters in both strings
+ int match = (lhs.charAt(i - 1) == rhs.charAt(j - 1)) ? 0 : 1;
+
+ // computing cost for each transformation
+ int cost_replace = cost[i - 1] + match;
+ int cost_insert = cost[i] + 1;
+ int cost_delete = newcost[i - 1] + 1;
+
+ // keep minimum cost
+ newcost[i] = Math.min(Math.min(cost_insert, cost_delete), cost_replace);
+ }
+
+ // swap cost/newcost arrays
+ int[] swap = cost;
+ cost = newcost;
+ newcost = swap;
+ }
+
+ // the distance is the cost for transforming all letters in both strings
+ return cost[len0 - 1];
+ }
+
+ protected CheckerMessage createMessage(String msg, int severity, EObject element, String unifiedName) {
+ return new CheckerMessage(msg, severity, element, unifiedName);
+ }
+
+ @Override
+ public void init() throws Exception {
+ systemViewPackage = EntityUtil.getInstance().getCurrentSystemView();
+ }
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/StateStatus.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/StateStatus.java
new file mode 100644
index 0000000..edbe85c
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/StateStatus.java
@@ -0,0 +1,329 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.impl;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.log4j.Logger;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.Region;
+import org.eclipse.uml2.uml.StateMachine;
+import org.eclipse.uml2.uml.Transition;
+import org.eclipse.uml2.uml.Vertex;
+import org.polarsys.chess.checkers.core.checkerManager.Checker;
+import org.polarsys.chess.checkers.core.checkerManager.CheckerMessage;
+import org.polarsys.chess.contracts.profile.chesscontract.util.EntityUtil;
+
+/**
+ * Two checkers that detect unreachable states and states without transitions to other
+ * states, inside a StateMachine.
+ *
+ * @author cristofo
+ *
+ */
+public class StateStatus extends Checker {
+ private Package systemViewPackage;
+ protected static final Logger logger = Logger.getLogger(StateStatus.class);
+ private final EntityUtil entityUtil = EntityUtil.getInstance();
+ private static final String checkerName = "StateStatus";
+
+ /**
+ * Creates a state checker
+ */
+ public StateStatus() {
+ super(checkerName, getTags());
+ }
+
+ /**
+ * Creates a state checker with the given priority
+ * @param priority the priority
+ */
+ public StateStatus(int priority) {
+ super(checkerName, getTags(), priority);
+ }
+
+ /**
+ * Constructor with explicit tags.
+ * @param tags the tags identifying this checker
+ */
+ public StateStatus(Set<String> tags) {
+ super(checkerName, tags);
+ }
+
+ /**
+ * Constructor with explicit tags and priority.
+ * @param tags the tags identifying this checker
+ * @param priority the priority
+ */
+ public StateStatus(Set<String> tags, int priority) {
+ super(checkerName, tags, priority);
+ }
+
+ private static Set<String> getTags() {
+ Set<String> tags = new HashSet<String>();
+ tags.add("fast");
+ tags.add("errors");
+ tags.add("state machine");
+ return tags;
+ }
+
+ @Override
+ public List<CheckerMessage> check(IProgressMonitor monitor) throws Exception {
+ List<CheckerMessage> messages = new ArrayList<CheckerMessage>();
+ Collection<Class> blocks = null;
+ blocks = getBlocks(systemViewPackage);
+
+ monitor.beginTask(unifiedName, blocks.size());
+ for (Class block : blocks) {
+// warnings.addAll(checkForDeadAndUnreachableStates(block));
+ messages.addAll(checkForDeadStates(block));
+ messages.addAll(checkForUnreachableStates(block));
+ if (monitor.isCanceled())
+ throw new Exception("Checker interrupted");
+ monitor.worked(1);
+ }
+ return messages;
+ }
+
+ /**
+ * Returns the blocks that should be checked inside the model. Can be overwritter if necessary.
+ * @param systemViewPackage
+ * @return
+ */
+ protected Collection<Class> getBlocks(Package systemViewPackage) {
+ try {
+ return (Collection<Class>) EntityUtil.getInstance().getAllClasses(systemViewPackage);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ /**
+ * A dead state is a state with no transitions to other states.
+ * @param block
+ * @return list of errors
+ */
+ protected List<CheckerMessage> checkForDeadStates(Class block) {
+ List<CheckerMessage> errors = new ArrayList<CheckerMessage>();
+
+ final Set<StateMachine> stateMachines = entityUtil.getNominalStateMachines(block);
+ if (stateMachines.isEmpty()) {
+ logger.error("No state machines are present in block " + block.getName());
+ }
+
+ for (StateMachine stateMachine : stateMachines) {
+ if (stateMachine == null) continue;
+ final String stateMachineName = stateMachine.getName();
+ final Region region = stateMachine.getRegion(null); // Assume that only one region is present
+ if (region == null) {
+ logger.error("State machine " + stateMachineName + " of block " + block.getName() +
+ " is not valid");
+ continue;
+ }
+
+ // If there is only one intermediate state, don't do any check
+ if (entityUtil.getIntermediateStates(stateMachine).size() <= 1) continue;
+
+ final EList<Vertex> states = entityUtil.getStates(stateMachine);
+ final List<String> deadStates = new ArrayList<String>(1);
+ for (Vertex state : states) {
+ if (entityUtil.isFinalState(state)) continue;
+ boolean dead = true;
+ final EList<Transition> outgoingTransitions = entityUtil.getOutgoingTransitions(state);
+ for (Transition transition : outgoingTransitions) {
+ if (entityUtil.getTransitionNextState(transition) != state) {
+ dead = false;
+ break;
+ }
+ }
+ if (dead) {
+ final String msg = deadMsg(state, block);
+ errors.add(createMessage(msg, IMarker.SEVERITY_ERROR, state, unifiedName));
+
+ deadStates.add(state.getName());
+ }
+ }
+ if (deadStates.size() == 0) {
+ logger.debug("State machine " + stateMachineName + ": all states are valid");
+ } else {
+ logger.error("State machine " + stateMachineName + ": the following states are dead: " +
+ String.join(", ", deadStates));
+ }
+ }
+
+ return errors;
+ }
+
+ /**
+ * An unreachable state is a state that is no reachable from other states.
+ * @param block
+ * @return list of errors
+ */
+ private List<CheckerMessage> checkForUnreachableStates(Class block) {
+ List<CheckerMessage> errors = new ArrayList<CheckerMessage>();
+
+ final Set<StateMachine> stateMachines = entityUtil.getNominalStateMachines(block);
+ if (stateMachines.isEmpty()) {
+ logger.error("No state machines are present in block " + block.getName());
+ }
+
+ for (StateMachine stateMachine : stateMachines) {
+ if (stateMachine == null) continue;
+ final String stateMachineName = stateMachine.getName();
+ final Region region = stateMachine.getRegion(null); // Assume that only one region is present
+ if (region == null) {
+ logger.error("State machine " + stateMachineName + " of block " + block.getName() +
+ " is not valid");
+ continue;
+ }
+ final EList<Vertex> states = entityUtil.getIntermediateStates(stateMachine);
+ final List<String> unreachableStates = new ArrayList<String>(1);
+ for (Vertex state : states) {
+ boolean unreachable = true;
+ final EList<Transition> incomingTransitions = entityUtil.getIncomingTransitions(state);
+ for (Transition transition : incomingTransitions) {
+ if (entityUtil.getTransitionSourceState(transition) != state) {
+ unreachable = false;
+ break;
+ }
+ }
+ if (unreachable) {
+ final String msg = unreachableMsg(state, block);
+ errors.add(createMessage(msg, IMarker.SEVERITY_ERROR, state, unifiedName));
+ unreachableStates.add(state.getName());
+ }
+ }
+ if (unreachableStates.size() == 0) {
+ logger.debug("State machine " + stateMachineName + ": all states are valid");
+ } else {
+ logger.error("State machine " + stateMachineName + ": the following states are not reachable: " +
+ String.join(", ", unreachableStates));
+ }
+ }
+
+ return errors;
+ }
+
+ /**
+ * An unreachable state is a state that is no reachable from other states.
+ * @param block
+ * @return list of errors
+ */
+ private List<CheckerMessage> checkForDeadAndUnreachableStates(Class block) {
+ List<CheckerMessage> errors = new ArrayList<CheckerMessage>();
+
+ final Set<StateMachine> stateMachines = entityUtil.getNominalStateMachines(block);
+ if (stateMachines.isEmpty()) {
+ logger.error("No state machines are present in block " + block.getName());
+ }
+
+ for (StateMachine stateMachine : stateMachines) {
+ if (stateMachine == null) continue;
+ final String stateMachineName = stateMachine.getName();
+ final Region region = stateMachine.getRegion(null); // Assume that only one region is present
+ if (region == null) {
+ logger.error("State machine " + stateMachineName + " of block " + block.getName() +
+ " is not valid");
+ continue;
+ }
+ final EList<Vertex> states = entityUtil.getStates(stateMachine);
+ final List<String> deadStates = new ArrayList<String>(1);
+ final List<String> unreachableStates = new ArrayList<String>(1);
+
+ int stateCounter = 0;
+ for (Vertex state : states) {
+ if (!entityUtil.isFinalState(state)) {
+ stateCounter++;
+ }
+ }
+
+ for (Vertex state : states) {
+ boolean dead = false;
+ boolean unreachable = false;
+ if (!entityUtil.isFinalState(state)) {
+ dead = true;
+ final EList<Transition> outgoingTransitions = entityUtil.getOutgoingTransitions(state);
+ for (Transition transition : outgoingTransitions) {
+ if (entityUtil.getTransitionNextState(transition) != state) {
+ dead = false;
+ break;
+ }
+ }
+ }
+
+ if (!entityUtil.isInitialState(state)) {
+ unreachable = true;
+ final EList<Transition> incomingTransitions = entityUtil.getIncomingTransitions(state);
+ for (Transition transition : incomingTransitions) {
+ if (entityUtil.getTransitionSourceState(transition) != state) {
+ unreachable = false;
+ break;
+ }
+ }
+ }
+
+ if ((dead && stateCounter > 2)) {
+ final String msg = deadMsg(state, block);
+ errors.add(createMessage(msg, IMarker.SEVERITY_ERROR, state, unifiedName));
+ deadStates.add(state.getName());
+ }
+
+ if ((unreachable)) {
+ final String msg = unreachableMsg(state, block);
+ errors.add(createMessage(msg, IMarker.SEVERITY_ERROR, state, unifiedName));
+ unreachableStates.add(state.getName());
+ }
+ }
+ if (deadStates.size() == 0) {
+ logger.debug("State machine " + stateMachineName + ": all states are valid");
+ } else {
+ logger.error("State machine " + stateMachineName + ": the following states are dead: " +
+ String.join(", ", deadStates));
+ }
+ if (unreachableStates.size() == 0) {
+ logger.debug("State machine " + stateMachineName + ": all states are valid");
+ } else {
+ logger.error("State machine " + stateMachineName + ": the following states are not reachable: " +
+ String.join(", ", unreachableStates));
+ }
+ }
+ return errors;
+ }
+
+ protected CheckerMessage createMessage(String msg, int severity, EObject state, String unifiedName) {
+ return new CheckerMessage(msg, severity, state, unifiedName);
+ }
+
+ protected String deadMsg(Vertex state, Class block) {
+ return "The state '" + state.getName() + "' of block '" +
+ block.getName() + "' does not have any transitions to other states";
+ }
+
+ protected String unreachableMsg(Vertex state, Class block) {
+ return "The state '" + state.getName() + "' of block '" +
+ block.getName() + "' is never reachable";
+ }
+
+ @Override
+ public void init() throws Exception {
+ systemViewPackage = EntityUtil.getInstance().getCurrentSystemView();
+
+ //TODO: aprire esattamente il progetto corretto, dove sono quando lancio il check? Devo essere su un progetto,
+ // e quello viene analizzato
+ }
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/TestChecker1.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/TestChecker1.java
new file mode 100644
index 0000000..5259614
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/TestChecker1.java
@@ -0,0 +1,84 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.impl;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+import java.util.concurrent.TimeUnit;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.workspace.util.WorkspaceSynchronizer;
+import org.polarsys.chess.checkers.core.checkerManager.Checker;
+import org.polarsys.chess.checkers.core.checkerManager.CheckerMessage;
+import org.polarsys.chess.contracts.profile.chesscontract.util.EntityUtil;
+
+
+public class TestChecker1 extends Checker {
+
+ org.eclipse.uml2.uml.Package systemViewPackage;
+ IResource resource;
+ IFile file;
+ public TestChecker1(String unifiedName, Set<String> checkerTags, int priority) {
+ super(unifiedName, checkerTags,priority);
+ }
+
+ @Override
+ public List<CheckerMessage> check(IProgressMonitor monitor) throws Exception {
+
+ monitor.beginTask(unifiedName, 3);
+ System.out.println("systemViewPackage: "+systemViewPackage);
+ //Resource resource = systemViewPackage.eResource();
+
+ //IResource resource = getResourceForModel(systemViewPackage);
+ List<CheckerMessage> res = new ArrayList<CheckerMessage>();
+ long time = 0;
+ while(time<10){
+ res.add(new CheckerMessage("StateMachineChecker2 "+time+" priority "+registerPriority, IMarker.SEVERITY_ERROR, systemViewPackage,unifiedName));
+ TimeUnit.SECONDS.sleep(1);
+ time++;
+ monitor.worked(1);
+ }
+ return res;
+ }
+
+
+
+ public IResource getResourceForModel(EObject obj) {
+ //org.eclipse.emf.common.util.URI uri = obj.eResource().getURI();
+ org.eclipse.emf.common.util.URI uri = EcoreUtil.getURI(obj);
+ System.out.println("uri: "+uri);
+ // assuming platform://resource/project/path/to/file
+ String projectStr = uri.segment(1);
+ IPath path = new Path(uri.path()).removeFirstSegments(2);
+ System.out.println("path: "+path);
+ IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectStr);
+ System.out.println("project: "+project);
+ return project.findMember(path);
+ }
+
+ @Override
+ public void init() throws Exception {
+ systemViewPackage = EntityUtil.getInstance().getCurrentSystemView();
+ //resource = ResourcesPlugin.getWorkspace().getRoot();
+ resource = getResourceForModel(systemViewPackage);
+ file = WorkspaceSynchronizer.getFile(systemViewPackage.eResource());
+ System.out.println("resource: "+resource);
+
+ }
+
+
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/TestChecker2.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/TestChecker2.java
new file mode 100644
index 0000000..8d9dee4
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/impl/TestChecker2.java
@@ -0,0 +1,63 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.impl;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+import java.util.concurrent.TimeUnit;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.workspace.util.WorkspaceSynchronizer;
+import org.polarsys.chess.checkers.core.checkerManager.Checker;
+import org.polarsys.chess.checkers.core.checkerManager.CheckerMessage;
+import org.polarsys.chess.contracts.profile.chesscontract.util.EntityUtil;
+
+
+public class TestChecker2 extends Checker {
+
+ org.eclipse.uml2.uml.Package systemViewPackage;
+ private IFile file;
+
+ public TestChecker2(String unifiedName, Set<String> checkerTags) {
+ super(unifiedName, checkerTags);
+ }
+
+
+ @Override
+ public List<CheckerMessage> check(IProgressMonitor monitor) throws Exception {
+
+ monitor.beginTask(unifiedName, 6);
+
+ List<CheckerMessage> res = new ArrayList<CheckerMessage>();
+ long time = 0;
+ while(time<6){
+ res.add(new CheckerMessage("SysMLChecker1 "+time, IMarker.SEVERITY_ERROR,systemViewPackage,unifiedName));
+ if (monitor.isCanceled()) {
+ System.out.println("monitor.isCanceled()");
+ throw new Exception();
+ }
+ TimeUnit.SECONDS.sleep(1);
+ time++;
+ monitor.worked(1);
+ }
+ return res;
+ }
+
+
+ @Override
+ public void init() throws Exception {
+ systemViewPackage = EntityUtil.getInstance().getCurrentSystemView();
+ file = WorkspaceSynchronizer.getFile(systemViewPackage.eResource());
+
+ }
+
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/utils/HashCodeUtils.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/utils/HashCodeUtils.java
new file mode 100644
index 0000000..b17d297
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/core/utils/HashCodeUtils.java
@@ -0,0 +1,85 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.core.utils;
+
+import java.util.Objects;
+
+import org.apache.log4j.Logger;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.Enumeration;
+import org.eclipse.uml2.uml.EnumerationLiteral;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.Property;
+import org.polarsys.chess.contracts.profile.chesscontract.util.EntityUtil;
+
+public class HashCodeUtils {
+ private static final Logger logger = Logger.getLogger(HashCodeUtils.class);
+
+ public int hashCodeStructuralPart(Package mainPackage) throws Exception {
+ int hash = 0;
+ for (Class clazz : EntityUtil.getInstance().getAllClasses(mainPackage)) {
+ int hashClass = hashCodeClassStructuralPart(clazz);
+ hash = Objects.hash(hash, hashClass);
+ }
+
+ logger.warn("hash for classes: " + hash);
+
+ int hashEnums = Objects.hash(EntityUtil.getInstance().getAllEnumeratives(mainPackage));
+ for (Enumeration enumeration : EntityUtil.getInstance().getAllEnumeratives(mainPackage)) {
+ int hashEnum = hashCodeEnumeration(enumeration);
+ hash = Objects.hash(hash, hashEnum);
+ }
+
+ logger.warn("hash for enums: " + hashEnums);
+
+ hash = Objects.hash(hash, hashEnums);
+
+ return hash;
+ }
+
+ public int hashCodeClassStructuralPart(Class clazz) {
+ int hash = clazz.getName().hashCode();
+ for (Property property : clazz.allAttributes()) {
+ int hashProperty = hashCodeAttribute(property);
+ hash = Objects.hash(hash, hashProperty);
+ }
+
+ logger.warn("hash for class " + clazz.getName() + ": " + hash);
+
+ return hash;
+ }
+
+ public int hashCodeAttribute(Property property) {
+
+ int hash = Objects.hash(property.getName(), property.getType().getName());
+ logger.warn("hash for property " + property.getName() + ": " + hash);
+
+ return hash;
+ }
+
+ public int hashCodeEnumeration(Enumeration enumeration) {
+
+ int hash = enumeration.hashCode();
+ for (EnumerationLiteral literal : enumeration.getOwnedLiterals()) {
+ int hashLiteral = hashCodeLiteral(literal);
+ hash = Objects.hash(hash, hashLiteral);
+ }
+
+ logger.warn("hash for enum " + enumeration.getName() + ": " + hash);
+
+ return hash;
+ }
+
+ public int hashCodeLiteral(EnumerationLiteral literal) {
+
+ int hash = literal.getName().hashCode();
+ logger.warn("hash for literal " + literal.getName() + ": " + hash);
+
+ return hash;
+ }
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/commands/RunCheckers.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/commands/RunCheckers.java
new file mode 100644
index 0000000..502f6c2
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/commands/RunCheckers.java
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (C) 2020 Fondazione Bruno Kessler.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ ******************************************************************************/
+package org.polarsys.chess.checkers.ui.commands;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.polarsys.chess.checkers.Activator;
+import eu.fbk.eclipse.standardtools.utils.ui.utils.DialogUtil;
+
+import org.apache.log4j.Logger;
+
+public class RunCheckers extends AbstractHandler {
+
+ private static final Logger logger = Logger.getLogger(RunCheckers.class);
+
+ public RunCheckers() {
+ }
+
+ @Override
+ public Object execute(ExecutionEvent event) throws ExecutionException {
+ try {
+ Activator.getCheckerManager().run(Activator.getDefault().getTags());
+ } catch (Exception e) {
+ e.printStackTrace();
+ logger.error(e);
+ DialogUtil.getInstance().showMessage_ExceptionError(e);
+ }
+
+ return null;
+ }
+
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/preferences/CommonPreferencePage.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/preferences/CommonPreferencePage.java
new file mode 100644
index 0000000..617eadd
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/preferences/CommonPreferencePage.java
@@ -0,0 +1,83 @@
+/*******************************************************************************
+ * Copyright (C) 2019 Fondazione Bruno Kessler.
+ * All rights reserved.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *******************************************************************************/
+package org.polarsys.chess.checkers.ui.preferences;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.preference.FieldEditorPreferencePage;
+import org.eclipse.swt.widgets.Widget;
+import org.eclipse.ui.IWorkbenchPreferencePage;
+import org.polarsys.chess.checkers.Activator;
+
+
+/**
+ * The Class CommonPreferencePage.
+ */
+public abstract class CommonPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage
+{
+ protected boolean isEnabled = true;
+
+ private boolean restartRequired = false;
+
+ final protected List<Widget> widgets = new ArrayList<Widget>();
+
+ public CommonPreferencePage()
+ {
+ super();
+
+ setPreferenceStore(Activator.getDefault().getPreferenceStore());
+ }
+
+ public CommonPreferencePage(int style)
+ {
+ super(style);
+
+ setPreferenceStore(Activator.getDefault().getPreferenceStore());
+ }
+
+ public void setRestartRequired(boolean restartRequired)
+ {
+ this.restartRequired = restartRequired;
+ }
+
+ @Override
+ public void dispose()
+ {
+ for( final Widget widget : widgets )
+ {
+ widget.dispose();
+ }
+
+ super.dispose();
+ }
+
+ @Override
+ public boolean performOk()
+ {
+ if( restartRequired )
+ {
+ MessageDialog.openWarning(getShell(), "Warning", "The application needs to be restarted");
+
+ restartRequired = false;
+ }
+
+ return super.performOk();
+ }
+
+ @Override
+ protected void performApply()
+ {
+ adjustGridLayout();
+
+ super.performApply();
+ }
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/preferences/ModelCheckingPreferenceInitializer.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/preferences/ModelCheckingPreferenceInitializer.java
new file mode 100644
index 0000000..f5af825
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/preferences/ModelCheckingPreferenceInitializer.java
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (C) 2019 Fondazione Bruno Kessler.
+ * All rights reserved.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *******************************************************************************/
+package org.polarsys.chess.checkers.ui.preferences;
+
+import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.polarsys.chess.checkers.Activator;
+
+
+public class ModelCheckingPreferenceInitializer extends AbstractPreferenceInitializer
+{
+ @Override
+ public void initializeDefaultPreferences()
+ {
+ final IPreferenceStore store = Activator.getDefault().getPreferenceStore();
+
+ for(String tag : Activator.getCheckerManager().getTags()){
+ store.setDefault(tag,true);
+ }
+ }
+}
diff --git a/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/preferences/ModelCheckingPreferencePage.java b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/preferences/ModelCheckingPreferencePage.java
new file mode 100644
index 0000000..62ba5fa
--- /dev/null
+++ b/plugins/org.polarsys.chess.checkers/src/org/polarsys/chess/checkers/ui/preferences/ModelCheckingPreferencePage.java
@@ -0,0 +1,44 @@
+/*******************************************************************************
+ * Copyright (C) 2019 Fondazione Bruno Kessler.
+ * All rights reserved.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *******************************************************************************/
+package org.polarsys.chess.checkers.ui.preferences;
+
+import org.eclipse.jface.preference.BooleanFieldEditor;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.IWorkbench;
+import org.polarsys.chess.checkers.Activator;
+
+public class ModelCheckingPreferencePage extends CommonPreferencePage {
+
+ @Override
+ public void createFieldEditors() {
+ final Composite parent = getFieldEditorParent();
+ parent.setLayout(new GridLayout(1, false));
+ parent.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+
+ {
+ final Composite composite = new Composite(parent, SWT.NONE);
+ composite.setLayoutData(new GridData(400, SWT.DEFAULT));
+
+ for (String tag : Activator.getCheckerManager().getTags()) {
+ BooleanFieldEditor booleanFieldEditor = new BooleanFieldEditor(tag, tag, composite);
+ addField(booleanFieldEditor);
+ }
+
+ widgets.add(composite);
+ }
+ }
+
+ @Override
+ public void init(IWorkbench workbench) {
+ }
+}
diff --git a/plugins/org.polarsys.chess.feature/epl-v10.html b/plugins/org.polarsys.chess.feature/epl-v10.html
deleted file mode 100644
index cb1073a..0000000
--- a/plugins/org.polarsys.chess.feature/epl-v10.html
+++ /dev/null
@@ -1,304 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<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=ISO-8859-1">
-<link rel=File-List
-href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
-<title>Eclipse Public License - Version 1.0</title>
-<style>
-<!--
- /* Font Definitions */
-@font-face
- {
- panose-1:2 11 6 4 3 5 4 4 2 4;
- mso-font-charset:0;
- 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;
- }
-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;
- }
-p.BalloonText, li.BalloonText, div.BalloonText
- {mso-style-name:"Balloon Text";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:8.0pt;
-
- }
-@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 lang="EN-US" style='tab-interval:.5in'>
-
-<div class=Section1>
-
-<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
-</p>
-
-<p><span style='font-size:10.0pt'>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:10.0pt'>1. DEFINITIONS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>"Contribution" means:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>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:.5in'><span style='font-size:10.0pt'>i)
-changes to the Program, and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-additions to the Program;</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>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:10.0pt'>"Contributor" means any person or
-entity that distributes the Program.</span> </p>
-
-<p><span style='font-size:10.0pt'>"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:10.0pt'>"Program" means the Contributions
-distributed in accordance with this Agreement.</span> </p>
-
-<p><span style='font-size:10.0pt'>"Recipient" means anyone who
-receives the Program under this Agreement, including all Contributors.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>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:.5in'><span style='font-size:10.0pt'>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:.5in'><span style='font-size:10.0pt'>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:.5in'><span style='font-size:10.0pt'>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:10.0pt'>3. REQUIREMENTS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>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:.5in'><span style='font-size:10.0pt'>a)
-it complies with the terms and conditions of this Agreement; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-its license agreement:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>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:.5in'><span style='font-size:10.0pt'>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:.5in'><span style='font-size:10.0pt'>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:.5in'><span style='font-size:10.0pt'>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:10.0pt'>When the Program is made available in source
-code form:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it must be made available under this Agreement; and </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
-copy of this Agreement must be included with each copy of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
-copyright notices contained within the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>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:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
-
-<p><span style='font-size:10.0pt'>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:10.0pt'>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:10.0pt'>5. NO WARRANTY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>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:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>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:10.0pt'>7. GENERAL</span></b> </p>
-
-<p><span style='font-size:10.0pt'>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:10.0pt'>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:10.0pt'>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:10.0pt'>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:10.0pt'>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></p>
-
-</div>
-
-</body>
-
-</html>
\ No newline at end of file
diff --git a/plugins/org.polarsys.chess.feature/feature.xml b/plugins/org.polarsys.chess.feature/feature.xml
index 74d3c77..138a465 100644
--- a/plugins/org.polarsys.chess.feature/feature.xml
+++ b/plugins/org.polarsys.chess.feature/feature.xml
@@ -1,196 +1,210 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
- id="org.polarsys.chess.feature"
- label="CHESS Polarsys"
- version="0.10.0.qualifier"
- provider-name="CHESS Eclipse Project">
-
- <description url="http://www.example.com/description">
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+ id="org.polarsys.chess.feature"
+ label="CHESS Polarsys"
+ version="0.10.0.qualifier"
+ provider-name="CHESS Eclipse Project">
+
+ <description url="http://www.example.com/description">
The CHESS feature provides the CHESS profile, editor, model transformations and Papyrus editor customization
-supporting the CHESS methodology.
- </description>
-
- <copyright url="http://www.eclipse.org/legal/epl-v10.html">
+supporting the CHESS methodology.
+
+ </description>
+
+ <copyright url="http://www.eclipse.org/legal/epl-v10.html">
Copyright (c) 2011-2015 UPD-Intecs
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License
v1.0 which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/epl-v10.html
- </copyright>
-
- <license url="http://www.eclipse.org/legal/epl-v10.html">
+http://www.eclipse.org/legal/epl-v10.html
+ </copyright>
+
+ <license url="http://www.eclipse.org/legal/epl-v10.html">
This program and the accompanying materials
are made available under the terms of the Eclipse Public License
v1.0 which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/epl-v10.html
- </license>
-
- <plugin
- id="org.polarsys.chess.chessmlprofile"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.commands"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.core"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.m2m"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.validator"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.wizards"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.service"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.codegen.ada"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.monitoring"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.multicore"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.tabbedproperties"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.diagram.ui"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.properties.propertyEditor"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.constraints.constraintEditor"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.OSSImporter"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.diagramsCreator"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.smvExporter"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.functionBehaviors.functionBehaviorEditor"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.paramArchConfigurator"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.patterns"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.patterns.library"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.patterns.profile"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.tradeoffAnalysis"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.polarsys.chess.mainmenu"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
-</feature>
+http://www.eclipse.org/legal/epl-v10.html
+ </license>
+
+ <plugin
+ id="org.polarsys.chess.chessmlprofile"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.commands"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.discovery"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.m2m"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.validator"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.wizards"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.service"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.codegen.ada"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.monitoring"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.multicore"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.tabbedproperties"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.diagram.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.properties.propertyEditor"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.constraints.constraintEditor"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.OSSImporter"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.diagramsCreator"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.smvExporter"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.functionBehaviors.functionBehaviorEditor"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.paramArchConfigurator"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.patterns"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.patterns.library"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.patterns.profile"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.tradeoffAnalysis"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.checkers"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.polarsys.chess.checkers"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+</feature>
diff --git a/plugins/org.polarsys.chess.feature/license.html b/plugins/org.polarsys.chess.feature/license.html
deleted file mode 100644
index 225824a..0000000
--- a/plugins/org.polarsys.chess.feature/license.html
+++ /dev/null
@@ -1,107 +0,0 @@
-<?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>April 9, 2014</p>
-
-<h3>Usage Of Content</h3>
-
-<p>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.</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
- ("EPL"). 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, "Program" 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 ("Repository") in software modules ("Modules") and made available as downloadable archives ("Downloads").</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 ("Plug-ins"), plug-in fragments ("Fragments"), and features ("Features").</li>
- <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java™ ARchive) in a directory named "plugins".</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 "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.</li>
- <li>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.</li>
-</ul>
-
-<p>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:</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 "src" 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 ("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.</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>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 ("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 <a
- href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
- ("Specification").</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 ("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.</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 ("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.</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>
\ No newline at end of file
diff --git a/plugins/org.polarsys.chess.instance.view/.gitignore b/plugins/org.polarsys.chess.instance.view/.gitignore
index 0e37a66..ba077a4 100644
--- a/plugins/org.polarsys.chess.instance.view/.gitignore
+++ b/plugins/org.polarsys.chess.instance.view/.gitignore
@@ -1,2 +1 @@
bin
-/src-gen/
diff --git a/plugins/org.polarsys.chess.service/src/org/polarsys/chess/service/gui/utils/DialogUtils.java b/plugins/org.polarsys.chess.service/src/org/polarsys/chess/service/gui/utils/DialogUtils.java
index 7ca6fb1..d407a64 100644
--- a/plugins/org.polarsys.chess.service/src/org/polarsys/chess/service/gui/utils/DialogUtils.java
+++ b/plugins/org.polarsys.chess.service/src/org/polarsys/chess/service/gui/utils/DialogUtils.java
@@ -40,11 +40,15 @@
}
public String getDirectoryNameFromDialog(String title) throws Exception {
+ return getDirectoryNameFromDialog(title, directoryUtils.getCurrentProjectDir());
+ }
+
+ public String getDirectoryNameFromDialog(String title, String path) throws Exception {
final Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
final DirectoryDialog directoryDialog = new DirectoryDialog(shell);
directoryDialog.setText(title);
- directoryDialog.setFilterPath(directoryUtils.getCurrentProjectDir());
+ directoryDialog.setFilterPath(path);
String directoryName = directoryDialog.open();
return directoryName;
diff --git a/plugins/org.polarsys.chess.service/src/org/polarsys/chess/service/gui/utils/ReportProblemsUtil.java b/plugins/org.polarsys.chess.service/src/org/polarsys/chess/service/gui/utils/ReportProblemsUtil.java
index 1fa00a0..99b105c 100644
--- a/plugins/org.polarsys.chess.service/src/org/polarsys/chess/service/gui/utils/ReportProblemsUtil.java
+++ b/plugins/org.polarsys.chess.service/src/org/polarsys/chess/service/gui/utils/ReportProblemsUtil.java
@@ -36,6 +36,8 @@
/**
* Reports a warning in the Problems tab.
* @param resource the resource
+ * @param ownerField the name of the field to store the owner
+ * @param ownerName the name of the creator of this report
* @param msg the message to display
* @param lineNumber the line to select (or 0)
* @param charStart the start of selection (or 0)
@@ -44,15 +46,17 @@
* @throws CoreException
* @throws NullPointerException
*/
- public static IMarker reportWarning(IResource resource, String msg, int lineNumber,
+ public static IMarker reportWarning(IResource resource, String ownerField, String ownerName, String msg, int lineNumber,
int charStart, int charEnd) throws CoreException, NullPointerException {
- return reportMessage(resource, msg, lineNumber, charStart, charEnd,
+ return reportMessage(resource, ownerField, ownerName, msg, lineNumber, charStart, charEnd,
IMarker.PROBLEM, IMarker.SEVERITY_WARNING);
}
/**
* Reports an error in the Problems tab.
* @param resource the resource
+ * @param ownerField the name of the field to store the owner
+ * @param ownerName the name of the creator of this report
* @param msg the message to display
* @param lineNumber the line to select (or 0)
* @param charStart the start of selection (or 0)
@@ -61,15 +65,17 @@
* @throws CoreException
* @throws NullPointerException
*/
- public static IMarker reportError(IResource resource, String msg, int lineNumber,
+ public static IMarker reportError(IResource resource, String ownerField, String ownerName, String msg, int lineNumber,
int charStart, int charEnd) throws CoreException, NullPointerException {
- return reportMessage(resource, msg, lineNumber, charStart, charEnd,
+ return reportMessage(resource, ownerField, ownerName, msg, lineNumber, charStart, charEnd,
IMarker.PROBLEM, IMarker.SEVERITY_ERROR);
}
/**
* Reports an info in the Problems tab.
* @param resource the resource
+ * @param ownerField the name of the field to store the owner
+ * @param ownerName the name of the creator of this report
* @param msg the message to display
* @param lineNumber the line to select (or 0)
* @param charStart the start of selection (or 0)
@@ -78,14 +84,14 @@
* @throws CoreException
* @throws NullPointerException
*/
- public static IMarker reportInfo(IResource resource, String msg, int lineNumber,
+ public static IMarker reportInfo(IResource resource, String ownerField, String ownerName, String msg, int lineNumber,
int charStart, int charEnd) throws CoreException, NullPointerException {
- return reportMessage(resource, msg, lineNumber, charStart, charEnd,
+ return reportMessage(resource, ownerField, ownerName, msg, lineNumber, charStart, charEnd,
IMarker.PROBLEM, IMarker.SEVERITY_INFO);
}
- private static IMarker reportMessage(IResource resource, String msg, int lineNumber, int charStart,
- int charEnd, String type, int severity) throws CoreException, NullPointerException {
+ private static IMarker reportMessage(IResource resource, String ownerField, String ownerName, String msg, int lineNumber,
+ int charStart, int charEnd, String type, int severity) throws CoreException, NullPointerException {
if (resource == null) {
throw new NullPointerException("Resource is null");
}
@@ -100,7 +106,7 @@
if (charStart > 0) attributes.put(IMarker.CHAR_START, new Integer(charStart)); // Note: this value is from the beginning of the document
if (charEnd > 0) attributes.put(IMarker.CHAR_END, new Integer(charEnd)); // Note: this value is from the beginning of the document
// m.setAttribute(IMarker.LOCATION, "whole file"); // This is a generic info about location
-
+ attributes.put(ownerField, ownerName);
m.setAttributes(attributes);
return m;
}
diff --git a/plugins/org.polarsys.chess.tabbedproperties/META-INF/MANIFEST.MF b/plugins/org.polarsys.chess.tabbedproperties/META-INF/MANIFEST.MF
index af62535..b79bd87 100644
--- a/plugins/org.polarsys.chess.tabbedproperties/META-INF/MANIFEST.MF
+++ b/plugins/org.polarsys.chess.tabbedproperties/META-INF/MANIFEST.MF
@@ -31,7 +31,6 @@
org.eclipse.core.databinding;bundle-version="1.4.1",
org.eclipse.papyrus.infra.widgets,
org.eclipse.papyrus.views.properties,
- org.polarsys.chess.xtext.fladsl.ui,
org.eclipse.xtext.ui;bundle-version="2.7.3",
org.eclipse.gmf.runtime.diagram.ui.properties,
com.google.inject,
@@ -44,4 +43,6 @@
org.eclipse.papyrus.marte.static.profile,
org.eclipse.papyrus.infra.properties.ui,
org.polarsys.chess.xtext.global;bundle-version="1.0.0",
- org.eclipse.emf.ecore
+ org.eclipse.emf.ecore,
+ org.polarsys.chess.xtext.fladsl.ui
+Import-Package: org.polarsys.chess.xtext.fladsl.ui.internal
diff --git a/plugins/org.polarsys.chess.tabbedproperties/build.properties b/plugins/org.polarsys.chess.tabbedproperties/build.properties
index fffc2ea..bfcbbe5 100644
--- a/plugins/org.polarsys.chess.tabbedproperties/build.properties
+++ b/plugins/org.polarsys.chess.tabbedproperties/build.properties
@@ -3,7 +3,6 @@
bin.includes = META-INF/,\
.,\
plugin.xml,\
- bin/,\
build.properties,\
readme.txt,\
CHESS.ctx,\
diff --git a/plugins/org.polarsys.chess.tabbedproperties/src/org/polarsys/chess/tabbedproperties/xtext/XtextInputDialog.java b/plugins/org.polarsys.chess.tabbedproperties/src/org/polarsys/chess/tabbedproperties/xtext/XtextInputDialog.java
index f5711a6..b086847 100644
--- a/plugins/org.polarsys.chess.tabbedproperties/src/org/polarsys/chess/tabbedproperties/xtext/XtextInputDialog.java
+++ b/plugins/org.polarsys.chess.tabbedproperties/src/org/polarsys/chess/tabbedproperties/xtext/XtextInputDialog.java
@@ -31,7 +31,7 @@
import org.eclipse.xtext.ui.editor.embedded.EmbeddedEditor;
import org.eclipse.xtext.ui.editor.embedded.EmbeddedEditorFactory;
import org.eclipse.xtext.ui.editor.embedded.EmbeddedEditorModelAccess;
-import org.polarsys.chess.xtext.ui.internal.FlaDslActivator;
+import org.polarsys.chess.xtext.fladsl.ui.internal.FladslActivator;
import com.google.inject.Injector;
@@ -227,7 +227,7 @@
if( this.xtextEnabled ) {
- Injector injector = FlaDslActivator.getInstance().getInjector(FlaDslActivator.ORG_POLARSYS_CHESS_XTEXT_FLADSL);
+ Injector injector = FladslActivator.getInstance().getInjector(FladslActivator.ORG_POLARSYS_CHESS_XTEXT_FLADSL);
FLAExpressionsProvider provider = injector.getInstance(FLAExpressionsProvider.class);
diff --git a/plugins/org.polarsys.chess.test.runtime/.classpath b/plugins/org.polarsys.chess.test.runtime/.classpath
index 098194c..eca7bdb 100644
--- a/plugins/org.polarsys.chess.test.runtime/.classpath
+++ b/plugins/org.polarsys.chess.test.runtime/.classpath
@@ -1,6 +1,6 @@
<?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.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
diff --git a/plugins/org.polarsys.chess.test.runtime/.gitignore b/plugins/org.polarsys.chess.test.runtime/.gitignore
index ae3c172..09e3bc9 100644
--- a/plugins/org.polarsys.chess.test.runtime/.gitignore
+++ b/plugins/org.polarsys.chess.test.runtime/.gitignore
@@ -1 +1,2 @@
/bin/
+/target/
diff --git a/plugins/org.polarsys.chess.test.runtime/.project b/plugins/org.polarsys.chess.test.runtime/.project
index 065b86f..1fda9d1 100644
--- a/plugins/org.polarsys.chess.test.runtime/.project
+++ b/plugins/org.polarsys.chess.test.runtime/.project
@@ -6,6 +6,11 @@
</projects>
<buildSpec>
<buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
@@ -20,8 +25,15 @@
<arguments>
</arguments>
</buildCommand>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
</buildSpec>
<natures>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
diff --git a/plugins/org.polarsys.chess.test.runtime/META-INF/MANIFEST.MF b/plugins/org.polarsys.chess.test.runtime/META-INF/MANIFEST.MF
index 8cad701..a050120 100644
--- a/plugins/org.polarsys.chess.test.runtime/META-INF/MANIFEST.MF
+++ b/plugins/org.polarsys.chess.test.runtime/META-INF/MANIFEST.MF
@@ -2,19 +2,19 @@
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.polarsys.chess.test.runtime;singleton:=true
-Bundle-Version: 0.9.0.qualifier
-Bundle-Activator: org.polarsys.chess.test.runtime.Activator
+Bundle-Version: 1.0.0.qualifier
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
- org.eclipse.uml2.uml;bundle-version="5.0.2",
- org.eclipse.core.resources;bundle-version="3.9.1",
+ org.eclipse.uml2.uml,
+ org.eclipse.core.resources,
org.polarsys.chess.core,
org.eclipse.ui.workbench,
- org.eclipse.ui.ide;bundle-version="3.10.2",
+ org.eclipse.ui.ide,
org.junit,
org.eclipse.jdt.junit.core,
org.eclipse.swt,
org.polarsys.chess.chessmlprofile
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Bundle-ActivationPolicy: lazy
Bundle-Vendor: %providerName
+Bundle-Activator: org.polarsys.chess.test.runtime.Activator
diff --git a/plugins/org.polarsys.chess.test.runtime/pom.xml b/plugins/org.polarsys.chess.test.runtime/pom.xml
index 5a7b821..7484591 100644
--- a/plugins/org.polarsys.chess.test.runtime/pom.xml
+++ b/plugins/org.polarsys.chess.test.runtime/pom.xml
@@ -2,14 +2,12 @@
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
- <parent>
+ <parent>
<groupId>org.polarsys.chess</groupId>
- <artifactId>CHESS</artifactId>
- <version>0.0.1-SNAPSHOT</version>
- <relativePath>../../</relativePath>
+ <artifactId>org.polarsys.chess.parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../../org.polarsys.chess.parent</relativePath>
</parent>
- <groupId>org.polarsys.chess</groupId>
<artifactId>org.polarsys.chess.test.runtime</artifactId>
- <version>0.9.0-SNAPSHOT</version>
- <packaging>eclipse-plugin</packaging>
+ <packaging>eclipse-test-plugin</packaging>
</project>
diff --git a/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestApplyCHESSStereotype.java b/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestApplyCHESSStereotype.java
index eb3b370..33fc1a6 100644
--- a/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestApplyCHESSStereotype.java
+++ b/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestApplyCHESSStereotype.java
@@ -13,6 +13,7 @@
import org.eclipse.uml2.uml.Element;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import org.polarsys.chess.core.profiles.CHESSProfileManager;
import org.polarsys.chess.test.runtime.util.TestUtil;
@@ -27,7 +28,7 @@
}
- @Test
+ @Test @Ignore
public void testApplyCHESSStereotype() {
CHESSProfileManager.applyCHESSStereotype(model);
diff --git a/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestApplyRecursively.java b/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestApplyRecursively.java
index 004a6b6..f98236d 100644
--- a/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestApplyRecursively.java
+++ b/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestApplyRecursively.java
@@ -13,6 +13,7 @@
import org.eclipse.uml2.uml.Model;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import org.polarsys.chess.core.profiles.CHESSProfileManager;
import org.polarsys.chess.test.runtime.util.TestUtil;
@@ -26,7 +27,7 @@
model = TestUtil.loadTestModel("CHESSTestModels", "TestApplyRecursivelyModel.uml");
}
- @Test
+ @Test @Ignore
public void testApplyRecursively() {
CHESSProfileManager.applyRecursively(model);
diff --git a/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestCreateViews.java b/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestCreateViews.java
index 27c7857..a080c30 100644
--- a/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestCreateViews.java
+++ b/plugins/org.polarsys.chess.test.runtime/src/org/polarsys/chess/test/runtime/tests/TestCreateViews.java
@@ -15,6 +15,7 @@
import org.eclipse.uml2.uml.Stereotype;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import org.polarsys.chess.chessmlprofile.Core.CHESS;
import org.polarsys.chess.chessmlprofile.Core.CHESSViews.AnalysisView;
@@ -37,7 +38,7 @@
model = TestUtil.loadTestModel("CHESSTestModels", "TestCreateViewsModel.uml");
}
- @Test
+ @Test @Ignore
public void testcreateViews() {
CHESSProfileManager.createViews(model);
diff --git a/plugins/pom.xml b/plugins/pom.xml
index cb7980c..438228b 100644
--- a/plugins/pom.xml
+++ b/plugins/pom.xml
@@ -48,7 +48,6 @@
<module>org.polarsys.chess.diagramsCreator</module>
<module>org.polarsys.chess.discovery</module>
<module>org.polarsys.chess.extra.site</module>
- <module>org.polarsys.chess.feature</module>
<module>org.polarsys.chess.functionBehaviors.functionBehaviorEditor</module>
<module>org.polarsys.chess.instance.view</module>
<module>org.polarsys.chess.m2m</module>